module Skylighting.Syntax.Prolog (syntax) where
import Skylighting.Types
import Data.Map
import Skylighting.Regex
import qualified Data.Set
syntax :: Syntax
syntax = Syntax
{ sName = "Prolog"
, sFilename = "prolog.xml"
, sShortname = "Prolog"
, sContexts =
fromList
[ ( "1-comment"
, Context
{ cName = "1-comment"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = DetectSpaces
, rAttribute = CommentTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = IncludeRules ( "Alerts_indent" , "" )
, rAttribute = CommentTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectIdentifier
, rAttribute = CommentTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = CommentTok
, cLineEmptyContext = []
, cLineEndContext = [ Pop ]
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "arith_expr"
, Context
{ cName = "arith_expr"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = DetectChar '('
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "nested_expr" ) ]
}
, Rule
{ rMatcher = DetectChar ')'
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = True
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = DetectChar '}'
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = True
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = DetectChar ']'
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = True
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = DetectChar '!'
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = True
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = DetectChar ','
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = True
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = DetectChar '|'
, rAttribute = FunctionTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = True
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "\\.(?!(\\(|[#$&*+\\-./:<=>?@^~\\\\]))"
, reCompiled =
Just (compileRegex True "\\.(?!(\\(|[#$&*+\\-./:<=>?@^~\\\\]))")
, reCaseSensitive = True
}
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = True
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString =
"(;|->|\\\\\\+|:-|=|\\\\=)(?![#$&*+\\-./:<=>?@^~\\\\])"
, reCompiled =
Just
(compileRegex
True "(;|->|\\\\\\+|:-|=|\\\\=)(?![#$&*+\\-./:<=>?@^~\\\\])")
, reCaseSensitive = True
}
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = True
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = IncludeRules ( "Prolog" , "arith_expr_common" )
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "arith_expr_common"
, Context
{ cName = "arith_expr_common"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = IncludeRules ( "Prolog" , "layout" )
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = IncludeRules ( "Prolog" , "number" )
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = True
, keywordDelims =
Data.Set.fromList "\t\n !\"#$%&'()*+,-./:;<=>?[\\]^`{|}~"
}
(makeWordSet True [ "is" ])
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = True
, keywordDelims =
Data.Set.fromList "\t\n !\"#$%&'()*+,-./:;<=>?[\\]^`{|}~"
}
(makeWordSet
True
[ "atan"
, "char_conversion"
, "current_char_conversion"
, "ensure_loaded"
, "include"
, "xor"
])
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = True
, keywordDelims =
Data.Set.fromList "\t\n !\"#$%&'()*+,-./:;<=>?[\\]^`{|}~"
}
(makeWordSet True [ "abs" , "max" , "min" , "sign" ])
, rAttribute = DataTypeTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = True
, keywordDelims =
Data.Set.fromList "\t\n !\"#$%&'()*+,-./:;<=>?[\\]^`{|}~"
}
(makeWordSet True [ "ceiling" , "floor" , "round" , "truncate" ])
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = True
, keywordDelims =
Data.Set.fromList "\t\n !\"#$%&'()*+,-./:;<=>?[\\]^`{|}~"
}
(makeWordSet
True
[ "acos"
, "asin"
, "atan2"
, "cos"
, "exp"
, "float"
, "float_fractional_part"
, "float_integer_part"
, "log"
, "pi"
, "sin"
, "sqrt"
, "tan"
])
, rAttribute = FloatTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = True
, keywordDelims =
Data.Set.fromList "\t\n !\"#$%&'()*+,-./:;<=>?[\\]^`{|}~"
}
(makeWordSet True [ "div" , "mod" , "rem" ])
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "(=:=|=\\\\=|=<|<|>=|>)(?![#$&*+\\-./:<=>?@^~\\\\])"
, reCompiled =
Just
(compileRegex
True "(=:=|=\\\\=|=<|<|>=|>)(?![#$&*+\\-./:<=>?@^~\\\\])")
, reCaseSensitive = True
}
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "(\\+|-|\\*|\\^)(?![#$&*+\\-./:<=>?@^~\\\\])"
, reCompiled =
Just
(compileRegex
True "(\\+|-|\\*|\\^)(?![#$&*+\\-./:<=>?@^~\\\\])")
, reCaseSensitive = True
}
, rAttribute = DataTypeTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "//(?![#$&*+\\-./:<=>?@^~\\\\])"
, reCompiled =
Just (compileRegex True "//(?![#$&*+\\-./:<=>?@^~\\\\])")
, reCaseSensitive = True
}
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "(/|\\*\\*)(?![#$&*+\\-./:<=>?@^~\\\\])"
, reCompiled =
Just (compileRegex True "(/|\\*\\*)(?![#$&*+\\-./:<=>?@^~\\\\])")
, reCaseSensitive = True
}
, rAttribute = FloatTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "(/\\\\|\\\\/|\\\\|<<|>>)(?![#$&*+\\-./:<=>?@^~\\\\])"
, reCompiled =
Just
(compileRegex
True "(/\\\\|\\\\/|\\\\|<<|>>)(?![#$&*+\\-./:<=>?@^~\\\\])")
, reCaseSensitive = True
}
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = IncludeRules ( "Prolog" , "operator" )
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = AnyChar "abcdefghijklmnopqrstuvwxyz"
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = True
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "id" ) ]
}
, Rule
{ rMatcher = AnyChar "ABCDEFGHIJKLMNOPQRSTUVWXYZ_"
, rAttribute = DataTypeTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = True
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "var" ) ]
}
, Rule
{ rMatcher = AnyChar "#$&*+-./:<=>?@^~\\"
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "graphic" ) ]
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "atomic"
, Context
{ cName = "atomic"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = True
, keywordDelims =
Data.Set.fromList "\t\n !\"#$%&'()*+,-./:;<=>?[\\]^`{|}~"
}
(makeWordSet
True
[ "call"
, "catch"
, "fail"
, "false"
, "initialization"
, "once"
, "repeat"
, "throw"
, "true"
])
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = True
, keywordDelims =
Data.Set.fromList "\t\n !\"#$%&'()*+,-./:;<=>?[\\]^`{|}~"
}
(makeWordSet
True
[ "atom"
, "atomic"
, "callable"
, "compound"
, "float"
, "ground"
, "integer"
, "nonvar"
, "number"
, "var"
])
, rAttribute = DataTypeTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = True
, keywordDelims =
Data.Set.fromList "\t\n !\"#$%&'()*+,-./:;<=>?[\\]^`{|}~"
}
(makeWordSet
True
[ "abolish"
, "asserta"
, "assertz"
, "clause"
, "dynamic"
, "retract"
, "retractall"
])
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = True
, keywordDelims =
Data.Set.fromList "\t\n !\"#$%&'()*+,-./:;<=>?[\\]^`{|}~"
}
(makeWordSet
True
[ "get_byte"
, "get_char"
, "get_code"
, "nl"
, "open"
, "peek_byte"
, "peek_char"
, "peek_code"
, "put_byte"
, "put_char"
, "put_code"
, "read"
, "read_term"
, "set_stream_position"
, "write"
, "write_canonical"
, "writeq"
])
, rAttribute = FunctionTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = True
, keywordDelims =
Data.Set.fromList "\t\n !\"#$%&'()*+,-./:;<=>?[\\]^`{|}~"
}
(makeWordSet
True
[ "acyclic_term"
, "arg"
, "atom_chars"
, "atom_codes"
, "atom_concat"
, "atom_length"
, "char_code"
, "compare"
, "copy_term"
, "functor"
, "number_chars"
, "number_codes"
, "subsumes_term"
, "term_variables"
, "unify_with_occurs_check"
])
, rAttribute = FunctionTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = True
, keywordDelims =
Data.Set.fromList "\t\n !\"#$%&'()*+,-./:;<=>?[\\]^`{|}~"
}
(makeWordSet
True [ "discontigous" , "multifile" , "op" , "set_prolog_flag" ])
, rAttribute = FunctionTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = True
, keywordDelims =
Data.Set.fromList "\t\n !\"#$%&'()*+,-./:;<=>?[\\]^`{|}~"
}
(makeWordSet True [ "phrase" ])
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = True
, keywordDelims =
Data.Set.fromList "\t\n !\"#$%&'()*+,-./:;<=>?[\\]^`{|}~"
}
(makeWordSet True [ "is" ])
, rAttribute = DataTypeTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "arith_expr" ) ]
}
, Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = True
, keywordDelims =
Data.Set.fromList "\t\n !\"#$%&'()*+,-./:;<=>?[\\]^`{|}~"
}
(makeWordSet
True
[ "at_end_of_stream"
, "close"
, "current_input"
, "current_op"
, "current_output"
, "current_prolog_flag"
, "flush_output"
, "set_input"
, "set_output"
, "stream_property"
])
, rAttribute = FunctionTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = True
, keywordDelims =
Data.Set.fromList "\t\n !\"#$%&'()*+,-./:;<=>?[\\]^`{|}~"
}
(makeWordSet True [ "error" ])
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = True
, keywordDelims =
Data.Set.fromList "\t\n !\"#$%&'()*+,-./:;<=>?[\\]^`{|}~"
}
(makeWordSet
True
[ "domain_error"
, "evaluation_error"
, "existence_error"
, "instantiation_error"
, "permission_error"
, "representation_error"
, "resource_error"
, "syntax_error"
, "system_error"
, "type_error"
, "uninstantiation_error"
])
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = True
, keywordDelims =
Data.Set.fromList "\t\n !\"#$%&'()*+,-./:;<=>?[\\]^`{|}~"
}
(makeWordSet
True
[ "atan"
, "char_conversion"
, "current_char_conversion"
, "ensure_loaded"
, "include"
, "xor"
])
, rAttribute = AlertTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = IncludeRules ( "Prolog" , "number" )
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectChar '\''
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = True
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "single-quoted" ) ]
}
, Rule
{ rMatcher = DetectChar '`'
, rAttribute = StringTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = True
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "back-quoted" ) ]
}
, Rule
{ rMatcher = DetectChar '"'
, rAttribute = OtherTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = True
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "double-quoted" ) ]
}
, Rule
{ rMatcher = IncludeRules ( "Prolog" , "operator" )
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = AnyChar "abcdefghijklmnopqrstuvwxyz"
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = True
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "id" ) ]
}
, Rule
{ rMatcher = AnyChar "ABCDEFGHIJKLMNOPQRSTUVWXYZ_"
, rAttribute = DataTypeTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = True
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "var" ) ]
}
, Rule
{ rMatcher = AnyChar "#$&*+-./:<=>?@^~\\"
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "graphic" ) ]
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "back-quoted"
, Context
{ cName = "back-quoted"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher =
RegExpr
RE
{ reString = "`$"
, reCompiled = Just (compileRegex True "`$")
, reCaseSensitive = True
}
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "bq" ) ]
}
, Rule
{ rMatcher = DetectChar '`'
, rAttribute = StringTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "bq" ) ]
}
]
, cAttribute = StringTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "bin"
, Context
{ cName = "bin"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = AnyChar "01"
, rAttribute = BaseNTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = [ Pop ]
, cLineBeginContext = []
, cFallthrough = True
, cFallthroughContext = [ Pop ]
, cDynamic = False
}
)
, ( "bq"
, Context
{ cName = "bq"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = IncludeRules ( "Prolog" , "quoted_1st" )
, rAttribute = StringTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString =
"(``|\\\\[0-7]+\\\\|\\\\x[a-fA-F0-9]+\\\\|\\\\.|[^`\\\\]+)$"
, reCompiled =
Just
(compileRegex
True
"(``|\\\\[0-7]+\\\\|\\\\x[a-fA-F0-9]+\\\\|\\\\.|[^`\\\\]+)$")
, reCaseSensitive = True
}
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "syntax_error_bq" ) ]
}
, Rule
{ rMatcher = Detect2Chars '`' '`'
, rAttribute = CharTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectChar '`'
, rAttribute = StringTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop , Pop ]
}
, Rule
{ rMatcher = IncludeRules ( "Prolog" , "quoted_last" )
, rAttribute = StringTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = StringTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "char_code"
, Context
{ cName = "char_code"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = Detect2Chars '\'' '\''
, rAttribute = CharTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = DetectChar '\''
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = DetectChar '\\'
, rAttribute = CharTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "esc_seq_cc" ) ]
}
, Rule
{ rMatcher = DetectChar ' '
, rAttribute = AlertTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "."
, reCompiled = Just (compileRegex True ".")
, reCaseSensitive = True
}
, rAttribute = BaseNTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = [ Pop ]
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "clause"
, Context
{ cName = "clause"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = IncludeRules ( "Prolog" , "layout" )
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "\\.(?!(\\(|[#$&*+\\-./:<=>?@^~\\\\]))"
, reCompiled =
Just (compileRegex True "\\.(?!(\\(|[#$&*+\\-./:<=>?@^~\\\\]))")
, reCaseSensitive = True
}
, rAttribute = AlertTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "."
, reCompiled = Just (compileRegex True ".")
, reCaseSensitive = True
}
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = True
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "term" ) ]
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "comment-iso"
, Context
{ cName = "comment-iso"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = Detect2Chars '*' '/'
, rAttribute = CommentTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = DetectSpaces
, rAttribute = CommentTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = IncludeRules ( "Alerts_indent" , "" )
, rAttribute = CommentTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectIdentifier
, rAttribute = CommentTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = CommentTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "curly"
, Context
{ cName = "curly"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = IncludeRules ( "Prolog" , "layout" )
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectChar '('
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "nested" ) ]
}
, Rule
{ rMatcher = DetectChar '['
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "list" ) ]
}
, Rule
{ rMatcher = DetectChar '}'
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = DetectChar '{'
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "curly" ) ]
}
, Rule
{ rMatcher = DetectChar ','
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectChar '!'
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectChar '|'
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = Detect2Chars '.' '('
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = True
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "list_functor" ) ]
}
, Rule
{ rMatcher = IncludeRules ( "Prolog" , "atomic" )
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "double-quoted"
, Context
{ cName = "double-quoted"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher =
RegExpr
RE
{ reString = "\"$"
, reCompiled = Just (compileRegex True "\"$")
, reCaseSensitive = True
}
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "dq" ) ]
}
, Rule
{ rMatcher = DetectChar '"'
, rAttribute = OtherTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "dq" ) ]
}
]
, cAttribute = OtherTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "dq"
, Context
{ cName = "dq"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = IncludeRules ( "Prolog" , "quoted_1st" )
, rAttribute = OtherTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString =
"(\"\"|\\\\[0-7]+\\\\|\\\\x[a-fA-F0-9]+\\\\|\\\\.|[^\"\\\\]+)$"
, reCompiled =
Just
(compileRegex
True
"(\"\"|\\\\[0-7]+\\\\|\\\\x[a-fA-F0-9]+\\\\|\\\\.|[^\"\\\\]+)$")
, reCaseSensitive = True
}
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "syntax_error_dq" ) ]
}
, Rule
{ rMatcher = Detect2Chars '"' '"'
, rAttribute = CharTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectChar '"'
, rAttribute = OtherTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop , Pop ]
}
, Rule
{ rMatcher = IncludeRules ( "Prolog" , "quoted_last" )
, rAttribute = OtherTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = OtherTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "esc_seq_cc"
, Context
{ cName = "esc_seq_cc"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = DetectChar ' '
, rAttribute = AlertTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop , Pop ]
}
, Rule
{ rMatcher = AnyChar "abfnrtv\\'`\"]"
, rAttribute = CharTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop , Pop ]
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = [ Pop , Pop ]
, cLineBeginContext = []
, cFallthrough = True
, cFallthroughContext = [ Pop ]
, cDynamic = False
}
)
, ( "esc_seq_q"
, Context
{ cName = "esc_seq_q"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher =
RegExpr
RE
{ reString = "\\\\[0-7]+\\\\"
, reCompiled = Just (compileRegex True "\\\\[0-7]+\\\\")
, reCaseSensitive = True
}
, rAttribute = BaseNTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "\\\\x[a-fA-F0-9]+\\\\"
, reCompiled = Just (compileRegex True "\\\\x[a-fA-F0-9]+\\\\")
, reCaseSensitive = True
}
, rAttribute = BaseNTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = DetectChar '\\'
, rAttribute = CharTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "esc_seq_q2" ) ]
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = [ Push ( "Prolog" , "syntax_error" ) ]
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "esc_seq_q2"
, Context
{ cName = "esc_seq_q2"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = DetectChar ' '
, rAttribute = AlertTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop , Pop ]
}
, Rule
{ rMatcher = AnyChar "abfnrtv\\'`\"]"
, rAttribute = CharTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop , Pop ]
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = [ Push ( "Prolog" , "syntax_error" ) ]
, cLineBeginContext = []
, cFallthrough = True
, cFallthroughContext = [ Pop , Pop ]
, cDynamic = False
}
)
, ( "graphic"
, Context
{ cName = "graphic"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = AnyChar "#$&*+-./:<=>?@^~\\"
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = [ Pop ]
, cLineBeginContext = []
, cFallthrough = True
, cFallthroughContext = [ Pop ]
, cDynamic = False
}
)
, ( "hex"
, Context
{ cName = "hex"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = AnyChar "0123456789abcdefABCDEF"
, rAttribute = BaseNTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = [ Pop ]
, cLineBeginContext = []
, cFallthrough = True
, cFallthroughContext = [ Pop ]
, cDynamic = False
}
)
, ( "id"
, Context
{ cName = "id"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = DetectIdentifier
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "layout"
, Context
{ cName = "layout"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = DetectSpaces
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = Detect2Chars '/' '*'
, rAttribute = CommentTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "comment-iso" ) ]
}
, Rule
{ rMatcher = StringDetect "%BEGIN"
, rAttribute = RegionMarkerTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = True
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "region_marker" ) ]
}
, Rule
{ rMatcher = StringDetect "%END"
, rAttribute = RegionMarkerTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = True
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "region_marker" ) ]
}
, Rule
{ rMatcher = DetectChar '%'
, rAttribute = CommentTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = True
, rFirstNonspace = True
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "layout_fold" ) ]
}
, Rule
{ rMatcher = DetectChar '%'
, rAttribute = CommentTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "1-comment" ) ]
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "layout_fold"
, Context
{ cName = "layout_fold"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = DetectSpaces
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = StringDetect "%BEGIN"
, rAttribute = RegionMarkerTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = True
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "region_marker" ) ]
}
, Rule
{ rMatcher = StringDetect "%END"
, rAttribute = RegionMarkerTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = True
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "region_marker" ) ]
}
, Rule
{ rMatcher = DetectChar '%'
, rAttribute = CommentTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = True
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "1-comment" ) ]
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = True
, cFallthroughContext = [ Pop ]
, cDynamic = False
}
)
, ( "list"
, Context
{ cName = "list"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = IncludeRules ( "Prolog" , "layout" )
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectChar '('
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "nested" ) ]
}
, Rule
{ rMatcher = DetectChar ']'
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = DetectChar '['
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "list" ) ]
}
, Rule
{ rMatcher = DetectChar '{'
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "curly" ) ]
}
, Rule
{ rMatcher = DetectChar ','
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectChar '!'
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectChar '|'
, rAttribute = FunctionTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = Detect2Chars '.' '('
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = True
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "list_functor" ) ]
}
, Rule
{ rMatcher = IncludeRules ( "Prolog" , "atomic" )
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "list_functor"
, Context
{ cName = "list_functor"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = DetectChar '.'
, rAttribute = FunctionTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = [ Push ( "Prolog" , "syntax_error" ) ]
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "nested"
, Context
{ cName = "nested"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = IncludeRules ( "Prolog" , "layout" )
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectChar ')'
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = DetectChar '('
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "nested" ) ]
}
, Rule
{ rMatcher = DetectChar '['
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "list" ) ]
}
, Rule
{ rMatcher = DetectChar '{'
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "curly" ) ]
}
, Rule
{ rMatcher = DetectChar '!'
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectChar ','
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectChar '|'
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = Detect2Chars '.' '('
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = True
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "list_functor" ) ]
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "\\.(?!(\\(|[#$&*+\\-./:<=>?@^~\\\\]))"
, reCompiled =
Just (compileRegex True "\\.(?!(\\(|[#$&*+\\-./:<=>?@^~\\\\]))")
, reCaseSensitive = True
}
, rAttribute = AlertTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = IncludeRules ( "Prolog" , "atomic" )
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "nested_expr"
, Context
{ cName = "nested_expr"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = DetectChar '('
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "nested_expr" ) ]
}
, Rule
{ rMatcher = DetectChar ')'
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = DetectChar '!'
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectChar ','
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectChar '|'
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString =
"(;|->|\\\\\\+|:-|=|\\\\=)(?![#$&*+\\-./:<=>?@^~\\\\])"
, reCompiled =
Just
(compileRegex
True "(;|->|\\\\\\+|:-|=|\\\\=)(?![#$&*+\\-./:<=>?@^~\\\\])")
, reCaseSensitive = True
}
, rAttribute = FunctionTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = IncludeRules ( "Prolog" , "arith_expr_common" )
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "number"
, Context
{ cName = "number"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher =
RegExpr
RE
{ reString = "0'\\\\?$"
, reCompiled = Just (compileRegex True "0'\\\\?$")
, reCaseSensitive = True
}
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "syntax_error_cc" ) ]
}
, Rule
{ rMatcher = Detect2Chars '0' '\''
, rAttribute = BaseNTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "char_code" ) ]
}
, Rule
{ rMatcher = Detect2Chars '0' 'b'
, rAttribute = BaseNTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "bin" ) ]
}
, Rule
{ rMatcher = Detect2Chars '0' 'o'
, rAttribute = BaseNTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "oct" ) ]
}
, Rule
{ rMatcher = Detect2Chars '0' 'x'
, rAttribute = BaseNTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "hex" ) ]
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "[0-9]+\\.[0-9]+E[+\\-]?[0-9]+"
, reCompiled =
Just (compileRegex True "[0-9]+\\.[0-9]+E[+\\-]?[0-9]+")
, reCaseSensitive = True
}
, rAttribute = FloatTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "[0-9]+\\.[0-9]+"
, reCompiled = Just (compileRegex True "[0-9]+\\.[0-9]+")
, reCaseSensitive = True
}
, rAttribute = FloatTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "[0-9]+E[+\\-]?[0-9]+"
, reCompiled = Just (compileRegex True "[0-9]+E[+\\-]?[0-9]+")
, reCaseSensitive = True
}
, rAttribute = FloatTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = Int
, rAttribute = DecValTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = [ Pop ]
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "oct"
, Context
{ cName = "oct"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = AnyChar "01234567"
, rAttribute = BaseNTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = [ Pop ]
, cLineBeginContext = []
, cFallthrough = True
, cFallthroughContext = [ Pop ]
, cDynamic = False
}
)
, ( "operator"
, Context
{ cName = "operator"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = True
, keywordDelims =
Data.Set.fromList "\t\n !\"#$%&'()*+,-./:;<=>?[\\]^`{|}~"
}
(makeWordSet True [ "is" ])
, rAttribute = DataTypeTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "arith_expr" ) ]
}
, Rule
{ rMatcher =
Keyword
KeywordAttr
{ keywordCaseSensitive = True
, keywordDelims =
Data.Set.fromList "\t\n !\"#$%&'()*+,-./:;<=>?[\\]^`{|}~"
}
(makeWordSet True [ "div" , "mod" , "rem" ])
, rAttribute = FunctionTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString =
"(;|->|\\\\\\+|:-|=|\\\\=)(?![#$&*+\\-./:<=>?@^~\\\\])"
, reCompiled =
Just
(compileRegex
True "(;|->|\\\\\\+|:-|=|\\\\=)(?![#$&*+\\-./:<=>?@^~\\\\])")
, reCaseSensitive = True
}
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString =
"(\\?-|==|\\\\==|@=<|@<|@>=|@>|=\\.\\.|@|:)(?![#$&*+\\-./:<=>?@^~\\\\])"
, reCompiled =
Just
(compileRegex
True
"(\\?-|==|\\\\==|@=<|@<|@>=|@>|=\\.\\.|@|:)(?![#$&*+\\-./:<=>?@^~\\\\])")
, reCaseSensitive = True
}
, rAttribute = FunctionTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "-->(?![#$&*+\\-./:<=>?@^~\\\\])"
, reCompiled =
Just (compileRegex True "-->(?![#$&*+\\-./:<=>?@^~\\\\])")
, reCaseSensitive = True
}
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "(=:=|=\\\\=|=<|<|>=|>)(?![#$&*+\\-./:<=>?@^~\\\\])"
, reCompiled =
Just
(compileRegex
True "(=:=|=\\\\=|=<|<|>=|>)(?![#$&*+\\-./:<=>?@^~\\\\])")
, reCaseSensitive = True
}
, rAttribute = DataTypeTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "arith_expr" ) ]
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "(\\+|-|\\*|\\^)(?![#$&*+\\-./:<=>?@^~\\\\])"
, reCompiled =
Just
(compileRegex
True "(\\+|-|\\*|\\^)(?![#$&*+\\-./:<=>?@^~\\\\])")
, reCaseSensitive = True
}
, rAttribute = FunctionTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "//(?![#$&*+\\-./:<=>?@^~\\\\])"
, reCompiled =
Just (compileRegex True "//(?![#$&*+\\-./:<=>?@^~\\\\])")
, reCaseSensitive = True
}
, rAttribute = FunctionTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "(/|\\*\\*)(?![#$&*+\\-./:<=>?@^~\\\\])"
, reCompiled =
Just (compileRegex True "(/|\\*\\*)(?![#$&*+\\-./:<=>?@^~\\\\])")
, reCaseSensitive = True
}
, rAttribute = FunctionTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "(/\\\\|\\\\/|\\\\|<<|>>)(?![#$&*+\\-./:<=>?@^~\\\\])"
, reCompiled =
Just
(compileRegex
True "(/\\\\|\\\\/|\\\\|<<|>>)(?![#$&*+\\-./:<=>?@^~\\\\])")
, reCaseSensitive = True
}
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = [ Pop ]
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "quoted_1st"
, Context
{ cName = "quoted_1st"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = LineContinue
, rAttribute = CharTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectSpaces
, rAttribute = CharTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Just 0
, rContextSwitch = []
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "quoted_last"
, Context
{ cName = "quoted_last"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = DetectChar '\\'
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = True
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "esc_seq_q" ) ]
}
, Rule
{ rMatcher = DetectChar ' '
, rAttribute = AlertTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectIdentifier
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectSpaces
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "region_marker"
, Context
{ cName = "region_marker"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = IncludeRules ( "Prolog" , "1-comment" )
, rAttribute = RegionMarkerTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = RegionMarkerTok
, cLineEmptyContext = []
, cLineEndContext = [ Pop ]
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "shebang"
, Context
{ cName = "shebang"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = Detect2Chars '#' '!'
, rAttribute = CommentTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Just 0
, rContextSwitch = [ Push ( "Prolog" , "1-comment" ) ]
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "."
, reCompiled = Just (compileRegex True ".")
, reCaseSensitive = True
}
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = True
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "clause" ) ]
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = [ Push ( "Prolog" , "clause" ) ]
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "single-quoted"
, Context
{ cName = "single-quoted"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher =
RegExpr
RE
{ reString = "'$"
, reCompiled = Just (compileRegex True "'$")
, reCaseSensitive = True
}
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "sq" ) ]
}
, Rule
{ rMatcher = DetectChar '\''
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "sq" ) ]
}
]
, cAttribute = NormalTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "sq"
, Context
{ cName = "sq"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = IncludeRules ( "Prolog" , "quoted_1st" )
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString =
"(''|\\\\[0-7]+\\\\|\\\\x[a-fA-F0-9]+\\\\|\\\\.|[^'\\\\]+)$"
, reCompiled =
Just
(compileRegex
True
"(''|\\\\[0-7]+\\\\|\\\\x[a-fA-F0-9]+\\\\|\\\\.|[^'\\\\]+)$")
, reCaseSensitive = True
}
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "syntax_error_sq" ) ]
}
, Rule
{ rMatcher = Detect2Chars '\'' '\''
, rAttribute = CharTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectChar '\''
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop , Pop ]
}
, Rule
{ rMatcher = IncludeRules ( "Prolog" , "quoted_last" )
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = NormalTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "syntax_error"
, Context
{ cName = "syntax_error"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = DetectSpaces
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = DetectIdentifier
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "."
, reCompiled = Just (compileRegex True ".")
, reCaseSensitive = True
}
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "syntax_error_bq"
, Context
{ cName = "syntax_error_bq"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = Detect2Chars '\\' '`'
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = Detect2Chars '`' '`'
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = DetectChar '`'
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop , Pop , Pop ]
}
, Rule
{ rMatcher = IncludeRules ( "Prolog" , "syntax_error" )
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "syntax_error_cc"
, Context
{ cName = "syntax_error_cc"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = DetectSpaces
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = True
, cFallthroughContext = [ Pop ]
, cDynamic = False
}
)
, ( "syntax_error_dq"
, Context
{ cName = "syntax_error_dq"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = Detect2Chars '\\' '"'
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = Detect2Chars '"' '"'
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = DetectChar '"'
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop , Pop , Pop ]
}
, Rule
{ rMatcher = IncludeRules ( "Prolog" , "syntax_error" )
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "syntax_error_sq"
, Context
{ cName = "syntax_error_sq"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = Detect2Chars '\\' '\''
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = Detect2Chars '\'' '\''
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = DetectChar '\''
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop , Pop , Pop ]
}
, Rule
{ rMatcher = IncludeRules ( "Prolog" , "syntax_error" )
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "term"
, Context
{ cName = "term"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = IncludeRules ( "Prolog" , "layout" )
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectChar '('
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "nested" ) ]
}
, Rule
{ rMatcher = DetectChar '['
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "list" ) ]
}
, Rule
{ rMatcher = DetectChar '{'
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "curly" ) ]
}
, Rule
{ rMatcher = DetectChar ','
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectChar '!'
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = DetectChar '|'
, rAttribute = NormalTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
, Rule
{ rMatcher = Detect2Chars '.' '('
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = True
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Push ( "Prolog" , "list_functor" ) ]
}
, Rule
{ rMatcher =
RegExpr
RE
{ reString = "\\.(?!(\\(|[#$&*+\\-./:<=>?@^~\\\\]))"
, reCompiled =
Just (compileRegex True "\\.(?!(\\(|[#$&*+\\-./:<=>?@^~\\\\]))")
, reCaseSensitive = True
}
, rAttribute = KeywordTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
, Rule
{ rMatcher = IncludeRules ( "Prolog" , "atomic" )
, rAttribute = ErrorTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = []
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
, ( "var"
, Context
{ cName = "var"
, cSyntax = "Prolog"
, cRules =
[ Rule
{ rMatcher = DetectIdentifier
, rAttribute = DataTypeTok
, rIncludeAttribute = False
, rDynamic = False
, rCaseSensitive = True
, rChildren = []
, rLookahead = False
, rFirstNonspace = False
, rColumn = Nothing
, rContextSwitch = [ Pop ]
}
]
, cAttribute = ErrorTok
, cLineEmptyContext = []
, cLineEndContext = []
, cLineBeginContext = []
, cFallthrough = False
, cFallthroughContext = []
, cDynamic = False
}
)
]
, sAuthor = "Torsten Eichst\228dt (torsten.eichstaedt@web.de)"
, sVersion = "3"
, sLicense = "LGPLv2+"
, sExtensions = [ "*.prolog" , "*.dcg" , "*.pro" ]
, sStartingContext = "shebang"
}