-- Chapel language definition file for highlight http://www.andre-simon.de/
-- This file is written in Lua
--
-- Author: Lydia Duncan
-- Date  : April 28, 2016
--
-- The file is used to describe keywords and special symbols of programming languages.
-- See README in the highlight directory for details.

Description="Chapel"

Keywords={
  { Id=1,
   List={"as", "align", "atomic", "begin", "break", "by", "class", "cobegin",
         "coforall", "config", "const", "continue", "proc", "iter", "delete",
         "dmapped", "do", "domain", "else", "enum", "except", "export",
         "extern", "false", "for", "forall", "if", "in", "index", "inline",
         "inout", "label", "lambda", "let", "local", "module", "new", "nil",
         "noinit", "on", "only", "otherwise", "out", "param", "private",
         "public", "record", "reduce", "ref", "require", "return", "scan",
         "select", "serial", "single", "sparse", "subdomain", "sync", "then",
         "true", "type", "union", "use", "var", "when", "where", "while",
         "with", "yield", "zip"
        }
  },
  { Id=2,
    List= { "bool", "complex", "imag", "int", "opaque", "range", "real",
            "string", "uint"
          }
  },
  { Id=3,
    Regex=[[(\w+)\s*\(]]
  }
}

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

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

IgnoreCase=false

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

EnableIndentation=true
