示例#1
0
        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));
            }
        }
示例#2
0
 public override string GenerateStorage()
 {
     return(_castedValue.GenerateStorage());
 }