class RougeLines::Lexers::SML
Public Class Methods
keywords()
click to toggle source
# File lib/rouge-lines/lexers/sml.rb, line 13 def self.keywords @keywords ||= Set.new %w( abstype and andalso as case datatype do else end exception fn fun handle if in infix infixr let local nonfix of op open orelse raise rec then type val with withtype while eqtype functor include sharing sig signature struct structure where ) end
symbolic_reserved()
click to toggle source
# File lib/rouge-lines/lexers/sml.rb, line 23 def self.symbolic_reserved @symbolic_reserved ||= Set.new %w(: | = => -> # :>) end
Public Instance Methods
token_for_final_id(id)
click to toggle source
# File lib/rouge-lines/lexers/sml.rb, line 60 def token_for_final_id(id) if self.class.keywords.include? id or self.class.symbolic_reserved.include? id Error else Name end end
token_for_id(id)
click to toggle source
# File lib/rouge-lines/lexers/sml.rb, line 68 def token_for_id(id) if self.class.keywords.include? id Keyword::Reserved elsif self.class.symbolic_reserved.include? id Punctuation else Name end end
token_for_id_with_dot(id)
click to toggle source
# File lib/rouge-lines/lexers/sml.rb, line 52 def token_for_id_with_dot(id) if self.class.keywords.include? id Error else Name::Namespace end end