Modeler types available in this API.
Nil is the equivalent of NULL in C++.
The single value of this type is accessed through the keyword nil in LSP. It is used to signify the absence of a value. Nil is the default returned value for functions that don’t explicitly return anything. It’s also the default value assigned by the modeler to every global and local variable.
Integers are positive and negative integral numbers stored on 64 bits.
They are created by integer literals or returned as results of arithmetic operations.
Double precision floating point numbers (stored on 64 bits) in IEEE 754 binary floating point representation.
They are created by floating point literals or returned as results of arithmetic operations.
A string is an immutable sequence of unicode characters stored in UTF-8 format.
LSExpressions are the variables and the expressions of the mathematical model defined by the LSP program or directly in the LocalSolver API.
Function of the modeler.
A function can be written in LSP (user-defined function) or can be a function written in C++ and exposed to the user in LSP. The LSP language treats functions as first-class citizens. In other words, a function is a value with a particular type. Thus, functions can be passed as arguments to other functions, can be assigned to variables or returned by other functions.
Maps are data structure matching some values to some keys.
This is the main data structure in LSP that can also be used as an array-like structure.
A module is a collection of global variables.
Modules are used to group functions together and import them dynamically at runtime. The I/O library is an example of a module. Each LSP file is a module.
Any other value used in the modeler but not exposed in this API (dates, files or streams for example).