public UnaryComputationAssignment(IAssignableValue target, IReadableValue operand, UnaryOperatorType @operator, PrimitiveType operandType) { Target = target; Operand = operand; Operator = @operator; OperandType = operandType; }
public BinaryComputationAssignment(IAssignableValue target, IReadableValue lhs, IReadableValue rhs, BinaryOperatorType @operator, PrimitiveType operandType) { Target = target; Lhs = lhs; Rhs = rhs; Operator = @operator; OperandType = operandType; }
private IEnumerable <IInstruction> GetValue(IExpression expr, out IReadableValue location) { if (expr is IValue val) { location = RequestValue(val); return(Array.Empty <IInstruction>()); } IAssignableValue target = RequestLocal(); location = target; return(TransformExpression(expr, target)); }
public ConditionalJump(LabelInstruction target, IReadableValue condition, bool inverted) { Target = target; Condition = condition; Inverted = inverted; }
public ConditionalJump(LabelInstruction target, IReadableValue condition) { Target = target; Condition = condition; Inverted = false; }