2 # ex: set filetype=python:
4 """Generate code to handle XDR constants"""
6 from generators
import SourceGenerator
, create_jinja2_environment
7 from xdr_ast
import _XdrConstant
9 class XdrConstantGenerator(SourceGenerator
):
10 """Generate source code for XDR constants"""
12 def __init__(self
, language
: str, peer
: str):
13 """Initialize an instance of this class"""
14 self
.environment
= create_jinja2_environment(language
, "constants")
17 def emit_definition(self
, node
: _XdrConstant
) -> None:
18 """Emit one definition for a constant"""
19 template
= self
.environment
.get_template("definition.j2")
20 print(template
.render(name
=node
.name
, value
=node
.value
))