32 lines
834 B
Text
32 lines
834 B
Text
Module checkit {
|
|
class alfa {
|
|
x=5
|
|
}
|
|
\\ a class is a global function which return a group
|
|
Dim a(5)=alfa()
|
|
Print a(3).x=5
|
|
For a(3) {
|
|
group anyname { y=10}
|
|
\\ merge anyname to this (a(3))
|
|
this=anyname
|
|
}
|
|
Print a(3).y=10
|
|
Print Valid(a(2).y)=false
|
|
\\ make a copy of a(3) to m
|
|
m=a(3)
|
|
m.y*=2
|
|
Print m.y=20, a(3).y=10
|
|
\\ make a pointer to a(3) in n
|
|
n->a(3)
|
|
Print n=>y=10
|
|
n=>y+=20
|
|
Print a(3).y=30
|
|
\\ now n points to a(2)
|
|
n->a(2)
|
|
Print Valid(n=>y)=false ' y not exist in a(2)
|
|
Print n is a(2) ' true
|
|
\\ we don't have types for groups
|
|
Print valid(@n as m)=false ' n haven't all members of m
|
|
Print valid(@m as n)=true ' m have all members of n
|
|
}
|
|
checkit
|