Sha256: 715ce56cc279a5cf9cbc1d34a5aae422a56cfb5c0858f05716cda34b101a9302

Contents?: true

Size: 637 Bytes

Versions: 21

Compression:

Stored size: 637 Bytes

Contents

require "forwardable"
require "liquidscript/icr"
require "liquidscript/errors"
require "liquidscript/version"
require "liquidscript/scanner"
require "liquidscript/compiler"
require "liquidscript/generator"

if defined? ::Sprockets
  require "liquidscript/template"
end

module Liquidscript
  def self.compile(data, options = {})
    scanner = Scanner::Liquidscript.new(data)
    if options[:tokens]
      return scanner.each.to_a.to_sexp
    end

    compiler = Compiler::ICR.new(scanner)
    compiler.compile
    if options[:ast]
      return compiler.top.to_sexp
    end

    Generator::Javascript.new(compiler.top).generate
  end
end

Version data entries

21 entries across 21 versions & 1 rubygems

Version Path
liquidscript-0.11.0.rc1 lib/liquidscript.rb
liquidscript-0.10.4 lib/liquidscript.rb
liquidscript-0.10.3 lib/liquidscript.rb
liquidscript-0.10.2 lib/liquidscript.rb
liquidscript-0.10.1 lib/liquidscript.rb
liquidscript-0.10.0 lib/liquidscript.rb
liquidscript-0.9.2 lib/liquidscript.rb
liquidscript-0.9.1 lib/liquidscript.rb
liquidscript-0.9.0 lib/liquidscript.rb
liquidscript-0.8.2 lib/liquidscript.rb
liquidscript-0.8.1 lib/liquidscript.rb
liquidscript-0.8.0 lib/liquidscript.rb
liquidscript-0.7.12 lib/liquidscript.rb
liquidscript-0.7.11 lib/liquidscript.rb
liquidscript-0.7.10 lib/liquidscript.rb
liquidscript-0.7.9 lib/liquidscript.rb
liquidscript-0.7.8 lib/liquidscript.rb
liquidscript-0.7.7 lib/liquidscript.rb
liquidscript-0.7.6 lib/liquidscript.rb
liquidscript-0.7.5 lib/liquidscript.rb