internal void Add(RecursiveMethodInfo value) { var key = value.MethodSymbol.Name; var list = GetListImpl(key, true); list.Add(value); }
internal CalculatorMethodGenerator(GeneratorExecutionContext context, RecursiveCalculatorClassInfo calculatorClassInfo, RecursiveMethodInfo methodInfo) { _context = context; _calculatorClassInfo = calculatorClassInfo; _methodInfo = methodInfo; }
internal static string GenerateSimpleSafeRec(GeneratorExecutionContext context, RecursiveMethodInfo methodInfo) { var classSyntax = (ClassDeclarationSyntax)methodInfo.MethodSyntax.Parent; var classSymbol = methodInfo.MethodSymbol.ContainingType; var recursionId = methodInfo.MethodSymbol.Name; var classInfo = new RecursiveCalculatorClassInfo(classSyntax, classSymbol, isMultiSite: false, recursionId, methodInfo.GenericParams, methodInfo.ConstraintClauses, methodInfo.MethodParamsStructName); return(new CalculatorClassGenerator(context, classInfo, new List <RecursiveMethodInfo>() { methodInfo }).GenerateAll()); }