class Rouge::Lexers::Apex

def self.constants

def self.constants
  @constants ||= Set.new %w(true false null)
end

def self.declarations

def self.declarations
  @declarations ||= Set.new %w(
    abstract const enum extends final implements native private protected
    public static super synchronized throws transient volatile with
    sharing without inherited virtual global testmethod
  )
end

def self.keywords

def self.keywords
  @keywords ||= Set.new %w(
    assert break case catch continue default do else finally for if goto
    instanceof new return switch this throw try while insert update
    delete
  )
end

def self.soql

def self.soql
  @soql ||= Set.new %w(
    SELECT FROM WHERE UPDATE LIKE TYPEOF END USING SCOPE WITH DATA
    CATEGORY GROUP BY ROLLUP CUBE HAVING ORDER BY ASC DESC NULLS FIRST
    LAST LIMIT OFFSET FOR VIEW REFERENCE UPDATE TRACKING VIEWSTAT OR AND
  )
end

def self.types

def self.types
  @types ||= Set.new %w(
    String boolean byte char double float int long short var void
  )
end