Page tree

Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

The table below lists the return type for every Left side, Goal type, List/Table and Return type combination, along with an example. So if the left side is a String the return type is a Telitab, when the left side is a value the return type is a pointer to an object, except when the goal type is a list of values, then  the return type is a value. Assigning a pointer to a value parameter is useless as it can not be used. It only makes sense in a function call. Then it is used implicitly. However the expression editor does not support this yet. At the moment it is possible to define an expression that will assign a pointer to a value parameter. This will be solved in a future release. However, the case when the left side is a value and the goal type is a table of values can only be detected run-time, and can therefore not be prevented in the expression editor.

Left

side

Goal

type

List /

Table


Return type


Expression


Goal

 


Input

 
ValueValueListValueY = DataObject(@Y, @X:STR$(Xmin)+"(0.1)"+STR$(Xmax))Y = X^2 Xmax = 3Xmin = 3
ValueValueTablePointer to DataObjectY = DataObject(@Y, @X:STR$(Xmin)+"(0.1)"+STR$(Xmax))Y = X^2 Xmax = 3Xmin = 1
ValueStringListPointer to DataObjectY1 = DataObject(@D$, @X:STR$(Xmin)+"(0.1)"+STR$(Xmax))D$ = STR$(2*X^2) Xmax = 3Xmin = 3
ValueStringTablePointer to DataObjectY1 = DataObject(@D$, @X:STR$(Xmin)+"(0.1)"+STR$(Xmax))D$ = STR$(2*X^2) Xmax = 4Xmin = 3
ValueTelitabListPointer to DataObjecty2 = DataObject(@C#)C# = TELITAB#(0,A,B) A = 1B = 1
ValueTelitabTablePointer to DataObjecty2 = DataObject(@C#)C# = TELITAB#(0,A,B) A = 1(1)10B = 2(2)20
ValueObjectListPointer to ChildObjecty3 = DataObject(@ChildObject, @X:STR$(Xmin)+"(0.1)"+STR$(Xmax))ChildObject(@Y, X)Y = X^2Xmax = 3Xmin = 3
ValueObjectTablePointer to DataObjecty3 = DataObject(@ChildObject, @X:STR$(Xmin)+"(0.1)"+STR$(Xmax))ChildObject(@Y, X)Y = X^2Xmax = 4Xmin = 3
StringValueListTelitabY$ = DataObject(@Y, @X:STR$(Xmin)+"(0.1)"+STR$(Xmax))Y = X^2 Xmax = 3Xmin = 3
StringValueTableTelitabY$ = DataObject(@Y, @X:STR$(Xmin)+"(0.1)"+STR$(Xmax))Y = X^2 Xmax = 3Xmin = 1
StringStringListTelitabY1$ = DataObject(@D$, @X:STR$(Xmin)+"(0.1)"+STR$(Xmax))D$ = STR$(2*X^2) Xmax = 3Xmin = 3
StringStringTableTelitabY1$ = DataObject(@D$, @X:STR$(Xmin)+"(0.1)"+STR$(Xmax))D$ = STR$(2*X^2) Xmax = 4Xmin = 3
StringTelitabListTelitaby2$ = DataObject(@C#)C# = TELITAB#(0,A,B) A = 1B = 1
StringTelitabTableTelitaby2$ = DataObject(@C#)C# = TELITAB#(0,A,B) A = 1(1)10B = 2(2)20
StringObjectListTelitaby3$ = DataObject(@ChildObject, @X:STR$(Xmin)+"(0.1)"+STR$(Xmax))ChildObject(@Y, X)Y = X^2Xmax = 3Xmin = 3
StringObjectTableTelitaby3$ = DataObject(@ChildObject, @X:STR$(Xmin)+"(0.1)"+STR$(Xmax))ChildObject(@Y, X)Y = X^2Xmax = 4Xmin = 3

...