class Rouge::Lexers::SuperCollider

def self.constants

def self.constants
  @constants ||= Set.new %w(
    true false nil inf thisThread
    thisMethod thisFunction thisProcess
    thisFunctionDef currentEnvironment
    topEnvironment
  )
end

def self.keywords

def self.keywords
  @keywords ||= Set.new %w(
    var arg classvar const super this
  )
end

def self.reserved

of the time
them as such because it makes things clearer 99%
these aren't technically keywords, but we treat
def self.reserved
  @reserved ||= Set.new %w(
    case do for forBy loop if while new newCopyArgs
  )
end