ComponentObject

/**
* A component object, which is the first argument of a ComponentRegistrationExpression.
*/

Inherit from ObjectLiteralExpression

Primary key: id: int

schema ComponentObject extends ObjectLiteralExpression {
  @primary id: int
}

ComponentObject::getRelativePath

/**
* Gets the relative path of this node.
*/
pub fn getRelativePath(self: ComponentObject) -> string;

ComponentObject::getExpression

pub fn getExpression(self: ComponentObject) -> Expression;

ComponentObject::getParent

/**
* Gets the parent node of this node.
*/
pub fn getParent(self: ComponentObject) -> Node;

ComponentObject::getEndColumnNumber

pub fn getEndColumnNumber(self: ComponentObject) -> int;

ComponentObject::getLastChild

/**
* Gets the last child of this node parent.
*/
pub fn getLastChild(self: ComponentObject) -> Node;

ComponentObject::getStartColumnNumber

pub fn getStartColumnNumber(self: ComponentObject) -> int;

ComponentObject::getAChild

/**
* Gets a child node of this node.
*/
pub fn getAChild(self: ComponentObject) -> *Node;

ComponentObject::getChildCount

/**
* Gets the number of child nodes.
*/
pub fn getChildCount(self: ComponentObject) -> int;

ComponentObject::getDecorator

/**
* Gets the `i`th decorator.
*/
pub fn getDecorator(self: ComponentObject, i: int) -> Decorator;

ComponentObject::getALeadingComment

/**
* Gets the leading comments of it
*/
pub fn getALeadingComment(self: ComponentObject) -> *Comment;

ComponentObject::getPropertyByName

/**
* Get the property of this ObjectLiteralExpression by name.
*/
pub fn getPropertyByName(self: ComponentObject, name: string) -> ObjectLiteralElement;

ComponentObject::getFile

/**
* Gets the file of this node.
*/
pub fn getFile(self: ComponentObject) -> File;

ComponentObject::getAComment

/**
* Gets the comments related to it
*/
pub fn getAComment(self: ComponentObject) -> *Comment;

ComponentObject::getADecorator

/**
* Gets a decorator.
*/
pub fn getADecorator(self: ComponentObject) -> *Decorator;

ComponentObject::hasProperty

/**
* Determine whether this ObjectLiteralExpression has a property with the specified name.
*/
pub fn hasProperty(self: ComponentObject, name: string) -> bool;

ComponentObject::getParentOid

/**
* Gets the parent oid of this node.
*/
pub fn getParentOid(self: ComponentObject) -> int;

ComponentObject::getADescendant

/**
* Gets a descendant of this node. 
*/
pub fn getADescendant(self: ComponentObject) -> *Node;

ComponentObject::getEnclosingFunction

/**
* Gets the enclosing function of it
*/
pub fn getEnclosingFunction(self: ComponentObject) -> FunctionLikeDeclaration;

ComponentObject::getRoot

/**
* Gets the root top-level of this node. 
*/
pub fn getRoot(self: ComponentObject) -> TopLevelDO;

ComponentObject::getAnAncestor

/**
* Gets an ancestor of this node. 
*/
pub fn getAnAncestor(self: ComponentObject) -> *Node;

ComponentObject::getAnAncestorByLevel

/**
* Gets an ancestor of this node by the level of the hierarchy.
*
* @param level: the number of levels to go up in the hierarchy.
*/
pub fn getAnAncestorByLevel(self: ComponentObject, level: int) -> Node;

ComponentObject::getEndLineNumber

pub fn getEndLineNumber(self: ComponentObject) -> int;

ComponentObject::getATrailingComment

/**
* Gets the trailing comments of it
*/
pub fn getATrailingComment(self: ComponentObject) -> *Comment;

ComponentObject::__all__

Data constraint method.

pub fn __all__(db: JavascriptDB) -> *ComponentObject;

ComponentObject::getADescendantByLevel

/**
* Gets a descendant of this node by the level of the hierarchy.
*
* @param level: the number of levels to go up in the hierarchy.
*/
pub fn getADescendantByLevel(self: ComponentObject, level: int) -> *Node;

ComponentObject::getLocation

/**
* Gets the location of this node.
*/
pub fn getLocation(self: ComponentObject) -> Location;

ComponentObject::getStartLineNumber

pub fn getStartLineNumber(self: ComponentObject) -> int;

ComponentObject::getChild

/**
* Gets the `i`th child of this node.
*/
pub fn getChild(self: ComponentObject, i: int) -> Node;

ComponentObject::getSymbol

/**
* Gets the symbol associated with this node.
*/
pub fn getSymbol(self: ComponentObject) -> Symbol;

ComponentObject::getAnAncestorEnclosingFunction

/**
* Gets an ancestor enclosing function of it
*/
pub fn getAnAncestorEnclosingFunction(self: ComponentObject) -> *FunctionLikeDeclaration;

ComponentObject::getPropertyAssignmentByName

/**
* Get the PropertyAssignment of this ObjectLiteralExpression by name.
*/
pub fn getPropertyAssignmentByName(self: ComponentObject, name: string) -> PropertyAssignment;

ComponentObject::getIndex

pub fn getIndex(self: ComponentObject) -> int;

ComponentObject::getAProperty

/**
* Get a property, which is an ObjectLiteralElement.
*/
pub fn getAProperty(self: ComponentObject) -> *ObjectLiteralElement;

ComponentObject::getAModifier

/**
* Gets a modifier.
*/
pub fn getAModifier(self: ComponentObject) -> *Modifier;

ComponentObject::getKind

/**
* Get the syntax kind of this node
*/
pub fn getKind(self: ComponentObject) -> int;

ComponentObject::getText

/**
* Gets the text of this node.
*/
pub fn getText(self: ComponentObject) -> string;

ComponentObject::getModifier

/**
* Gets the `i`th modifier.
*/
pub fn getModifier(self: ComponentObject, i: int) -> Modifier;

ComponentObject::getProperty

/**
* Get the `i`th property.
*/
pub fn getProperty(self: ComponentObject, i: int) -> ObjectLiteralElement;