module Rouge::Lexers::TypescriptCommon

Public Class Methods

extended(base) click to toggle source
# File lib/rouge/lexers/typescript/common.rb, line 32
def self.extended(base)
  base.prepend :root do
    rule %r/[?][.]/, base::Punctuation
    rule %r/[?]{2}/, base::Operator
  end

  base.prepend :statement do
    rule %r/(#{Javascript.id_regex})(\??)(\s*)(:)/ do
      groups base::Name::Label, base::Punctuation, base::Text, base::Punctuation
      push :expr_start
    end
  end
end

Public Instance Methods

builtins() click to toggle source
Calls superclass method
# File lib/rouge/lexers/typescript/common.rb, line 26
def builtins
  @builtins ||= super + %w(
    Pick Partial Readonly Record
  )
end
declarations() click to toggle source
Calls superclass method
# File lib/rouge/lexers/typescript/common.rb, line 13
def declarations
  @declarations ||= super + Set.new(%w(
    type abstract
  ))
end
keywords() click to toggle source
Calls superclass method
# File lib/rouge/lexers/typescript/common.rb, line 6
def keywords
  @keywords ||= super + Set.new(%w(
    is namespace static private protected public
    implements readonly
  ))
end
reserved() click to toggle source
Calls superclass method
# File lib/rouge/lexers/typescript/common.rb, line 19
def reserved
  @reserved ||= super + Set.new(%w(
    string any void number namespace module
    declare default interface keyof
  ))
end