public CartesianProductFunctionAnalysisUnit(UserFunctionValue funcInfo, EnvironmentRecord environment, AnalysisUnit outerUnit, UserFunctionValue.CallArgs callArgs, VariableDef returnValue) : base(funcInfo, outerUnit, environment.Parent, outerUnit.ProjectEntry, environment) { _callArgs = callArgs; _returnValue = returnValue; _this = new VariableDef(); var funcScope = environment as FunctionEnvironmentRecord; var specLocals = new List<CartesianLocalVariable>(); ProcessVariablesForScope(funcScope, specLocals); _specializedLocals = specLocals.ToArray(); }
public CartesianProductFunctionAnalysisUnit(UserFunctionValue funcInfo, EnvironmentRecord environment, AnalysisUnit outerUnit, UserFunctionValue.CallArgs callArgs, VariableDef returnValue) : base(funcInfo, outerUnit, environment.Parent, outerUnit.ProjectEntry, environment) { _callArgs = callArgs; _returnValue = returnValue; _this = new VariableDef(); var funcScope = environment as FunctionEnvironmentRecord; var specLocals = new List <CartesianLocalVariable>(); ProcessVariablesForScope(funcScope, specLocals); _specializedLocals = specLocals.ToArray(); }