User Guide
codegen_transform_visitor.hpp
Go to the documentation of this file.
1 /*
2  * Copyright 2023 Blue Brain Project, EPFL.
3  * See the top-level LICENSE file for details.
4  *
5  * SPDX-License-Identifier: Apache-2.0
6  */
7 
8 #pragma once
9 
10 /**
11  * \file
12  * \brief \copybrief nmodl::visitor::CodegenTransformVisitor
13  */
14 
15 #include "visitors/ast_visitor.hpp"
16 
17 namespace nmodl {
18 
19 /**
20  * @addtogroup codegen_details
21  * @{
22  */
23 
24 /**
25  * \class CodegenTransformVisitor
26  * \brief Visitor to make last transformation to AST before codegen
27  *
28  * Modifications made:
29  * - add an argument to the table if it is inside a function. In this case
30  * the argument is the name of the function.
31  */
32 
34  public:
35  /// \name Ctor & dtor
36  /// \{
37 
38  /// Default constructor
39  CodegenTransformVisitor() = default;
40 
41  /// \}
42 
43  void visit_function_block(ast::FunctionBlock& node) override;
44 };
45 
46 /** \} */ // end of codegen_details
47 
48 } // namespace nmodl
nmodl::CodegenTransformVisitor::visit_function_block
void visit_function_block(ast::FunctionBlock &node) override
visit node of type ast::FunctionBlock
Definition: codegen_transform_visitor.cpp:20
nmodl::ast::FunctionBlock
TODO.
Definition: function_block.hpp:39
nmodl
encapsulates code generation backend implementations
Definition: ast_common.hpp:26
nmodl::CodegenTransformVisitor
Visitor to make last transformation to AST before codegen.
Definition: codegen_transform_visitor.hpp:33
nmodl::visitor::AstVisitor
Concrete visitor for all AST classes.
Definition: ast_visitor.hpp:37
nmodl::CodegenTransformVisitor::CodegenTransformVisitor
CodegenTransformVisitor()=default
Default constructor.
ast_visitor.hpp
Concrete visitor for all AST classes.