public static void SetAdditionalValue(this MetaMidRepresentation intermediateCode, string itemName, object valueToSet) { var additionalData = intermediateCode.AuxiliaryObjects; additionalData[itemName] = valueToSet; }
public static object GetAdditionalProperty(this MetaMidRepresentation intermediateCode, string itemName) { if (intermediateCode == null) { return(null); } var additionalData = intermediateCode.AuxiliaryObjects; object itemValue; return(!additionalData.TryGetValue(itemName, out itemValue) ? null : itemValue); }
private static StringBuilder ComputeVariableSb(MetaMidRepresentation midRepresentation) { var variablesSb = new StringBuilder(); var vars = midRepresentation.Vars; foreach (var variableInfo in vars.LocalVars) { AddVariableContent(variablesSb, "{0} local_{1};", variableInfo, vars); } foreach (var localVariable in vars.VirtRegs) { AddVariableContent(variablesSb, "{0} vreg_{1};", localVariable, vars); } return(variablesSb); }
public static bool ReadAdditionalBool(this MetaMidRepresentation intermediateCode, string itemName) { var result = intermediateCode.GetAdditionalProperty(itemName); return(result != null && (bool)result); }