Sha256: 123f3fb6b4ce166002f53b9850aee84d214692bf9aefd368dc54d71b58b8e9bb
Contents?: true
Size: 716 Bytes
Versions: 3
Compression:
Stored size: 716 Bytes
Contents
module Wukong module AndPig PIG_SYMBOLS = { } mattr_accessor :anon_var_idx self.anon_var_idx = 0 end end Symbol.class_eval do def << relation case when relation.is_a?(Wukong::AndPig::PigVar) Wukong::AndPig::PigVar.new_relation(self, relation) when relation.is_a?(Symbol) && (pig_var = Wukong::AndPig::PIG_SYMBOLS[relation]) Wukong::AndPig::PigVar.new_relation(self, pig_var) else raise "Don't know how to pigify RHS #{relation.inspect}" end end def method_missing method, *args pig_var = Wukong::AndPig::PIG_SYMBOLS[self] if pig_var && pig_var.respond_to?(method) pig_var.send(method, *args) else super method, *args end end end
Version data entries
3 entries across 3 versions & 2 rubygems
Version | Path |
---|---|
mrflip-wukong-0.1.0 | lib/wukong/and_pig/symbol.rb |
wukong-0.1.4 | lib/wukong/and_pig/symbol.rb |
wukong-0.1.1 | lib/wukong/and_pig/symbol.rb |