@Override public int hashCode() { int result = _root != null ? _root.hashCode() : 0; result = 31 * result + (_rootType != null ? _rootType.hashCode() : 0); result = 31 * result + (_pi != null ? _pi.hashCode() : 0); return result; }
@Override public boolean equals(Object o) { if (this == o) { return true; } if (o == null || getClass() != o.getClass()) { return false; } BoundSimplePropertyChainReference that = (BoundSimplePropertyChainReference) o; if (_pi != null ? !_pi.equals(that._pi) : that._pi != null) { return false; } if (_root != null ? !_root.equals(that._root) : that._root != null) { return false; } if (_rootType != null ? !_rootType.equals(that._rootType) : that._rootType != null) { return false; } return true; }
@Override protected List<IType> getFullArgTypes() { return _root.getFullArgTypes(); }
@Override protected Object evaluate(Iterator args) { Object ctx = _root.evaluate(args); return _pi.getAccessor().getValue(ctx); }
public void set(T val) { Object fromRoot = _root.evaluate(Collections.singleton(null).iterator()); getPropertyInfo().getAccessor().setValue(fromRoot, val); }
public T get() { Object fromRoot = _root.evaluate(Collections.singleton(null).iterator()); return (T) getPropertyInfo().getAccessor().getValue(fromRoot); }