diff options
Diffstat (limited to 'vendor/github.com/alecthomas/chroma/lexers/c/coldfusion.go')
-rw-r--r-- | vendor/github.com/alecthomas/chroma/lexers/c/coldfusion.go | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/vendor/github.com/alecthomas/chroma/lexers/c/coldfusion.go b/vendor/github.com/alecthomas/chroma/lexers/c/coldfusion.go new file mode 100644 index 000000000..bc28bc3ba --- /dev/null +++ b/vendor/github.com/alecthomas/chroma/lexers/c/coldfusion.go @@ -0,0 +1,52 @@ +package c + +import ( + . "github.com/alecthomas/chroma" // nolint + "github.com/alecthomas/chroma/lexers/internal" +) + +// Cfstatement lexer. +var Cfstatement = internal.Register(MustNewLazyLexer( + &Config{ + Name: "cfstatement", + Aliases: []string{"cfs"}, + Filenames: []string{}, + MimeTypes: []string{}, + NotMultiline: true, + CaseInsensitive: true, + }, + cfstatementRules, +)) + +func cfstatementRules() Rules { + return Rules{ + "root": { + {`//.*?\n`, CommentSingle, nil}, + {`/\*(?:.|\n)*?\*/`, CommentMultiline, nil}, + {`\+\+|--`, Operator, nil}, + {`[-+*/^&=!]`, Operator, nil}, + {`<=|>=|<|>|==`, Operator, nil}, + {`mod\b`, Operator, nil}, + {`(eq|lt|gt|lte|gte|not|is|and|or)\b`, Operator, nil}, + {`\|\||&&`, Operator, nil}, + {`\?`, Operator, nil}, + {`"`, LiteralStringDouble, Push("string")}, + {`'.*?'`, LiteralStringSingle, nil}, + {`\d+`, LiteralNumber, nil}, + {`(if|else|len|var|xml|default|break|switch|component|property|function|do|try|catch|in|continue|for|return|while|required|any|array|binary|boolean|component|date|guid|numeric|query|string|struct|uuid|case)\b`, Keyword, nil}, + {`(true|false|null)\b`, KeywordConstant, nil}, + {`(application|session|client|cookie|super|this|variables|arguments)\b`, NameConstant, nil}, + {`([a-z_$][\w.]*)(\s*)(\()`, ByGroups(NameFunction, Text, Punctuation), nil}, + {`[a-z_$][\w.]*`, NameVariable, nil}, + {`[()\[\]{};:,.\\]`, Punctuation, nil}, + {`\s+`, Text, nil}, + }, + "string": { + {`""`, LiteralStringDouble, nil}, + {`#.+?#`, LiteralStringInterpol, nil}, + {`[^"#]+`, LiteralStringDouble, nil}, + {`#`, LiteralStringDouble, nil}, + {`"`, LiteralStringDouble, Pop(1)}, + }, + } +} |