1 29 30 package com.caucho.quercus.expr; 31 32 import com.caucho.quercus.Location; 33 import com.caucho.quercus.env.ArrayValue; 34 import com.caucho.quercus.env.Env; 35 import com.caucho.quercus.env.Value; 36 37 40 public class ToArrayExpr extends UnaryExpr { 41 public ToArrayExpr(Location location, Expr expr) 42 { 43 super(location, expr); 44 } 45 46 public ToArrayExpr(Expr expr) 47 { 48 super(expr); 49 } 50 51 58 public Value eval(Env env) 59 { 60 return _expr.eval(env).toArray(); 61 } 62 63 70 public Value evalCopy(Env env) 71 { 72 Value value = _expr.eval(env).toValue(); 73 74 if (value instanceof ArrayValue) 75 return value.copy(); 76 else 77 return value.toArray(); 78 } 79 80 public String toString() 81 { 82 return "((array) " + _expr + ")"; 83 } 84 } 85 86 | Popular Tags |