Sha256: c7a3d0daec2d5b0fae3c037afd14f7b24222eec5b3aabf08994e214689aa26fc
Contents?: true
Size: 698 Bytes
Versions: 10
Compression:
Stored size: 698 Bytes
Contents
module Rouge class TextAnalyzer < String def shebang return @shebang if instance_variable_defined? :@shebang self =~ /\A\s*#!(.*)$/ @shebang = $1 end def shebang?(match) match = /\b#{match}(\s|$)/ match === shebang end def doctype return @doctype if instance_variable_defined? :@doctype self =~ %r(\A\s* (?:<\?.*?\?>\s*)? # possible <?xml...?> tag <!DOCTYPE\s+(.+?)> )xm @doctype = $1 end def doctype?(type=//) type === doctype end def lexes_cleanly?(lexer) lexer.lex(self) do |(tok, _)| return false if tok.name == 'Error' end true end end end
Version data entries
10 entries across 10 versions & 1 rubygems