public object GetValue(ValueNode target) { if (IsConst) return _constValue; var source = GetSource(target); return ValueConverter == null ? source.Value : Convert(source.Value, target.CreateSerializationContext()); }
public void Bind(ValueNode target, Func<object> callback) { if (IsConst) return; var source = GetSource(target); Func<object> finalCallback = ValueConverter == null ? callback : () => ConvertBack(callback(), target.CreateSerializationContext()); source.TargetBindings.Add(finalCallback); }