protected ConstructorDeclarationCodeGenerator( ILanguageAbstraction languageAbstraction, AccessModifier accessModifier, bool isStatic, string name, ArgumentInfo[] arguments, ParentConstructorType parentConstructorType, string[] parentConstructorParameters, ScopeCodeGenerator bodyGenerator) : base(languageAbstraction, accessModifier, isStatic, null, null, name, arguments, bodyGenerator) { this.parentConstructorType = parentConstructorType; this.parentConstructorParameters = parentConstructorParameters ?? new string[0]; }
public MethodDeclarationCodeGenerator(ILanguageAbstraction languageAbstraction, AccessModifier accessModifier, bool isStatic, string[] additionalModifiers, string returnType, string name, ArgumentInfo[] arguments, ScopeCodeGenerator bodyGenerator) { if (languageAbstraction == null) { throw new ArgumentNullException(nameof(languageAbstraction)); } CodeGenerationUtility.CheckValidIdentifierArgument(name, nameof(name)); Language = languageAbstraction; this.accessModifier = accessModifier; this.isStatic = isStatic; this.additionalModifiers = additionalModifiers; if (string.IsNullOrWhiteSpace(returnType) == false) { this.returnType = returnType.Trim(); } this.name = name; this.arguments = arguments; this.bodyGenerator = bodyGenerator; }