Sha256: 64dc7411e3af589501f4d9a6cf46c8dc8cc100b8de4594fbb21ebd083452ec63

Contents?: true

Size: 536 Bytes

Versions: 16

Compression:

Stored size: 536 Bytes

Contents

class Predicate
  class Qualifier < Sexpr::Rewriter

    grammar Grammar

    def initialize(qualifier)
      @qualifier = qualifier
    end
    attr_reader :qualifier

    def on_identifier(sexpr)
      case qualifier
      when Symbol
        [:qualified_identifier, qualifier, sexpr.name]
      else
        return sexpr unless q = qualifier[sexpr.name]
        [:qualified_identifier, q, sexpr.name]
      end
    end

    def on_native(sexpr)
      raise NotSupportedError
    end

    alias :on_missing :copy_and_apply

  end
end

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
predicate-2.4.0 lib/predicate/processors/qualifier.rb
predicate-2.3.3 lib/predicate/processors/qualifier.rb
predicate-2.3.2 lib/predicate/processors/qualifier.rb
predicate-2.3.1 lib/predicate/processors/qualifier.rb
predicate-2.3.0 lib/predicate/processors/qualifier.rb
predicate-2.2.1 lib/predicate/processors/qualifier.rb
predicate-2.2.0 lib/predicate/processors/qualifier.rb
predicate-2.1.0 lib/predicate/processors/qualifier.rb
predicate-2.0.1 lib/predicate/processors/qualifier.rb
predicate-2.0.0 lib/predicate/processors/qualifier.rb
predicate-1.3.4 lib/predicate/processors/qualifier.rb
predicate-1.3.3 lib/predicate/processors/qualifier.rb
predicate-1.3.2 lib/predicate/processors/qualifier.rb
predicate-1.3.1 lib/predicate/processors/qualifier.rb
predicate-1.3.0 lib/predicate/processors/qualifier.rb
predicate-1.2.0 lib/predicate/processors/qualifier.rb