Linux kernel mirror (for testing)
git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel
os
linux
1#!/usr/bin/env python3
2# ex: set filetype=python:
3
4"""Generate code for XDR pass-through lines"""
5
6from generators import SourceGenerator, create_jinja2_environment
7from xdr_ast import _XdrPassthru
8
9
10class XdrPassthruGenerator(SourceGenerator):
11 """Generate source code for XDR pass-through content"""
12
13 def __init__(self, language: str, peer: str):
14 """Initialize an instance of this class"""
15 self.environment = create_jinja2_environment(language, "passthru")
16 self.peer = peer
17
18 def emit_definition(self, node: _XdrPassthru) -> None:
19 """Emit one pass-through line"""
20 template = self.environment.get_template("definition.j2")
21 print(template.render(content=node.content))
22
23 def emit_decoder(self, node: _XdrPassthru) -> None:
24 """Emit one pass-through line"""
25 template = self.environment.get_template("source.j2")
26 print(template.render(content=node.content))