/// <summary> /// Add child object to CodeElement. /// </summary> /// <param name="child">The new CodeElement.</param> void ICodeDomElement.AddChildObject(CodeElement child) { if (childObjects == null) { childObjects = new LuaCodeElements(DTE, parent); } childObjects.AddElement(child); }
/// <summary> /// Initializes a new instance of the <see cref="LuaCodeVariableTable"/> class. /// </summary> /// <param name="dte"></param> /// <param name="parentElement"></param> /// <param name="name"></param> /// <param name="access"></param> /// <param name="variable"></param> public LuaCodeVariableTable(DTE dte, CodeElement parentElement, string name, vsCMAccess access, TableConstructor variable) : base(dte, parentElement, name, new LuaCodeTypeRef( dte, LuaDeclaredType.Table), access, new Variable(variable.Location) { Identifier = new Identifier(variable.Location) }) { childObjects = new LuaCodeElements(dte, this); astNode = variable; parent = parentElement; }
/// <summary> /// Initializes a new instance of the <see cref="LuaCodeFunction"/> class. /// </summary> /// <param name="dte">The DTE.</param> /// <param name="parentElement">The parent element.</param> /// <param name="name">The name.</param> /// <param name="kind">The kind.</param> /// <param name="codeType">Type of the code.</param> /// <param name="access">The access.</param> /// <param name="function">The function.</param> public LuaCodeFunction(DTE dte, CodeElement parentElement, string name, vsCMFunction kind, object codeType, vsCMAccess access, FunctionDeclaration function) : base(dte, name, function) { parent = parentElement; FunctionBody = new LuaCodeElements(dte, this); parameters = new LuaCodeElements(dte, this); FunctionType = kind; Access = access; Type = ObjectToTypeRef(codeType); }
/// <summary> /// Initializes a new instance of the <see cref="LuaCodeClass"/> class. /// </summary> /// <param name="dte"></param> /// <param name="parent"></param> /// <param name="name"></param> /// <param name="chunk"></param> public LuaCodeClass(DTE dte, CodeElement parent, string name, Chunk chunk) : base(dte, name, parent, chunk) { LuaASTNodeObject = chunk; childObjects = new LuaCodeElements(DTE, this); }
/// <summary> /// Initializes a new instance of the <see cref="LuaCodeStatement"/> class. /// </summary> /// <param name="dte"></param> /// <param name="name"></param> /// <param name="parent"></param> /// <param name="astNode"></param> public LuaCodeStatement(DTE dte, string name, CodeElement parent, Node astNode) : base(dte, name, parent, astNode) { childObjects = new LuaCodeElements(DTE, ParentElement); }