The list of reserved keywords is the following:
- signal: Declare a new signal.
- input: Declare the signal as input.
- output: Declare the signal as output.
- public: Declare the signal as public.
- template: Define a new circuit.
- component: Instantiate a template.
- var: Declare a new integer variable.
- function: Define a new function.
- return: Return from function.
- if: Branch based on the result of a conditional expression.
- else: Fallback for
ifcontrol flow construct.
- for: Loop conditionally based on the result of an expression.
- while: Loop conditionally based on the result of an expression.
- do: Loop conditionally based on the result of an expression.
- log: Print the result of the evaluation.
- assert: Check the condition at construction time.
- include: Include code of the indicated file.
- pragma circom: Instruction to check the compiler version.
- pragma custom_templates: Instruction to indicate the usage of custom templates.