typeName: Difference between revisions
Jump to navigation
Jump to search
m (Text replacement - "<h3 style="display:none">Bottom Section</h3> " to "") |
Lou Montana (talk | contribs) m (Text replacement - " *\| *([Cc]omments|COMMENTS|Game|[Gg]ame [Nn]ame( +[0-9])?|Game [Vv]ersion( +[0-9])?|Game Version \(number surrounded by NO SPACES\)|Arguments in MP|MP[Aa]rg|Multiplayer Arguments( \("local" or "global"\))?|Effects|Execution|Effects...) |
||
Line 1: | Line 1: | ||
{{Command | {{Command | ||
| arma1 | | arma1 | ||
|1.00 | |1.00 | ||
|gr1= Variables | |gr1= Variables | ||
| Returns the [[:Category:Data Types|data type]] of an expression. | | Returns the [[:Category:Data Types|data type]] of an expression. | ||
Line 29: | Line 29: | ||
* "[[Task|TASK]]" | * "[[Task|TASK]]" | ||
They represent the available [[Data_Types|data types]] in Arma. | They represent the available [[Data_Types|data types]] in Arma. | ||
{{Informative|For comparing types, use [[isEqualType]] command instead in {{arma3}}}} | {{Informative|For comparing types, use [[isEqualType]] command instead in {{arma3}}}} | ||
| '''typeName''' anything | | '''typeName''' anything | ||
|p1= anything: [[Anything]] | |p1= anything: [[Anything]] | ||
| [[String]] | | [[String]] | ||
|x1= <code>_msg = "hello"; _result = [[typeName]] _msg; //_result will be "STRING"</code> | |x1= <code>_msg = "hello"; _result = [[typeName]] _msg; //_result will be "STRING"</code> | ||
|x2= <code>_unit = [[player]]; _result = [[typeName]] _unit; //_result becomes "OBJECT"</code> | |x2= <code>_unit = [[player]]; _result = [[typeName]] _unit; //_result becomes "OBJECT"</code> | ||
|x3= Values representing direct [[Data Types]]:<code>[[hint]] [[typeName]] 0; //SCALAR | |x3= Values representing direct [[Data Types]]:<code>[[hint]] [[typeName]] 0; //SCALAR | ||
Line 57: | Line 57: | ||
[[hint]] [[typeName]] [[configNull]]; //CONFIG (Since Arma 3 v1.53.133130) | [[hint]] [[typeName]] [[configNull]]; //CONFIG (Since Arma 3 v1.53.133130) | ||
[[hint]] [[typeName]] [[missionNamespace]]; //NAMESPACE | [[hint]] [[typeName]] [[missionNamespace]]; //NAMESPACE | ||
[[hint]] [[typeName]] [[diaryRecordNull]]; //DIARY_RECORD (Since Arma 3 v1.99.146508)</code> | [[hint]] [[typeName]] [[diaryRecordNull]]; //DIARY_RECORD (Since Arma 3 v1.99.146508)</code> | ||
|x4= <code>[[if]] ([[typeName]] _this [[!=]] "ARRAY") [[exitWith]] { | |x4= <code>[[if]] ([[typeName]] _this [[!=]] "ARRAY") [[exitWith]] { | ||
Line 69: | Line 69: | ||
[[if]] !(_this [[isEqualType]] []) [[exitWith]] { | [[if]] !(_this [[isEqualType]] []) [[exitWith]] { | ||
[[hint]] "_this is not an array!" | [[hint]] "_this is not an array!" | ||
</code> | </code> | ||
| [[isEqualTypeAll]], [[isEqualType]], [[isEqualTypeParams]], [[isEqualTypeArray]], [[isEqualTypeAny]], [[typeOf]], [[isKindOf]], [[isClass]], [[isArray]], [[isNumber]], [[isText]], [[isNil]], [[isNull]] | | [[isEqualTypeAll]], [[isEqualType]], [[isEqualTypeParams]], [[isEqualTypeArray]], [[isEqualTypeAny]], [[typeOf]], [[isKindOf]], [[isClass]], [[isArray]], [[isNumber]], [[isText]], [[isNil]], [[isNull]] | ||
}} | }} |
Revision as of 11:25, 18 January 2021
Description
- Description:
- Returns the data type of an expression.
The type is returned as on of the following all-uppercase strings:
- "ARRAY"
- "BOOL"
- "CODE"
- "CONFIG"
- "CONTROL"
- "DISPLAY"
- "GROUP"
- "LOCATION"
- "OBJECT"
- "SCALAR"
- "SCRIPT"
- "SIDE"
- "STRING"
- "TEXT"
- "TEAM_MEMBER"
- "NAMESPACE"
- "DIARY_RECORD"
- "TASK"
- Groups:
- Variables
Syntax
Examples
- Example 1:
_msg = "hello"; _result = typeName _msg; //_result will be "STRING"
- Example 2:
_unit = player; _result = typeName _unit; //_result becomes "OBJECT"
- Example 3:
- Values representing direct Data Types:
hint typeName 0; //SCALAR hint typeName ""; //STRING hint typeName true; //BOOL hint typeName []; //ARRAY hint typeName {}; //CODE hint typeName objNull; //OBJECT hint typeName grpNull; //GROUP hint typeName controlNull; //CONTROL hint typeName teamMemberNull; //TEAM_MEMBER hint typeName displayNull; //DISPLAY hint typeName taskNull; //TASK hint typeName locationNull; //LOCATION hint typeName sideUnknown; //SIDE hint typeName text ""; //TEXT hint typeName configFile; //CONFIG hint typeName configNull; //CONFIG (Since Arma 3 v1.53.133130) hint typeName missionNamespace; //NAMESPACE hint typeName diaryRecordNull; //DIARY_RECORD (Since Arma 3 v1.99.146508)
- Example 4:
if (typeName _this != "ARRAY") exitWith { hint "_this is not an array!" } //is the same as if (typeName _this != typeName []) exitWith { hint "_this is not an array!" } //same result but faster in Arma 3 if !(_this isEqualType []) exitWith { hint "_this is not an array!"
Additional Information
- See also:
- isEqualTypeAllisEqualTypeisEqualTypeParamsisEqualTypeArrayisEqualTypeAnytypeOfisKindOfisClassisArrayisNumberisTextisNilisNull
Notes
-
Report bugs on the Feedback Tracker and/or discuss them on the Arma Discord or on the Forums.
Only post proven facts here! Add Note
- Posted on September 25, 2016 - 11:14 (UTC)
- Killzone Kid
- typeName of nil is ANY, however this is not possible to test as script command is just ignored when any argument is nil