Sha256: acd3fa98b1537d19c3d335d6fd6fa8f0be06a2dc7906089d0c418f6790a71503

Contents?: true

Size: 697 Bytes

Versions: 20

Compression:

Stored size: 697 Bytes

Contents

require 'set'

module Liquidscript
  module Scanner
    class Base
      class Builder

        EMPTY_VALUE = Object.new

        attr_reader :contexts

        def default_context(value = EMPTY_VALUE)
          if value.equal? EMPTY_VALUE
            @default_context
          else
            @default_context = value
          end
        end

        def contexts
          @contexts ||= Set.new
        end

        def context(name)
          context = Context.new(name)
          context.instance_exec(&Proc.new)
          contexts << context
        end

        def reset!
          @default_context = nil
          @contexts = nil
          self
        end
      end
    end
  end
end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
liquidscript-0.7.9 lib/liquidscript/scanner/base/builder.rb
liquidscript-0.7.8 lib/liquidscript/scanner/base/builder.rb
liquidscript-0.7.7 lib/liquidscript/scanner/base/builder.rb
liquidscript-0.7.6 lib/liquidscript/scanner/base/builder.rb
liquidscript-0.7.5 lib/liquidscript/scanner/base/builder.rb
liquidscript-0.7.4 lib/liquidscript/scanner/base/builder.rb
liquidscript-0.7.3 lib/liquidscript/scanner/base/builder.rb
liquidscript-0.7.2 lib/liquidscript/scanner/base/builder.rb
liquidscript-0.7.1 lib/liquidscript/scanner/base/builder.rb
liquidscript-0.7.0 lib/liquidscript/scanner/base/builder.rb
liquidscript-0.6.5 lib/liquidscript/scanner/base/builder.rb
liquidscript-0.6.4 lib/liquidscript/scanner/base/builder.rb
liquidscript-0.6.3 lib/liquidscript/scanner/base/builder.rb
liquidscript-0.6.2 lib/liquidscript/scanner/base/builder.rb
liquidscript-0.6.1 lib/liquidscript/scanner/base/builder.rb
liquidscript-0.6.0 lib/liquidscript/scanner/base/builder.rb
liquidscript-0.5.1 lib/liquidscript/scanner/base/builder.rb
liquidscript-0.5.0 lib/liquidscript/scanner/base/builder.rb
liquidscript-0.4.1 lib/liquidscript/scanner/base/builder.rb
liquidscript-0.4.0 lib/liquidscript/scanner/base/builder.rb