# File lib/thinking_sphinx/search/glaze.rb, line 2 def initialize(context, object, raw = {}, pane_classes = []) @object, @raw = object, raw @panes = pane_classes.collect { |klass| klass.new context, object, @raw } end
# File lib/thinking_sphinx/search/glaze.rb, line 10 def ==(object) (@object == object) || super end
# File lib/thinking_sphinx/search/glaze.rb, line 14 def equal?(object) @object.equal? object end
# File lib/thinking_sphinx/search/glaze.rb, line 18 def respond_to?(method, include_private = false) @object.respond_to?(method, include_private) || @panes.any? { |pane| pane.respond_to?(method, include_private) } end
# File lib/thinking_sphinx/search/glaze.rb, line 23 def unglazed @object end
# File lib/thinking_sphinx/search/glaze.rb, line 29 def method_missing(method, *args, &block) pane = @panes.detect { |pane| pane.respond_to?(method) } if @object.respond_to?(method) || pane.nil? @object.send(method, *args, &block) else pane.send(method, *args, &block) end end