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
33
class
CodegenTransformVisitor
:
public
visitor::AstVisitor
{
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.
src
codegen
codegen_transform_visitor.hpp