********************* loaddefs link d_Qndfs 'arrays nested zByVal.ndf' - operators for nested arrays these are alternate callBy[Value, Str] ops - [ary, nry, sub]Val, [idx, ndx]Str [Value, Str] suffixs are dropped within op definitions simpler for smaller [nry, sub], not for recursion etc, although I've retained what I did WARNING! use _chkAppOp for developments to [trap, report] errors +-----+ Setup Predefine local ops to avoid sequencing problems with initial qnial loaddefs +-----+ to (conversions) : mostly in 'arrays nested.ndf' nry_ndx_byValToLocal_nry_ndx_idx IS OP nryVal ndxStr - conversion with [nryVal, ndxStr] output ndx_idx_byValLocalTo_ndx IS OP ndxLocalStr idxLocal - conversion nryShp_subShp_idx1stStr_get_bolFit IS OP nryShp subShp idx1stStr - l (true) if shape fits, o (false) otherwise +-----+ get [itm, sub] ops nry_ndx_byValGet_itm IS OP nryVal ndxStr - returns itm at ndxStr nry_itm_ndxInn_byValGet_ndxL_recurse IS OP nryVal itmVal ndxInnStr - ONLY for nry_itm_byValGet_ndxL!! recurse nry_itm_byValGet_ndxL in depth, returns OR[null (not found), ndxOut] nry_itm_byValGet_ndxL IS OP nryVal itmVal - returns OR(ndxL, faultL) ndxL = all positions of itm in nry, makes use of recursive search nry_sub_byValGet_ndx1stL IS OP nryVal subVal - ndxL of 1st item that "fits" in nested nry "current-depth-ONLY" version, uses ary_sub_valStrGet_idx1stL "across-depth-ONLY" version has not been created yet 29Mar2024