< Previous | Contents | Manuals Home | Boris FX | Next >

Sizzle Grammar Reference


prog stmtlist stmtlist stmtlist stmt stmtlist stmt

stmt for ( [expr] ; [expr] ; [ expr] ) stmtlist end (expressions are optional)

stmt while ( expr ) stmtlist end

stmt for ( lhs in expr ) stmtlist end (each object in an object list)

stmt break stmt continue stmt return

stmt return expr

stmt function ident ( idlist ) stmtlist end (function definition) stmt function ident ( ) stmtlist end

stmt local idlist idlist idlist , ident idlist ident

stmt if ( expr ) stmtlist end

stmt if ( expr ) stmtlist else stmtlist end

stmt if ( expr ) stmtlist elseifs else stmtlist end

stmt if ( expr ) stmtlist elseifs end

elseifs elseifs elseif elseifs elseif

elseif elsif ( expr ) stmtlist elseif elseif b expr ) stmtlist stmt assop

stmt boolor // Generating output...

stmt ;

stmt delete lhs

expr expr assop expr expr boolor expr assop

expr boolor

assop lhs = boolor assop lhs += boolor assop lhs -= boolor assop lhs *= boolor assop lhs /= boolor assop lhs &= boolor assop lhs |= boolor assop lhs ^= boolor boolor boolor || booland boolor booland

booland booland && boolnot booland boolnot

boolnot ! relop boolnot relop

relop addop < addop relop addop > addop relop addop == addop relop addop <= addop relop addop >= addop relop addop != addop relop addop

addop addop + mulop (addition)

addop addop - mulop (subtraction)

addop addop | mulop (bitwise or)

addop mulop

mulop mulop * negop (multiplication)

mulop mulop / negop (division)

mulop mulop % negop (modulo)

mulop mulop & negop (bitwise and)

mulop mulop ^ negop (bitwise exclusive or)

mulop mulop << negop (left binary shift)

mulop mulop >> negop (right binary shift)

mulop negop

negop ~ powop (bitwise complement)

negop - powop (negative)

negop + powop (nothing, except strings converted to numbers)

negop powop

powop powop ** term (powerop to the auto power)

powop term auto ++ lhs auto -- lhs auto lhs ++ auto lhs --

term ident ( arglist ) (function call)

term ident ( ) (function call)

term ( boolor ? expr : expr ) (select the 1st or 2nd expression, based on boolean)

term string

term number (integers, floating point, and 32-bit hexadecimal, all become 64-bit floating point)

term new lhs term lhs

lhs ident (ident is an identifier, an alphanumeric starting with alpha)

lhs lhs [ expr ] (select I’th element from an object list)

lhs lhs . ident (select an attribute from an object)

lhs lhs . $ ident (select the attribute whose name is contained in ident)

term lhs . ident ( arglist ) (member function call)

term lhs . ident ( ) (member function call)

term ( expr )

term [ keylist ] (create a list object with optional keys)

term [ ] (create an empty list)

term # term (number of objects in a list)

term $ term (the object with the name given by term)

arglist arglist , expr arglist expr

keylist keylist , string : expr (Expression list with optional constant keys) keylist keylist , expr

keylist string : expr keylist expr


©2023 Boris FX, Inc. — UNOFFICIAL — Converted from original PDF.