Types: Difference between revisions
created articles |
→The basic types: methods of integer and float |
||
Line 11: | Line 11: | ||
=== Integer === | === Integer === | ||
Take a integer number like 1, -4 or 1234. | Take a integer number like 1, -4 or 1234. | ||
==== setMaximum(int $maximum): static ==== | |||
Sets a maximum value this property can be assiged. | |||
==== getMaximum(): int ==== | |||
Returns the current maximum value this property can be assigned to. | |||
==== setMinimum(int $minimum): static ==== | |||
Sets a minimum value this property can be assigned. | |||
==== getMinimum(): int ==== | |||
Returns the current minimum value this property can be assigned to. | |||
==== setOutOfBoundsPolicy(string $policy): static ==== | |||
When assigning a value that is lower than minimum or higher than maximum the behaviour of this property is defined by the out-of-bounds-policy: | |||
* '''set''' = If the value is lower than minmum it is set to minimum, if higher than maximum it is set to maximum. | |||
* '''invalid''' = If the value if lower than minimum or higher than maximum an inavlidValueException() is thrown. | |||
==== getOutOfBoundsPolicy(): string ==== | |||
Returns the current out-of-bound-policy. | |||
=== Float === | === Float === | ||
Takes a floating point numer like 1.2, -0.2, 3. | Takes a floating point numer like 1.2, -0.2, 3. | ||
==== setMaximum(int $maximum): static ==== | |||
Sets a maximum value this property can be assiged. | |||
==== getMaximum(): int ==== | |||
Returns the current maximum value this property can be assigned to. | |||
==== setMinimum(int $minimum): static ==== | |||
Sets a minimum value this property can be assigned. | |||
==== getMinimum(): int ==== | |||
Returns the current minimum value this property can be assigned to. | |||
==== setOutOfBoundsPolicy(string $policy): static ==== | |||
When assigning a value that is lower than minimum or higher than maximum the behaviour of this property is defined by the out-of-bounds-policy: | |||
* '''set''' = If the value is lower than minmum it is set to minimum, if higher than maximum it is set to maximum. | |||
* '''invalid''' = If the value if lower than minimum or higher than maximum an inavlidValueException() is thrown. | |||
==== getOutOfBoundsPolicy(): string ==== | |||
Returns the current out-of-bound-policy. | |||
=== Boolean === | === Boolean === |
Revision as of 11:32, 23 September 2024
Of cause you can implement an AbstractProperty and overwrite all necessary methods. But the sunhill framework defines some predefined types and semantics.
The difference between types and semantics
A type is a basic format as you know from any programming language. So you have types like integer or string.
A semantic is the idea behind a value. A typical semantic is temperature or capcity. The semantic has always a type as a parent because a temperature would be always a float and a name is always a string.
Long story short: A semantic is a child of a type.
The basic types
Integer
Take a integer number like 1, -4 or 1234.
setMaximum(int $maximum): static
Sets a maximum value this property can be assiged.
getMaximum(): int
Returns the current maximum value this property can be assigned to.
setMinimum(int $minimum): static
Sets a minimum value this property can be assigned.
getMinimum(): int
Returns the current minimum value this property can be assigned to.
setOutOfBoundsPolicy(string $policy): static
When assigning a value that is lower than minimum or higher than maximum the behaviour of this property is defined by the out-of-bounds-policy:
- set = If the value is lower than minmum it is set to minimum, if higher than maximum it is set to maximum.
- invalid = If the value if lower than minimum or higher than maximum an inavlidValueException() is thrown.
getOutOfBoundsPolicy(): string
Returns the current out-of-bound-policy.
Float
Takes a floating point numer like 1.2, -0.2, 3.
setMaximum(int $maximum): static
Sets a maximum value this property can be assiged.
getMaximum(): int
Returns the current maximum value this property can be assigned to.
setMinimum(int $minimum): static
Sets a minimum value this property can be assigned.
getMinimum(): int
Returns the current minimum value this property can be assigned to.
setOutOfBoundsPolicy(string $policy): static
When assigning a value that is lower than minimum or higher than maximum the behaviour of this property is defined by the out-of-bounds-policy:
- set = If the value is lower than minmum it is set to minimum, if higher than maximum it is set to maximum.
- invalid = If the value if lower than minimum or higher than maximum an inavlidValueException() is thrown.
getOutOfBoundsPolicy(): string
Returns the current out-of-bound-policy.
Boolean
Takes only a boolean value like true or false.
Date
Takes a date as value like 2004-10-23.
DateTime
Takes a timestamp value like 2004-10-23 12:22:10.
Time
Take a time value like 12:22:10
Enum
Take one of some predefined string values.
String
Takes a sequence of characters like "Hello this is a string".
Text
The same a string besides that it can take any count of characters.
Blob
Takes a sequence of bytes (not only readable characters).