reference.language.assignments.html Maven / Gradle / Ivy
Assignments
Assignment statements
An assignment is a statement which assigns the value of an expression to a value holder.
An assignment has the form holder = exp where exp is an expression,
aka rvalue (read right value) and holder is a valid value holder,
aka lvalue (read left value).
When an assignment statement is executed, the rvalue is computed and stored in the lvalue.
Assigning values to variables
Prompto infers the type of a variable from its first assignment, which is generaly desirable.
In the above example, the variable a has the type Integer.
There are however situations where you might want the type to be explicit.
In the first statement of the below example, the assigned type is Decimal, although the rvalue is an Integer.
This is in preparation of the next statement, where the rvalue is a Decimal.
Without the explicit type in the first statement, the second statement would be illegal
because an Integer variable cannot hold a Decimal value.
Assigning values to list items
Prompto values are immutable by default. Therefore you cannot change the contents of a list, unless you make it
explicit using the mutable keyword when creating the list.
A list item assignment has the form list[item] = exp where exp is an expression,
list is a list expression and item is an Integer expression.
The item must be in the range 1 .. n where n is the number of items in the list.
Assigning values to tuple items
Assigning values to tuple items is done the same way as for lists.
Assigning values to set items
Assigning values to set items is illegal.
Assigning values to dictionary keys
Prompto values are immutable by default. Therefore you cannot change the contents of a dictionary, unless you make it
explicit using the mutable keyword when creating the dictionary.
A dictionary key assignment has the form dict[key] = exp where exp is an expression,
dict is a dictionary expression and key is a Text expression.
Assigning values to category object members
Prompto values are immutable by default. Therefore you cannot change a member of a category object, unless you make it
explicit using the mutable keyword when creating the object.
A category member assignment has the form object.member = exp where exp is an expression,
object is a category object expression and member is an attribute.
© 2015 - 2025 Weber Informatics LLC | Privacy Policy