示例#1
0
 /// <summary>
 /// Assigns the new object to target variable.
 /// </summary>
 /// <param name="targetVar">The target variable.</param>
 /// <param name="objectInfo">The object information.</param>
 /// <returns>AssignBuilder.</returns>
 public abstract AssignBuilder AssignNewObject(string targetVar, InstanceInfo objectInfo);
示例#2
0
 /// <summary>
 /// Assigns the literal to target variable.
 /// </summary>
 /// <param name="targetVar">The target variable.</param>
 /// <param name="literal">The literal.</param>
 /// <param name="literalInfo">The literal information.</param>
 /// <returns>AssignBuilder.</returns>
 public abstract AssignBuilder AssignLiteral(string targetVar, object literal, InstanceInfo literalInfo = null);
示例#3
0
 /// <summary>
 /// Assigns the instance to target variable.
 /// </summary>
 /// <param name="targetVar">The target variable.</param>
 /// <param name="instance">The instance.</param>
 /// <param name="instanceInfo">The instance information.</param>
 /// <returns>AssignBuilder.</returns>
 public abstract AssignBuilder AssignInstance(string targetVar, Instance instance, InstanceInfo instanceInfo = null);
示例#4
0
 /// <summary>
 /// Emit static call on shared instance with given information.
 /// </summary>
 /// <param name="sharedInstanceInfo">The shared instance information.</param>
 /// <param name="method">The method.</param>
 /// <param name="arguments">The arguments.</param>
 /// <returns>CallBuilder.</returns>
 public abstract CallBuilder StaticCall(InstanceInfo sharedInstanceInfo, MethodID method, Arguments arguments);
示例#5
0
 /// <summary>
 /// Assigning last call return value into specified target variable.
 /// </summary>
 /// <param name="targetVar">Variable where returned value will be assigned.</param>
 /// <param name="staticInfo">The static information.</param>
 /// <returns>AssignBuilder.</returns>
 public abstract AssignBuilder AssignReturnValue(string targetVar, InstanceInfo staticInfo);
示例#6
0
 /// <summary>
 /// Assigns the argument at specified position to target variable.
 /// </summary>
 /// <param name="targetVar">The target variable.</param>
 /// <param name="staticInfo">The static information.</param>
 /// <param name="argumentPosition">The argument position.</param>
 /// <returns>AssignBuilder.</returns>
 public abstract AssignBuilder AssignArgument(string targetVar, InstanceInfo staticInfo, uint argumentPosition);
 /// <summary>
 /// Gets the shared initializer for <see cref="Instance"/> with given info.
 /// </summary>
 /// <param name="sharedInstanceInfo">Instance info.</param>
 /// <returns>Initializer identifier.</returns>
 public abstract MethodID GetSharedInitializer(InstanceInfo sharedInstanceInfo);
 /// <summary>
 /// Determine that instance described by given info is represented by
 /// <see cref="DirectInstance" />.
 /// </summary>
 /// <param name="info">Checked info.</param>
 /// <returns><c>true</c> if instance is represented by <see cref="DirectInstance" />, false otherwise.</returns>
 public abstract bool IsDirect(InstanceInfo info);