Creates a new Node instance.
Object containing node properties
OptionalcommentOptional comment text associated with this node
OptionalconfigOptional configuration string for the plugin
Internal metadata key-value pairs associated with this node. These can be anything, are not used in the output, and are meant to be used to allow your pipeline to keep track of an internal property
The Python module name of the plugin
The type of this node (e.g., 'open', 'close', 'transaction', 'comment', 'blankline')
ProtectedparseTransforms JSON data before creating an Node instance. Default implementation returns the input unchanged. Subclasses can override this to handle custom deserialization logic (e.g., converting nested objects, handling dates, etc.).
The JSON data to transform
The transformed data ready for the constructor
Converts this node to a formatted string with aligned columns. Default implementation delegates to toString(). Subclasses can override for custom formatting.
Formatting options (unused in base implementation)
The formatted string representation of this node
Converts an node to a JSON-serializable object.
A JSON-serializable representation of this node
StaticfromCreates a Plugin instance from a generic parse result.
The parsed plugin node data
A new Plugin instance
StaticfromStaticfromStaticfrom
Represents a Plugin node that loads a Beancount plugin. Plugin directives enable plugins to process the ledger.