test (God::Conditions::Complex)

    # File lib/god/conditions/complex.rb, line 58
          def test
            if @this.nil?
              # Although this() makes sense semantically and therefore
              # encourages easy-to-read conditions, being able to omit it
              # allows for more DRY code in some cases, so we deal with a
              # nil @this here by initially setting res to true or false,
              # depending on whether the first operator used is AND or OR
              # respectively.
              if 0 < @op_stack[0] & AND
                res = true
              else
                res = false
              end
            else
              res = @this.test
            end

            @op_stack.each do |op|
              cond = @oper_stack.shift
              eval "res " + ((0 < op & AND) ? "&&" : "||") + "= " + ((0 < op & NOT) ? "!" : "") + "cond.test"
              @oper_stack.push cond
            end

            res
          end