HaxeDoc2

(やまだぃちぅ) #1
Values of typeBoolare a common occurence inconditionssuch asif(5.16) andwhile(5.14).
The followingoperatorsaccept and returnBoolvalues:


  • &&(and)

  • ||(or)

  • !(not)


Haxe guarantees that compound boolean expressions are evaluated from left to right and
only as far as necessary at run-time. For instance, an expression likeA && Bwill evaluateAfirst
and evaluateBonly if the evaluation ofAyieldedtrue. Likewise, the expressionsA || Bwill
not evaluateBif the evaluation ofAyieldedtrue, because the value ofBis irrelevant in that
case. This is important in cases such as this:
1 if (object != null && object.field== 1)
2 { ... }
Accessingobject.fieldifobjectisnullwould lead to a run-time error, but the check
forobject != nullguards against it.

2.1.5 Void


Type: Void
Void denotes the absence of a type. It is used to express that something (usually a function)
has no value.

Voidis a special case in the type system because it is not actually a type. It is used to express
the absence of a type, which applies mostly to function arguments and return types. We have
please review, doubled already “seen” Void in the initial “Hello World” example:
content


please review, doubled
content 1 class HelloWorld {


2 static public function main():Void{
3 trace("Hello World");
4 }
5 }
The function type will be explored in detail in the sectionFunction Type(Section 2.6) but a
quick preview helps here: The type of the functionmainin the example above isVoid->Void,
which reads as “it has no arguments and returns nothing”. Haxe does not allow fields and
review please, sounds variables of typeVoidand will complain if an attempt at declaring such is made:
weird


review please, sounds
weird 1 // Arguments and variables of typeVoid


2 // are not allowed
3 var x:Void;

2.2 Nullability


Definition: nullable
A type in Haxe is considerednullableifnullis a valid value for it.
Free download pdf