Class: RBlade::Compiler
- Inherits:
-
Object
- Object
- RBlade::Compiler
- Defined in:
- lib/rblade/compiler.rb
Class Method Summary collapse
- .compileAttributeString(string_template) ⇒ Object
- .compileString(string_template) ⇒ Object
- .compileTokens(tokens) ⇒ Object
Class Method Details
.compileAttributeString(string_template) ⇒ Object
36 37 38 39 40 41 42 43 44 |
# File 'lib/rblade/compiler.rb', line 36 def self.compileAttributeString(string_template) tokens = [Token.new(:unprocessed, string_template)] CompilesRuby.compile! tokens CompilesComments.compile!(tokens) CompilesEchos.compile!(tokens) compileTokens tokens end |
.compileString(string_template) ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 33 34 |
# File 'lib/rblade/compiler.rb', line 22 def self.compileString(string_template) tokens = [Token.new(:unprocessed, string_template)] CompilesComments.new.compile! tokens CompilesEchos.new.compile! tokens CompilesRuby.new.compile! tokens TokenizesComponents.new.tokenize! tokens TokenizesStatements.new.tokenize! tokens CompilesStatements.new.compile! tokens CompilesComponents.new.compile! tokens compileTokens tokens end |
.compileTokens(tokens) ⇒ Object
46 47 48 49 50 51 52 53 54 55 56 57 58 |
# File 'lib/rblade/compiler.rb', line 46 def self.compileTokens tokens output = "" tokens.each do |token, cake| if token.type == :unprocessed || token.type == :raw_text output << "_out<<'" << RBlade.escape_quotes(token.value) << "';" else output << token.value end end output end |