EnglishРусский  
The project is closed! You can look at a new scripting language. It is available on GitHub.
Also, try our open source cross-platform automation software.

Ads

Installer and installation software
Commercial and Freeware installers.

Properties

Gentee provides you with the property in order to get or set values of the fields of the structured types. Using the properties you can hide a direct access to the fields and perform additional calculations in order to get a field value or set a field value with the help of the assignment operator. A property name must differ from a field name, because a direct access to a field has a higher priority; otherwise, a field value will be got or set.

The get property, that returns a value, must contain no arguments.

type mytype
{
   str val
}

property str  mytype.value
{
   return this.val
}

The set property, that defines a value, must contain one argument. Also, the set property can return a value.

property str mytype.value( str newval )
{
   if *newval : this.val = newval
   else : this.val = "empty"
   return this.val
}

A property name is specified in the same way as a field in order to call a property. The set property is called if it is specified on the left side of the assignment operator; otherwise, the get property is called.

func myfunc
{
   mytype myt

   myt.value = "New value"  // set
   print( myt.value )       // get
}

Related links