Exemple #1
0
class FlowControlStatement(Grammar):
    grammar = OR(
        (OR(RE_LITERAL("break"),
            RE_LITERAL("continue")), OPTIONAL((WHITESPACE, LabelExpression))),
        (OR(RE_LITERAL("throw"), RE_LITERAL("return"),
            RE_LITERAL("exit")), OPTIONAL((WHITESPACE, Pipeline))),
    )
Exemple #2
0
class ExpandableStringPart(Grammar):
    grammar = OR(
        EXCEPT(ANY, OR('$', '\u0060', DoubleQuoteCharacter), max=1),
        BracedVariable,
        ("$", ANY_EXCEPT("({\u0060", max=1) - DoubleQuoteCharacter),
        ("$", EscapedCharacter),
        EscapedCharacter,
        (DoubleQuoteCharacter, DoubleQuoteCharacter),
    )
Exemple #3
0
class ExpressionWithUnaryOperator(Grammar):
    grammar = OR(
        (OR(",", RE_LITERAL("-bnot"), RE_LITERAL("-not"), RE_LITERAL("-split"),
            RE_LITERAL("-join"), "!", "+",
            Dash), OPTIONAL(WHITESPACE), UnaryExpression),
        PreIncrementExpression,
        PreDecrementExpression,
        CastExpression,
    )
Exemple #4
0
class Keyword(Grammar):
    grammar = OR(*ignore_case_literals(
        "workflow", "inlinescript", "parallel", "begin", "break", "catch",
        "class", "continue", "data", "define", "do", "dynamicparam", "elseif",
        "else", "end", "exit", "filter", "finally", "foreach", "for", "from",
        "function", "if", "in", "param", "process", "return", "switch", "var",
        "throw", "trap", "try", "until", "using", "while"))
Exemple #5
0
class RealLiteral(Grammar):
    grammar = OR((DecimalDigits, ".", DecimalDigits, OPTIONAL(ExponentPart),
                  OPTIONAL(DecimalTypeSuffix), OPTIONAL(NumericMultiplier)),
                 (".", DecimalDigits, OPTIONAL(ExponentPart),
                  OPTIONAL(DecimalTypeSuffix), OPTIONAL(NumericMultiplier)),
                 (DecimalDigits, ExponentPart, OPTIONAL(DecimalTypeSuffix),
                  OPTIONAL(NumericMultiplier)))
Exemple #6
0
class SwitchParameter(Grammar):
    grammar = OR(*ignore_case_literals(
        "-regex", "-rege", "-reg", "-re", "-r", "-wildcard", "-wildcar",
        "-wildca", "-wildc", "-wild", "-wil", "-wi", "-w", "-exact", "-exac",
        "-exa", "-ex", "-e", "-casesensitive", "-casesensitiv", "-casesensiti",
        "-casesensit", "-casesensi", "-casesens", "-casesen", "-casese",
        "-cases", "-case", "-cas", "-ca", "-c"))
Exemple #7
0
class MemberName(Grammar):
    grammar = OR(
        # FIXME: Remove references
        SimpleName,
        StringLiteral,
        StringLiteralWithSubexpression,
        REF('ExpressionWithUnaryOperator'),
        REF('Value'))
Exemple #8
0
class ExpandableHereStringPart(Grammar):
    grammar = OR(
        ANY_EXCEPT("$", max=1) - NewLineCharacter, BracedVariable,
        ("$", ANY_EXCEPT("(", max=1) - NewLineCharacter),
        ("$", NewLineCharacter, ANY - DoubleQuoteCharacter),
        ("$", NewLineCharacter, DoubleQuoteCharacter, ANY_EXCEPT("@", max=1)),
        (NewLineCharacter, ANY - DoubleQuoteCharacter),
        (NewLineCharacter, DoubleQuoteCharacter, ANY_EXCEPT("@", max=1)))
Exemple #9
0
class ExpandableStringLiteralWithSubexpr(Grammar):
    grammar = OR(
        (ExpandableStringWithSubexprStart, OPTIONAL(StatementList), ")",
         ExpandableStringWithSubexprCharacters,
         ExpandableStringWithSubexprEnd),
        (ExpandableHereStringWithSubexprStart, OPTIONAL(StatementList), ")",
         ExpandableHereStringWithSubexprCharacters,
         ExpandableHereStringWithSubexprEnd))
Exemple #10
0
class ConfigVDevState(Grammar):
    grammar = (OR(
        'ONLINE',
        'DEGRADED',
        'FAULTED',
        'OFFLINE',
        'UNAVAIL',
        'REMOVED',
    ), )
Exemple #11
0
class ComparisonOperator(Grammar):
    operators = ignore_case_literals(
        "as", "ccontains", "ceq", "cge", "cgt", "cle", "clike", "clt",
        "cmatch", "cne", "cnotcontains", "cnotlike", "cnotmatch", "contains",
        "creplace", "csplit", "eq", "ge", "gt", "icontains", "ieq", "ige",
        "igt", "ile", "ilike", "ilt", "imatch", "in", "ine", "inotcontains",
        "inotlike", "inotmatch", "ireplace", "is", "isnot", "isplit", "join",
        "le", "like", "lt", "match", "ne", "notcontains", "notin", "notlike",
        "notmatch", "replace", "shl", "shr", "split")
    grammar = (Dash, OR(*operators))
