Xbasic
PROPERTY_RECURSE_ASSIGN Function
Syntax
V PROPERTY_RECURSE_ASSIGN(P destination,P source)
Arguments
- destination
The name of the destination dot variable.
- source
The name of the source dot variable.
Description
Recursive property assignment (for propagating properties instead of referencing them).
Discussion
PROPERTY_RECURSE_ASSIGN() assigns the sub-elements of one "Dot" variable to another. If you set one dot variable to another (e.g. dot_var1 = dot_var2), the sub-elements of the assigned dot variable simply point to the original dot variable's sub-element. However, if you use the PROPERTY_RECURSE_assign() function, the assigned dot variable has its own copy of the sub-elements.
Example
Type the following in the Interactive window:
Family.lastname = "Smith" Family.father = "John" Family.mother = "Irene" Family.children.child1 = "Tim" Family.children.child2 = "Lara" b.lastname = "" property_recurse_assign(b, family) c = family ? b.lastname -> "Smith" ? c.lastname -> "Smith" Family.lastname = "Jones" ? Family.lastname -> "Jones" ? b.lastname -> "Smith" (because "B" is its own variable. It does not point to the "Family" dot variable.) ? c.lastname -> "Jones" (because "C" simply points to the "Family" dot variable.)
See Also