Do we have any similar functionality? See pseudocode below: (code is longer than the code window)
OUTER_SPRINT $LIST ("0" "0") "ONE"
OUTER_SPRINT $LIST ("1" "0") "TWO"
OUTER_SPRINT $LIST ("2" "0") "THREE"
OUTER_SPRINT_INSERT ("2" "0") "THREE PLUS" (0) // number in parentheses indicates array slot/dimension. (0) is assumed by default if no number is given
// resulting entries will now read as:
// $LIST ("0" "0") "ONE"
// $LIST ("1" "0") "TWO"
// $LIST ("2" "0") "THREE PLUS"
// $LIST ("3" "0") "THREE"
OUTER_SPRINT_INSERT ("2" "0") "THREE PLUS PLUS" (1) // number in parentheses indicates array slot/dimension. (0) is assumed by default if no number is given
// resulting entries will now read as:
// $LIST ("0" "0") "ONE"
// $LIST ("1" "0") "TWO"
// $LIST ("2" "0") "THREE PLUS PLUS"
// $LIST ("2" "1") "THREE PLUS"
// $LIST ("3" "0") "THREE"
DELETE_ARRAY_ENTRY $LIST ("2" "0") (0) // number in parentheses indicates array slot/dimension. (0) is assumed by default if no number is given
// resulting entries will now read as:
// $LIST ("0" "0") "ONE"
// $LIST ("1" "0") "TWO"
// $LIST ("2" "0") "THREE"
// $LIST ("2" "1") "THREE PLUS"
DELETE_ARRAY_ENTRY $LIST ("2" "0") (1) // number in parentheses indicates array slot/dimension. (0) is assumed by default if no number is given
// resulting entries will now read as:
// $LIST ("0" "0") "ONE"
// $LIST ("1" "0") "TWO"
// $LIST ("2" "0") "THREE PLUS"
I guess such a feature isn't applicable for ASSOCIATIVE_ARRAYs only ones with numeric slots.
This function would be useful for example if one constructs arrays when adding/deleting entries of arrays created by OFFSET_ARRAY or if one decompiles a script and then stores/patches individual blocks as array entries.
Speaking of which, it would be convenient if WeiDU can internally construct arrays of decompiled scripts as strings of different IF ... END blocks. In that way, it would be easy to patch/insert/delete new blocks with this functionality.