public static GMacCodeBlock Process(GMacCodeBlock codeBlock) { var processor = new TcbReduceRhsExpressions(codeBlock); processor.BeginProcessing(); return(codeBlock); }
internal static GMacCodeBlock Process(GMacCodeBlock codeBlock) { var processor = new TcbDependencyUpdate(codeBlock); processor.BeginProcessing(); return(codeBlock); }
internal static GMacCodeBlock Process(GMacCodeBlock codeBlock, TlCodeBlockEvaluation evaluationData) { var processor = new TcbEvaluateCodeBlock(codeBlock, evaluationData); processor.BeginProcessing(); return codeBlock; }
internal static GMacCodeBlock Process(GMacCodeBlock codeBlock, bool orderOutputsById) { var processor = new TcbReOrderComputations(codeBlock, orderOutputsById); processor.BeginProcessing(); return(codeBlock); }
internal static GMacCodeBlock Process(GMacCodeBlock codeBlock, LlDataTable dataTable) { var processor = new TcbInitialize(codeBlock, dataTable); processor.BeginProcessing(); return(codeBlock); }
internal TlCodeBlockEvaluationHistory(GMacCodeBlock codeBlock, double minValue, double maxValue) { CodeBlock = codeBlock; _inputVarsValues = CodeBlock .InputVariables .ToDictionary( item => item.LowLevelName, item => new Expr(_randomSource.NextDouble() * (maxValue - minValue) + minValue) ); }
private GMacCodeBlock GenerateMacroCode(GMacMacroBinding macroBinding) { GMacCodeBlock codeBlock = null; ActiveFileTextComposer.AppendAtNewLine("public static "); GenerateTypeName(macroBinding.BaseMacro.OutputType); ActiveFileTextComposer.Append(" "); ActiveFileTextComposer.Append(macroBinding.BaseMacro.Name); ActiveFileTextComposer.Append("("); GenerateMacroInputsCode(macroBinding.BaseMacro); ActiveFileTextComposer.AppendLine(")"); ActiveFileTextComposer.AppendLineAtNewLine("{"); ActiveFileTextComposer.IncreaseIndentation(); if (macroBinding.BaseMacro.OutputType.IsValidScalarType) { ActiveFileTextComposer.AppendAtNewLine(GMacLanguage.ScalarTypeName); ActiveFileTextComposer.AppendLine(" result;"); } else { ActiveFileTextComposer.AppendAtNewLine("var result = "); GenerateTypeDefaultValue(macroBinding.BaseMacro.OutputType); ActiveFileTextComposer.AppendLine(";"); } ActiveFileTextComposer.AppendLine(); if (MacroGenDefaults.AllowGenerateMacroCode) { var macroGenerator = InitMacroCodeGenerator(macroBinding); ActiveFileTextComposer.AppendLineAtNewLine( macroGenerator.Generate() ); codeBlock = macroGenerator.CodeBlock; } ActiveFileTextComposer.AppendLineAtNewLine("return result;"); ActiveFileTextComposer.DecreaseIndentation(); ActiveFileTextComposer.AppendLineAtNewLine("}"); ActiveFileTextComposer.AppendLine(); return(codeBlock); }
internal TlCodeBlockEvaluationHistory(GMacCodeBlock codeBlock, Dictionary <string, GMacMacroParameterBinding> inputsWithTestValues) { CodeBlock = codeBlock; _inputVarsValues = new Dictionary <string, Expr>(); foreach (var pair in inputsWithTestValues) { GMacCbInputVariable inputParamVar; if (!CodeBlock.TryGetInputParameterVariable(pair.Value.ValueAccess, out inputParamVar)) { continue; } _inputVarsValues.Add(inputParamVar.LowLevelName, pair.Value.TestValueExpr); } }
public TlCodeBlockEvaluation(GMacCodeBlock codeBlock, string evalTitle) { EvaluationTitle = evalTitle; CodeBlock = codeBlock; }
private TcbReUseTempVariables(GMacCodeBlock codeBlock) : base(codeBlock) { }
internal GMacTargetVariablesNaming(GMacLanguageServer targetLanguage, GMacCodeBlock codeBlock) { GMacLanguage = targetLanguage; CodeBlock = codeBlock; }
public static DotGraph ToGraphViz(this GMacCodeBlock codeBlock) { var visitor = new GMacCodeBlockToGraphViz(codeBlock); return(visitor.ToGraphViz()); }
private TcbFactorSubExpressions(GMacCodeBlock codeBlock) : base(codeBlock) { }
public MacroBindingToGraphViz(GMacMacroBinding macroBinding, GMacCodeBlock codeBlock) { MacroBinding = macroBinding; OptimizedCodeBlock = codeBlock; }
private TcbReduceRhsExpressions(GMacCodeBlock codeBlock) : base(codeBlock) { }
public GMacCodeBlockToGraphViz(GMacCodeBlock codeBlock) { CodeBlock = codeBlock; }
private TcbEvaluateCodeBlock(GMacCodeBlock codeBlock, TlCodeBlockEvaluation evaluationData) : base(codeBlock) { _evaluationData = evaluationData; }
protected TcbProcessor(GMacCodeBlock codeBlock) { CodeBlock = codeBlock; }
private TcbInitialize(GMacCodeBlock codeBlock, LlDataTable generatedDataTable) : base(codeBlock) { _dataTable = generatedDataTable; }
private TcbReOrderComputations(GMacCodeBlock codeBlock, bool orderOutputsById) : base(codeBlock) { OrderOutputsById = orderOutputsById; }
private TcbRemoveDuplicateTemps(GMacCodeBlock codeBlock) : base(codeBlock) { }
//private readonly Dictionary<string, TlVariable> _variablesDictionary = // new Dictionary<string, TlVariable>(); private TcbDependencyUpdate(GMacCodeBlock codeBlock) : base(codeBlock) { }