{ <statements> }
Define a range of Vipsi command syntax: Statements Glossary: Statementstatements with private Glossary: Variable, var_refvariable scope.
Flow control: if … then Flow control: try … thenThe Vipsi command syntax: Instructions Instructions Glossary: Instructioninstruction { starts a range of Vipsi command syntax: Instructions Instructions Glossary: Instructioninstructions with a List functions: localslocal Glossary: Variable, var_refvariable scope. All Glossary: Variable, var_refvariables defined within List functions: thisthis scope are deleted when Flow control: if … then Flow control: try … thenthe scope is left Operators: Make Identifier "@"at }. Glossary: Variable, var_refVariables with Flow control: if … then Flow control: try … thenthe same Vipsi command syntax: Identifiers (names) Identifiers, names Operators: Make Identifier "@" Text functions: name Glossary: Name, Identifiername as existing Glossary: Variable, var_refvariables outside Flow control: if … then Flow control: try … thenthe scope can be defined within List functions: thisthis scope Operators: Boolean And with Variable "&&=" Operators: Bitwise And with Variable "&=" Operators: Bitwise And "&" Operators: Boolean And "&&"and will be used instead of those outside. Flow control: if … then Flow control: try … thenThe private Glossary: Variable, var_refvariables are stored in a Data Types: Lists and arrays Item selector "[]": Lists Glossary: list, list_valliste named privates which is also accessible by Vipsi command syntax: Identifiers (names) Identifiers, names Operators: Make Identifier "@" Text functions: name Glossary: Name, Identifiername.
In Flow control: if … then Flow control: try … thenthe following example all Vipsi command syntax: Statements Glossary: Statementstatements are embraced by curly quotes to prevent that Glossary: Variable, var_refvariables defined here accidently overwrite List functions: globals Shell Immediate Commands: globalsglobal Glossary: Variable, var_refvariables of Flow control: if … then Flow control: try … thenthe same Vipsi command syntax: Identifiers (names) Identifiers, names Operators: Make Identifier "@" Text functions: name Glossary: Name, Identifiername.
{
Instructions: var How does VScript::Value() work?: Var*&var i=0
Flow control: do … loopdo
Flow control: whilewhile ++i <= Numeric functions: countcount List functions: globals Shell Immediate Commands: globalsglobals
Instructions: var How does VScript::Value() work?: Var*&var Data = List functions: globals Shell Immediate Commands: globalsglobals[i]
Instructions: var How does VScript::Value() work?: Var*&var Vipsi command syntax: Identifiers (names) Identifiers, names Operators: Make Identifier "@" Text functions: name Glossary: Name, IdentifierName = Vipsi command syntax: Identifiers (names) Identifiers, names Operators: Make Identifier "@" Text functions: name Glossary: Name, Identifiername(List functions: globals Shell Immediate Commands: globalsglobals[i])
Flow control: if … thenif Numeric functions: istextistext(Data) Data=Data[to 60]; Text functions: convert Instructions: convertconvert Data to quoted; Flow control: if … then Flow control: try … thenthen
Instructions: putput Constants: nlnl, Vipsi command syntax: Identifiers (names) Identifiers, names Operators: Make Identifier "@" Text functions: name Glossary: Name, IdentifierName, " = ", Data
Flow control: do … looploop
}
Separators: Curly brackets "{ … }" Instructions: Local scope "{}"Braces are also used for Literals: List literals Lists and arrays: List literalslist literals Operators: Boolean And with Variable "&&=" Operators: Bitwise And with Variable "&=" Operators: Bitwise And "&" Operators: Boolean And "&&"and in Vipsi command syntax: Instructions Instructions Glossary: Instructioninstruction Instructions: procproc Operators: Boolean And with Variable "&&=" Operators: Bitwise And with Variable "&=" Operators: Bitwise And "&" Operators: Boolean And "&&"and Literals: Procedure literals Procedures: Procedure literalsprocedure literals to enclose Flow control: if … then Flow control: try … thenthe Vipsi command syntax: Statements Glossary: Statementstatements of Flow control: if … then Flow control: try … thenthe Vipsi command syntax: Procedures Data Types: Procedures Glossary: Procedureprocedure.
Separators: Curly brackets "{ … }" Instructions: Local scope "{}"Braces { ... } are used to enclose ranges of program code with a private Glossary: Variable, var_refvariable scope Operators: Boolean And with Variable "&&=" Operators: Bitwise And with Variable "&=" Operators: Bitwise And "&" Operators: Boolean And "&&"and for Literals: List literals Lists and arrays: List literalslist literals. List functions: thisThis depends on Flow control: if … then Flow control: try … thenthe place where they are encountered. Flow control: if … thenIf a Separators: Curly brackets "{ … }" Instructions: Local scope "{}"brace occurs Operators: Make Identifier "@"at Flow control: if … then Flow control: try … thenthe place of an Vipsi command syntax: Instructions Instructions Glossary: Instructioninstruction Flow control: if … then Flow control: try … thenthen it starts a private Glossary: Variable, var_refvariable scope. Flow control: if … thenIf a Separators: Curly brackets "{ … }" Instructions: Local scope "{}"brace occurs Operators: Make Identifier "@"at Flow control: if … then Flow control: try … thenthe position of an Vipsi command syntax: Expressions Glossary: Expressionexpression Flow control: if … then Flow control: try … thenthen it is Flow control: if … then Flow control: try … thenthe beginning of a Literals: List literals Lists and arrays: List literalslist literal.
Flow control: if … then Flow control: try … thenThe only place where List functions: thisthis may lead to confusion is Flow control: if … then Flow control: try … thenthe vipsi shell: Operators: Make Identifier "@"At Flow control: if … then Flow control: try … thenthe start of Flow control: if … then Flow control: try … thenthe command line Flow control: if … then Flow control: try … thenthe parser expects an Vipsi command syntax: Instructions Instructions Glossary: Instructioninstruction. For your convenience it is also possible to just type an Vipsi command syntax: Expressions Glossary: Expressionexpression Operators: Boolean And with Variable "&&=" Operators: Bitwise And with Variable "&=" Operators: Bitwise And "&" Operators: Boolean And "&&"and Flow control: if … then Flow control: try … thenthe shell will print Flow control: if … then Flow control: try … thenthe result. Thus Flow control: if … thenif you just type in
{ x=22, y=1.5, z=0 }
to see whether vipsi evaluates your Literals: List literals Lists and arrays: List literalslist literal as expected, Flow control: if … then Flow control: try … thenthen Flow control: if … then Flow control: try … thenthe opening { stands Operators: Make Identifier "@"at Flow control: if … then Flow control: try … thenthe position of an Vipsi command syntax: Instructions Instructions Glossary: Instructioninstruction Operators: Boolean And with Variable "&&=" Operators: Bitwise And with Variable "&=" Operators: Bitwise And "&" Operators: Boolean And "&&"and should be handled as Flow control: if … then Flow control: try … thenthe start of a range of Vipsi command syntax: Statements Glossary: Statementstatements with private Glossary: Variable, var_refvariable scope.
As of version 0.8.8 Flow control: if … then Flow control: try … thenthe shell has some automagic intelligence to detect List functions: thisthis. Flow control: if … thenIf a command line starts with an opening Separators: Curly brackets "{ … }" Instructions: Local scope "{}"brace { Flow control: if … then Flow control: try … thenthen Flow control: if … then Flow control: try … thenthe shell defaults to a Literals: List literals Lists and arrays: List literalslist literal, except Flow control: if … thenif it contains a Separators: Semicolon ";"semicolon ";" Operators: Boolean Or with Variable "||=" Operators: Bitwise Or with Variable "|=" Operators: Bitwise Or "|" Operators: Boolean Or "||"or a pure Vipsi command syntax: Instructions Instructions Glossary: Instructioninstruction like Instructions: var How does VScript::Value() work?: Var*&var. List functions: thisThis is done by silently putting a Instructions: putput Vipsi command syntax: Statements Glossary: Statementstatement in front of Flow control: if … then Flow control: try … thenthe Data Types: Lists and arrays Item selector "[]": Lists Glossary: list, list_vallist Operators: Boolean And with Variable "&&=" Operators: Bitwise And with Variable "&=" Operators: Bitwise And "&" Operators: Boolean And "&&"and Flow control: if … then Flow control: try … thenthe printed result is Operators: Bitwise Not "~" Operators: Boolean Negation "!"not always identical to what would be printed Flow control: if … thenif it would have been evaluated as an Vipsi command syntax: Expressions Glossary: Expressionexpression without glue.
|