
mlr -n put -v 
DSL EXPRESSION:


AST:
* statement block


mlr -n filter -v 
DSL EXPRESSION:


AST:
* statement block


mlr -n put -v begin {}
DSL EXPRESSION:
begin {}

AST:
* statement block
    * begin block
        * statement block


mlr -n put -v begin {;}
DSL EXPRESSION:
begin {;}

AST:
* statement block
    * begin block
        * statement block


mlr -n put -v begin {;;}
DSL EXPRESSION:
begin {;;}

AST:
* statement block
    * begin block
        * statement block


mlr -n put -v begin {;;;}
DSL EXPRESSION:
begin {;;;}

AST:
* statement block
    * begin block
        * statement block


mlr -n put -v begin {@x=1}
DSL EXPRESSION:
begin {@x=1}

AST:
* statement block
    * begin block
        * statement block
            * assignment "="
                * direct oosvar value "x"
                * int literal "1"


mlr -n put -v begin {@x=1;}
DSL EXPRESSION:
begin {@x=1;}

AST:
* statement block
    * begin block
        * statement block
            * assignment "="
                * direct oosvar value "x"
                * int literal "1"


mlr -n put -v begin {;@x=1}
DSL EXPRESSION:
begin {;@x=1}

AST:
* statement block
    * begin block
        * statement block
            * assignment "="
                * direct oosvar value "x"
                * int literal "1"


mlr -n put -v begin {@x=1;@y=2}
DSL EXPRESSION:
begin {@x=1;@y=2}

AST:
* statement block
    * begin block
        * statement block
            * assignment "="
                * direct oosvar value "x"
                * int literal "1"
            * assignment "="
                * direct oosvar value "y"
                * int literal "2"


mlr -n put -v begin {@x=1;;@y=2}
DSL EXPRESSION:
begin {@x=1;;@y=2}

AST:
* statement block
    * begin block
        * statement block
            * assignment "="
                * direct oosvar value "x"
                * int literal "1"
            * assignment "="
                * direct oosvar value "y"
                * int literal "2"


mlr -n put -v true {}
DSL EXPRESSION:
true {}

AST:
* statement block
    * cond block
        * bool literal "true"
        * statement block


mlr -n put -v true {;}
DSL EXPRESSION:
true {;}

AST:
* statement block
    * cond block
        * bool literal "true"
        * statement block


mlr -n put -v true {;;}
DSL EXPRESSION:
true {;;}

AST:
* statement block
    * cond block
        * bool literal "true"
        * statement block


mlr -n put -v true {;;;}
DSL EXPRESSION:
true {;;;}

AST:
* statement block
    * cond block
        * bool literal "true"
        * statement block


mlr -n put -v true {@x=1}
DSL EXPRESSION:
true {@x=1}

AST:
* statement block
    * cond block
        * bool literal "true"
        * statement block
            * assignment "="
                * direct oosvar value "x"
                * int literal "1"


mlr -n put -v true {@x=1;}
DSL EXPRESSION:
true {@x=1;}

AST:
* statement block
    * cond block
        * bool literal "true"
        * statement block
            * assignment "="
                * direct oosvar value "x"
                * int literal "1"


mlr -n put -v true {;@x=1}
DSL EXPRESSION:
true {;@x=1}

AST:
* statement block
    * cond block
        * bool literal "true"
        * statement block
            * assignment "="
                * direct oosvar value "x"
                * int literal "1"


mlr -n put -v true {@x=1;@y=2}
DSL EXPRESSION:
true {@x=1;@y=2}

AST:
* statement block
    * cond block
        * bool literal "true"
        * statement block
            * assignment "="
                * direct oosvar value "x"
                * int literal "1"
            * assignment "="
                * direct oosvar value "y"
                * int literal "2"


mlr -n put -v true {@x=1;;@y=2}
DSL EXPRESSION:
true {@x=1;;@y=2}

AST:
* statement block
    * cond block
        * bool literal "true"
        * statement block
            * assignment "="
                * direct oosvar value "x"
                * int literal "1"
            * assignment "="
                * direct oosvar value "y"
                * int literal "2"


mlr -n put -v end {}
DSL EXPRESSION:
end {}

AST:
* statement block
    * end block
        * statement block


mlr -n put -v end {;}
DSL EXPRESSION:
end {;}

AST:
* statement block
    * end block
        * statement block


mlr -n put -v end {;;}
DSL EXPRESSION:
end {;;}

AST:
* statement block
    * end block
        * statement block


mlr -n put -v end {;;;}
DSL EXPRESSION:
end {;;;}

AST:
* statement block
    * end block
        * statement block


mlr -n put -v end {@x=1}
DSL EXPRESSION:
end {@x=1}

AST:
* statement block
    * end block
        * statement block
            * assignment "="
                * direct oosvar value "x"
                * int literal "1"


mlr -n put -v end {@x=1;}
DSL EXPRESSION:
end {@x=1;}

AST:
* statement block
    * end block
        * statement block
            * assignment "="
                * direct oosvar value "x"
                * int literal "1"


mlr -n put -v end {;@x=1}
DSL EXPRESSION:
end {;@x=1}

AST:
* statement block
    * end block
        * statement block
            * assignment "="
                * direct oosvar value "x"
                * int literal "1"


mlr -n put -v end {@x=1;@y=2}
DSL EXPRESSION:
end {@x=1;@y=2}

AST:
* statement block
    * end block
        * statement block
            * assignment "="
                * direct oosvar value "x"
                * int literal "1"
            * assignment "="
                * direct oosvar value "y"
                * int literal "2"


mlr -n put -v end {@x=1;;@y=2}
DSL EXPRESSION:
end {@x=1;;@y=2}

AST:
* statement block
    * end block
        * statement block
            * assignment "="
                * direct oosvar value "x"
                * int literal "1"
            * assignment "="
                * direct oosvar value "y"
                * int literal "2"


