001 package railo.runtime.interpreter.ref.op; 002 003 import railo.runtime.PageContext; 004 import railo.runtime.exp.PageException; 005 import railo.runtime.interpreter.ref.Ref; 006 import railo.runtime.interpreter.ref.RefSupport; 007 import railo.runtime.op.Caster; 008 009 010 /** 011 * Plus operation 012 */ 013 public final class Or extends RefSupport implements Ref { 014 015 private Ref right; 016 private Ref left; 017 018 /** 019 * constructor of the class 020 * @param left 021 * @param right 022 */ 023 public Or(Ref left, Ref right) { 024 this.left=left; 025 this.right=right; 026 } 027 028 @Override 029 public Object getValue(PageContext pc) throws PageException { 030 return (Caster.toBooleanValue(left.getValue(pc)) || Caster.toBooleanValue(right.getValue(pc)))?Boolean.TRUE:Boolean.FALSE; 031 } 032 033 @Override 034 public String getTypeName() { 035 return "operation"; 036 } 037 038 }