User Guide
ast_visitor.cpp
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 ///
9 /// THIS FILE IS GENERATED AT BUILD TIME AND SHALL NOT BE EDITED.
10 ///
11 
12 #include "visitors/ast_visitor.hpp"
13 
14 #include "ast/all.hpp"
15 
16 
17 namespace nmodl {
18 namespace visitor {
19 
20 using namespace ast;
21 
23  node.visit_children(*this);
24 }
26  node.visit_children(*this);
27 }
29  node.visit_children(*this);
30 }
32  node.visit_children(*this);
33 }
35  node.visit_children(*this);
36 }
38  node.visit_children(*this);
39 }
41  node.visit_children(*this);
42 }
44  node.visit_children(*this);
45 }
47  node.visit_children(*this);
48 }
50  node.visit_children(*this);
51 }
53  node.visit_children(*this);
54 }
56  node.visit_children(*this);
57 }
59  node.visit_children(*this);
60 }
62  node.visit_children(*this);
63 }
65  node.visit_children(*this);
66 }
68  node.visit_children(*this);
69 }
71  node.visit_children(*this);
72 }
74  node.visit_children(*this);
75 }
77  node.visit_children(*this);
78 }
80  node.visit_children(*this);
81 }
83  node.visit_children(*this);
84 }
86  node.visit_children(*this);
87 }
89  node.visit_children(*this);
90 }
92  node.visit_children(*this);
93 }
95  node.visit_children(*this);
96 }
98  node.visit_children(*this);
99 }
101  node.visit_children(*this);
102 }
104  node.visit_children(*this);
105 }
107  node.visit_children(*this);
108 }
110  node.visit_children(*this);
111 }
113  node.visit_children(*this);
114 }
116  node.visit_children(*this);
117 }
119  node.visit_children(*this);
120 }
122  node.visit_children(*this);
123 }
125  node.visit_children(*this);
126 }
128  node.visit_children(*this);
129 }
131  node.visit_children(*this);
132 }
134  node.visit_children(*this);
135 }
137  node.visit_children(*this);
138 }
140  node.visit_children(*this);
141 }
143  node.visit_children(*this);
144 }
146  node.visit_children(*this);
147 }
149  node.visit_children(*this);
150 }
152  node.visit_children(*this);
153 }
155  node.visit_children(*this);
156 }
158  node.visit_children(*this);
159 }
161  node.visit_children(*this);
162 }
164  node.visit_children(*this);
165 }
167  node.visit_children(*this);
168 }
170  node.visit_children(*this);
171 }
173  node.visit_children(*this);
174 }
176  node.visit_children(*this);
177 }
179  node.visit_children(*this);
180 }
182  node.visit_children(*this);
183 }
185  node.visit_children(*this);
186 }
188  node.visit_children(*this);
189 }
191  node.visit_children(*this);
192 }
194  node.visit_children(*this);
195 }
197  node.visit_children(*this);
198 }
200  node.visit_children(*this);
201 }
203  node.visit_children(*this);
204 }
206  node.visit_children(*this);
207 }
209  node.visit_children(*this);
210 }
212  node.visit_children(*this);
213 }
215  node.visit_children(*this);
216 }
218  node.visit_children(*this);
219 }
221  node.visit_children(*this);
222 }
224  node.visit_children(*this);
225 }
227  node.visit_children(*this);
228 }
230  node.visit_children(*this);
231 }
233  node.visit_children(*this);
234 }
236  node.visit_children(*this);
237 }
239  node.visit_children(*this);
240 }
242  node.visit_children(*this);
243 }
245  node.visit_children(*this);
246 }
248  node.visit_children(*this);
249 }
251  node.visit_children(*this);
252 }
254  node.visit_children(*this);
255 }
257  node.visit_children(*this);
258 }
260  node.visit_children(*this);
261 }
263  node.visit_children(*this);
264 }
266  node.visit_children(*this);
267 }
269  node.visit_children(*this);
270 }
272  node.visit_children(*this);
273 }
275  node.visit_children(*this);
276 }
278  node.visit_children(*this);
279 }
281  node.visit_children(*this);
282 }
284  node.visit_children(*this);
285 }
287  node.visit_children(*this);
288 }
290  node.visit_children(*this);
291 }
293  node.visit_children(*this);
294 }
296  node.visit_children(*this);
297 }
299  node.visit_children(*this);
300 }
302  node.visit_children(*this);
303 }
305  node.visit_children(*this);
306 }
308  node.visit_children(*this);
309 }
311  node.visit_children(*this);
312 }
314  node.visit_children(*this);
315 }
317  node.visit_children(*this);
318 }
320  node.visit_children(*this);
321 }
323  node.visit_children(*this);
324 }
326  node.visit_children(*this);
327 }
329  node.visit_children(*this);
330 }
332  node.visit_children(*this);
333 }
335  node.visit_children(*this);
336 }
338  node.visit_children(*this);
339 }
341  node.visit_children(*this);
342 }
344  node.visit_children(*this);
345 }
347  node.visit_children(*this);
348 }
350  node.visit_children(*this);
351 }
353  node.visit_children(*this);
354 }
356  node.visit_children(*this);
357 }
359  node.visit_children(*this);
360 }
362  node.visit_children(*this);
363 }
365  node.visit_children(*this);
366 }
368  node.visit_children(*this);
369 }
371  node.visit_children(*this);
372 }
374  node.visit_children(*this);
375 }
377  node.visit_children(*this);
378 }
380  node.visit_children(*this);
381 }
383  node.visit_children(*this);
384 }
386  node.visit_children(*this);
387 }
388 
390  node.visit_children(*this);
391 }
393  node.visit_children(*this);
394 }
396  node.visit_children(*this);
397 }
399  node.visit_children(*this);
400 }
402  node.visit_children(*this);
403 }
405  node.visit_children(*this);
406 }
408  node.visit_children(*this);
409 }
411  node.visit_children(*this);
412 }
414  node.visit_children(*this);
415 }
417  node.visit_children(*this);
418 }
420  node.visit_children(*this);
421 }
423  node.visit_children(*this);
424 }
426  node.visit_children(*this);
427 }
429  node.visit_children(*this);
430 }
432  node.visit_children(*this);
433 }
435  node.visit_children(*this);
436 }
438  node.visit_children(*this);
439 }
441  node.visit_children(*this);
442 }
444  node.visit_children(*this);
445 }
447  node.visit_children(*this);
448 }
450  node.visit_children(*this);
451 }
453  node.visit_children(*this);
454 }
456  node.visit_children(*this);
457 }
459  node.visit_children(*this);
460 }
462  node.visit_children(*this);
463 }
465  node.visit_children(*this);
466 }
468  node.visit_children(*this);
469 }
471  node.visit_children(*this);
472 }
474  node.visit_children(*this);
475 }
477  node.visit_children(*this);
478 }
480  node.visit_children(*this);
481 }
483  node.visit_children(*this);
484 }
486  node.visit_children(*this);
487 }
489  node.visit_children(*this);
490 }
492  node.visit_children(*this);
493 }
495  node.visit_children(*this);
496 }
498  node.visit_children(*this);
499 }
501  node.visit_children(*this);
502 }
504  node.visit_children(*this);
505 }
507  node.visit_children(*this);
508 }
510  node.visit_children(*this);
511 }
513  node.visit_children(*this);
514 }
516  node.visit_children(*this);
517 }
519  node.visit_children(*this);
520 }
522  node.visit_children(*this);
523 }
525  node.visit_children(*this);
526 }
528  node.visit_children(*this);
529 }
531  node.visit_children(*this);
532 }
534  node.visit_children(*this);
535 }
537  node.visit_children(*this);
538 }
540  node.visit_children(*this);
541 }
543  node.visit_children(*this);
544 }
546  node.visit_children(*this);
547 }
549  node.visit_children(*this);
550 }
552  node.visit_children(*this);
553 }
555  node.visit_children(*this);
556 }
558  node.visit_children(*this);
559 }
561  node.visit_children(*this);
562 }
564  node.visit_children(*this);
565 }
567  node.visit_children(*this);
568 }
570  node.visit_children(*this);
571 }
573  node.visit_children(*this);
574 }
576  node.visit_children(*this);
577 }
579  node.visit_children(*this);
580 }
582  node.visit_children(*this);
583 }
585  node.visit_children(*this);
586 }
588  node.visit_children(*this);
589 }
591  node.visit_children(*this);
592 }
594  node.visit_children(*this);
595 }
597  node.visit_children(*this);
598 }
600  node.visit_children(*this);
601 }
603  node.visit_children(*this);
604 }
606  node.visit_children(*this);
607 }
609  node.visit_children(*this);
610 }
612  node.visit_children(*this);
613 }
615  node.visit_children(*this);
616 }
618  node.visit_children(*this);
619 }
621  node.visit_children(*this);
622 }
624  node.visit_children(*this);
625 }
627  node.visit_children(*this);
628 }
630  node.visit_children(*this);
631 }
633  node.visit_children(*this);
634 }
636  node.visit_children(*this);
637 }
639  node.visit_children(*this);
640 }
642  node.visit_children(*this);
643 }
645  node.visit_children(*this);
646 }
648  node.visit_children(*this);
649 }
651  node.visit_children(*this);
652 }
654  node.visit_children(*this);
655 }
657  node.visit_children(*this);
658 }
660  node.visit_children(*this);
661 }
663  node.visit_children(*this);
664 }
666  node.visit_children(*this);
667 }
669  node.visit_children(*this);
670 }
672  node.visit_children(*this);
673 }
675  node.visit_children(*this);
676 }
678  node.visit_children(*this);
679 }
681  node.visit_children(*this);
682 }
684  node.visit_children(*this);
685 }
687  node.visit_children(*this);
688 }
690  node.visit_children(*this);
691 }
693  node.visit_children(*this);
694 }
696  node.visit_children(*this);
697 }
699  node.visit_children(*this);
700 }
702  node.visit_children(*this);
703 }
705  node.visit_children(*this);
706 }
708  node.visit_children(*this);
709 }
711  node.visit_children(*this);
712 }
714  node.visit_children(*this);
715 }
717  node.visit_children(*this);
718 }
720  node.visit_children(*this);
721 }
723  node.visit_children(*this);
724 }
726  node.visit_children(*this);
727 }
729  node.visit_children(*this);
730 }
732  node.visit_children(*this);
733 }
735  node.visit_children(*this);
736 }
738  node.visit_children(*this);
739 }
741  node.visit_children(*this);
742 }
744  node.visit_children(*this);
745 }
747  node.visit_children(*this);
748 }
750  node.visit_children(*this);
751 }
753  node.visit_children(*this);
754 }
755 
756 } // namespace visitor
757 } // namespace nmodl
758 
nmodl::visitor::ConstAstVisitor::visit_random_var_list
void visit_random_var_list(const ast::RandomVarList &node) override
visit node of type ast::RandomVarList
Definition: ast_visitor.cpp:704
nmodl::ast::LocalListStatement::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:7981
nmodl::ast::IfStatement::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:9551
nmodl::ast::NrnStateBlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:12988
nmodl::ast::LonDifuse
Represent LONGITUDINAL_DIFFUSION statement in NMODL.
Definition: lon_difuse.hpp:39
nmodl::ast::ParamAssign
TODO.
Definition: param_assign.hpp:38
nmodl::ast::FunctionTableBlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:3810
nmodl::ast::BeforeBlock
Represents a BEFORE block in NMODL.
Definition: before_block.hpp:38
nmodl::ast::ConstantVar
Represents a variable in the ast::ConstantBlock.
Definition: constant_var.hpp:38
nmodl::visitor::AstVisitor::visit_non_lin_equation
void visit_non_lin_equation(ast::NonLinEquation &node) override
visit node of type ast::NonLinEquation
Definition: ast_visitor.cpp:220
nmodl::ast::UnaryOperator
TODO.
Definition: unary_operator.hpp:38
nmodl::ast::ConstantBlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:5380
nmodl::ast::SolveBlock
TODO.
Definition: solve_block.hpp:38
nmodl::visitor::AstVisitor::visit_boolean
void visit_boolean(ast::Boolean &node) override
visit node of type ast::Boolean
Definition: ast_visitor.cpp:52
nmodl::ast::Include
Represents an INCLUDE statement in NMODL.
Definition: include.hpp:39
nmodl::visitor::AstVisitor::visit_block_comment
void visit_block_comment(ast::BlockComment &node) override
visit node of type ast::BlockComment
Definition: ast_visitor.cpp:358
nmodl::visitor::ConstAstVisitor::visit_indexed_name
void visit_indexed_name(const ast::IndexedName &node) override
visit node of type ast::IndexedName
Definition: ast_visitor.cpp:428
nmodl::ast::Unit
TODO.
Definition: unit.hpp:38
nmodl::ast::Model::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:8067
nmodl::visitor::ConstAstVisitor::visit_constant_statement
void visit_constant_statement(const ast::ConstantStatement &node) override
visit node of type ast::ConstantStatement
Definition: ast_visitor.cpp:680
nmodl::visitor::AstVisitor::visit_bbcore_pointer_var
void visit_bbcore_pointer_var(ast::BbcorePointerVar &node) override
visit node of type ast::BbcorePointerVar
Definition: ast_visitor.cpp:97
nmodl::ast::Boolean::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:734
nmodl::visitor::AstVisitor::visit_mutex_unlock
void visit_mutex_unlock(ast::MutexUnlock &node) override
visit node of type ast::MutexUnlock
Definition: ast_visitor.cpp:295
nmodl::ast::Node
Base class for all AST node.
Definition: node.hpp:40
nmodl::ast::BABlock
Represents a block to be executed before or after another block.
Definition: ba_block.hpp:40
nmodl::ast::Verbatim
Represents a C code block.
Definition: verbatim.hpp:38
nmodl::ast::NeuronBlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:5466
nmodl::visitor::ConstAstVisitor::visit_function_block
void visit_function_block(const ast::FunctionBlock &node) override
visit node of type ast::FunctionBlock
Definition: ast_visitor.cpp:509
nmodl::ast::DoubleUnit::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:5639
nmodl::ast::Name::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:795
nmodl::visitor::AstVisitor::visit_while_statement
void visit_while_statement(ast::WhileStatement &node) override
visit node of type ast::WhileStatement
Definition: ast_visitor.cpp:277
nmodl::ast::Identifier::visit_children
virtual void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:410
nmodl::ast::LinEquation::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:6948
nmodl::visitor::ConstAstVisitor::visit_reaction_operator
void visit_reaction_operator(const ast::ReactionOperator &node) override
visit node of type ast::ReactionOperator
Definition: ast_visitor.cpp:572
nmodl::visitor::AstVisitor::visit_block
void visit_block(ast::Block &node) override
visit node of type ast::Block
Definition: ast_visitor.cpp:31
nmodl::ast::Identifier
Base class for all identifiers.
Definition: identifier.hpp:41
nmodl::visitor::ConstAstVisitor::visit_conserve
void visit_conserve(const ast::Conserve &node) override
visit node of type ast::Conserve
Definition: ast_visitor.cpp:665
nmodl::visitor::AstVisitor::visit_eigen_newton_solver_block
void visit_eigen_newton_solver_block(ast::EigenNewtonSolverBlock &node) override
visit node of type ast::EigenNewtonSolverBlock
Definition: ast_visitor.cpp:370
nmodl::visitor::ConstAstVisitor::visit_valence
void visit_valence(const ast::Valence &node) override
visit node of type ast::Valence
Definition: ast_visitor.cpp:608
nmodl::visitor::AstVisitor::visit_constant_var
void visit_constant_var(ast::ConstantVar &node) override
visit node of type ast::ConstantVar
Definition: ast_visitor.cpp:196
nmodl::visitor::AstVisitor::visit_range
void visit_range(ast::Range &node) override
visit node of type ast::Range
Definition: ast_visitor.cpp:331
nmodl::ast::DiffEqExpression
Represents differential equation in DERIVATIVE block.
Definition: diff_eq_expression.hpp:38
nmodl::visitor::ConstAstVisitor::visit_unit_block
void visit_unit_block(const ast::UnitBlock &node) override
visit node of type ast::UnitBlock
Definition: ast_visitor.cpp:539
nmodl::visitor::ConstAstVisitor::visit_from_statement
void visit_from_statement(const ast::FromStatement &node) override
visit node of type ast::FromStatement
Definition: ast_visitor.cpp:641
nmodl::visitor::AstVisitor::visit_nonspecific
void visit_nonspecific(ast::Nonspecific &node) override
visit node of type ast::Nonspecific
Definition: ast_visitor.cpp:325
nmodl::ast::AssignedDefinition
Represents a statement in ASSIGNED or STATE block.
Definition: assigned_definition.hpp:38
nmodl::visitor::ConstAstVisitor::visit_eigen_linear_solver_block
void visit_eigen_linear_solver_block(const ast::EigenLinearSolverBlock &node) override
visit node of type ast::EigenLinearSolverBlock
Definition: ast_visitor.cpp:740
nmodl::visitor::ConstAstVisitor::visit_number
void visit_number(const ast::Number &node) override
visit node of type ast::Number
Definition: ast_visitor.cpp:404
nmodl::visitor::AstVisitor::visit_reaction_operator
void visit_reaction_operator(ast::ReactionOperator &node) override
visit node of type ast::ReactionOperator
Definition: ast_visitor.cpp:205
nmodl::ast::IndependentBlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:2478
nmodl::ast::FactorDef
TODO.
Definition: factor_def.hpp:38
nmodl::visitor::AstVisitor::visit_net_receive_block
void visit_net_receive_block(ast::NetReceiveBlock &node) override
visit node of type ast::NetReceiveBlock
Definition: ast_visitor.cpp:148
nmodl::visitor::ConstAstVisitor::visit_useion
void visit_useion(const ast::Useion &node) override
visit node of type ast::Useion
Definition: ast_visitor.cpp:689
nmodl::ast::Watch
TODO.
Definition: watch.hpp:38
nmodl::visitor::ConstAstVisitor::visit_paren_expression
void visit_paren_expression(const ast::ParenExpression &node) override
visit node of type ast::ParenExpression
Definition: ast_visitor.cpp:575
nmodl::visitor::AstVisitor::visit_external
void visit_external(ast::External &node) override
visit node of type ast::External
Definition: ast_visitor.cpp:346
nmodl::ast::Double
Represents a double variable.
Definition: double.hpp:53
nmodl::ast::FunctionBlock
TODO.
Definition: function_block.hpp:39
nmodl::visitor::ConstAstVisitor::visit_ontology_statement
void visit_ontology_statement(const ast::OntologyStatement &node) override
visit node of type ast::OntologyStatement
Definition: ast_visitor.cpp:728
nmodl::ast::Range
Represents RANGE variables statement in NMODL.
Definition: range.hpp:39
nmodl::ast::PointerVar
TODO.
Definition: pointer_var.hpp:38
nmodl::visitor::AstVisitor::visit_breakpoint_block
void visit_breakpoint_block(ast::BreakpointBlock &node) override
visit node of type ast::BreakpointBlock
Definition: ast_visitor.cpp:154
nmodl::ast::NonLinEquation
TODO.
Definition: non_lin_equation.hpp:38
nmodl::ast::RandomVarList
Represents RANDOM statement in NMODL.
Definition: random_var_list.hpp:47
nmodl::visitor::AstVisitor::visit_unit_block
void visit_unit_block(ast::UnitBlock &node) override
visit node of type ast::UnitBlock
Definition: ast_visitor.cpp:172
nmodl::ast::BbcorePointerVar
Represent a single variable of type BBCOREPOINTER.
Definition: bbcore_pointer_var.hpp:39
nmodl::ast::ElectrodeCurrent::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:11687
nmodl::visitor::ConstAstVisitor::visit_statement_block
void visit_statement_block(const ast::StatementBlock &node) override
visit node of type ast::StatementBlock
Definition: ast_visitor.cpp:491
nmodl::visitor::ConstAstVisitor::visit_constant_block
void visit_constant_block(const ast::ConstantBlock &node) override
visit node of type ast::ConstantBlock
Definition: ast_visitor.cpp:542
nmodl::visitor::AstVisitor::visit_binary_expression
void visit_binary_expression(ast::BinaryExpression &node) override
visit node of type ast::BinaryExpression
Definition: ast_visitor.cpp:211
nmodl::visitor::ConstAstVisitor::visit_conductance_hint
void visit_conductance_hint(const ast::ConductanceHint &node) override
visit node of type ast::ConductanceHint
Definition: ast_visitor.cpp:632
nmodl::ast::NetReceiveBlock
TODO.
Definition: net_receive_block.hpp:39
nmodl::visitor::AstVisitor::visit_reaction_statement
void visit_reaction_statement(ast::ReactionStatement &node) override
visit node of type ast::ReactionStatement
Definition: ast_visitor.cpp:307
nmodl::visitor::AstVisitor::visit_double
void visit_double(ast::Double &node) override
visit node of type ast::Double
Definition: ast_visitor.cpp:49
nmodl::visitor::AstVisitor::visit_pointer_var
void visit_pointer_var(ast::PointerVar &node) override
visit node of type ast::PointerVar
Definition: ast_visitor.cpp:91
nmodl::ast::FunctionTableBlock
TODO.
Definition: function_table_block.hpp:39
nmodl::ast::StatementBlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:3158
nmodl::ast::Conserve
Represent CONSERVE statement in NMODL.
Definition: conserve.hpp:38
nmodl::ast::BbcorePointerVar::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:2222
nmodl::ast::RandomVar::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:2136
nmodl::visitor::ConstAstVisitor::visit_lag_statement
void visit_lag_statement(const ast::LagStatement &node) override
visit node of type ast::LagStatement
Definition: ast_visitor.cpp:677
nmodl::ast::DoubleUnit
TODO.
Definition: double_unit.hpp:38
nmodl::ast::UnitBlock
TODO.
Definition: unit_block.hpp:39
nmodl::visitor::ConstAstVisitor::visit_write_ion_var
void visit_write_ion_var(const ast::WriteIonVar &node) override
visit node of type ast::WriteIonVar
Definition: ast_visitor.cpp:443
nmodl::ast::BlockComment
Represents a multi-line comment in NMODL.
Definition: block_comment.hpp:38
nmodl::visitor::AstVisitor::visit_for_netcon
void visit_for_netcon(ast::ForNetcon &node) override
visit node of type ast::ForNetcon
Definition: ast_visitor.cpp:166
nmodl::visitor::AstVisitor::visit_unary_expression
void visit_unary_expression(ast::UnaryExpression &node) override
visit node of type ast::UnaryExpression
Definition: ast_visitor.cpp:217
nmodl::ast::ConductanceHint
Represents CONDUCTANCE statement in NMODL.
Definition: conductance_hint.hpp:46
nmodl::visitor::AstVisitor::visit_lin_equation
void visit_lin_equation(ast::LinEquation &node) override
visit node of type ast::LinEquation
Definition: ast_visitor.cpp:223
nmodl::ast::Pointer::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:12201
nmodl::ast::FactorDef::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:7499
nmodl::visitor::ConstAstVisitor::visit_while_statement
void visit_while_statement(const ast::WhileStatement &node) override
visit node of type ast::WhileStatement
Definition: ast_visitor.cpp:644
nmodl::visitor::ConstAstVisitor::visit_unary_expression
void visit_unary_expression(const ast::UnaryExpression &node) override
visit node of type ast::UnaryExpression
Definition: ast_visitor.cpp:584
nmodl::ast::UnitDef::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:7370
nmodl::visitor::AstVisitor::visit_electrode_current
void visit_electrode_current(ast::ElectrodeCurrent &node) override
visit node of type ast::ElectrodeCurrent
Definition: ast_visitor.cpp:328
nmodl
encapsulates code generation backend implementations
Definition: ast_common.hpp:26
nmodl::visitor::AstVisitor::visit_else_if_statement
void visit_else_if_statement(ast::ElseIfStatement &node) override
visit node of type ast::ElseIfStatement
Definition: ast_visitor.cpp:283
nmodl::visitor::ConstAstVisitor::visit_non_lin_equation
void visit_non_lin_equation(const ast::NonLinEquation &node) override
visit node of type ast::NonLinEquation
Definition: ast_visitor.cpp:587
nmodl::visitor::ConstAstVisitor::visit_param_assign
void visit_param_assign(const ast::ParamAssign &node) override
visit node of type ast::ParamAssign
Definition: ast_visitor.cpp:626
nmodl::ast::FromStatement::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:9212
nmodl::ast::Model
TODO.
Definition: model.hpp:38
nmodl::ast::ReactVarName
TODO.
Definition: react_var_name.hpp:38
nmodl::ast::Number::visit_children
virtual void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:432
nmodl::visitor::AstVisitor::visit_ontology_statement
void visit_ontology_statement(ast::OntologyStatement &node) override
visit node of type ast::OntologyStatement
Definition: ast_visitor.cpp:361
nmodl::ast::Define
Represents a DEFINE statement in NMODL.
Definition: define.hpp:38
nmodl::visitor::ConstAstVisitor::visit_nonspecific
void visit_nonspecific(const ast::Nonspecific &node) override
visit node of type ast::Nonspecific
Definition: ast_visitor.cpp:692
nmodl::visitor::AstVisitor::visit_watch_statement
void visit_watch_statement(ast::WatchStatement &node) override
visit node of type ast::WatchStatement
Definition: ast_visitor.cpp:289
nmodl::visitor::AstVisitor::visit_paren_expression
void visit_paren_expression(ast::ParenExpression &node) override
visit node of type ast::ParenExpression
Definition: ast_visitor.cpp:208
nmodl::visitor::ConstAstVisitor::visit_for_netcon
void visit_for_netcon(const ast::ForNetcon &node) override
visit node of type ast::ForNetcon
Definition: ast_visitor.cpp:533
nmodl::visitor::ConstAstVisitor::visit_binary_operator
void visit_binary_operator(const ast::BinaryOperator &node) override
visit node of type ast::BinaryOperator
Definition: ast_visitor.cpp:566
nmodl::visitor::ConstAstVisitor::visit_reaction_statement
void visit_reaction_statement(const ast::ReactionStatement &node) override
visit node of type ast::ReactionStatement
Definition: ast_visitor.cpp:674
nmodl::visitor::AstVisitor::visit_update_dt
void visit_update_dt(ast::UpdateDt &node) override
visit node of type ast::UpdateDt
Definition: ast_visitor.cpp:385
nmodl::ast::MutexLock
Represent MUTEXLOCK statement in NMODL.
Definition: mutex_lock.hpp:38
nmodl::visitor::AstVisitor::visit_statement
void visit_statement(ast::Statement &node) override
visit node of type ast::Statement
Definition: ast_visitor.cpp:25
nmodl::ast::WriteIonVar
TODO.
Definition: write_ion_var.hpp:38
nmodl::visitor::ConstAstVisitor::visit_block
void visit_block(const ast::Block &node) override
visit node of type ast::Block
Definition: ast_visitor.cpp:398
nmodl::visitor::ConstAstVisitor::visit_unit_def
void visit_unit_def(const ast::UnitDef &node) override
visit node of type ast::UnitDef
Definition: ast_visitor.cpp:602
nmodl::visitor::ConstAstVisitor::visit_function_table_block
void visit_function_table_block(const ast::FunctionTableBlock &node) override
visit node of type ast::FunctionTableBlock
Definition: ast_visitor.cpp:506
nmodl::ast::WhileStatement
TODO.
Definition: while_statement.hpp:38
nmodl::ast::NonspecificCurVar::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:1706
nmodl::visitor::ConstAstVisitor::visit_update_dt
void visit_update_dt(const ast::UpdateDt &node) override
visit node of type ast::UpdateDt
Definition: ast_visitor.cpp:752
nmodl::ast::Valence
TODO.
Definition: valence.hpp:38
nmodl::ast::TableStatement
Represents TABLE statement in NMODL.
Definition: table_statement.hpp:39
nmodl::ast::BABlockType::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:7306
nmodl::ast::VarName
Represents a variable.
Definition: var_name.hpp:43
nmodl::ast::ExternVar
TODO.
Definition: extern_var.hpp:38
nmodl::visitor::AstVisitor::visit_var_name
void visit_var_name(ast::VarName &node) override
visit node of type ast::VarName
Definition: ast_visitor.cpp:64
nmodl::visitor::AstVisitor::visit_unary_operator
void visit_unary_operator(ast::UnaryOperator &node) override
visit node of type ast::UnaryOperator
Definition: ast_visitor.cpp:202
nmodl::ast::Integer
Represents an integer variable.
Definition: integer.hpp:49
nmodl::visitor::AstVisitor::visit_solve_block
void visit_solve_block(ast::SolveBlock &node) override
visit node of type ast::SolveBlock
Definition: ast_visitor.cpp:151
nmodl::ast::Suffix
Represents SUFFIX statement in NMODL.
Definition: suffix.hpp:38
nmodl::ast::ElseIfStatement
TODO.
Definition: else_if_statement.hpp:38
nmodl::visitor::AstVisitor::visit_program
void visit_program(ast::Program &node) override
visit node of type ast::Program
Definition: ast_visitor.cpp:364
nmodl::visitor::AstVisitor::visit_suffix
void visit_suffix(ast::Suffix &node) override
visit node of type ast::Suffix
Definition: ast_visitor.cpp:319
nmodl::ast::RandomVar
Single variable of type RANDOM.
Definition: random_var.hpp:38
nmodl::ast::Statement::visit_children
virtual void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:344
nmodl::visitor::ConstAstVisitor::visit_discrete_block
void visit_discrete_block(const ast::DiscreteBlock &node) override
visit node of type ast::DiscreteBlock
Definition: ast_visitor.cpp:503
nmodl::ast::RandomVarList::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:12030
nmodl::ast::Double::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:675
nmodl::ast::WatchStatement::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:10024
nmodl::ast::FunctionBlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:3976
nmodl::ast::ProcedureBlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:4173
nmodl::visitor::ConstAstVisitor::visit_name
void visit_name(const ast::Name &node) override
visit node of type ast::Name
Definition: ast_visitor.cpp:422
nmodl::ast::AssignedBlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:2649
nmodl::ast::ElseStatement::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:9855
nmodl::visitor::AstVisitor::visit_indexed_name
void visit_indexed_name(ast::IndexedName &node) override
visit node of type ast::IndexedName
Definition: ast_visitor.cpp:61
nmodl::ast::AfterBlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:4810
nmodl::ast::ParamAssign::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:8405
nmodl::ast::Suffix::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:11246
nmodl::visitor::AstVisitor::visit_name
void visit_name(ast::Name &node) override
visit node of type ast::Name
Definition: ast_visitor.cpp:55
nmodl::visitor::AstVisitor::visit_function_call
void visit_function_call(ast::FunctionCall &node) override
visit node of type ast::FunctionCall
Definition: ast_visitor.cpp:226
nmodl::ast::AssignedBlock
Represents a ASSIGNED block in the NMODL.
Definition: assigned_block.hpp:54
nmodl::visitor::ConstAstVisitor::visit_statement
void visit_statement(const ast::Statement &node) override
visit node of type ast::Statement
Definition: ast_visitor.cpp:392
nmodl::ast::RangeVar
TODO.
Definition: range_var.hpp:38
nmodl::visitor::ConstAstVisitor::visit_mutex_lock
void visit_mutex_lock(const ast::MutexLock &node) override
visit node of type ast::MutexLock
Definition: ast_visitor.cpp:659
nmodl::visitor::ConstAstVisitor::visit_double_unit
void visit_double_unit(const ast::DoubleUnit &node) override
visit node of type ast::DoubleUnit
Definition: ast_visitor.cpp:551
nmodl::visitor::ConstAstVisitor::visit_electrode_cur_var
void visit_electrode_cur_var(const ast::ElectrodeCurVar &node) override
visit node of type ast::ElectrodeCurVar
Definition: ast_visitor.cpp:449
nmodl::ast::Watch::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:7191
nmodl::ast::KineticBlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:5143
nmodl::visitor::AstVisitor::visit_lag_statement
void visit_lag_statement(ast::LagStatement &node) override
visit node of type ast::LagStatement
Definition: ast_visitor.cpp:310
nmodl::ast::EigenNewtonSolverBlock
Represent newton solver solution block based on Eigen.
Definition: eigen_newton_solver_block.hpp:38
nmodl::ast::LagStatement::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:10812
nmodl::visitor::ConstAstVisitor::visit_table_statement
void visit_table_statement(const ast::TableStatement &node) override
visit node of type ast::TableStatement
Definition: ast_visitor.cpp:683
nmodl::ast::LinearBlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:3372
nmodl::visitor::ConstAstVisitor::visit_prime_name
void visit_prime_name(const ast::PrimeName &node) override
visit node of type ast::PrimeName
Definition: ast_visitor.cpp:425
nmodl::ast::Define::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:8156
nmodl::ast::MutexLock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:10107
nmodl::visitor::ConstAstVisitor::visit_extern_var
void visit_extern_var(const ast::ExternVar &node) override
visit node of type ast::ExternVar
Definition: ast_visitor.cpp:467
nmodl::ast::AssignedDefinition::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:8614
nmodl::visitor::AstVisitor::visit_model
void visit_model(ast::Model &node) override
visit node of type ast::Model
Definition: ast_visitor.cpp:250
nmodl::visitor::AstVisitor::visit_constant_statement
void visit_constant_statement(ast::ConstantStatement &node) override
visit node of type ast::ConstantStatement
Definition: ast_visitor.cpp:313
nmodl::visitor::AstVisitor::visit_protect_statement
void visit_protect_statement(ast::ProtectStatement &node) override
visit node of type ast::ProtectStatement
Definition: ast_visitor.cpp:271
nmodl::ast::PrimeName::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:887
nmodl::ast::PointerVar::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:2050
nmodl::ast::GlobalVar::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:1964
nmodl::visitor::AstVisitor::visit_else_statement
void visit_else_statement(ast::ElseStatement &node) override
visit node of type ast::ElseStatement
Definition: ast_visitor.cpp:286
nmodl::ast::ReactionOperator
TODO.
Definition: reaction_operator.hpp:38
nmodl::ast::ExpressionStatement
TODO.
Definition: expression_statement.hpp:38
nmodl::visitor::ConstAstVisitor::visit_constant_var
void visit_constant_var(const ast::ConstantVar &node) override
visit node of type ast::ConstantVar
Definition: ast_visitor.cpp:563
nmodl::visitor::AstVisitor::visit_write_ion_var
void visit_write_ion_var(ast::WriteIonVar &node) override
visit node of type ast::WriteIonVar
Definition: ast_visitor.cpp:76
nmodl::visitor::ConstAstVisitor::visit_local_list_statement
void visit_local_list_statement(const ast::LocalListStatement &node) override
visit node of type ast::LocalListStatement
Definition: ast_visitor.cpp:614
nmodl::ast::Block
Base class for all block scoped nodes.
Definition: block.hpp:41
nmodl::visitor::ConstAstVisitor::visit_range
void visit_range(const ast::Range &node) override
visit node of type ast::Range
Definition: ast_visitor.cpp:698
nmodl::ast::ElseIfStatement::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:9740
nmodl::visitor::AstVisitor::visit_linear_block
void visit_linear_block(ast::LinearBlock &node) override
visit node of type ast::LinearBlock
Definition: ast_visitor.cpp:130
nmodl::ast::InitialBlock
Represents a INITIAL block in the NMODL.
Definition: initial_block.hpp:49
nmodl::ast::UnitState::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:7837
nmodl::visitor::AstVisitor::visit_pointer
void visit_pointer(ast::Pointer &node) override
visit node of type ast::Pointer
Definition: ast_visitor.cpp:340
nmodl::visitor::AstVisitor::visit_solution_expression
void visit_solution_expression(ast::SolutionExpression &node) override
visit node of type ast::SolutionExpression
Definition: ast_visitor.cpp:382
nmodl::ast::DiscreteBlock
TODO.
Definition: discrete_block.hpp:38
nmodl::visitor::ConstAstVisitor::visit_lin_equation
void visit_lin_equation(const ast::LinEquation &node) override
visit node of type ast::LinEquation
Definition: ast_visitor.cpp:590
nmodl::ast::GlobalVar
TODO.
Definition: global_var.hpp:38
nmodl::visitor::AstVisitor::visit_constructor_block
void visit_constructor_block(ast::ConstructorBlock &node) override
visit node of type ast::ConstructorBlock
Definition: ast_visitor.cpp:118
nmodl::visitor::AstVisitor::visit_before_block
void visit_before_block(ast::BeforeBlock &node) override
visit node of type ast::BeforeBlock
Definition: ast_visitor.cpp:157
nmodl::visitor::ConstAstVisitor::visit_verbatim
void visit_verbatim(const ast::Verbatim &node) override
visit node of type ast::Verbatim
Definition: ast_visitor.cpp:719
nmodl::visitor::AstVisitor::visit_destructor_block
void visit_destructor_block(ast::DestructorBlock &node) override
visit node of type ast::DestructorBlock
Definition: ast_visitor.cpp:121
nmodl::ast::LocalListStatement
TODO.
Definition: local_list_statement.hpp:39
nmodl::visitor::AstVisitor::visit_ba_block
void visit_ba_block(ast::BABlock &node) override
visit node of type ast::BABlock
Definition: ast_visitor.cpp:163
nmodl::visitor::ConstAstVisitor::visit_thread_safe
void visit_thread_safe(const ast::ThreadSafe &node) override
visit node of type ast::ThreadSafe
Definition: ast_visitor.cpp:716
nmodl::visitor::AstVisitor::visit_param_block
void visit_param_block(ast::ParamBlock &node) override
visit node of type ast::ParamBlock
Definition: ast_visitor.cpp:103
nmodl::ast::ParenExpression::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:6415
nmodl::ast::LocalVar::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:5760
nmodl::visitor::AstVisitor::visit_nrn_state_block
void visit_nrn_state_block(ast::NrnStateBlock &node) override
visit node of type ast::NrnStateBlock
Definition: ast_visitor.cpp:367
nmodl::ast::UnitDef
TODO.
Definition: unit_def.hpp:38
nmodl::visitor::ConstAstVisitor::visit_random_var
void visit_random_var(const ast::RandomVar &node) override
visit node of type ast::RandomVar
Definition: ast_visitor.cpp:461
nmodl::visitor::ConstAstVisitor::visit_initial_block
void visit_initial_block(const ast::InitialBlock &node) override
visit node of type ast::InitialBlock
Definition: ast_visitor.cpp:482
nmodl::visitor::ConstAstVisitor::visit_assigned_definition
void visit_assigned_definition(const ast::AssignedDefinition &node) override
visit node of type ast::AssignedDefinition
Definition: ast_visitor.cpp:629
nmodl::visitor::ConstAstVisitor::visit_mutex_unlock
void visit_mutex_unlock(const ast::MutexUnlock &node) override
visit node of type ast::MutexUnlock
Definition: ast_visitor.cpp:662
nmodl::visitor::AstVisitor::visit_line_comment
void visit_line_comment(ast::LineComment &node) override
visit node of type ast::LineComment
Definition: ast_visitor.cpp:355
nmodl::ast::WatchStatement
Represent WATCH statement in NMODL.
Definition: watch_statement.hpp:39
nmodl::ast::LineComment
Represents a one line comment in NMODL.
Definition: line_comment.hpp:38
nmodl::ast::ReadIonVar
TODO.
Definition: read_ion_var.hpp:38
nmodl::ast::Float
Represents a float variable.
Definition: float.hpp:44
nmodl::ast::BreakpointBlock
Represents a BREAKPOINT block in NMODL.
Definition: breakpoint_block.hpp:53
nmodl::ast::DerivativeBlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:3249
nmodl::ast::UnitState
TODO.
Definition: unit_state.hpp:38
nmodl::visitor::ConstAstVisitor::visit_identifier
void visit_identifier(const ast::Identifier &node) override
visit node of type ast::Identifier
Definition: ast_visitor.cpp:401
nmodl::visitor::AstVisitor::visit_global
void visit_global(ast::Global &node) override
visit node of type ast::Global
Definition: ast_visitor.cpp:334
nmodl::ast::BABlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:4897
nmodl::visitor::ConstAstVisitor::visit_derivimplicit_callback
void visit_derivimplicit_callback(const ast::DerivimplicitCallback &node) override
visit node of type ast::DerivimplicitCallback
Definition: ast_visitor.cpp:746
nmodl::visitor::AstVisitor::visit_limits
void visit_limits(ast::Limits &node) override
visit node of type ast::Limits
Definition: ast_visitor.cpp:190
nmodl::ast::IndexedName
Represents specific element of an array variable.
Definition: indexed_name.hpp:48
nmodl::ast::Unit::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:5552
nmodl::ast::BeforeBlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:4726
nmodl::visitor::ConstAstVisitor::visit_watch
void visit_watch(const ast::Watch &node) override
visit node of type ast::Watch
Definition: ast_visitor.cpp:596
nmodl::visitor::ConstAstVisitor::visit_local_var
void visit_local_var(const ast::LocalVar &node) override
visit node of type ast::LocalVar
Definition: ast_visitor.cpp:554
nmodl::visitor::AstVisitor::visit_double_unit
void visit_double_unit(ast::DoubleUnit &node) override
visit node of type ast::DoubleUnit
Definition: ast_visitor.cpp:184
nmodl::visitor::AstVisitor::visit_include
void visit_include(ast::Include &node) override
visit node of type ast::Include
Definition: ast_visitor.cpp:256
nmodl::visitor::AstVisitor::visit_derivative_block
void visit_derivative_block(ast::DerivativeBlock &node) override
visit node of type ast::DerivativeBlock
Definition: ast_visitor.cpp:127
nmodl::ast::FunctionCall
TODO.
Definition: function_call.hpp:38
nmodl::visitor::AstVisitor::visit_random_var
void visit_random_var(ast::RandomVar &node) override
visit node of type ast::RandomVar
Definition: ast_visitor.cpp:94
nmodl::visitor::AstVisitor::visit_factor_def
void visit_factor_def(ast::FactorDef &node) override
visit node of type ast::FactorDef
Definition: ast_visitor.cpp:238
nmodl::ast::DestructorBlock
Represents a DESTRUCTOR block in the NMODL.
Definition: destructor_block.hpp:53
nmodl::visitor::ConstAstVisitor::visit_var_name
void visit_var_name(const ast::VarName &node) override
visit node of type ast::VarName
Definition: ast_visitor.cpp:431
nmodl::visitor::AstVisitor::visit_random_var_list
void visit_random_var_list(ast::RandomVarList &node) override
visit node of type ast::RandomVarList
Definition: ast_visitor.cpp:337
nmodl::ast::DiffEqExpression::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:6638
nmodl::ast::Node::visit_children
virtual void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:322
nmodl::ast::Conserve::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:10157
nmodl::ast::UnaryExpression::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:6725
nmodl::visitor::ConstAstVisitor::visit_integer
void visit_integer(const ast::Integer &node) override
visit node of type ast::Integer
Definition: ast_visitor.cpp:410
nmodl::ast::ProtectStatement
TODO.
Definition: protect_statement.hpp:38
nmodl::ast::ConstructorBlock
Represents a CONSTRUCTOR block in the NMODL.
Definition: constructor_block.hpp:51
nmodl::visitor::ConstAstVisitor::visit_if_statement
void visit_if_statement(const ast::IfStatement &node) override
visit node of type ast::IfStatement
Definition: ast_visitor.cpp:647
nmodl::visitor::AstVisitor::visit_integer
void visit_integer(ast::Integer &node) override
visit node of type ast::Integer
Definition: ast_visitor.cpp:43
nmodl::visitor::AstVisitor::visit_if_statement
void visit_if_statement(ast::IfStatement &node) override
visit node of type ast::IfStatement
Definition: ast_visitor.cpp:280
nmodl::ast::ReadIonVar::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:1534
nmodl::ast::MutexUnlock
Represent MUTEXUNLOCK statement in NMODL.
Definition: mutex_unlock.hpp:38
nmodl::visitor::AstVisitor::visit_string
void visit_string(ast::String &node) override
visit node of type ast::String
Definition: ast_visitor.cpp:40
nmodl::ast::ExternVar::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:2308
nmodl::visitor::AstVisitor::visit_identifier
void visit_identifier(ast::Identifier &node) override
visit node of type ast::Identifier
Definition: ast_visitor.cpp:34
nmodl::ast::MutexUnlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:10129
nmodl::visitor::AstVisitor::visit_expression
void visit_expression(ast::Expression &node) override
visit node of type ast::Expression
Definition: ast_visitor.cpp:28
nmodl::ast::Useion
Represents USEION statement in NMODL.
Definition: useion.hpp:40
nmodl::visitor::ConstAstVisitor::visit_model
void visit_model(const ast::Model &node) override
visit node of type ast::Model
Definition: ast_visitor.cpp:617
nmodl::ast::EigenLinearSolverBlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:13377
nmodl::visitor::AstVisitor::visit_argument
void visit_argument(ast::Argument &node) override
visit node of type ast::Argument
Definition: ast_visitor.cpp:67
nmodl::visitor::AstVisitor::visit_after_block
void visit_after_block(ast::AfterBlock &node) override
visit node of type ast::AfterBlock
Definition: ast_visitor.cpp:160
nmodl::visitor::ConstAstVisitor::visit_nrn_state_block
void visit_nrn_state_block(const ast::NrnStateBlock &node) override
visit node of type ast::NrnStateBlock
Definition: ast_visitor.cpp:734
nmodl::visitor::AstVisitor::visit_param_assign
void visit_param_assign(ast::ParamAssign &node) override
visit node of type ast::ParamAssign
Definition: ast_visitor.cpp:259
nmodl::ast::VarName::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:1130
nmodl::visitor::AstVisitor::visit_ba_block_type
void visit_ba_block_type(ast::BABlockType &node) override
visit node of type ast::BABlockType
Definition: ast_visitor.cpp:232
nmodl::ast::Program::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:12902
nmodl::visitor::AstVisitor::visit_expression_statement
void visit_expression_statement(ast::ExpressionStatement &node) override
visit node of type ast::ExpressionStatement
Definition: ast_visitor.cpp:268
nmodl::ast::ThreadSafe::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:12456
nmodl::visitor::AstVisitor::visit_unit_state
void visit_unit_state(ast::UnitState &node) override
visit node of type ast::UnitState
Definition: ast_visitor.cpp:244
nmodl::ast::Valence::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:7722
nmodl::visitor::AstVisitor::visit_statement_block
void visit_statement_block(ast::StatementBlock &node) override
visit node of type ast::StatementBlock
Definition: ast_visitor.cpp:124
nmodl::visitor::ConstAstVisitor::visit_suffix
void visit_suffix(const ast::Suffix &node) override
visit node of type ast::Suffix
Definition: ast_visitor.cpp:686
nmodl::ast::UnaryExpression
TODO.
Definition: unary_expression.hpp:39
nmodl::visitor::AstVisitor::visit_from_statement
void visit_from_statement(ast::FromStatement &node) override
visit node of type ast::FromStatement
Definition: ast_visitor.cpp:274
nmodl::visitor::ConstAstVisitor::visit_line_comment
void visit_line_comment(const ast::LineComment &node) override
visit node of type ast::LineComment
Definition: ast_visitor.cpp:722
nmodl::visitor::ConstAstVisitor::visit_ba_block_type
void visit_ba_block_type(const ast::BABlockType &node) override
visit node of type ast::BABlockType
Definition: ast_visitor.cpp:599
nmodl::visitor::AstVisitor::visit_conductance_hint
void visit_conductance_hint(ast::ConductanceHint &node) override
visit node of type ast::ConductanceHint
Definition: ast_visitor.cpp:265
nmodl::ast::Integer::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:519
nmodl::visitor::ConstAstVisitor::visit_else_statement
void visit_else_statement(const ast::ElseStatement &node) override
visit node of type ast::ElseStatement
Definition: ast_visitor.cpp:653
nmodl::ast::LineComment::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:12565
nmodl::visitor::AstVisitor::visit_nonspecific_cur_var
void visit_nonspecific_cur_var(ast::NonspecificCurVar &node) override
visit node of type ast::NonspecificCurVar
Definition: ast_visitor.cpp:79
nmodl::visitor::ConstAstVisitor::visit_double
void visit_double(const ast::Double &node) override
visit node of type ast::Double
Definition: ast_visitor.cpp:416
nmodl::ast::StateBlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:2735
nmodl::ast::UnaryOperator::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:6297
nmodl::visitor::AstVisitor::visit_derivimplicit_callback
void visit_derivimplicit_callback(ast::DerivimplicitCallback &node) override
visit node of type ast::DerivimplicitCallback
Definition: ast_visitor.cpp:379
nmodl::visitor::AstVisitor::visit_verbatim
void visit_verbatim(ast::Verbatim &node) override
visit node of type ast::Verbatim
Definition: ast_visitor.cpp:352
nmodl::ast::SolveBlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:4488
nmodl::ast::Global
Represents GLOBAL statement in NMODL.
Definition: global.hpp:39
nmodl::visitor::ConstAstVisitor::visit_non_linear_block
void visit_non_linear_block(const ast::NonLinearBlock &node) override
visit node of type ast::NonLinearBlock
Definition: ast_visitor.cpp:500
nmodl::visitor::AstVisitor::visit_number_range
void visit_number_range(ast::NumberRange &node) override
visit node of type ast::NumberRange
Definition: ast_visitor.cpp:193
nmodl::ast::NonLinEquation::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:6830
nmodl::ast::Range::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:11773
nmodl::ast::Include::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:8274
nmodl::ast::NumberRange::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:5965
nmodl::ast::ConstantBlock
Represent CONSTANT block in the mod file.
Definition: constant_block.hpp:50
nmodl::visitor::ConstAstVisitor::visit_net_receive_block
void visit_net_receive_block(const ast::NetReceiveBlock &node) override
visit node of type ast::NetReceiveBlock
Definition: ast_visitor.cpp:515
nmodl::ast::DerivimplicitCallback::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:13700
nmodl::ast::PrimeName
Represents a prime variable (for ODE)
Definition: prime_name.hpp:48
nmodl::ast::ElectrodeCurVar::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:1792
nmodl::visitor::AstVisitor::visit_function_block
void visit_function_block(ast::FunctionBlock &node) override
visit node of type ast::FunctionBlock
Definition: ast_visitor.cpp:142
nmodl::ast::WriteIonVar::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:1620
nmodl::ast::DerivativeBlock
Represents DERIVATIVE block in the NMODL.
Definition: derivative_block.hpp:49
nmodl::visitor::ConstAstVisitor::visit_independent_block
void visit_independent_block(const ast::IndependentBlock &node) override
visit node of type ast::IndependentBlock
Definition: ast_visitor.cpp:473
nmodl::visitor::ConstAstVisitor::visit_ba_block
void visit_ba_block(const ast::BABlock &node) override
visit node of type ast::BABlock
Definition: ast_visitor.cpp:530
nmodl::visitor::AstVisitor::visit_prime_name
void visit_prime_name(ast::PrimeName &node) override
visit node of type ast::PrimeName
Definition: ast_visitor.cpp:58
nmodl::visitor::AstVisitor::visit_neuron_block
void visit_neuron_block(ast::NeuronBlock &node) override
visit node of type ast::NeuronBlock
Definition: ast_visitor.cpp:178
nmodl::visitor::ConstAstVisitor::visit_destructor_block
void visit_destructor_block(const ast::DestructorBlock &node) override
visit node of type ast::DestructorBlock
Definition: ast_visitor.cpp:488
nmodl::visitor::ConstAstVisitor::visit_function_call
void visit_function_call(const ast::FunctionCall &node) override
visit node of type ast::FunctionCall
Definition: ast_visitor.cpp:593
nmodl::visitor::AstVisitor::visit_local_var
void visit_local_var(ast::LocalVar &node) override
visit node of type ast::LocalVar
Definition: ast_visitor.cpp:187
nmodl::ast::IfStatement
TODO.
Definition: if_statement.hpp:39
nmodl::ast::Boolean
Represents a boolean variable.
Definition: boolean.hpp:42
nmodl::visitor::ConstAstVisitor::visit_derivative_block
void visit_derivative_block(const ast::DerivativeBlock &node) override
visit node of type ast::DerivativeBlock
Definition: ast_visitor.cpp:494
nmodl::visitor::ConstAstVisitor::visit_compartment
void visit_compartment(const ast::Compartment &node) override
visit node of type ast::Compartment
Definition: ast_visitor.cpp:668
nmodl::visitor::ConstAstVisitor::visit_constructor_block
void visit_constructor_block(const ast::ConstructorBlock &node) override
visit node of type ast::ConstructorBlock
Definition: ast_visitor.cpp:485
nmodl::visitor::ConstAstVisitor::visit_binary_expression
void visit_binary_expression(const ast::BinaryExpression &node) override
visit node of type ast::BinaryExpression
Definition: ast_visitor.cpp:578
nmodl::ast::IndexedName::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:1007
nmodl::ast::KineticBlock
TODO.
Definition: kinetic_block.hpp:39
nmodl::ast::ConstructorBlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:2905
nmodl::ast::EigenLinearSolverBlock
Represent linear solver solution block based on Eigen.
Definition: eigen_linear_solver_block.hpp:38
nmodl::visitor::ConstAstVisitor::visit_global_var
void visit_global_var(const ast::GlobalVar &node) override
visit node of type ast::GlobalVar
Definition: ast_visitor.cpp:455
nmodl::visitor::ConstAstVisitor::visit_before_block
void visit_before_block(const ast::BeforeBlock &node) override
visit node of type ast::BeforeBlock
Definition: ast_visitor.cpp:524
nmodl::visitor::ConstAstVisitor::visit_param_block
void visit_param_block(const ast::ParamBlock &node) override
visit node of type ast::ParamBlock
Definition: ast_visitor.cpp:470
nmodl::visitor::ConstAstVisitor::visit_block_comment
void visit_block_comment(const ast::BlockComment &node) override
visit node of type ast::BlockComment
Definition: ast_visitor.cpp:725
nmodl::ast::ReactionOperator::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:6356
nmodl::visitor::AstVisitor::visit_non_linear_block
void visit_non_linear_block(ast::NonLinearBlock &node) override
visit node of type ast::NonLinearBlock
Definition: ast_visitor.cpp:133
nmodl::ast::LocalVar
TODO.
Definition: local_var.hpp:38
nmodl::ast::LagStatement
Represents a LAG statement in the mod file.
Definition: lag_statement.hpp:47
nmodl::visitor::AstVisitor::visit_discrete_block
void visit_discrete_block(ast::DiscreteBlock &node) override
visit node of type ast::DiscreteBlock
Definition: ast_visitor.cpp:136
nmodl::ast::Compartment
Represent COMPARTMENT statement in NMODL.
Definition: compartment.hpp:39
nmodl::ast::DiscreteBlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:3687
nmodl::visitor::ConstAstVisitor::visit_protect_statement
void visit_protect_statement(const ast::ProtectStatement &node) override
visit node of type ast::ProtectStatement
Definition: ast_visitor.cpp:638
nmodl::visitor::AstVisitor::visit_lon_difuse
void visit_lon_difuse(ast::LonDifuse &node) override
visit node of type ast::LonDifuse
Definition: ast_visitor.cpp:304
nmodl::ast::UpdateDt
Statement to indicate a change in timestep in a given block.
Definition: update_dt.hpp:38
nmodl::ast::UnitBlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:5294
nmodl::visitor::AstVisitor::visit_local_list_statement
void visit_local_list_statement(ast::LocalListStatement &node) override
visit node of type ast::LocalListStatement
Definition: ast_visitor.cpp:247
nmodl::ast::Statement
TODO.
Definition: statement.hpp:38
nmodl::ast::NumberRange
TODO.
Definition: number_range.hpp:38
nmodl::ast::Compartment::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:10278
nmodl::visitor::AstVisitor::visit_procedure_block
void visit_procedure_block(ast::ProcedureBlock &node) override
visit node of type ast::ProcedureBlock
Definition: ast_visitor.cpp:145
nmodl::ast::StateBlock
Represents a STATE block in the NMODL.
Definition: state_block.hpp:52
nmodl::ast::NonLinearBlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:3531
nmodl::ast::ReactionStatement::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:10606
nmodl::visitor::AstVisitor::visit_table_statement
void visit_table_statement(ast::TableStatement &node) override
visit node of type ast::TableStatement
Definition: ast_visitor.cpp:316
nmodl::visitor::ConstAstVisitor::visit_include
void visit_include(const ast::Include &node) override
visit node of type ast::Include
Definition: ast_visitor.cpp:623
nmodl::visitor::ConstAstVisitor::visit_global
void visit_global(const ast::Global &node) override
visit node of type ast::Global
Definition: ast_visitor.cpp:701
nmodl::visitor::ConstAstVisitor::visit_define
void visit_define(const ast::Define &node) override
visit node of type ast::Define
Definition: ast_visitor.cpp:620
nmodl::ast::BinaryExpression::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:6505
nmodl::ast::ExpressionStatement::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:9030
nmodl::visitor::ConstAstVisitor::visit_number_range
void visit_number_range(const ast::NumberRange &node) override
visit node of type ast::NumberRange
Definition: ast_visitor.cpp:560
nmodl::visitor::ConstAstVisitor::visit_expression
void visit_expression(const ast::Expression &node) override
visit node of type ast::Expression
Definition: ast_visitor.cpp:395
nmodl::ast::NrnStateBlock
Represents the coreneuron nrn_state callback function.
Definition: nrn_state_block.hpp:39
nmodl::ast::StatementBlock
Represents block encapsulating list of statements.
Definition: statement_block.hpp:53
nmodl::ast::Global::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:11944
nmodl::visitor::ConstAstVisitor::visit_bbcore_pointer_var
void visit_bbcore_pointer_var(const ast::BbcorePointerVar &node) override
visit node of type ast::BbcorePointerVar
Definition: ast_visitor.cpp:464
nmodl::ast::OntologyStatement
Represents CURIE information in NMODL.
Definition: ontology_statement.hpp:38
nmodl::ast::External
This construct is deprecated and no longer supported in the NMODL.
Definition: external.hpp:39
nmodl::visitor::ConstAstVisitor::visit_kinetic_block
void visit_kinetic_block(const ast::KineticBlock &node) override
visit node of type ast::KineticBlock
Definition: ast_visitor.cpp:536
nmodl::ast::ForNetcon
TODO.
Definition: for_netcon.hpp:39
nmodl::ast::Argument
Represents an argument to functions and procedures.
Definition: argument.hpp:48
nmodl::visitor::AstVisitor::visit_bbcore_pointer
void visit_bbcore_pointer(ast::BbcorePointer &node) override
visit node of type ast::BbcorePointer
Definition: ast_visitor.cpp:343
nmodl::visitor::AstVisitor::visit_useion
void visit_useion(ast::Useion &node) override
visit node of type ast::Useion
Definition: ast_visitor.cpp:322
nmodl::visitor::AstVisitor::visit_global_var
void visit_global_var(ast::GlobalVar &node) override
visit node of type ast::GlobalVar
Definition: ast_visitor.cpp:88
nmodl::visitor::AstVisitor::visit_unit
void visit_unit(ast::Unit &node) override
visit node of type ast::Unit
Definition: ast_visitor.cpp:181
nmodl::visitor::AstVisitor::visit_eigen_linear_solver_block
void visit_eigen_linear_solver_block(ast::EigenLinearSolverBlock &node) override
visit node of type ast::EigenLinearSolverBlock
Definition: ast_visitor.cpp:373
nmodl::visitor::AstVisitor::visit_number
void visit_number(ast::Number &node) override
visit node of type ast::Number
Definition: ast_visitor.cpp:37
nmodl::visitor::AstVisitor::visit_kinetic_block
void visit_kinetic_block(ast::KineticBlock &node) override
visit node of type ast::KineticBlock
Definition: ast_visitor.cpp:169
nmodl::ast::BreakpointBlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:4642
nmodl::visitor::AstVisitor::visit_constant_block
void visit_constant_block(ast::ConstantBlock &node) override
visit node of type ast::ConstantBlock
Definition: ast_visitor.cpp:175
nmodl::ast::ParenExpression
TODO.
Definition: paren_expression.hpp:38
nmodl::visitor::ConstAstVisitor::visit_unit_state
void visit_unit_state(const ast::UnitState &node) override
visit node of type ast::UnitState
Definition: ast_visitor.cpp:611
nmodl::visitor::AstVisitor::visit_react_var_name
void visit_react_var_name(ast::ReactVarName &node) override
visit node of type ast::ReactVarName
Definition: ast_visitor.cpp:70
nmodl::visitor::ConstAstVisitor::visit_procedure_block
void visit_procedure_block(const ast::ProcedureBlock &node) override
visit node of type ast::ProcedureBlock
Definition: ast_visitor.cpp:512
nmodl::visitor::AstVisitor::visit_conserve
void visit_conserve(ast::Conserve &node) override
visit node of type ast::Conserve
Definition: ast_visitor.cpp:298
nmodl::ast::LinearBlock
Represents LINEAR block in the NMODL.
Definition: linear_block.hpp:53
nmodl::visitor::AstVisitor::visit_extern_var
void visit_extern_var(ast::ExternVar &node) override
visit node of type ast::ExternVar
Definition: ast_visitor.cpp:100
nmodl::ast::ConstantStatement::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:10927
nmodl::ast::DerivimplicitCallback
Represent a callback to NEURON's derivimplicit solver.
Definition: derivimplicit_callback.hpp:38
nmodl::ast::BbcorePointer::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:12287
nmodl::ast::ProcedureBlock
TODO.
Definition: procedure_block.hpp:39
nmodl::visitor::ConstAstVisitor::visit_pointer
void visit_pointer(const ast::Pointer &node) override
visit node of type ast::Pointer
Definition: ast_visitor.cpp:707
nmodl::visitor::ConstAstVisitor::visit_nonspecific_cur_var
void visit_nonspecific_cur_var(const ast::NonspecificCurVar &node) override
visit node of type ast::NonspecificCurVar
Definition: ast_visitor.cpp:446
nmodl::ast::EigenNewtonSolverBlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:13092
nmodl::ast::ProtectStatement::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:9114
nmodl::ast::ReactionStatement
TODO.
Definition: reaction_statement.hpp:39
nmodl::ast::String::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:457
nmodl::ast::ConstantStatement
Represent statement in CONSTANT block of NMODL.
Definition: constant_statement.hpp:40
nmodl::visitor::ConstAstVisitor::visit_else_if_statement
void visit_else_if_statement(const ast::ElseIfStatement &node) override
visit node of type ast::ElseIfStatement
Definition: ast_visitor.cpp:650
nmodl::ast::BinaryOperator
Operator used in ast::BinaryExpression.
Definition: binary_operator.hpp:38
nmodl::ast::FunctionCall::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:7068
nmodl::ast::BABlockType
Type to represent different block types for before/after block.
Definition: ba_block_type.hpp:42
nmodl::ast::NonLinearBlock
Represents NONLINEAR block in the NMODL.
Definition: non_linear_block.hpp:50
nmodl::ast::BlockComment::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:12649
nmodl::visitor::ConstAstVisitor::visit_argument
void visit_argument(const ast::Argument &node) override
visit node of type ast::Argument
Definition: ast_visitor.cpp:434
nmodl::visitor::AstVisitor::visit_compartment
void visit_compartment(ast::Compartment &node) override
visit node of type ast::Compartment
Definition: ast_visitor.cpp:301
nmodl::ast::Expression::visit_children
virtual void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:366
nmodl::visitor::ConstAstVisitor::visit_watch_statement
void visit_watch_statement(const ast::WatchStatement &node) override
visit node of type ast::WatchStatement
Definition: ast_visitor.cpp:656
nmodl::visitor::AstVisitor::visit_assigned_block
void visit_assigned_block(ast::AssignedBlock &node) override
visit node of type ast::AssignedBlock
Definition: ast_visitor.cpp:109
nmodl::ast::ParamBlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:2392
nmodl::ast::SolutionExpression
Represent solution of a block in the AST.
Definition: solution_expression.hpp:38
nmodl::ast::ElectrodeCurVar
TODO.
Definition: electrode_cur_var.hpp:38
nmodl::ast::TableStatement::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:11023
nmodl::visitor::AstVisitor::visit_wrapped_expression
void visit_wrapped_expression(ast::WrappedExpression &node) override
visit node of type ast::WrappedExpression
Definition: ast_visitor.cpp:376
nmodl::visitor::AstVisitor::visit_read_ion_var
void visit_read_ion_var(ast::ReadIonVar &node) override
visit node of type ast::ReadIonVar
Definition: ast_visitor.cpp:73
nmodl::ast::SolutionExpression::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:13787
nmodl::ast::Useion::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:11375
nmodl::visitor::AstVisitor::visit_thread_safe
void visit_thread_safe(ast::ThreadSafe &node) override
visit node of type ast::ThreadSafe
Definition: ast_visitor.cpp:349
nmodl::visitor::AstVisitor::visit_float
void visit_float(ast::Float &node) override
visit node of type ast::Float
Definition: ast_visitor.cpp:46
nmodl::ast::Verbatim::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:12481
nmodl::ast::LinEquation
TODO.
Definition: lin_equation.hpp:38
nmodl::visitor::ConstAstVisitor::visit_node
void visit_node(const ast::Node &node) override
visit node of type ast::Node
Definition: ast_visitor.cpp:389
nmodl::ast::IndependentBlock
Represents a INDEPENDENT block in the NMODL.
Definition: independent_block.hpp:46
nmodl::visitor::ConstAstVisitor::visit_string
void visit_string(const ast::String &node) override
visit node of type ast::String
Definition: ast_visitor.cpp:407
nmodl::visitor::ConstAstVisitor::visit_limits
void visit_limits(const ast::Limits &node) override
visit node of type ast::Limits
Definition: ast_visitor.cpp:557
nmodl::ast::ConductanceHint::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:8911
nmodl::visitor::ConstAstVisitor::visit_unit
void visit_unit(const ast::Unit &node) override
visit node of type ast::Unit
Definition: ast_visitor.cpp:548
nmodl::visitor::ConstAstVisitor::visit_react_var_name
void visit_react_var_name(const ast::ReactVarName &node) override
visit node of type ast::ReactVarName
Definition: ast_visitor.cpp:437
nmodl::visitor::AstVisitor::visit_watch
void visit_watch(ast::Watch &node) override
visit node of type ast::Watch
Definition: ast_visitor.cpp:229
nmodl::ast::BbcorePointer
Represents BBCOREPOINTER statement in NMODL.
Definition: bbcore_pointer.hpp:47
nmodl::visitor::AstVisitor::visit_range_var
void visit_range_var(ast::RangeVar &node) override
visit node of type ast::RangeVar
Definition: ast_visitor.cpp:85
nmodl::ast::Nonspecific
Represents NONSPECIFIC_CURRENT variables statement in NMODL.
Definition: nonspecific.hpp:39
nmodl::visitor::AstVisitor::visit_diff_eq_expression
void visit_diff_eq_expression(ast::DiffEqExpression &node) override
visit node of type ast::DiffEqExpression
Definition: ast_visitor.cpp:214
nmodl::ast::External::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:12373
nmodl::visitor::ConstAstVisitor::visit_solution_expression
void visit_solution_expression(const ast::SolutionExpression &node) override
visit node of type ast::SolutionExpression
Definition: ast_visitor.cpp:749
nmodl::visitor::ConstAstVisitor::visit_boolean
void visit_boolean(const ast::Boolean &node) override
visit node of type ast::Boolean
Definition: ast_visitor.cpp:419
nmodl::visitor::ConstAstVisitor::visit_lon_difuse
void visit_lon_difuse(const ast::LonDifuse &node) override
visit node of type ast::LonDifuse
Definition: ast_visitor.cpp:671
nmodl::ast::BinaryOperator::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:6238
nmodl::ast::Name
Represents a name.
Definition: name.hpp:44
nmodl::visitor::ConstAstVisitor::visit_external
void visit_external(const ast::External &node) override
visit node of type ast::External
Definition: ast_visitor.cpp:713
nmodl::ast::Program
Represents top level AST node for whole NMODL input.
Definition: program.hpp:39
nmodl::ast::Block::visit_children
virtual void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:388
nmodl::ast::ConstantVar::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:6088
nmodl::visitor::ConstAstVisitor::visit_range_var
void visit_range_var(const ast::RangeVar &node) override
visit node of type ast::RangeVar
Definition: ast_visitor.cpp:452
nmodl::ast::AfterBlock
Represents a AFTER block in NMODL.
Definition: after_block.hpp:51
nmodl::ast::Number
Base class for all numbers.
Definition: number.hpp:39
nmodl::ast::ThreadSafe
Represents THREADSAFE statement in NMODL.
Definition: thread_safe.hpp:38
nmodl::ast::Expression
Base class for all expressions in the NMODL.
Definition: expression.hpp:43
nmodl::ast::Pointer
Represents POINTER statement in NMODL.
Definition: pointer.hpp:39
nmodl::visitor::AstVisitor::visit_binary_operator
void visit_binary_operator(ast::BinaryOperator &node) override
visit node of type ast::BinaryOperator
Definition: ast_visitor.cpp:199
nmodl::visitor::ConstAstVisitor::visit_expression_statement
void visit_expression_statement(const ast::ExpressionStatement &node) override
visit node of type ast::ExpressionStatement
Definition: ast_visitor.cpp:635
nmodl::ast::Float::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:616
nmodl::visitor::AstVisitor::visit_electrode_cur_var
void visit_electrode_cur_var(ast::ElectrodeCurVar &node) override
visit node of type ast::ElectrodeCurVar
Definition: ast_visitor.cpp:82
nmodl::ast::ElseStatement
TODO.
Definition: else_statement.hpp:38
nmodl::ast::Limits::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:5847
nmodl::ast::WrappedExpression::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:13616
nmodl::ast::RangeVar::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:1878
nmodl::ast::ElectrodeCurrent
Represents ELECTRODE_CURRENT variables statement in NMODL.
Definition: electrode_current.hpp:39
nmodl::ast::NeuronBlock
Represent NEURON block in the mod file.
Definition: neuron_block.hpp:53
nmodl::visitor::ConstAstVisitor::visit_eigen_newton_solver_block
void visit_eigen_newton_solver_block(const ast::EigenNewtonSolverBlock &node) override
visit node of type ast::EigenNewtonSolverBlock
Definition: ast_visitor.cpp:737
nmodl::visitor::ConstAstVisitor::visit_unary_operator
void visit_unary_operator(const ast::UnaryOperator &node) override
visit node of type ast::UnaryOperator
Definition: ast_visitor.cpp:569
nmodl::visitor::ConstAstVisitor::visit_diff_eq_expression
void visit_diff_eq_expression(const ast::DiffEqExpression &node) override
visit node of type ast::DiffEqExpression
Definition: ast_visitor.cpp:581
nmodl::ast::Nonspecific::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:11601
nmodl::ast::BinaryExpression
Represents binary expression in the NMODL.
Definition: binary_expression.hpp:52
nmodl::ast::ParamBlock
Represents a PARAMETER block in the NMODL.
Definition: param_block.hpp:53
nmodl::visitor::ConstAstVisitor::visit_assigned_block
void visit_assigned_block(const ast::AssignedBlock &node) override
visit node of type ast::AssignedBlock
Definition: ast_visitor.cpp:476
nmodl::visitor::ConstAstVisitor::visit_breakpoint_block
void visit_breakpoint_block(const ast::BreakpointBlock &node) override
visit node of type ast::BreakpointBlock
Definition: ast_visitor.cpp:521
nmodl::visitor::ConstAstVisitor::visit_program
void visit_program(const ast::Program &node) override
visit node of type ast::Program
Definition: ast_visitor.cpp:731
nmodl::ast::NonspecificCurVar
TODO.
Definition: nonspecific_cur_var.hpp:38
nmodl::visitor::ConstAstVisitor::visit_pointer_var
void visit_pointer_var(const ast::PointerVar &node) override
visit node of type ast::PointerVar
Definition: ast_visitor.cpp:458
nmodl::visitor::ConstAstVisitor::visit_after_block
void visit_after_block(const ast::AfterBlock &node) override
visit node of type ast::AfterBlock
Definition: ast_visitor.cpp:527
nmodl::visitor::ConstAstVisitor::visit_float
void visit_float(const ast::Float &node) override
visit node of type ast::Float
Definition: ast_visitor.cpp:413
nmodl::visitor::AstVisitor::visit_assigned_definition
void visit_assigned_definition(ast::AssignedDefinition &node) override
visit node of type ast::AssignedDefinition
Definition: ast_visitor.cpp:262
nmodl::visitor::ConstAstVisitor::visit_electrode_current
void visit_electrode_current(const ast::ElectrodeCurrent &node) override
visit node of type ast::ElectrodeCurrent
Definition: ast_visitor.cpp:695
nmodl::ast::DestructorBlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:2989
nmodl::visitor::ConstAstVisitor::visit_linear_block
void visit_linear_block(const ast::LinearBlock &node) override
visit node of type ast::LinearBlock
Definition: ast_visitor.cpp:497
nmodl::visitor::ConstAstVisitor::visit_bbcore_pointer
void visit_bbcore_pointer(const ast::BbcorePointer &node) override
visit node of type ast::BbcorePointer
Definition: ast_visitor.cpp:710
nmodl::visitor::ConstAstVisitor::visit_read_ion_var
void visit_read_ion_var(const ast::ReadIonVar &node) override
visit node of type ast::ReadIonVar
Definition: ast_visitor.cpp:440
nmodl::visitor::ConstAstVisitor::visit_state_block
void visit_state_block(const ast::StateBlock &node) override
visit node of type ast::StateBlock
Definition: ast_visitor.cpp:479
nmodl::visitor::AstVisitor::visit_function_table_block
void visit_function_table_block(ast::FunctionTableBlock &node) override
visit node of type ast::FunctionTableBlock
Definition: ast_visitor.cpp:139
nmodl::visitor::AstVisitor::visit_valence
void visit_valence(ast::Valence &node) override
visit node of type ast::Valence
Definition: ast_visitor.cpp:241
nmodl::visitor::AstVisitor::visit_state_block
void visit_state_block(ast::StateBlock &node) override
visit node of type ast::StateBlock
Definition: ast_visitor.cpp:112
nmodl::ast::ForNetcon::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:5015
nmodl::visitor::ConstAstVisitor::visit_wrapped_expression
void visit_wrapped_expression(const ast::WrappedExpression &node) override
visit node of type ast::WrappedExpression
Definition: ast_visitor.cpp:743
nmodl::ast::String
Represents a string.
Definition: string.hpp:52
nmodl::ast::Limits
TODO.
Definition: limits.hpp:38
nmodl::ast::ReactVarName::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:1413
all.hpp
Auto generated AST classes declaration.
nmodl::ast::WrappedExpression
Wrap any other expression type.
Definition: wrapped_expression.hpp:38
nmodl::visitor::ConstAstVisitor::visit_neuron_block
void visit_neuron_block(const ast::NeuronBlock &node) override
visit node of type ast::NeuronBlock
Definition: ast_visitor.cpp:545
nmodl::ast::Argument::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:1289
nmodl::ast::FromStatement
TODO.
Definition: from_statement.hpp:38
nmodl::visitor::AstVisitor::visit_independent_block
void visit_independent_block(ast::IndependentBlock &node) override
visit node of type ast::IndependentBlock
Definition: ast_visitor.cpp:106
nmodl::ast::LonDifuse::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:10439
nmodl::visitor::AstVisitor::visit_define
void visit_define(ast::Define &node) override
visit node of type ast::Define
Definition: ast_visitor.cpp:253
nmodl::visitor::AstVisitor::visit_mutex_lock
void visit_mutex_lock(ast::MutexLock &node) override
visit node of type ast::MutexLock
Definition: ast_visitor.cpp:292
nmodl::ast::NetReceiveBlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:4362
nmodl::visitor::AstVisitor::visit_initial_block
void visit_initial_block(ast::InitialBlock &node) override
visit node of type ast::InitialBlock
Definition: ast_visitor.cpp:115
nmodl::ast::InitialBlock::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:2821
nmodl::visitor::ConstAstVisitor::visit_factor_def
void visit_factor_def(const ast::FactorDef &node) override
visit node of type ast::FactorDef
Definition: ast_visitor.cpp:605
nmodl::ast::OntologyStatement::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:12733
nmodl::visitor::AstVisitor::visit_unit_def
void visit_unit_def(ast::UnitDef &node) override
visit node of type ast::UnitDef
Definition: ast_visitor.cpp:235
nmodl::visitor::ConstAstVisitor::visit_solve_block
void visit_solve_block(const ast::SolveBlock &node) override
visit node of type ast::SolveBlock
Definition: ast_visitor.cpp:518
nmodl::ast::UpdateDt::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:13902
nmodl::ast::WhileStatement::visit_children
void visit_children(visitor::Visitor &v) override
visit children i.e.
Definition: ast.cpp:9427
nmodl::visitor::AstVisitor::visit_node
void visit_node(ast::Node &node) override
visit node of type ast::Node
Definition: ast_visitor.cpp:22
ast_visitor.hpp
Concrete visitor for all AST classes.