private CallBuilder generateAssign(string source) { var arguments = new List <string>(); foreach (var position in _positionArguments) { var storage = position.Value.GenerateStorage(); arguments.Add(storage); } arguments.Add(source); var argumentStorages = Arguments.Values(arguments); if (_setter.IsStatic) { return(E.StaticCall(_setter.DeclaringType, _setter.MethodID, argumentStorages)); } else { var thisObjStorage = _thisObjet.GenerateStorage(); return(E.Call(_setter.MethodID, thisObjStorage, argumentStorages)); } }
public override string GenerateStorage() { return(_castedValue.GenerateStorage()); }