|
26 | 26 | ELSE_DIRECTIVE = "#else" |
27 | 27 | ENDIF_DIRECTIVE = "#endif" |
28 | 28 | DEFINE_DIRECTIVE = "#define" |
| 29 | + PARAGMA_DIRECTIVE = "#paragma" |
29 | 30 |
|
30 | 31 | FLOAT_TYPE = "float" |
31 | 32 | NUMBER_TYPE = "number" |
@@ -157,7 +158,7 @@ private ProgramElement_first ::= ( |
157 | 158 | ".input" | ".output" | ".printsize" | |
158 | 159 | ".pragma" | |
159 | 160 | ".symbol_type" | ".number_type" | |
160 | | - DEFINE_DIRECTIVE | IF_DIRECTIVE | ELSE_DIRECTIVE | IFDEF_DIRECTIVE | IFNDEF_DIRECTIVE | ENDIF_DIRECTIVE | INCLUDE_DIRECTIVE | |
| 161 | + DEFINE_DIRECTIVE | IF_DIRECTIVE | ELSE_DIRECTIVE | IFDEF_DIRECTIVE | IFNDEF_DIRECTIVE | ENDIF_DIRECTIVE | INCLUDE_DIRECTIVE | PARAGMA_DIRECTIVE | |
161 | 162 | IDENTIFIER) |
162 | 163 |
|
163 | 164 |
|
@@ -187,6 +188,7 @@ Preprocessor ::= (IF_DIRECTIVE IDENTIFIER ("<" | "==" | ">") Constant) |
187 | 188 | | (IFNDEF_DIRECTIVE IDENTIFIER) |
188 | 189 | | ENDIF_DIRECTIVE |
189 | 190 | | Include |
| 191 | + | (PARAGMA_DIRECTIVE IDENTIFIER) |
190 | 192 | | (MacroDecl (LINE_BREAK | <<eof>>)) |
191 | 193 | | MacroInvocation |
192 | 194 |
|
@@ -243,6 +245,7 @@ InDeclIOOpt ::= "filename" "=" STRING |
243 | 245 | | "columns" "=" STRING |
244 | 246 | | "headers" "=" STRING |
245 | 247 | | "rfc4180" "=" ("true" | "false") |
| 248 | + | "delimiter" "=" STRING |
246 | 249 | InDeclParam ::= InDeclIO | InDeclIOOpt |
247 | 250 |
|
248 | 251 | OutDeclIO ::= "IO" "=" ("stdout" | "file" | "sqlite") |
@@ -345,7 +348,12 @@ AssocExpr ::= "(" Argument ")" |
345 | 348 | TupleExpr ::= <<listCommaBracket Argument>> "]" | "[" "]" |
346 | 349 |
|
347 | 350 | FunctorExpr ::= "@" AnyRef <<listCommaParens Argument>> ")" |
348 | | -MacroExpr ::= AnyRef <<listCommaParens (Argument | MacroParameter)>> ")" |
| 351 | + |
| 352 | +//IntrinsicFunctor ::= "ord" | "to_float" | "to_number" | "to_string" |
| 353 | +// | "to_unsigned" | "cat" | "strlen" | "substr" | "autoinc" |
| 354 | +//IntrinsicFunctorExpr ::= IntrinsicFunctor ArgumentList |
| 355 | + |
| 356 | +MacroExpr ::= IDENTIFIER <<listCommaParens (Argument | MacroParameter)>> ")" |
349 | 357 |
|
350 | 358 | BinOpExpr ::= Argument BinOp Argument |
351 | 359 | AsExpr ::= Argument "as" Variable |
|
0 commit comments