class Rouge::Lexers::MiniZinc

def self.builtins

def self.builtins
  @builtins = Set.new %w[
    abort abs acosh array_intersect array_union array1d array2d array3d
    array4d array5d array6d asin assert atan bool2int card ceil concat
    cos cosh dom dom_array dom_size fix exp floor index_set
    index_set_1of2 index_set_2of2 index_set_1of3 index_set_2of3
    index_set_3of3 int2float is_fixed join lb lb_array length ln log log2
    log10 min max pow product round set2array show show_int show_float
    sin sinh sqrt sum tan tanh trace ub ub_array
  ]
end

def self.keywords

def self.keywords
  @keywords = Set.new %w[
    ann annotation any constraint else endif function for forall if
    include list of op output minimize maximize par predicate record
    satisfy solve test then type var where
  ]
end

def self.keywords_type

def self.keywords_type
  @keywords_type ||= Set.new %w(
    array set bool enum float int string tuple
  )
end

def self.operators

def self.operators
  @operators ||= Set.new %w(
    in subset superset union diff symdiff intersect
  )
end