-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Description
I want to include the rule compound_select_stmt
from sql-psi:
set_stmt ::= SET host_variable ( COMMA host_variable ) * EQ ( set_setter_clause | {compound_select_stmt} )
This rule is not resolved in my bnf file, as expected, but it is later during composing:
fake set_stmt ::= SET host_variable ( COMMA host_variable ) * EQ ( set_setter_clause | <<compoundSelectStmtRealExt <<compound_select_stmt_real_real>>>> )
set_stmt_real ::= SET <<hostVariableExt host_variable_real>> ( COMMA <<hostVariableExt host_variable_real>> ) * EQ ( <<setSetterClauseExt set_setter_clause_real>> | <<compoundSelectStmtRealExt <<compound_select_stmt_real_real>>>> )
GrammarKit with Composer generates this interface:
public interface Db2SetStmt extends ... {
@NotNull List<Db2HostVariable> getHostVariableList();
@Nullable Db2SetSetterClause getSetSetterClause();
}
Unfortunately, the compound_select_stmt
is missing: @Nullable SqlCompoundSelectStmt getCompoundSelectStmt();
Sample: merge_key_selector
from Hsql in sqldelight
merge_key_selector ::= KEY LP {column_name} RP
package app.cash.sqldelight.dialects.hsql.grammar.psi;
public interface HsqlMergeKeySelector extends SqlCompositeElement {
}
Metadata
Metadata
Assignees
Labels
No labels