Exemple #12
0
class ConfigPool(Grammar):
    grammar = (
        ConfigPoolName,
        SpaceSeperator,
        ConfigVDevState,
        SpaceSeperator,
        ConfigCounters,
        '\n',
        REPEAT('\t', SpaceSeperator, OR(ConfigVDev, ConfigDisk), '\n'),
    )
Exemple #13
0
class GenericTokenChar(Grammar):
    grammar = OR(
        EXCEPT(
            ANY,
            OR(
                DoubleQuoteCharacter,
                SingleQuoteCharacter,
                WHITESPACE,
                NewLineCharacter,
                "{",
                "}",
                "(",
                ")",
                ";",
                ",",
                "|",
                "&",
                "$",
                "\u0060",
            )), EscapedCharacter)
Exemple #14
0
class Token(Grammar):
    grammar = OR(
        Keyword,
        Variable,
        Command,
        CommandParameter,
        IntegerLiteral,
        RealLiteral,
        StringLiteral,
        TypeLiteral,
        OperatorOrPunctuator,
    )
Exemple #15
0
class OperatorOrPunctuator(Grammar):
    grammar = OR(
        "{",
        "}",
        "[",
        "]",
        "(",
        ")",
        "@(",
        "@{",
        "$(",
        ";",
        "&&",
        "||",
        "&",
        "|",
        ",",
        "++",
        "..",
        "::",
        ".",
        "!",
        "*",
        "/",
        "%",
        "+",
        (Dash,
         OR(
             Dash,
             *ignore_case_literals("and", "band", "bnot", "bor", "bxor", "not",
                                   "or", "xor"))),
        Dash,
        AssignmentOperator,
        MergingRedirectionOperator,
        FileRedirectionOperator,
        ComparisonOperator,
        FormatOperator,
    )
Exemple #16
0
class ForStatement(Grammar):
    grammar = OR(
        (RE_LITERAL("for"), OPTIONAL(WHITESPACE), "(", OPTIONAL(WHITESPACE),
         OPTIONAL(ForInitializer), StatementTerminator, OPTIONAL(WHITESPACE),
         OPTIONAL(ForCondition), StatementTerminator, OPTIONAL(WHITESPACE),
         OPTIONAL(ForIterator), OPTIONAL(WHITESPACE), ")",
         OPTIONAL(WHITESPACE), StatementBlock),
        (RE_LITERAL("for"), OPTIONAL(WHITESPACE), "(", OPTIONAL(WHITESPACE),
         OPTIONAL(ForInitializer), StatementTerminator, OPTIONAL(WHITESPACE),
         OPTIONAL(ForCondition), OPTIONAL(WHITESPACE), ")",
         OPTIONAL(WHITESPACE), StatementBlock),
        (RE_LITERAL("for"), OPTIONAL(WHITESPACE), "(", OPTIONAL(WHITESPACE),
         OPTIONAL(ForInitializer), OPTIONAL(WHITESPACE), ")",
         OPTIONAL(WHITESPACE), StatementBlock),
    )
Exemple #17
0
class CountTarget(Grammar):
    grammar = OR(OP('*'), OP('1'))
Exemple #18
0
class ColumnRange(Grammar):
    grammar = OR((Term, OP('..'), Term), OP('*'))
Exemple #19
0
class SelectWhereClause(Grammar):
    grammar = OR(LIST_OF(Relation, sep=CK('and')), (Term, CK('in'), LPar, LIST_OF(Term), RPar))
Exemple #20
0
class RelationOperator(Grammar):
    grammar = OR(OP('='), OP('<='), OP('>='), OP("<"), OP('>'))
Exemple #21
0
class Consistency(Grammar):
    grammar = OR(CK('any'), CK('one'), (OPTIONAL(CK('local') | CK('each')), CK('quorum')), CK('all'))
Exemple #22
0
class Term(Grammar):
    grammar = OR(CK('key'), UUID, Identifier, StringLiteral, Float, Integer)
Exemple #23
0
class Integer(Grammar):
    grammar = OR(L('0'), (OPTIONAL(L('-')), WORD('1-9', '0-9')))
Exemple #24
0
class StatementBody(Grammar):
    grammar = OR(UseStatement, SelectStatement, DataChangeStatement, SchemaChangeStatement, ClientStatement)
Exemple #25
0
class ClientStatement(Grammar):
    grammar = OR(QuitStatement)
Exemple #26
0
class DataChangeStatement(Grammar):
    grammar = OR(InsertStatement, UpdateStatement, BatchStatement, DeleteStatement, TruncateStatement)
Exemple #27
0
class SchemaChangeStatement(Grammar):
    grammar = OR(
        CreateKeyspaceStatement, CreateColumnFamilyStatement, CreateIndexStatement,
        DropKeyspaceStatement, DropColumnFamilyStatement, DropIndexStatement,
        AlterColumnFamilyStatement
    )
Exemple #28
0
class WhatToSelect(Grammar):
    grammar = OR(
        (OPTIONAL(CK('first'), Integer, OPTIONAL(CK('reversed'))), ColumnRange),
        (FN('count'), LPar, CountTarget, RPar), LIST_OF(Term)
    )
Exemple #29
0
class DeleteOption(Grammar):
    grammar = OR((CK('consistency'), Consistency), (CK('timestamp'), Integer))
Exemple #30
0
class StorageType(Grammar):
    grammar = OR(CK('ascii'), CK('bigint'), CK('blob'), CK('boolean'), CK('counter'), CK('decimal'), CK('double'), CK('float'),
        CK('int'), CK('text'), CK('timestamp'), CK('uuid'), CK('varchar'), CK('varint'))