Basic examples (2)
Softanza
aB = [ [1,2,3], [4,5,6], [7,8,9] ] oRow = new stzMatrix(aB) oRow.AddInRows([1,3], 100) # rows 1 and 3 ? @@(oRow.Content()) oF = new stzMatrix(aB) oF.AddInRows([ :From = 1, :To = 2 ], 100) # ...and the From..To form ? @@(oF.Content()) oC = new stzMatrix(aB) oC.AddInCols([1,3], 100) # the template it was copied from, still correct ? @@(oC.Content())
Output
[ [ 101, 102, 103 ], [ 4, 5, 6 ], [ 107, 108, 109 ] ] [ [ 101, 102, 103 ], [ 104, 105, 106 ], [ 7, 8, 9 ] ] [ [ 101, 2, 103 ], [ 104, 5, 106 ], [ 107, 8, 109 ] ]
run on 2026-10-02 04:23 inside the library at commit 0e72e2e2c; taken from matrix_dead_calls_narrated.ring(opens in a new tab)
Softanza
aB = [ [11,12,13], [14,15,16], [17,18,19] ] oT = new stzMatrix(aB) oT.AddToCol(2, 5) # AddToCol ? @@(oT.Content()) oI = new stzMatrix(aB) oI.AddInCol(2, 5) # ...is exactly AddInCol ? @@(oT.Content()) oRow = new stzMatrix(aB) oRow.AddToRow(1, 3) oJ = new stzMatrix(aB) oJ.AddInRow(1, 3) # AddToRow is exactly AddInRow ? @@(oRow.Content())
Output
[ [ 11, 17, 13 ], [ 14, 20, 16 ], [ 17, 23, 19 ] ] [ [ 11, 17, 13 ], [ 14, 20, 16 ], [ 17, 23, 19 ] ] [ [ 14, 15, 16 ], [ 14, 15, 16 ], [ 17, 18, 19 ] ]
run on 2026-10-02 04:23 inside the library at commit 0e72e2e2c; taken from matrix_dead_calls_narrated.ring(opens in a new tab)
Scope (1)
Softanza
aB = [ [1,2,3], [4,5,6], [7,8,9] ] o1 = new stzMatrix(aB) o1.AddXT(10, :InCol = 2) # :InCol reaches column 2 -- not column 10, as the swapped order did ? @@(o1.Content()) o2 = new stzMatrix(aB) o2.AddXT(10, :InRow = 1) # :InRow ? @@(o2.Content()) o3 = new stzMatrix(aB) o3.AddXT(10, :InCols = [1,3]) # :InCols ? @@(o3.Content()) o4 = new stzMatrix(aB) o4.AddXT(10, :InRows = [1,3]) # :InRows ? @@(o4.Content()) o5 = new stzMatrix(aB) o5.AddXT(10, :InDiagonal) # :InDiagonal hits (1,1) (2,2) (3,3) ? @@(o5.Content()) o6 = new stzMatrix(aB) o6.AddXT(10, :InDiagonal2) # :InDiagonal2 hits (1,3) (2,2) (3,1) ? @@(o6.Content())
Output
[ [ 1, 12, 3 ], [ 4, 15, 6 ], [ 7, 18, 9 ] ] [ [ 11, 12, 13 ], [ 4, 5, 6 ], [ 7, 8, 9 ] ] [ [ 11, 2, 13 ], [ 14, 5, 16 ], [ 17, 8, 19 ] ] [ [ 11, 12, 13 ], [ 4, 5, 6 ], [ 17, 18, 19 ] ] [ [ 11, 2, 3 ], [ 4, 15, 6 ], [ 7, 8, 19 ] ] [ [ 1, 2, 13 ], [ 4, 15, 6 ], [ 17, 8, 9 ] ]
run on 2026-10-02 04:23 inside the library at commit 0e72e2e2c; taken from matrix_dead_calls_narrated.ring(opens in a new tab)
The extensions of this method
Each extension, and whether it exists for this method; an extension that exists combines with the others (FindSTCS).
Extension
Exists
What it adds · The names
Q
yes
does what the method does, then returns the object, so the call can be chained · ContentQ, ContentUQ, ContentCSQ, ContentCSUQ
QQ
no
chains on the next, more specific type of object (the Q ladder)
QQQ
no
chains on the most specific type of object (the Q ladder)
QRT
no
returns the result as an object of the requested type
CS
yes
takes a case-sensitivity flag · ContentCS, ContentCSQ, ContentCSU, ContentCSUQ
ST
no
takes the position to start from (StartingAt)
IB
no
takes bounds that are included (IncludingBounds)
XT
no
the extended form: more parameters than the base method
XTT
no
yet another extension: a further extended form, after XT
Z
no
includes the position in what it returns
ZZ
no
returns positions as sections, [start, end]
W
no
selects by a condition
WF
no
selects by a condition, with the expressive keywords (@NextItem, @PreviousItem...)
D
no
takes a direction, forward or backward (Directional)
F
no
takes a function (the condition or the update is given as a function); the forms document also uses F for the future form, which defers the action
Many
no
works on a collection of items instead of one (the plural form)
Except
no
takes exceptions, what to leave out (the exceptional form)
U
yes
returns the result without duplication · ContentU, ContentUQ, ContentCSU, ContentCSUQ
Every example is a test file of the library, run inside the library for this page; only those whose output kept every promise their file wrote are shown.

