public static Object getPropertySafe(Class senderClass, Object receiver, String messageName) throws Throwable { if (receiver == null) return null; return getProperty(senderClass, receiver, messageName); }
public static Object getPropertySpreadSafe(Class senderClass, Object receiver, String messageName) throws Throwable { if (receiver == null) return null; if (!isSpreadable(receiver)) return getProperty(senderClass, receiver, messageName); List answer = new ArrayList(); for (Iterator it = InvokerHelper.asIterator(receiver); it.hasNext();) { answer.add(getPropertySafe(senderClass, it.next(), messageName)); } return answer; }
public static Object getPropertySafe(Class senderClass, Object receiver, String messageName) throws Throwable { if (receiver == null) return null; return getProperty(senderClass, receiver, messageName); }
public Object getProperty(Object lhs, String name) throws Throwable { Object v = ScriptBytecodeAdapter.getProperty(null/*Groovy doesn't use this parameter*/, lhs, name); return v; }
public static Object getPropertySafe(Class senderClass, Object receiver, String messageName) throws Throwable { if (receiver == null) return null; return getProperty(senderClass, receiver, messageName); }
public static Object getPropertySafe(Class senderClass, Object receiver, String messageName) throws Throwable { if (receiver == null) return null; return getProperty(senderClass, receiver, messageName); }
public static Object getPropertySafe(Class senderClass, Object receiver, String messageName) throws Throwable { if (receiver == null) return null; return getProperty(senderClass, receiver, messageName); }
public Object call(Object receiver, String property) throws Throwable { if (chain.hasNext()) return chain.next().onGetProperty(this,receiver,property); else return ScriptBytecodeAdapter.getProperty(null, receiver, property); } }.call(_receiver,_property.toString());