hara.model.annex.spec-circom

!.circom

macro

(!.circom & body)

+book+

+features+

+grammar+

+init+

+meta+

+template+

break

macro

component

macro

component.circom

macro

(component.circom & body)

def$.circom

macro

(def$.circom & body)

def.circom

macro

(def.circom & body)

defabstract.circom

macro

(defabstract.circom & body)

defgen.circom

macro

(defgen.circom & body)

defglobal.circom

macro

(defglobal.circom & body)

defmacro.circom

macro

(defmacro.circom & body)

defn-.circom

macro

(defn-.circom & body)

defn.circom

macro

(defn.circom & body)

defptr.circom

macro

(defptr.circom & body)

defrun.circom

macro

(defrun.circom & body)

deftemp.circom

macro

(deftemp.circom & body)

format-string

(format-string x)

include

macro

include.circom

macro

(include.circom & body)

main

macro

main.circom

macro

(main.circom & body)

pragma

macro

pragma.circom

macro

(pragma.circom & body)

return

macro

signal

macro

signal.circom

macro

(signal.circom & body)

template

macro

template.circom

macro

(template.circom & body)

tf-component

(tf-component [_ name [tmpl & args]])

Transforms component instantiation. (component c (MyTemplate arg1 arg2)) -> component c = MyTemplate(arg1, arg2);

tf-constraint

(tf-constraint [op & args])

Transforms constraints to add semicolon

tf-for

(tf-for [_ [sym start end step] & body])

Transforms for loop. (for i 0 10 …) -> for (var i = 0; i < 10; i++) …

tf-include

(tf-include [_ filename])

Transforms include. (include “filename.circom”) -> include “filename.circom”;

tf-main

(tf-main [_ opts tmpl-call])

Transforms main component definition. (main {public a b} MyTemplate) -> component main {public a,b} = MyTemplate();

tf-pragma

(tf-pragma [_ & args])

Transforms pragma. (pragma circom 2.0.0) -> pragma circom 2.0.0;

tf-signal

(tf-signal [_ & args])

Transforms signal declaration. (signal input x) -> signal input x; (signal output y) -> signal output y; (signal z) -> signal z;

tf-template

(tf-template [_ sym args & body])

Transforms a template definition. (template MyTemplate args body…) -> template MyTemplate(args) { body… }

tf-var

(tf-var [_ name val])

Transforms var declaration. (var x 10) -> var x = 10;

var

macro

var.circom

macro

(var.circom & body)