montepy.input_parser.syntax_node.SyntaxNodeBase#
- class montepy.input_parser.syntax_node.SyntaxNodeBase(name)#
Bases:
ABC
A base class for all syntax nodes.
A syntax node is any component of the syntax tree for a parsed input.
- Parameters:
name (str) – a name for labeling this node.
Methods:
Deletes the trailing comment if any.
_grab_beginning_comment
(extra_padding)Consumes the provided comment, and moves it to the beginning of this node.
append
(node)Append the node to this node.
check_for_graveyard_comments
([...])Checks if there is a graveyard comment that is preventing information from being part of the tree, and handles them.
flatten
()Flattens this tree structure into a list of leaves.
format
()Generate a string representing the tree's current state.
Get the trailing
c
style comments if any.Attributes:
A generator of all comments contained in this tree.
The name for the node.
The children nodes of this node.
- _delete_trailing_comment()#
Deletes the trailing comment if any.
- _grab_beginning_comment(extra_padding)#
Consumes the provided comment, and moves it to the beginning of this node.
- Parameters:
extra_padding (list) – the padding comment to add to the beginning of this padding.
- append(node)#
Append the node to this node.
- Parameters:
node (SyntaxNodeBase, str, None) – node
- check_for_graveyard_comments(has_following_input=False)#
Checks if there is a graveyard comment that is preventing information from being part of the tree, and handles them.
A graveyard comment is one that accidentally suppresses important information in the syntax tree.
For example:
imp:n=1 $ grave yard Vol=1
Should be:
imp:n=1 $ grave yard Vol=1
These graveyards are handled by appending a new line, and the required number of continue spaces to the comment.
Added in version 0.4.0.
- Parameters:
has_following_input (bool) – Whether there is another input (cell modifier) after this tree that should be continued.
- Return type:
None
- flatten()#
Flattens this tree structure into a list of leaves.
Added in version 0.4.0.
- Returns:
a list of ValueNode and PaddingNode objects from this tree.
- Return type:
list
- abstractmethod format()#
Generate a string representing the tree’s current state.
- Returns:
the MCNP representation of the tree’s current state.
- Return type:
str
- get_trailing_comment()#
Get the trailing
c
style comments if any.- Returns:
The trailing comments of this tree.
- Return type:
list
- abstract property comments#
A generator of all comments contained in this tree.
- Returns:
the comments in the tree.
- Return type:
Generator
- property name#
The name for the node.
- Returns:
the node’s name.
- Return type:
str
- property nodes#
The children nodes of this node.
- Returns:
a list of the nodes.
- Return type:
list