montepy.input_parser.syntax_node.CommentNode#
- class montepy.input_parser.syntax_node.CommentNode(input)#
Bases:
SyntaxNodeBase
Object to represent a comment in an MCNP problem.
- Parameters:
input (Token) – the token from the lexer
Methods:
_convert_to_node
(token)Converts the token to a Syntax Node to store.
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
(token)Append the comment token 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 contents of the comments without delimiters (i.e., $/C).
Whether or not this CommentNode is a dollar sign ($) comment.
The name for the node.
The children nodes of this node.
- _convert_to_node(token)#
Converts the token to a Syntax Node to store.
- Parameters:
token (str) – the token to convert.
- Returns:
the SyntaxNode of the Comment.
- Return type:
- _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(token)#
Append the comment token to this node.
- Parameters:
token (str) – the comment token
- 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
- 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
- property comments#
A generator of all comments contained in this tree.
- Returns:
the comments in the tree.
- Return type:
Generator
- property contents#
The contents of the comments without delimiters (i.e., $/C).
- Returns:
String of the contents
- Return type:
str
- property is_dollar#
Whether or not this CommentNode is a dollar sign ($) comment.
- Returns:
True iff this is a dollar sign comment.
- Return type:
bool
- 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