
Description="Whiley"

Digits = [[ (?:0x)[0-9a-fA-F']+|\d*[\.]?\d+(?:[eE][\-\+]\d+)?[blLuU]* ]]

Keywords={
  {  Id=1,
   List={ "all", "any", "assert", "assume", "bool", "break", "byte", "case", 
        "catch", "continue", "debug", "default", "do", "else", "ensures", "export", 
        "false", "fail", "finite", "for", "function", "if", "import", "in", "int", "is", 
        "method", "native", "new", "no", "null", "package", "private", "protected", 
        "public", "requires", "return", "skip", "some", "switch", "throw", "throws", 
        "total", "true", "try", "void", "where", "while" }
  },
  { Id=2,
    List= { "constant", "from", "type" }
  },
  { Id=3,
    List= { }
  },
  { Id=4,
    Regex=[[(\w+)\s*\(]]
  }
}

Strings = {
  Delimiter=[["|']]
}

Comments = {
   { Block=true,
     Nested=false,
     Delimiter = { [[\/\*]], [[\*\/]] }
   },
   {
     Block=false,
     Delimiter = { [[//]] }
   }
}

IgnoreCase=false

PreProcessor = {
  Prefix=[[#]],
  Continuation="\\",
}

Operators=[[\(|\)|\[|\]|\{|\}|\,|\;|\.|\:|\&|<|>|\!|=|\/|\*|\%|\+|\-|\~|\||\^]]
