/ cat / propdecl
Property Declaration
Syntax

    PROPERTY [ READ ] Identifier AS Datatype

This declares a class property.

If the keyword `READ` is specified, then the property will be read-only.

Once declared, a property must be implemented : you must write a function to read the property, and, if not read-only, a function to write the property.

The name of the read function is the name of the property followed by an underscore and the word `Read`. This function takes no argument and must return a data whose type is the same as the property datatype.

The name of the write function is the name of the property followed by an underscore and the word `Write`. This function is a procedure that returns nothing, and that takes only one argument whose type is the same as the property datatype.

### Examples

    PROPERTY Enabled AS Boolean
    PROPERTY READ Handle AS Integer
    ...

    PRIVATE $bEnabled AS Boolean
    PRIVATE $iHandle AS Integer

    ' Implements the Enabled property

    FUNCTION Enabled_Read() AS Boolean

      RETURN $bEnabled

    END

    SUB Enabled_Write(bEnabled AS Boolean)

      $bEnabled = bEnabled
      UpdateEverything

    END

    ' Implements the Handle property

    FUNCTION Handle_Read() AS Integer

      RETURN $iHandle

    END

### See also

Method Declaration