BIS fnc addToPairs: Difference between revisions

From Bohemia Interactive Community
Jump to navigation Jump to search
m (Text replacement - " {2,}\}\}" to " }}")
m (Text replacement - "{{Feature|Informative|" to "{{Feature|informative|")
 
(15 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{Function
{{RV|type=function


|game1= arma3
|game1= arma3
|version1= 0.76
|version1= 0.76


|gr1 = Arrays
|gr1= Arrays


|descr= Adds given value to pair array, stored under unique key.<br><br>
|descr= Adds given value to pair array, stored under unique key.<br><br>
Line 14: Line 13:
  c) anything else: an array is created and both values are stored there<br><br>
  c) anything else: an array is created and both values are stored there<br><br>


{{Informative|Function by default modifies the input array. This can be overrriden by setting '_copyArray' param to true.}}
{{Feature|informative|Function by default modifies the input array. This can be overrriden by setting '_copyArray' param to true.}}


|s1= [array, key, value, copyArray] call [[BIS_fnc_addToPairs]]
|s1= [array, key, value, copyArray] call [[BIS_fnc_addToPairs]]


|p1= array: [[Array]] - Array to search through
|p1= array: [[Array]] - array to search through


|p2= key: [[String]] - Key to search for
|p2= key: [[String]] - key to search for


|p3= value: [[Number]] - (Optional, default [[nil]]) Default return value if no match was found
|p3= value: [[Number]] - (Optional, default [[nil]]) default return value if no match was found


|p4= copyArray: [[Boolean]] - (Optional, default [[false]]) [[true]] to copy the array and return it, [[false]] to modify the original array
|p4= copyArray: [[Boolean]] - (Optional, default [[false]]) [[true]] to copy the array and return it, [[false]] to modify the original array


|r1= [[Array]] - Resulting modified array or a copy
|r1= [[Array]] - resulting modified array or a copy
 
|x1= <code>[[["apple",3],["pear",2]],"pear",10] [[call]] [[BIS_fnc_addToPairs]]; {{cc|Returns [["apple",3],["pear",12]]}}</code>


|x2= <code>[[["apple",3],["pear",2]],"apple",-2] [[call]] [[BIS_fnc_addToPairs]]; {{cc|Returns [["apple",1],["pear",2]]}}</code>
|x1= <sqf>[[["apple",3],["pear",2]],"pear",10] call BIS_fnc_addToPairs; // Returns [["apple",3],["pear",12]]</sqf>


|x3= <code>[[["greetings","Hello!"],["rudewords",""]],"greetings","Hi!"] [[call]] [[BIS_fnc_addToPairs]]; {{cc|Returns [["greetings",["Hello!","Hi!"]],["rudewords",""]]}}</code>
|x2= <sqf>[[["apple",3],["pear",2]],"apple",-2] call BIS_fnc_addToPairs; // Returns [["apple",1],["pear",2]]</sqf>


|exec= call
|x3= <sqf>[[["greetings","Hello!"],["rudewords",""]],"greetings","Hi!"] call BIS_fnc_addToPairs; // Returns [["greetings",["Hello!","Hi!"]],["rudewords",""]]</sqf>


|seealso= [[find]] [[findIf]] [[BIS_fnc_findInPairs]] [[BIS_fnc_getFromPairs]] [[BIS_fnc_removeFromPairs]] [[BIS_fnc_setToPairs]]
|seealso= [[find]] [[findIf]] [[BIS_fnc_findInPairs]] [[BIS_fnc_getFromPairs]] [[BIS_fnc_removeFromPairs]] [[BIS_fnc_setToPairs]]
}}
}}
[[Category:Functions|{{uc:addToPairs}}]]
[[Category:{{Name|arma3}}: Functions|{{uc:addToPairs}}]]

Latest revision as of 01:24, 2 February 2024

Hover & click on the images for description

Description

Description:
Adds given value to pair array, stored under unique key.

If value is found:
a) both values are scalars: values are added and stored as a single scalar
b) one or both values are array: values are added and stored as a single array
c) anything else: an array is created and both values are stored there

Function by default modifies the input array. This can be overrriden by setting '_copyArray' param to true.
Execution:
call
Groups:
Arrays

Syntax

Syntax:
[array, key, value, copyArray] call BIS_fnc_addToPairs
Parameters:
array: Array - array to search through
key: String - key to search for
value: Number - (Optional, default nil) default return value if no match was found
copyArray: Boolean - (Optional, default false) true to copy the array and return it, false to modify the original array
Return Value:
Array - resulting modified array or a copy

Examples

Example 1:
[[["apple",3],["pear",2]],"pear",10] call BIS_fnc_addToPairs; // Returns [["apple",3],["pear",12]]
Example 2:
[[["apple",3],["pear",2]],"apple",-2] call BIS_fnc_addToPairs; // Returns [["apple",1],["pear",2]]
Example 3:
[[["greetings","Hello!"],["rudewords",""]],"greetings","Hi!"] call BIS_fnc_addToPairs; // Returns [["greetings",["Hello!","Hi!"]],["rudewords",""]]

Additional Information

See also:
find findIf BIS_fnc_findInPairs BIS_fnc_getFromPairs BIS_fnc_removeFromPairs BIS_fnc_setToPairs

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