def context=(value)
      if value
        if value.is_a?(UIViewController)
          @context = RubyMotionQuery::RMQ.weak_ref(value)
        elsif value.is_a?(UIView)
          @context = value
        #else
          #debug.log_detailed('Invalid context', objects: {value: value})
        end
      else
        @context = nil
      end
      @context
    end
def context=(value)
      if value
        if value.is_a?(UIViewController)
          @context = RubyMotionQuery::RMQ.weak_ref(value)
        elsif value.is_a?(UIView)
          @context = value
        #else
          #debug.log_detailed('Invalid context', objects: {value: value})
        end
      else
        @context = nil
      end
      @context
    end
This is mostly used internally

 If rmq was called in a view, context will be that view. If it was called
 in a UIViewController, it will be that controller. If it is called in another
 object, it will be current controller's rmq instance and thus context will be
 that controller