Sous chaque méthode, ses extensions (Q CS XT Z ZZ IB W U) : en gras et cochée, elle existe ; barrée, elle n'existe pas. Les extensions et leur sens
Exemples : 173 viennent des tests de la bibliothèque ; 464 ont été composés à partir de la signature de chaque méthode et exécutés pour cette page, sur un objet neuf, par exemple o1 = new stzList([ 5, 3, 8, 3, 1 ]). 250 méthodes n'en ont pas encore. Exemples exécutés le 2026-10-03 20:34 dans la bibliothèque au commit 0e72e2e2c.
Méthode
Explication, telle que la source la porte
init
Build the list object from the given Haro list.aucune extension
DeepList
Deep (nested) list view: promotes to stzDeepList for the path-based deep API (DeepFind / Paths / ItemAtPath / ...). Kept modular -- the deep operations live in the stzDeepList subclass, not here.aussi écrite: AsDeepListaucune extension
getting the content of the list
16 exemples exécutés? @@( Q(["A", "B" ]) * 3 )
? @@( ( Q(["A", "B" ]) * Q(3) ).Content() )
#--> [ "A", "B", "A", "B", "A", "B" ]
#--> [ "A", "B", "A", "B", "A", "B" ]
test de la bibliothèqueQCSXTZZZIBWUCopy
getting a copy of the listaucune extension
ReversedCopy
Same as ReverseQ: Same as Reverse: Reverse the order of the items in place (mutating). For a copy, use Reversed.aucune extension
NumberOfItemsCSB
(sans commentaire dans la source : le nom se lit comme une phrase) number of items csbdans la section getting the number of items of the listexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfItemsCSB(TRUE)
#--> 0
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU HowMany: number of items (alias of NumberOfItems).
5 exemples exécutésaussi écrite: HowManyItemsdans la section getting the number of items of the listo1 = new stzList([ "tea", "rice", "tea", "fish", "rice", "tea" ])
? o1.NumberOfItems()
#--> 6
test de la bibliothèqueQCSXTZZZIBWUWFNumberOfItemsB
(sans commentaire dans la source : le nom se lit comme une phrase) number of items bdans la section getting the number of items of the listexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfItemsB()
#--> 0
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU getting the list of items
9 exemples exécutésexemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
? @@( o1.Items() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUWFExceptgetting the nth item in the list
2 exemples exécutésaussi écrite: ItemAt · NthItem · ItemAtPositionexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.Item(2)
#--> 3
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUWFFirstItem
getting the first item in the list
aussi nommée: head front first element the top beginning itemexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.FirstItem()
#--> 5
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUWFLastItem
getting the last item in the list
aussi nommée: tail back last element the end final itemexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.LastItem()
#--> 1
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUWFFirstAndLastItems
getting the first and last items in the list
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FirstAndLastItems() )
#--> [ 5, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionLastAndFirstItems
getting the first and last items in the list
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.LastAndFirstItems() )
#--> [ 1, 5 ]
composé à partir de la signature, exécuté pour cette page aucune extensionCentralPosition
getting the central position in the list
aussi écrite: CentralItemPositionexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.CentralPosition()
#--> 2
composé à partir de la signature, exécuté pour cette page aucune extensionCentralItem
getting the central item in the list
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.CentralItem()
#--> 3
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUHasCentralItem
checking if the string has a central item
aussi écrite: ContainsCentralItemexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.HasCentralItem()
#--> 1
composé à partir de la signature, exécuté pour cette page aucune extensionNFirstItems
getting the list of n first items
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.NFirstItems(2) )
#--> [ 5, 3 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUQRTNLastItems
getting the list of n last items
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.NLastItems(2) )
#--> [ 3, 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUQRTReplace the whole content with the given list (mutating; the enforcement guard sits at _SetContent, the single update point).
1 exemples exécutéso1 = new stzList("A":"E")
o1.Update([])
? @@( o1.Content() )
#--> [ ]test de la bibliothèqueQCSXTZZZIBWUUpdateWith
Same as Update: replace the whole content (mutating).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.UpdateWith([ 2, 3 ])
? @@( o1.Content() )
#--> [ 2, 3 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUUpdateBy
Same as Update: replace the whole content (mutating).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.UpdateBy([ 2, 3 ])
? @@( o1.Content() )
#--> [ 2, 3 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUUpdated
The value the list would be updated to (the passive twin of Update).
aussi écrite: UpdatedBy · UpdatedWithexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.Updated([ 2, 3 ]) )
#--> [ 2, 3 ]
composé à partir de la signature, exécuté pour cette page aucune extensionAddItem
Add the given item at the end of the list (mutating).
aussi nommée: append push add element put at the endexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.AddItem(3)
? @@( o1.Content() )
#--> [ 5, 3, 8, 3, 1, 3 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUAdd
Same as AddItem: Add the given item at the end of the list (mutating).
aussi nommée: append push add to the end put at the backexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.Add(3)
? @@( o1.Content() )
#--> [ 5, 3, 8, 3, 1, 3 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUManyAppend
Same as AddItem: append the item at the end (mutating).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.Append(3)
? @@( o1.Content() )
#--> [ 5, 3, 8, 3, 1, 3 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUItemAdded
A copy of the list with the item appended; the original is unchanged.
aussi écrite: Addedexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.ItemAdded(3) )
#--> [ 5, 3, 8, 3, 1, 3 ]
composé à partir de la signature, exécuté pour cette page aucune extensionManyAdded
A copy with each item of paItems appended; the original is unchanged.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.ManyAdded([ 2, 3 ]) )
#--> [ 5, 3, 8, 3, 1, 2, 3 ]
composé à partir de la signature, exécuté pour cette page aucune extensionMergeWith
merging with another list
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.MergeWith([ 2, 3 ])
? @@( o1.Content() )
#--> [ 5, 3, 8, 3, 1, 2, 3 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUManyMergedWith
merging with another list
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.MergedWith([ 2, 3 ]) )
#--> [ 5, 3, 8, 3, 1, 2, 3 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUManyadding an item at a given position --> insert or extend
2 exemples exécutéso1 = new stzList(1:5)
o1.AddItemAt(8, 9)
? @@( o1.Content() )
#--> [ 1, 2, 3, 4, 5, "", "", 9 ]
test de la bibliothèqueQCSXTZZZIBWUAddItems
adding many items to the list
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.AddItems([ 2, 3 ])
? @@( o1.Content() )
#--> [ 5, 3, 8, 3, 1, 2, 3 ]
composé à partir de la signature, exécuté pour cette page aucune extensionTRUE if the list has no items.
1 exemples exécutésaussi nommée: empty blank has no items nothing in it contains nothing# Sum([1,2,3,4]) is 10
? Q([1,2,3,4]).Sum()
# IsEmpty([]) is TRUE
? Q([]).IsEmpty()
# IsEmpty([1]) is FALSE
? Q([1]).IsEmpty()
#--> 10
#--> 1
#--> 0
test de la bibliothèqueaucune extensionIsNotEmpty
TRUE if the list has at least one item.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsNotEmpty()
#--> 1
composé à partir de la signature, exécuté pour cette page aucune extensionIsNamedParam
Generic: checks if this list is a named param (2-item, first is keyword)aucune extension
IsAndNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is and named paramdans la section named-param checks (needed by q() calls)aucune extension
IsAtNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is at named paramdans la section named-param checks (needed by q() calls)aucune extension
IsAtOrAtPositionNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is at or at position named paramdans la section named-param checks (needed by q() calls)aucune extension
IsAtPositionNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is at position named paramdans la section named-param checks (needed by q() calls)aucune extension
IsBetweenNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is between named paramdans la section named-param checks (needed by q() calls)aucune extension
IsByNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is by named paramdans la section named-param checks (needed by q() calls)aucune extension
IsCaseSensitiveNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is case sensitive named paramdans la section named-param checks (needed by q() calls)aucune extension
IsDirectionOrGoingNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is direction or going named paramdans la section named-param checks (needed by q() calls)aucune extension
IsEqualToNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is equal to named paramdans la section named-param checks (needed by q() calls)aucune extension
IsFromNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is from named paramdans la section named-param checks (needed by q() calls)aucune extension
IsInNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is in named paramdans la section named-param checks (needed by q() calls)aucune extension
IsNorNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is nor named paramdans la section named-param checks (needed by q() calls)aucune extension
IsOfNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is of named paramdans la section named-param checks (needed by q() calls)aucune extension
IsOfOrOfSubStringNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is of or of sub string named paramdans la section named-param checks (needed by q() calls)aucune extension
IsPositionNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is position named paramdans la section named-param checks (needed by q() calls)aucune extension
IsPositionOrPositionsNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is position or positions named paramdans la section named-param checks (needed by q() calls)aucune extension
IsReturnedAsNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is returned as named paramdans la section named-param checks (needed by q() calls)aucune extension
IsStartingAtNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is starting at named paramdans la section named-param checks (needed by q() calls)aucune extension
IsStoppingAtNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is stopping at named paramdans la section named-param checks (needed by q() calls)aucune extension
IsToNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is to named paramdans la section named-param checks (needed by q() calls)aucune extension
IsUsingOrWithOrByNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is using or with or by named paramdans la section named-param checks (needed by q() calls)aucune extension
IsWhereNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is where named paramdans la section named-param checks (needed by q() calls)aucune extension
IsWithNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is with named paramdans la section named-param checks (needed by q() calls)aucune extension
IsWithOrByNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is with or by named paramdans la section named-param checks (needed by q() calls)aucune extension
IsWithOrByOrUsingNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is with or by or using named paramdans la section named-param checks (needed by q() calls)aucune extension
IsAndcColNamedNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is andc col named named paramdans la section named-param checks (needed by q() calls)aucune extension
IsAndcColNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is andc col named paramdans la section named-param checks (needed by q() calls)aucune extension
IsAndColAtNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is and col at named paramdans la section named-param checks (needed by q() calls)aucune extension
IsAndColAtPositionNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is and col at position named paramdans la section named-param checks (needed by q() calls)aucune extension
IsAndColumnAtNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is and column at named paramdans la section named-param checks (needed by q() calls)aucune extension
IsAndColumnAtPositionNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is and column at position named paramdans la section named-param checks (needed by q() calls)aucune extension
IsAndColumnNamedNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is and column named named paramdans la section named-param checks (needed by q() calls)aucune extension
IsAndColumnNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is and column named paramdans la section named-param checks (needed by q() calls)aucune extension
IsAndPositionNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is and position named paramdans la section named-param checks (needed by q() calls)aucune extension
IsAndReturningNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is and returning named paramdans la section named-param checks (needed by q() calls)aucune extension
IsAndReturningNthNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is and returning nth named paramdans la section named-param checks (needed by q() calls)aucune extension
IsAndReturnNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is and return named paramdans la section named-param checks (needed by q() calls)aucune extension
IsAndReturnNthNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is and return nth named paramdans la section named-param checks (needed by q() calls)aucune extension
IsAndRowAtNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is and row at named paramdans la section named-param checks (needed by q() calls)aucune extension
IsAndRowAtPositionNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is and row at position named paramdans la section named-param checks (needed by q() calls)aucune extension
IsAndRowNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is and row named paramdans la section named-param checks (needed by q() calls)aucune extension
IsBetweencColNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is betweenc col named paramdans la section named-param checks (needed by q() calls)aucune extension
IsBetweenColAtNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is between col at named paramdans la section named-param checks (needed by q() calls)aucune extension
IsBetweenColAtPositionNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is between col at position named paramdans la section named-param checks (needed by q() calls)aucune extension
IsBetweenColumnAtNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is between column at named paramdans la section named-param checks (needed by q() calls)aucune extension
IsBetweenColumnAtPositionNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is between column at position named paramdans la section named-param checks (needed by q() calls)aucune extension
IsBetweenColumnNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is between column named paramdans la section named-param checks (needed by q() calls)aucune extension
IsBetweenPositionNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is between position named paramdans la section named-param checks (needed by q() calls)aucune extension
IsBetweenPositionsNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is between positions named paramdans la section named-param checks (needed by q() calls)aucune extension
IsBetweenRowAtNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is between row at named paramdans la section named-param checks (needed by q() calls)aucune extension
IsBetweenRowAtPositionNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is between row at position named paramdans la section named-param checks (needed by q() calls)aucune extension
IsBetweenRowNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is between row named paramdans la section named-param checks (needed by q() calls)aucune extension
IsByColOrByColNumberNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is by col or by col number named paramdans la section named-param checks (needed by q() calls)aucune extension
IsByOrUsingOrWithNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is by or using or with named paramdans la section named-param checks (needed by q() calls)aucune extension
IsByOrWithOrUsingNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is by or with or using named paramdans la section named-param checks (needed by q() calls)aucune extension
IsByRowNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is by row named paramdans la section named-param checks (needed by q() calls)aucune extension
IsComingNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is coming named paramdans la section named-param checks (needed by q() calls)aucune extension
IsFromOrOfNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is from or of named paramdans la section named-param checks (needed by q() calls)aucune extension
IsFromPositionNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is from position named paramdans la section named-param checks (needed by q() calls)aucune extension
IsInANamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is in a named paramdans la section named-param checks (needed by q() calls)aucune extension
IsInOrInListNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is in or in list named paramdans la section named-param checks (needed by q() calls)aucune extension
IsInOrInStringNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is in or in string named paramdans la section named-param checks (needed by q() calls)aucune extension
IsOfSizeNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is of size named paramdans la section named-param checks (needed by q() calls)aucune extension
IsReturningNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is returning named paramdans la section named-param checks (needed by q() calls)aucune extension
IsReturningNthNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is returning nth named paramdans la section named-param checks (needed by q() calls)aucune extension
IsReturnNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is return named paramdans la section named-param checks (needed by q() calls)aucune extension
IsReturnNthNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is return nth named paramdans la section named-param checks (needed by q() calls)aucune extension
IsSeedNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is seed named paramdans la section named-param checks (needed by q() calls)aucune extension
IsSizeNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is size named paramdans la section named-param checks (needed by q() calls)aucune extension
IsToOrOfNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is to or of named paramdans la section named-param checks (needed by q() calls)aucune extension
IsToPositionNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is to position named paramaussi écrite: IsToOrToPosition · IsToPositionOrTodans la section named-param checks (needed by q() calls)exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsToOrToPosition()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extension Same as AllItemsAreEqualCS: AllItemsAreEqualCS: TRUE iff every item in the list equals every other item (i.e. all items collapse to a single value). Case-sensitivity applies only when items are strings.
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.AllItemsAreEqual()
#--> 0
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUAllAreEqual
Same as AllItemsAreEqualCS: AllItemsAreEqualCS: TRUE iff every item in the list equals every other item (i.e. all items collapse to a single value). Case-sensitivity applies only when items are strings.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.AllAreEqual()
#--> 0
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUIsWithRowNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is with row named paramdans la section named-param checks (needed by q() calls)aucune extension
The list rendered as a computable string (the @@ form).
6 exemples exécutésaussi écrite: ToCode · ToListInStringo1 = new stzList([ "A", "b", "C", "B", '"B",', "D", "E" ])
? o1.ToCode()
#--> [ "A", "b", "C", "B", '"B",', "D", "E" ]
test de la bibliothèqueQCSXTZZZIBWUToString
ToString: a plain display form -- the items rendered one per line (monolith semantics: ToStringXT(:ConcatenatedUsing = NL)). Overrides the stzObject default so a stzList stringifies to its content, not to an "@noname" object handle.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.ToString()
#--> 5
#--> 3
#--> 8
#--> 3
#--> ...
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUShow
Print the list to stdout in its computable @@ form.aucune extension
ShowShort
Print an abbreviated form of the list (first items ... last items).QCSXTZZZIBWU
ShowShortN
Print the abbreviated form showing n items at each end.aucune extension
ClassName
The lowercase class name: "stzlist".
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.ClassName()
#--> stzlist
composé à partir de la signature, exécuté pour cette page aucune extensionStzType
The Softanza type symbol: :stzList.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.StzType()
#--> stzlist
composé à partir de la signature, exécuté pour cette page aucune extensionReplace
(sans commentaire dans la source : le nom se lit comme une phrase) replacedans la section replace delegations (via stzlistreplacer)exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.Replace(3, 2)
? @@( o1.Content() )
#--> [ 5, 2, 8, 2, 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUWFMany ReplaceNth
(sans commentaire dans la source : le nom se lit comme une phrase) replace nthdans la section replace delegations (via stzlistreplacer)exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.ReplaceNth(2, 3, 5)
? @@( o1.Content() )
#--> [ 5, 3, 8, 5, 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU ReplaceNthOccurrence
Same as ReplaceNthOccurrenceCS: Occurrence-replace delegation, accepting the named-param call form ReplaceNthOccurrence(n, :Of = item, :With = newItem).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.ReplaceNthOccurrence(2, 3, 5)
? @@( o1.Content() )
#--> [ 5, 3, 8, 5, 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUReplacePreviousNthOccurrence
Same as ReplacePreviousNthOccurrenceCS: Replace the nth occurrence of an item counting backward from a given position. Named form: ReplacePreviousNthOccurrence(n, :Of=item, :By=new, :StartingAt=p)QCSXTZZZIBWU
FindNextNthOccurrencesCS
(sans commentaire dans la source : le nom se lit comme une phrase) find next nth occurrences csdans la section replace delegations (via stzlistreplacer)aucune extension
ReplacePreviousNthOccurrences
(sans commentaire dans la source : le nom se lit comme une phrase) replace previous nth occurrencesdans la section replace delegations (via stzlistreplacer)QCSXTZZZIBWUST
ReplaceNextNthOccurrences
(sans commentaire dans la source : le nom se lit comme une phrase) replace next nth occurrencesdans la section replace delegations (via stzlistreplacer)QCSXTZZZIBWUST
NextNthOccurrencesReplaced
Passive (non-mutating) forms: return a fresh content list.aucune extension
PreviousNthOccurrencesReplaced
(sans commentaire dans la source : le nom se lit comme une phrase) previous nth occurrences replaceddans la section replace delegations (via stzlistreplacer)aucune extension
ReplaceAllItems
Replace every item by a single new one: ReplaceAllItems(:With = newItem) or ReplaceAllItems(newItem).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.ReplaceAllItems(2)
? @@( o1.Content() )
#--> [ 2, 2, 2, 2, 2 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUReplaceFirst
(sans commentaire dans la source : le nom se lit comme une phrase) replace firstdans la section replace delegations (via stzlistreplacer)exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.ReplaceFirst(3, 2)
? @@( o1.Content() )
#--> [ 5, 2, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU ReplaceLast
(sans commentaire dans la source : le nom se lit comme une phrase) replace lastdans la section replace delegations (via stzlistreplacer)exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.ReplaceLast(3, 2)
? @@( o1.Content() )
#--> [ 5, 3, 8, 2, 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU Same as ReplaceManyByManyCS: replacing many items by many
3 exemples exécutéso1 = new stzList([ "A", "B", "*", "D", "*", "=" ])
o1.ReplaceManyByMany([ "*", "=" ], :With = ["C", "F"])
? @@( o1.Content() )
#--> [ "A", "B", "C", "D", "C", "F" ]
test de la bibliothèqueQCSXTZZZIBWUReplaceSection: the section [n1..n2] is replaced by ONE new item -- -- if that item is a list, it is inserted as a SINGLE element. This is -- the canonical Softanza semantics (see ReplaceSectionByMany to splice).
2 exemples exécutéso1 = new stzList([ "1", "2", "_", "_", "_", "4", "5" ])
o1.ReplaceSection(3, 5, :With = "3")
? @@( o1.Content() )
#--> [ "1", "2", "3", "4", "5" ]
test de la bibliothèqueQCSXTZZZIBWUSame as ReplaceSectionByManyCS: ReplaceSectionByMany: the section [n1..n2] is replaced by SPLICING -- the items of paNewItems in place (flattened one level into the list).
1 exemples exécutéso1 = new stzList([ "A", "B", "C", "1", "2", "3", "D", "E" ])
o1.ReplaceSectionByMany(4, 6, [ "*", "*", "*", "*" ])
? @@( o1.Content() )
#--> [ "A", "B", "C", "*", "*", "*", "*", "D", "E" ]
test de la bibliothèqueQCSXTZZZIBWUPositional replace: swap whatever lives at position n with pNewItem. Mirrors AddItemAt / InsertAt / RemoveAt naming.
5 exemples exécutéso1 = new stzList([ "A", "a", "A" ])
o1.ReplaceAt(2, :By = "A")
? o1.Content()
#--> A
#--> A
#--> A
test de la bibliothèqueQCSXTZZZIBWUUpdateAt
Same as ReplaceAt: Positional replace: swap whatever lives at position n with pNewItem. Mirrors AddItemAt / InsertAt / RemoveAt naming.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.UpdateAt(2, 5)
? @@( o1.Content() )
#--> [ 5, 5, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionSetItemAt
Same as ReplaceAt: Positional replace: swap whatever lives at position n with pNewItem. Mirrors AddItemAt / InsertAt / RemoveAt naming.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.SetItemAt(2, 5)
? @@( o1.Content() )
#--> [ 5, 5, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionSame as ReplaceAt: Positional replace: swap whatever lives at position n with pNewItem. Mirrors AddItemAt / InsertAt / RemoveAt naming.
1 exemples exécutéso1 = new stzList([ 1, 2, "♥", 4, "♥" ])
o1.ReplaceAnyItemAt(3, :With = "★")
? @@( o1.Content() )
#--> [ 1, 2, "★", 4, "♥" ]
test de la bibliothèqueaucune extensionReplaceItemAtPosition
Same as ReplaceAt: Positional replace: swap whatever lives at position n with pNewItem. Mirrors AddItemAt / InsertAt / RemoveAt naming.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.ReplaceItemAtPosition(2, 5)
? @@( o1.Content() )
#--> [ 5, 5, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionReplaceAnyItemAtPositions
Set whatever lives at each of panPos to pNewItem.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.ReplaceAnyItemAtPositions([ 2, 3 ], 2)
? @@( o1.Content() )
#--> [ 5, 2, 2, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionReplaceAnyItemsAtPositions
Same as ReplaceAnyItemAtPositions: Set whatever lives at each of panPos to pNewItem.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.ReplaceAnyItemsAtPositions([ 2, 3 ], 2)
? @@( o1.Content() )
#--> [ 5, 2, 2, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionReplaceItemsAtPositions
Same as ReplaceAnyItemAtPositions: Set whatever lives at each of panPos to pNewItem.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.ReplaceItemsAtPositions([ 2, 3 ], 2)
? @@( o1.Content() )
#--> [ 5, 2, 2, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionReplaceAtPositions
Same as ReplaceAnyItemAtPositions: Set whatever lives at each of panPos to pNewItem.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.ReplaceAtPositions([ 2, 3 ], 2)
? @@( o1.Content() )
#--> [ 5, 2, 2, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionReplaceThisItemAtPositions
Same as ReplaceThisItemAtPositionsCS: At each of panPos, replace ONLY if the item there equals pItem.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.ReplaceThisItemAtPositions([ 2, 3 ], 3, 2)
? @@( o1.Content() )
#--> [ 5, 2, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionpositional replacers (ported from the monolith)
2 exemples exécutéso1 = new stzList([ 1, 2, "♥", 4, "♥" ])
o1.ReplaceThisItemAt(3, "♥", :With = "★")
? @@( o1.Content() )
o1.ReplaceThisItemAt(2, "BLA", :With = "★" )
? @@( o1.Content() )
#--> [ 1, 2, "★", 4, "♥" ]
#--> [ 1, 2, "★", 4, "♥" ]
test de la bibliothèqueaucune extensionReplaceTheseItemsAtPositions
Same as ReplaceTheseItemsAtPositionsCS: At each of panPos, replace if the item there is a member of paItems.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.ReplaceTheseItemsAtPositions([ 2, 3 ], [ 2, 3 ], 2)
? @@( o1.Content() )
#--> [ 5, 2, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionSame as ReplaceByManyCS: Replace the k-th occurrence of pItem with paNewItems[k] (in order).
1 exemples exécutéso1 = new stzList([ "♥", 2, "♥", "♥", 5, "♥" ])
o1.ReplaceByMany("♥", [ 1, 3, 4, 6 ])
? @@( o1.Content() )
#--> [ 1, 2, 3, 4, 5, 6 ]test de la bibliothèqueQCSXTZZZIBWUReplaceItemByManyXT
Same as ReplaceByManyXT: Same as ReplaceByManyCSXT: Cycling variant: paNewItems is reused round-robin across occurrences.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.ReplaceItemByManyXT(3, [ 2, 3 ])
? @@( o1.Content() )
#--> [ 5, 2, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionReplace items at the GIVEN positions with paNewItems consumed in order.
2 exemples exécutéso1 = new stzList([ "A", "B", "*", "D", "*", "=" ])
o1.ReplaceOccurrencesByMany([ 3, 5, 6 ], ["C", "E", "F"])
? @@( o1.Content() )
#--> [ "A", "B", "C", "D", "E", "F" ]
test de la bibliothèqueQCSXTZZZIBWUSame as ReplaceItemAtPositionsByManyCS: At the panPos that hold pItem, replace the k-th such with paNewItems[k].
1 exemples exécutéso1 = new stzList([ "♥", 2, "♥", "♥", 5 ])
o1.ReplaceItemAtPositionsByMany([1, 3, 4 ], "♥", [ 1, 3, 4 ])
? @@( o1.Content() )
#--> [ 1, 2, 3, 4, 5 ]
test de la bibliothèqueQCSXTZZZIBWUReplaceTheseItemsAtPositionsByMany
Same as ReplaceTheseItemsAtPositionsByManyCS: These items: apply the per-item position-replace for each item in turn.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.ReplaceTheseItemsAtPositionsByMany([ 2, 3 ], [ 2, 3 ], [ 2, 3 ])
? @@( o1.Content() )
#--> [ 5, 2, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUReplaceAnyItemAtPositionsByMany
Same as ReplaceAnyItemAtPositionsByManyCS: Any item: zip positions <-> news (no value filter), truncating to shorter.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.ReplaceAnyItemAtPositionsByMany([ 2, 3 ], [ 2, 3 ])
? @@( o1.Content() )
#--> [ 5, 2, 3, 3, 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUReplaceAnyItemsAtPositionsByMany
Same as ReplaceAnyItemAtPositionsByMany: Same as ReplaceAnyItemAtPositionsByManyCS: Any item: zip positions <-> news (no value filter), truncating to shorter.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.ReplaceAnyItemsAtPositionsByMany([ 2, 3 ], [ 2, 3 ])
? @@( o1.Content() )
#--> [ 5, 2, 3, 3, 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUSame as ReplaceAnyItemAtPositionsByManyXT: Same as ReplaceAnyItemAtPositionsByManyCSXT: XT: cycle news across ALL given positions.
1 exemples exécutéso1 = new stzList([ "_", "_", "3", "4", "5", "6", "7", "_", "_" ])
o1.ReplaceAtByManyXT(3:5, [ "-3", "-4", "-5" ])
? @@( o1.Content() )
#--> [ "_", "_", "-3", "-4", "-5", "6", "7", "_", "_" ]
test de la bibliothèqueaucune extensionReplaceItemsW
Same as ReplaceW: Replace every item matching the :Where boolean expr with the :By value. -- Matching positions come from the engine-backed FindAllW (@item placeholder).aucune extension
Same as ReplaceNextNthOccurrenceCS: Replace the n-th occurrence of pItem at or after position pnStartingAt.
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.ReplaceNextNthOccurrence(2, 3, 5, 2)
? @@( o1.Content() )
#--> [ 5, 3, 8, 5, 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUSTReplaceNthNextOccurrenceST
Same as ReplaceNextNthOccurrence: Same as ReplaceNextNthOccurrenceCS: Replace the n-th occurrence of pItem at or after position pnStartingAt.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.ReplaceNthNextOccurrenceST(2, 3, 5, 2)
? @@( o1.Content() )
#--> [ 5, 3, 8, 5, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionstringifying the list (all items are forced to become strings)
2 exemples exécutéso1 = new stzList([ 120, "abc", 1:3 ])
o1.Stringify()
# stringifying_the_items_of_a_list example 1
? @@( o1.Content() )
#--> [ "120", "abc", "[ 1, 2, 3 ]" ]
test de la bibliothèqueQCSXTZZZIBWUToListInAString: the content rendered as a "[ ... ]" string (computable form). Delegates to stzListStringify, like the rest of this section.
1 exemples exécutés? @@( StzListQ( 4:8 ).ToListInAString() )
? @@( StzListQ( 4:8 ).ToListInAStringInShortForm() )
#--> "[ 4, 5, 6, 7, 8 ]"
#--> "4:8"
test de la bibliothèqueaucune extensionStringifyAndReplace: Stringify the content, then replace every occurrence of pItem with the supplied value (pWith). pWith accepts the :With named-param form or a bare string. StringifyAndReplaceQ(item, with) returns This. XT variant is just an alias for the moment -- the original Softanza distinguished "internal-staff" semantics, but they collapse to the same engine path here.
4 exemples exécutéso1 = new stzList([ "--_--", [ 12, "--_--", 10], "--_--", 9 ])
o1.StringifyAndReplace("_", "♥")
? @@( o1.Content() )
#--> [ "--♥--", '[ 12, "--♥--", 10 ]', "--♥--", "9" ]test de la bibliothèqueQCSXTZZZIBWUStringifyLowercase
StringifyLowercase / StringifyUppercase / StringifyAndLower / StringifyAndUpper -- Stringify then map case. Used by misc narrative tests that need a uniform-case string list.aucune extension
StringifyAndLower
Same as StringifyLowercase: StringifyLowercase / StringifyUppercase / StringifyAndLower / StringifyAndUpper -- Stringify then map case. Used by misc narrative tests that need a uniform-case string list.QCSXTZZZIBWU
StringifyUppercase
Same as Stringify: stringifying the list (all items are forced to become strings)aucune extension
StringifyAndUpper
Same as StringifyUppercase: Same as Stringify: stringifying the list (all items are forced to become strings)QCSXTZZZIBWU
StringifyLowercaseAndReplace / StringifyUppercaseAndReplace -- stringify + lower (or upper) every string item, THEN replace every occurrence of pItem with pWith. XT variant is alias.
1 exemples exécutésQCSXTZZZIBWUStringifyUppercaseAndReplace
stringify delegation (via stzliststringify)QCSXTZZZIBWU
contains delegations (via stzlistcomparator)
2 exemples exécutésaussi écrite: IsMadeOfAnyOfThese · IsMadeOfOneOfTheseo1 = new stzList([ :monday, :monday, :monday ])
? o1.IsMadeOfOneOfThese([ :sunday, :monday, :saturday, :wednesday, :thirsday, :friday, :saturday ])
#--> 1
test de la bibliothèqueQCSXTZZZIBWUcontains delegations (via stzlistcomparator)
1 exemples exécutéso1 = new stzList([ "me", "you", "all", "the", "others" ])
# containseither example 1
? @@( o1.ContainsEither("me", :or = "you") )
o1 = new stzlist([ "me", "and", "all", "the", "others" ])
# containseither example 2
? @@( o1.ContainsEither("me", :or = "you") )
#--> 0
#--> 1test de la bibliothèqueQCSXTZZZIBWUcontains delegations (via stzlistcomparator)
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.ContainsAllOfThese([ 2, 3 ])
#--> 0
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU(sans commentaire dans la source : le nom se lit comme une phrase) all items are of type 2 exemples exécutésaussi écrite: EachItemIs · EachItemIsAdans la section checker delegations (via stzlistchecker)o1 = new stzList([ 2, 4, 8 ])
? o1.EachItemIsA(:Number)
? o1.ItemsAre([ :Positive, :Even, :Numbers ])
#--> 1
#--> 1
test de la bibliothèqueaucune extension (sans commentaire dans la source : le nom se lit comme une phrase) contains empty strings 1 exemples exécutésdans la section checker delegations (via stzlistchecker)exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.ContainsEmptyStrings()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extension (sans commentaire dans la source : le nom se lit comme une phrase) find empty strings 1 exemples exécutésdans la section checker delegations (via stzlistchecker)aucune extension (sans commentaire dans la source : le nom se lit comme une phrase) count empty strings 1 exemples exécutésdans la section checker delegations (via stzlistchecker)exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.CountEmptyStrings()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extension (sans commentaire dans la source : le nom se lit comme une phrase) replace empty strings 1 exemples exécutésdans la section checker delegations (via stzlistchecker)exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.ReplaceEmptyStrings(2)
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page aucune extension (sans commentaire dans la source : le nom se lit comme une phrase) remove empty strings 1 exemples exécutésdans la section checker delegations (via stzlistchecker)exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.RemoveEmptyStrings()
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page aucune extension Sort by a key expression (engine-backed via the W DSL).
1 exemples exécutéso1 = new stzList([ "a", "abcde", "abc", "ab", "abcd" ])
o1.SortBy('len(@item)')
# sortby example 1
? @@( o1.Content() )
#--> [ "a", "ab", "abc", "abcd", "abcde" ]test de la bibliothèqueQCSXTZZZIBWUSortByDescending
Sort the items by the given expression, descending (mutating).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.SortByDescending("@item > 3")
? @@( o1.Content() )
#--> [ 5, 8, 3, 3, 1 ]composé à partir de la signature, exécuté pour cette page aucune extensionnon-mutating: return the sorted-by-key copy
1 exemples exécutéso1 = new stzList([ "programming", "is" ])
# sortedby example 1
? @@( o1.SortedBy('len(@item)') )
#--> [ "is", "programming" ]test de la bibliothèqueaucune extensionSortUp
Same as Sort: ascending, in place (mutating).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.SortUp()
? @@( o1.Content() )
#--> [ 1, 3, 3, 5, 8 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUSortDown
Same as SortInDescending: descending, in place (mutating).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.SortDown()
? @@( o1.Content() )
#--> [ 8, 5, 3, 3, 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUSort the items in ascending order in place (mutating). For a copy, use Sorted.
2 exemples exécutésaussi nommée: order arrange rank ascending smallest to largest? @@( StzListQ([ "him", [ "him" ], "" ]).Sorted() ) + NL
o1 = new stzList([ "him", [ "him" ], "" ])
o1.Stringify()
? @@( o1.Content() )
o1.Sort()
#--> [ "", "him", [ "him" ] ]
#--> [ "him", '[ "him" ]', "" ]
test de la bibliothèqueQCSXTZZZIBWUWord-order aliases used by narrative tests.
1 exemples exécutéso1 = new stzList([ 5, 4, "tunis", 3, 7, "cairo" ])
o1.SortInAscending()
# numbers rise first, then strings alphabetically
? @@( o1.Content() )
#--> [ 3, 4, 5, 7, "cairo", "tunis" ]
test de la bibliothèqueQCSXTZZZIBWUSortAscending
Same as Sort: Sort the items in ascending order in place (mutating). For a copy, use Sorted.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.SortAscending()
? @@( o1.Content() )
#--> [ 1, 3, 3, 5, 8 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUAn ascending-sorted copy of the list; the original is unchanged.
3 exemples exécutésaussi écrite: SortedInAscending · ItemsSortedInAscendingo1 = new stzList([ 5, 7, 9, 2 ])
? o1.SortedInAscending()
#--> 2
#--> 5
#--> 7
#--> 9
test de la bibliothèqueQCSXTZZZIBWUSortInDescending
Sort the items in descending order in place (mutating). For a copy, use SortedInDescending.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.SortInDescending()
? @@( o1.Content() )
#--> [ 8, 5, 3, 3, 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUSame as SortedInDescendingCS: A descending-sorted copy of the list; the original is unchanged.
1 exemples exécutéso1 = new stzList([ ["03", "04"], 3, ["01","02"], 1, "Two", 2, "One" ])
? @@( o1.Sorted() ) # Or o1.SortedInAscending()
? @@( o1.SortedInDescending() )
#--> [ 1, 2, 3, "One", "Two", [ "01", "02" ], [ "03", "04" ] ]
#--> [ [ "03", "04" ], [ "01", "02" ], "Two", "One", 3, 2, 1 ]
test de la bibliothèqueQCSXTZZZIBWUReverse the order of the items in place (mutating). For a copy, use Reversed.
1 exemples exécutésaussi nommée: flip backwards invert order last to firstexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.Reverse()
? @@( o1.Content() )
#--> [ 1, 3, 8, 3, 5 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUA reversed copy of the list; the original is unchanged.
2 exemples exécutésaussi écrite: ItemsReversedo1 = new stzList(1:3)
? o1.Reversed()
#--> 3
#--> 2
#--> 1
test de la bibliothèqueaucune extensionEvery item except those equal to p (p may be a single item).
2 exemples exécutéso1 = new stzList([ "A", "B", "_", "C", "D", "E", "F" ])
? @@( o1.AllItemsExcept("_") )
#--> [ "A", "B", "C", "D", "E", "F" ]test de la bibliothèqueaucune extensionFirst n items (clamped to the list length; n<=0 -> empty).
2 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FirstNItems(2) )
#--> [ 5, 3 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUQRTMax nesting depth (a flat list is 1 level).
1 exemples exécutésaussi écrite: NestingDepthexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfLevels()
#--> 1
composé à partir de la signature, exécuté pour cette page aucune extensionTRUE if any two adjacent items are equal.
1 exemples exécutésaussi écrite: ContainsConsecutiveDuplicateso1 = new stzList([ "A", "B", "C" ])
# containsdupsecutiveitems example 1
? @@( o1.ContainsDupSecutiveItems() )
#--> 0
test de la bibliothèqueaucune extensionManyRemoved
A fresh copy with every occurrence of any item in paItems removed.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.ManyRemoved([ 2, 3 ]) )
#--> [ 5, 8, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionTRUE if this list's items appear inside paOther in the same relative order (i.e. this list is an order-preserving subsequence of paOther).
1 exemples exécutéso1 = new stzList([ "a", "c" ])
? o1.ItemsHaveSameOrderAs([ "a", "c", "f" ])
#--> 1
test de la bibliothèqueaucune extensionTRUE if the list contains the given item.
9 exemples exécutésaussi nommée: includes has is in member of present holdso1 = new stzList("a":"t")
? o1.Contains("x")
#--> 0test de la bibliothèqueQCSXTZZZIBWUWFMany(sans commentaire dans la source : le nom se lit comme une phrase) remove duplicates 4 exemples exécutésaussi nommée: unique distinct dedupe remove repeats deduplicate drop duplicatesdans la section remove duplicates / unique (engine-backed)o1 = new stzList([ 1:3, 4:6, 1:3, 1:3, 4:6, 7:10 ])
o1.Removeduplicates()
? @@( o1.Content() )
#--> [ [ 1, 2, 3 ], [ 4, 5, 6 ], [ 7, 8, 9, 10 ] ]
test de la bibliothèqueQCSXTZZZIBWU Immutable / past-tense aliases for the dedup operation. DuplicatesRemoved() returns the deduped list value without mutating This (equivalent to WithoutDuplication, ported from archive line 41406). Used by stzHashList.UniqueValues(). (case-sensitive by default)
5 exemples exécutésaussi écrite: ToSet · ToSetOfItems? @@( StzListQ([ "tea", "rice", "tea" ]).DuplicatesRemoved() )
#--> [ "tea", "rice" ]
test de la bibliothèqueQCSXTZZZIBWUToStzListOfCharsQ
(sans commentaire dans la source : le nom se lit comme une phrase) to stz list of chars qdans la section remove duplicates / unique (engine-backed)aucune extension
(sans commentaire dans la source : le nom se lit comme une phrase) without duplication 2 exemples exécutésaussi écrite: Uniquedans la section remove duplicates / unique (engine-backed)o1 = new stzList([ "A", "B", "2", "A", "A", "B", 2, 2, "." ])
? @@( o1.Withoutduplication() ) # Or ToSet()
#--> [ "A", "B", "2", 2, "." ]
test de la bibliothèqueQCSXTZZZIBWU Same as ContainsDuplicatedItemsCS: TRUE if some item occurs more than once in the list.
5 exemples exécutésaussi écrite: HasDuplicates · ContainsDuplicatesoW = new stzList( o1.Words() )
? oW.ContainsDuplicates()
? oW.NumberOfDuplicates()
#--> 1
#--> 3
test de la bibliothèqueQCSXTZZZIBWUThe items that occur more than once in the list.
12 exemples exécutésaussi nommée: repeated items doubles occur twice duplicatesaussi écrite: DupOrigins · Duplicates · Duplications · DuplicatedStringso1 = new stzList([ 5, 7, 5, 5, 4, 7, 1 ])
? o1.Duplicates()
? o1.FindDuplicates()
#--> 5
#--> 7
#--> 3
#--> 4
#--> ...
test de la bibliothèqueQCSXTZZZIBWUNumberOfDuplicatedItems
Same as NumberOfDuplicatedItemsCS: How many duplicated items the list holds.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfDuplicatedItems()
#--> 1
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUNumberOfDuplicates counts the duplicate OCCURRENCES (every 2nd+ appearance), not the number of distinct duplicated items. For [ "A","B","2","A","A","B",2,2,"." ] that is 4 (A twice, B once, 2 once). NumberOfDuplicatedItems (distinct) would be 3.
5 exemples exécutésaussi écrite: HowManyDuplicates · NumberOfDuplicationsoW = new stzList( o1.Words() )
? oW.ContainsDuplicates()
? oW.NumberOfDuplicates()
#--> 1
#--> 3
test de la bibliothèqueQCSXTZZZIBWUThe position of every 2nd+ occurrence of each duplicated item.
5 exemples exécutésaussi écrite: FindDuplications · FindDuplicatedItemso1 = new stzList([ 5, 7, 5, 5, 4, 7, 1 ])
? o1.Duplicates()
? o1.FindDuplicates()
#--> 5
#--> 7
#--> 3
#--> 4
#--> ...
test de la bibliothèqueQCSXTZZZIBWUDuplicateItemsZ
Same as DuplicatesCSZ: Duplicates() / DuplicateItems() / Duplications(): the duplicated items themselves (returning DuplicatedItems). The XYZ-Z forms above return positions; these return values. (returns the value along with its position; with the case-sensitivity dial)
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.DuplicateItemsZ() )
#--> [ [ 3, [ 4 ] ] ]
composé à partir de la signature, exécuté pour cette page aucune extensionFindNextNthItem(n, :StartingAt = pos): the POSITION of the n-th item AFTER pos (pos+n). Find* returns the position (0 if out of range); the NextNthItem accessor returns the item there. :StartingAt accepts the bare integer or the named-param form.
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.FindNextNthItem(2, 5)
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionFindPreviousNthItem(n, :StartingAt = pos): the POSITION of the n-th item counting BACK from pos inclusive (pos-n+1).
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.FindPreviousNthItem(2, 5)
#--> 4
composé à partir de la signature, exécuté pour cette page aucune extensionThe nth item before the given position.
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.PreviousNthItem(2, 5)
#--> 3
composé à partir de la signature, exécuté pour cette page aucune extensionFindDuplicatesOfString
Same as FindDuplicatesOfStringCS: "...OfString" is the historical name (these came from the list-of-strings API) but they work for any item type. The "duplicates" of an item are its 2nd-and-later occurrences -- the first one is the original, the rest are the copies.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FindDuplicatesOfString(3) )
#--> [ 4 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUFindDuplicatesOfItem
Same as FindDuplicatesOfStringCS: "...OfString" is the historical name (these came from the list-of-strings API) but they work for any item type. The "duplicates" of an item are its 2nd-and-later occurrences -- the first one is the original, the rest are the copies.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FindDuplicatesOfItem(3) )
#--> [ 4 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUFindDuplicationsOfItem
Same as FindDuplicatesOfStringCS: "...OfString" is the historical name (these came from the list-of-strings API) but they work for any item type. The "duplicates" of an item are its 2nd-and-later occurrences -- the first one is the original, the rest are the copies.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FindDuplicationsOfItem(3) )
#--> [ 4 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUFindDuplicationsOf
Same as FindDuplicatesOfStringCS: "...OfString" is the historical name (these came from the list-of-strings API) but they work for any item type. The "duplicates" of an item are its 2nd-and-later occurrences -- the first one is the original, the rest are the copies.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FindDuplicationsOf(3) )
#--> [ 4 ]
composé à partir de la signature, exécuté pour cette page aucune extensionNumberOfDuplicatesOfString
(sans commentaire dans la source : le nom se lit comme une phrase) number of duplicates of stringdans la section duplicates of a specific item / stringexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfDuplicatesOfString(3)
#--> 1
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU NumberOfDuplicatesOfItem
(sans commentaire dans la source : le nom se lit comme une phrase) number of duplicates of itemdans la section duplicates of a specific item / stringexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfDuplicatesOfItem(3)
#--> 1
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU StringIsDuplicatedNTimes
(sans commentaire dans la source : le nom se lit comme une phrase) string is duplicated n timesdans la section duplicates of a specific item / stringexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.StringIsDuplicatedNTimes(3, 2)
#--> 0
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU ItemIsDuplicatedNTimes
(sans commentaire dans la source : le nom se lit comme une phrase) item is duplicated n timesdans la section duplicates of a specific item / stringexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.ItemIsDuplicatedNTimes(3, 2)
#--> 0
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU FindDuplicatedString
Same as FindDuplicatedStringCS: ALL positions of an item -- but only when it actually IS duplicated (appears more than once); a non-duplicated item yields the empty list.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FindDuplicatedString(3) )
#--> [ 2, 4 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUFindDuplicatedItem
Same as FindDuplicatedStringCS: ALL positions of an item -- but only when it actually IS duplicated (appears more than once); a non-duplicated item yields the empty list.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FindDuplicatedItem(3) )
#--> [ 2, 4 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUContainsDuplicatedString
(sans commentaire dans la source : le nom se lit comme une phrase) contains duplicated stringdans la section duplicates of a specific item / stringexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.ContainsDuplicatedString(3)
#--> 1
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU ContainsDuplicatedItem
(sans commentaire dans la source : le nom se lit comme une phrase) contains duplicated itemdans la section duplicates of a specific item / stringexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.ContainsDuplicatedItem(3)
#--> 1
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU NumberOfDuplicatedStrings
(sans commentaire dans la source : le nom se lit comme une phrase) number of duplicated stringsdans la section duplicates of a specific item / stringexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfDuplicatedStrings()
#--> 1
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU Same as FindSubListCS: FindSubList / ContainsSubList: locate the contiguous occurrences of a sub-list inside the list.
1 exemples exécutésaussi écrite: FindTheseAdjacentItems · FindTheseContiguousItemso1 = new stzList([ 1, 2, 3, 4, "|", 2, 3, 4, 5, "|", 2, 3, 4, 5 ])
? o1.FindSubList([ 2, 3, 4 ])
#--> 2
#--> 6
#--> 11
test de la bibliothèqueQCSXTZZZIBWUContainsSubList
Same as ContainsSubListCS: TRUE if the given sublist occurs in the list as a consecutive run of items.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.ContainsSubList([ 2, 3 ])
#--> 0
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUMerge: flatten ONE level only. For each item: if it's a list, spread its items; otherwise keep as-is. Distinct from Flatten() which fully recurses. Port from archive line 37074; used by stzHashList.Items() to coalesce list-of-lists values.
1 exemples exécutésexemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.Merge()
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUA copy flattened by ONE level: sublists spread out, other items kept as they are.
2 exemples exécutés? @@( Q([ 0, 1:3, 4:7, 8:10 ]).Merged() )
#--> [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ]
test de la bibliothèqueaucune extensionFlatten the nested list to a single level in place (mutating). For a copy, use Flattened.
1 exemples exécutésaussi nommée: unnest merge levels single level ungroup collapse nestingexemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.Flatten()
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUA fully-flattened copy of the nested list; the original is unchanged.
3 exemples exécutés? @@( StzListQ([ "a", [ "b", [ "c", "d" ], "e" ], "f" ]).Flattened() )
#--> [ "a", "b", "c", "d", "e", "f" ]
test de la bibliothèqueaucune extensionequality check (set-based, engine-backed)
5 exemples exécutéso1 = new stzList([ "C", "A", "B" ])
? o1.IsEqualTo([ "A", "B", "C" ])
? o1.IsEqualToXT([ "A", "B", "C" ])
#--> 1
#--> 0
test de la bibliothèqueQCSXTZZZIBWUstrict equality (same items + same positions)
3 exemples exécutésaussi écrite: IsIdenticalToo1 = new stzList([ 1, 2, 3 ])
? o1.IsEqualTo([ 3, 1, 2 ])
? o1.IsStrictlyEqualTo([ 3, 1, 2 ])
? o1.IsStrictlyEqualTo([ 1, 2, 3 ])
#--> 1
#--> 0
#--> 1
test de la bibliothèqueQCSXTZZZIBWUStartsWith
starts with / ends with (engine-backed)
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.StartsWith([ 2, 3 ])
#--> 0
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUEndsWith
starts with / ends with (engine-backed)
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.EndsWith([ 2, 3 ])
#--> 0
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUexpression-backed operations (engine bytecode)
2 exemples exécutésaussi écrite: Yieldexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.Map("@item > 3") )
#--> [ 1, 0, 1, 0, 0 ]composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUWFFilter
expression-backed operations (engine bytecode)
aussi nommée: keep where select subset matching items pick outexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.Filter("@item > 3") )
#--> [ 5, 8 ]composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUWFReduce(): 0-arg auto-concat / auto-sum. - All-string items: concatenate. - All-number items: sum. - Mixed: concatenate stringified items.
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.Reduce()
#--> 20
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUexpression-backed operations (engine bytecode)
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.ReduceNoInit("@item > 3")
#--> 0composé à partir de la signature, exécuté pour cette page aucune extensionCountWhere
Same as CountW: Same as NumberOfOccurrenceCS: NumberOfOccurrenceCS: count occurrences How many times the given item occurs in the list. (applies only where the given W condition holds)
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.CountWhere("@item > 3")
#--> 2composé à partir de la signature, exécuté pour cette page aucune extensionCountItemsW
Same as CountW: Same as NumberOfOccurrenceCS: NumberOfOccurrenceCS: count occurrences How many times the given item occurs in the list. (applies only where the given W condition holds)
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.CountItemsW("@item > 3")
#--> 2composé à partir de la signature, exécuté pour cette page aucune extensionIsSorted
TRUE if the items are sorted, ascending OR descending.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsSorted()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionTRUE if the items are in ascending order.
1 exemples exécutéso1 = new stzList([ 3, 6, 9, 12, "a", "b", [ "List0" ], [ "List1" ] ])
? o1.IsSortedInAscending()
#--> 1
test de la bibliothèqueaucune extensionIsSortedInDescending
TRUE if the items are in descending order.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsSortedInDescending()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionSortingOrder
The sorting order of the items (:Ascending, :Descending, ...).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.SortingOrder()
#--> unsorted
composé à partir de la signature, exécuté pour cette page aucune extensionTRUE if the given list is sorted the same way as this one.
2 exemples exécutés? ListContains([ "q", "r", [ 2, 1 ] ], [ 2, 1 ])
? StzListQ([ "q", "r", [ 2, 1] ]).HasSameContentAs([ "r", [ 2, 1], "q" ])
? StzListQ([ "q", "r", [ 2, 1] ]).HasSameSortingOrderAs([ "r", [ 2, 1], "q" ])
? StzListQ([ "q", "r", [ 2, 1] ]).IsEqualTo([ "q", "r", [2, 1] ])
#--> 1
#--> 1
#--> 0
#--> 1
test de la bibliothèqueaucune extensionHasSameContentAs: order-independent equality check. Two lists have the same content iff each is a permutation of the other -- same length, and every item in A appears (with the same multiplicity) in B. Walk-and-mark, O(N*M) -- fine for narrative test sizes; lift to a hash-based approach when called on large lists in real code paths.
4 exemples exécutésaussi écrite: SameContentAs · IsEquivalentToo1 = new stzList([ "a", "c", 12 ])
? o1.HasSameContentAs([ "a", 12, "c" ])
#--> 1
test de la bibliothèqueaucune extensionTRUE if every item is a [key, value] pair (a hash list).
1 exemples exécutésaussi écrite: IsAHashListaList = [ :name = "mansour", :job = "programmer", :name = "xe" ]
o1 = new stzList(aList)
? o1.IsHashList()
#--> 0
test de la bibliothèqueaucune extensionIsNotHashList
TRUE if the list is NOT a hash list.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsNotHashList()
#--> 1
composé à partir de la signature, exécuté pour cette page aucune extensionToStzHashList
ToStzHashList: view this list (a hashlist / list of [key,value] pairs, e.g. [ :a = 1, :b = 2 ]) as a stzHashList, so you can chain KeysQ(), ValuesQ(), etc. The stzHashList ctor normalizes a list of pairs.aussi écrite: ToHashListQCSXTZZZIBWU
TRUE if the list holds exactly two items.
1 exemples exécutésaussi écrite: IsAPairexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsPair()
#--> 0
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUTRUE if the list is non-empty and every item is a string.
2 exemples exécutésaussi écrite: IsListOfTexts · IsAListOfTexts · IsAListOfStrings? IsListOfStrings([ "baba", "ommi", "jeddy" ])
? Q([ "baba", "ommi", "jeddy" ]).IsListOfStrings()
#--> 1
#--> 1
test de la bibliothèqueaucune extensionAn empty list answers 0, matching IsListOfStrings just above, which also refuses to make a claim about content that is not there.
2 exemples exécutésaussi écrite: AllItemsAreUppercase# the pair is an :AtChars named param
? Q([ "atchars", "Q(@char).IsUppercase()" ]).IsAtCharsNamedParam()
#--> 1
test de la bibliothèqueaucune extensionIsLowercase
type-checking methods
aussi écrite: AllItemsAreLowercaseexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsLowercase()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionTRUE if the list is non-empty and every item is a number.
1 exemples exécutésaussi écrite: IsAListOfNumbersexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsListOfNumbers()
#--> 1
composé à partir de la signature, exécuté pour cette page aucune extensionTRUE if every item is a single char.
1 exemples exécutésaussi écrite: IsAListOfChars# islistofchars example 1
? @@( Q([ "a", "b", "c" ]).IsListOfChars() )
# islistofchars example 2
? @@( Q([ 1, 2, 3 ]).IsListOfChars() )
#--> 1
#--> 1
test de la bibliothèqueaucune extensionPolymorphic membership test: IsListOf(:Numbers/:Strings/:Chars/ :Lists/:StzNumbers/:StzStrings/:ListsOfNumbers/:PairsOfNumbers).
2 exemples exécutésaussi écrite: IsAListOfaucune extensionIsListOfLists
TRUE if every item is a list (vacuously TRUE when empty).
aussi écrite: IsAListOfLists · AllItemsAreLists · ContainsOnlyListsexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsListOfLists()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionIsListOfListsOfNumbers
IsListOfListsOfNumbers: each top-level item must be a list, and each inner item must be a number.
aussi écrite: IsAListOfListsOfNumbersexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsListOfListsOfNumbers()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionIsListOfListsOfSameSize
TRUE if every item is a list and all the sublists have the same size.
aussi écrite: ItemsAreListsOfSameSize · AllItemsAreListsOfSameSizeexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsListOfListsOfSameSize()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionIsPairOfNumbers
TRUE if the list is exactly a pair of two numbers.
aussi écrite: IsAPairOfNumbersexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsPairOfNumbers()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionIsListOfPairs
TRUE if every item is a pair (vacuously TRUE when empty).
aussi écrite: IsAListOfPairsexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsListOfPairs()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionIsContiguous
True iff the list of numbers is sorted ascending with consecutive values (e.g. [3,4,5] -> TRUE, [3,5,6] -> FALSE).
aussi écrite: AreContiguousexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsContiguous()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionIsListOfPairsOfNumbers
TRUE if every item is a pair of numbers.
aussi écrite: IsAListOfPairsOfNumbersexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsListOfPairsOfNumbers()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionIsListOfPairsOfStrings
TRUE if every item is a pair of strings.
aussi écrite: IsAListOfPairsOfStringsexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsListOfPairsOfStrings()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionIsSet
TRUE if all the items are unique (the list is a set).
aussi écrite: IsASetexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsSet()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionList
List() alias The raw Haro list content (same as Content).
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
? @@( o1.List() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUSame as SectionCS: Section: extract items between two positions
3 exemples exécutéso1 = new stzList(1:10)
# section example 1
? @@( o1.Section(3, 10) )
#--> [ 3, 4, 5, 6, 7, 8, 9, 10 ]
test de la bibliothèqueQCSXTZZZIBWUInsertAt: insert an item at a given position
1 exemples exécutéso1 = new stzList([ "A", "C", "D" ])
o1.InsertAt(2, "B")
? o1.Content()
#--> A
#--> B
#--> C
#--> D
test de la bibliothèqueQCSXTZZZIBWUSame as InsertAt: InsertAt: insert an item at a given position
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.InsertBefore(2, 3)
? @@( o1.Content() )
#--> [ 5, 3, 3, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUWFRemoveItemAtPosition
RemoveItemAtPosition: remove item at a specific position
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.RemoveItemAtPosition(2)
? @@( o1.Content() )
#--> [ 5, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWURemoveAt
Same as RemoveItemAtPosition: RemoveItemAtPosition: remove item at a specific position
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.RemoveAt(2)
? @@( o1.Content() )
#--> [ 5, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionRemoveItemsAtPositions: remove items at multiple positions
2 exemples exécutéso1 = new stzList([ "a", "b", "b", "b", "c" ])
o1.RemoveItemsAtPositions([2,3,4])
? o1.Content()
#--> a
#--> c
test de la bibliothèqueQCSXTZZZIBWURemoveItemsAtThesePositions
Same as RemoveItemsAtPositions: RemoveItemsAtPositions: remove items at multiple positions
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.RemoveItemsAtThesePositions([ 2, 3 ])
? @@( o1.Content() )
#--> [ 5, 3, 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWURemoveSection: remove items between two positions
2 exemples exécutéso1 = new stzList([ 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 ])
o1.RemoveSection(3, 8)
# removesection example 1
? @@( o1.Content() )
#--> [ 1, 2, 9, 10 ]
test de la bibliothèqueQCSXTZZZIBWURemoveSpaces
RemoveSpaces / RemoveSpacesQ: drop every " " item (string-space) from the content. Engine-aware: only removes string-typed " ".
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.RemoveSpaces()
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWURemoveDuplicatedItems
RemoveDuplicatedItems / Q: in-place dedup. Order-preserving: keeps the first occurrence of each unique value.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.RemoveDuplicatedItems()
? @@( o1.Content() )
#--> [ 5, 3, 8, 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUIsReverseOf(paOther): TRUE iff @aContent is the reverse of paOther (deep-equal item-by-item).
1 exemples exécutéso1 = new stzList([ 1, 2, 3, 6 ])
? o1.IsReverseOf([ 6, 3, 2, 1 ])
#--> 1
test de la bibliothèqueaucune extensionRemoveFirstItem / RemoveLastItem Remove the first item of the list (mutating).
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.RemoveFirstItem()
? @@( o1.Content() )
#--> [ 3, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWURemoveLastItem
(sans commentaire dans la source : le nom se lit comme une phrase) remove last itemdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.RemoveLastItem()
? @@( o1.Content() )
#--> [ 5, 3, 8, 3 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU RemoveFirstAndLastItems
Same as RemoveFirstItem: RemoveFirstItem / RemoveLastItem Remove the first item of the list (mutating).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.RemoveFirstAndLastItems()
? @@( o1.Content() )
#--> [ 3, 8, 3 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWURemoveRange: remove items from start for a count
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.RemoveRange(2, 5)
? @@( o1.Content() )
#--> [ 5 ]
composé à partir de la signature, exécuté pour cette page aucune extensionRemoveAllItems
RemoveAllItems Empty the list (mutating).aucune extension
Find the given item: the positions of EVERY occurrence, as a list (engine-backed). (case-sensitive by default)
24 exemples exécutés# find example 1
? @@( Q([1, 2, 3, 4, 5, 3, 7]).Find(3) )
#--> [ 3, 6 ]
test de la bibliothèqueQCSXTZZZIBWUWFManySame as FindAllOccurrencesCS: FindAllOccurrencesCS: find all positions of an item
11 exemples exécutéso1 = new stzList([ 1:3, 4:6, 1:3, 1:3, 4:6, 7:10 ])
? o1.FindAll(1:3)
? o1.Contains(7:10)
#--> 1
#--> 3
#--> 4
#--> 1
test de la bibliothèqueQCSXTZZZIBWUWFExceptFindAllOccurrences
Same as FindAllOccurrencesCS: FindAllOccurrencesCS: find all positions of an item
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FindAllOccurrences(3) )
#--> [ 2, 4 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU(sans commentaire dans la source : le nom se lit comme une phrase) last n items 2 exemples exécutésdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.LastNItems(2) )
#--> [ 3, 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUQRT AddedToEach
AddedToEach(n): add n to every numeric item; return a new list.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.AddedToEach(2) )
#--> [ 7, 5, 10, 5, 3 ]
composé à partir de la signature, exécuté pour cette page aucune extensionAddToEach
(sans commentaire dans la source : le nom se lit comme une phrase) add to eachdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.AddToEach(2)
? @@( o1.Content() )
#--> [ 7, 5, 10, 5, 3 ]
composé à partir de la signature, exécuté pour cette page aucune extension SectionsOfSameItems
SectionsOfSameItems(): group consecutive equal items into runs. "AABBCCAA" -> [["A","A"], ["B","B"], ["C","C"], ["A","A"]]
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.SectionsOfSameItems() )
#--> [ [ 5 ], [ 3, 3 ], [ 8 ], [ 1 ] ]
composé à partir de la signature, exécuté pour cette page aucune extensionFindInSections
FindInSections(pItem, aSections): absolute-position occurrences of pItem inside any of the given sections.aucune extension
CountInSections
(sans commentaire dans la source : le nom se lit comme une phrase) count in sectionsaussi écrite: NumberOfOccurrencesInSectionsdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.CountInSections(3, [ 2, 3 ])
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extension HexUnicodes
HexUnicodes(): hex code-points of every char of every string-item.
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
? @@( o1.HexUnicodes() )
#--> [ [ "U+0074", "U+0065", "U+0061" ], [ "U+0072", "U+0069", "U+0063", "U+0065" ], [ "U+0074", "U+0065", "U+0061" ], [ "U+0066", "U+0069", "U+0073", "U+0068" ] ]
composé à partir de la signature, exécuté pour cette page aucune extensionCommonItems(:With = otherList): items present in both lists.
1 exemples exécutésaussi écrite: Intersectiono1 = new stzList([ "a", "ab", "b" ])
? @@( o1.Intersection(:with = [ "a", "ab", "abc", "b", "bc", "c" ]) ) # Or CommonItems()
#--> [ "a", "ab", "b" ]
test de la bibliothèqueaucune extensionPreviousNItems: two shapes -- PreviousNItems(n, :StartingAt/:StartingAtPosition = p): the n items strictly BEFORE position p; PreviousNItems(pcAnchor, n): the n items before the anchor item.
1 exemples exécutésaucune extensionSpacesRemoved
SpacesRemoved (non-mutating): every string item stripped of spaces.
aussi écrite: WithoutSapces · WithoutSpacesexemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
? @@( o1.SpacesRemoved() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page aucune extensionSubStrongs
Substrongs/Substrinks (deliberate Softanza wordplay): the string items that CONTAIN another item of the list, and the ones that are CONTAINED IN another item (case-sensitive, engine-backed find).aucune extension
SubStrinks
(sans commentaire dans la source : le nom se lit comme une phrase) sub strinksdans la section essential methods for submodule supportaucune extension
Concatenate
(sans commentaire dans la source : le nom se lit comme une phrase) concatenatedans la section essential methods for submodule supportexemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
? o1.Concatenate()
#--> teariceteafish
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU Concatenated
(sans commentaire dans la source : le nom se lit comme une phrase) concatenateddans la section essential methods for submodule supportexemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
? o1.Concatenated()
#--> teariceteafish
composé à partir de la signature, exécuté pour cette page aucune extension NumbrifyQ
NumbrifyQ / NumbrifiedQ: coerce string-items to numbers and return the list wrapped. Test pattern: a CharsQ() walk that then wants per-char numeric values.aucune extension
NumbrifiedQ
Same as NumbrifyQ: NumbrifyQ / NumbrifiedQ: coerce string-items to numbers and return the list wrapped. Test pattern: a CharsQ() walk that then wants per-char numeric values.aucune extension
(sans commentaire dans la source : le nom se lit comme une phrase) are 5 exemples exécutésaussi écrite: ItemsAredans la section essential methods for submodule supporto1 = new stzList([ 2, 4, 8 ])
? o1.EachItemIsA(:Number)
? o1.ItemsAre([ :Positive, :Even, :Numbers ])
#--> 1
#--> 1
test de la bibliothèqueaucune extension FindSpaces
(sans commentaire dans la source : le nom se lit comme une phrase) find spacesdans la section essential methods for submodule supportaucune extension
(sans commentaire dans la source : le nom se lit comme une phrase) is not a string 1 exemples exécutésdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsNotAString()
#--> 1
composé à partir de la signature, exécuté pour cette page aucune extension IsAString
(sans commentaire dans la source : le nom se lit comme une phrase) is a stringdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsString()
#--> 0
composé à partir de la signature, exécuté pour cette page · écrit IsAString() dans la bibliothèque aujourd'hui : le langage hôte tient déjà IsString(), et Haro supprime le détour aucune extension IsAList
So a stzList answered "no" to being a list, and every `but IsAList()` arm in the library fell past it. stzObject.IsEither() has such an arm, followed by `but IsAnObject()` -- which a stzList IS -- so comparing two lists raised "Feature not implemented yet!" from a branch meant for something else entirely.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsList()
#--> 1
composé à partir de la signature, exécuté pour cette page · écrit IsAList() dans la bibliothèque aujourd'hui : le langage hôte tient déjà IsList(), et Haro supprime le détour aucune extensionSAME SHAPE, SAME OMISSION. stzObject.HasSameTypeAs(p) answers isObject(p), and each wrapper overrides it to test the type it WRAPS -- stzNumber asks isNumber, stzString asks isString. stzList never asked isList, so comparing a stzList to a plain list said "different type", and IsStrictlyEqualTo() -- the conjunction of same type, same content and same order -- could never be true for the one comparison it exists to make.
1 exemples exécutéso1 = new stzList([ "a", "b", "c" ])
? o1.IsStrictlyEqualTo([ "a", "b", "c" ])
? o1.HasSameTypeAs([ "a", "b", "c" ])
? o1.HasSameContentAs([ "a", "b", "c" ])
? o1.HasSameSortingOrderAs([ "a", "b", "c" ])
#--> 1
#--> 1
#--> 1
#--> 1
test de la bibliothèqueaucune extension(sans commentaire dans la source : le nom se lit comme une phrase) is not in lowercase 1 exemples exécutésdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsNotInLowercase()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extension IsInLowercase
(sans commentaire dans la source : le nom se lit comme une phrase) is in lowercasedans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsInLowercase()
#--> 1
composé à partir de la signature, exécuté pour cette page aucune extension (sans commentaire dans la source : le nom se lit comme une phrase) does not contain 1 exemples exécutésdans la section essential methods for submodule supportaucune extension (sans commentaire dans la source : le nom se lit comme une phrase) number of chars 1 exemples exécutésdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfChars()
#--> 0
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU (sans commentaire dans la source : le nom se lit comme une phrase) are included in 1 exemples exécutésdans la section essential methods for submodule supporto1 = new stzList([ "green", "red" ])
# IsIncludedIn: the list is not itself one element of the host
? o1.IsIncludedIn([ "green", "red", "blue" ])
# AreIncludedIn: every item is present in the host
? o1.AreIncludedIn([ "green", "red", "blue" ])
#--> 0
#--> 1
test de la bibliothèqueaucune extension FindObjects([pcExpr]): 0-arg = positions of every object item; 1-arg = ItemsWhere(pcExpr).
2 exemples exécutésaussi écrite: FindStzObjectso1 = new stzList([ Q("one"), Q(1), Q("two"), Q(2), Q("three"), Q(3), Q(1:2), NullObject() ])
? @@( o1.FindStzNumbers() )
? @@( o1.FindStzStrings() )
? @@( o1.FindStzLists() )
? @@( o1.FindStzObjects() )
#--> [ 2, 4, 6 ]
#--> [ 1, 3, 5 ]
#--> [ 7 ]
#--> [ 1, 2, 3, 4, 5, 6, 7, 8 ]test de la bibliothèqueQCSXTZZZIBWUToStzTable
The list turned into a stzTable object (rows; per the stzTable contract, the first row may carry the column names).aucune extension
TheseObjectsZ
(sans commentaire dans la source : le nom se lit comme une phrase) these objects zdans la section essential methods for submodule supportaucune extension
FindQObjects
(sans commentaire dans la source : le nom se lit comme une phrase) find q objectsdans la section essential methods for submodule supportaucune extension
FindNonStzObjects
(sans commentaire dans la source : le nom se lit comme une phrase) find non stz objectsdans la section essential methods for submodule supportaucune extension
ObjectsVarNames
(sans commentaire dans la source : le nom se lit comme une phrase) objects var namesaussi écrite: NamedObjectsdans la section essential methods for submodule supportQCSXTZZZIBWU
NumberOfNamedObjects
(sans commentaire dans la source : le nom se lit comme une phrase) number of named objectsdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfNamedObjects()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extension NumberOfUnnamedObjects
(sans commentaire dans la source : le nom se lit comme une phrase) number of unnamed objectsdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfUnnamedObjects()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extension NumberOfObjects
(sans commentaire dans la source : le nom se lit comme une phrase) number of objectsdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfObjects()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extension NumberOfStzObjects
(sans commentaire dans la source : le nom se lit comme une phrase) number of stz objectsdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfStzObjects()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extension NumberOfQObjects
(sans commentaire dans la source : le nom se lit comme une phrase) number of q objectsdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfQObjects()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extension NumberOfNonStzObjects
(sans commentaire dans la source : le nom se lit comme une phrase) number of non stz objectsdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfNonStzObjects()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extension NumberOfUniqueNamedObjects
(sans commentaire dans la source : le nom se lit comme une phrase) number of unique named objectsdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfUniqueNamedObjects()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extension UnamedObjects
(sans commentaire dans la source : le nom se lit comme une phrase) unamed objectsdans la section essential methods for submodule supportaucune extension
StringsSplitted
(sans commentaire dans la source : le nom se lit comme une phrase) strings splitteddans la section essential methods for submodule supportexemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
? @@( o1.StringsSplitted(2) )
#--> [ [ "tea" ], [ "rice" ], [ "tea" ], [ "fish" ] ]
composé à partir de la signature, exécuté pour cette page aucune extension ObjectsAndTheirVarNames
(sans commentaire dans la source : le nom se lit comme une phrase) objects and their var namesdans la section essential methods for submodule supportaucune extension
FindUnnamedObjects
(sans commentaire dans la source : le nom se lit comme une phrase) find unnamed objectsaussi écrite: UnnamedObjectsdans la section essential methods for submodule supportaucune extension
FindNamedObjects
(sans commentaire dans la source : le nom se lit comme une phrase) find named objectsdans la section essential methods for submodule supportaucune extension
FindObject
(sans commentaire dans la source : le nom se lit comme une phrase) find objectdans la section essential methods for submodule supportaucune extension
ObjectsAndTheirPositions
(sans commentaire dans la source : le nom se lit comme une phrase) objects and their positionsdans la section essential methods for submodule supportaucune extension
ItemsWhere
(sans commentaire dans la source : le nom se lit comme une phrase) items wheredans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.ItemsWhere("@item > 3") )
#--> [ 5, 8 ]composé à partir de la signature, exécuté pour cette page aucune extension InsertAfterPositions
(sans commentaire dans la source : le nom se lit comme une phrase) insert after positionsdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.InsertAfterPositions([ 2, 3 ], 3)
? @@( o1.Content() )
#--> [ 5, 3, 3, 8, 3, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extension ReplaceItemsAtPositionsByMany
(sans commentaire dans la source : le nom se lit comme une phrase) replace items at positions by manydans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.ReplaceItemsAtPositionsByMany([ 1, 2 ], [ 2, 3 ])
? @@( o1.Content() )
#--> [ 2, 3, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extension Same as IsContainedInCS: IsContainedIn(p): this list, taken as a single value, is an -- element of p (NOT element-wise -- that is AreContainedIn). (case-sensitive by default)
1 exemples exécutéso1 = new stzList([ "green", "red" ])
# IsIncludedIn: the list is not itself one element of the host
? o1.IsIncludedIn([ "green", "red", "blue" ])
# AreIncludedIn: every item is present in the host
? o1.AreIncludedIn([ "green", "red", "blue" ])
#--> 0
#--> 1
test de la bibliothèqueQCSXTZZZIBWUNumberOfLeadingItems
(sans commentaire dans la source : le nom se lit comme une phrase) number of leading itemsdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfLeadingItems()
#--> 1
composé à partir de la signature, exécuté pour cette page aucune extension NumberOfTrailingItems
(sans commentaire dans la source : le nom se lit comme une phrase) number of trailing itemsdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfTrailingItems()
#--> 1
composé à partir de la signature, exécuté pour cette page aucune extension ReplaceLeadingItems
(sans commentaire dans la source : le nom se lit comme une phrase) replace leading itemsdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.ReplaceLeadingItems(3)
? @@( o1.Content() )
#--> [ 3, 3, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extension ReplaceTrailingItems
(sans commentaire dans la source : le nom se lit comme une phrase) replace trailing itemsdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.ReplaceTrailingItems(3)
? @@( o1.Content() )
#--> [ 5, 3, 8, 3, 3 ]
composé à partir de la signature, exécuté pour cette page aucune extension ReplaceLeadingAndTrailingItems
(sans commentaire dans la source : le nom se lit comme une phrase) replace leading and trailing itemsdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.ReplaceLeadingAndTrailingItems(3)
? @@( o1.Content() )
#--> [ 3, 3, 8, 3, 3 ]
composé à partir de la signature, exécuté pour cette page aucune extension LeadingItems
(sans commentaire dans la source : le nom se lit comme une phrase) leading itemsdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.LeadingItems() )
#--> [ 5 ]
composé à partir de la signature, exécuté pour cette page aucune extension TrailingItems
(sans commentaire dans la source : le nom se lit comme une phrase) trailing itemsdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.TrailingItems() )
#--> [ 1 ]
composé à partir de la signature, exécuté pour cette page aucune extension HasLeadingItems
(sans commentaire dans la source : le nom se lit comme une phrase) has leading itemsdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.HasLeadingItems()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extension HasTrailingItems
(sans commentaire dans la source : le nom se lit comme une phrase) has trailing itemsdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.HasTrailingItems()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extension Combinations
(sans commentaire dans la source : le nom se lit comme une phrase) combinationsdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.Combinations() )
#--> [ [ 5, 3 ], [ 5, 8 ], [ 5, 3 ], [ 5, 1 ], [ 3, 8 ], [ 3, 3 ], [ 3, 1 ], [ 8, 3 ], [ 8, 1 ], [ 3, 1 ] ]
composé à partir de la signature, exécuté pour cette page aucune extension IsAtCharsNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is at chars named paramdans la section essential methods for submodule supportaucune extension
(sans commentaire dans la source : le nom se lit comme une phrase) is one of these named params 1 exemples exécutésdans la section essential methods for submodule support? StzStringQ(:stzList).IsStzClassName()
? StzListQ( :ReturnedAs = :stzList ).IsOneOfTheseNamedParams([ :ReturnedAs, :ReturnAs ])
#--> 1
#--> 1
test de la bibliothèqueaucune extension IsStepNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is step named paramdans la section essential methods for submodule supportaucune extension
IsIsBoundedByNamedParam
(sans commentaire dans la source : le nom se lit comme une phrase) is is bounded by named paramdans la section essential methods for submodule supportaucune extension
ItemsAndTheirNumberOfOccurrence
(sans commentaire dans la source : le nom se lit comme une phrase) items and their number of occurrencedans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.ItemsAndTheirNumberOfOccurrence() )
#--> [ [ 5, 1 ], [ 3, 2 ], [ 8, 1 ], [ 1, 1 ] ]
composé à partir de la signature, exécuté pour cette page aucune extension SplitAround
(sans commentaire dans la source : le nom se lit comme une phrase) split arounddans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.SplitAround(3) )
#--> [ [ 5 ], [ 8 ], [ 1 ] ]
composé à partir de la signature, exécuté pour cette page aucune extension TheseCharsZ
TheseCharsZ([chars]): each char grouped with ALL its positions in the list -- [ [c, [positions]], ... ].
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.TheseCharsZ([ 2, 3 ]) )
#--> [ [ 2, [ ] ], [ 3, [ 2, 4 ] ] ]
composé à partir de la signature, exécuté pour cette page aucune extensionNextNItemsAfter
(sans commentaire dans la source : le nom se lit comme une phrase) next n items afterdans la section essential methods for submodule supportaucune extension
Same as NumberOfOccurrenceCS: NumberOfOccurrenceCS: count occurrences How many times the given item occurs in the list.
8 exemples exécutésaussi écrite: HowMany · NumberOfDuplicatesOfo1 = new stzList(1:14 + 12)
# numberofoccurrence example 1
? @@( o1.NumberOfOccurrence(12) )
#--> 2
test de la bibliothèqueQCSXTZZZIBWUSTNumberOfOccurrences
Same as NumberOfOccurrenceCS: NumberOfOccurrenceCS: count occurrences How many times the given item occurs in the list.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfOccurrences(3)
#--> 2
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUSame as NumberOfOccurrenceCS: NumberOfOccurrenceCS: count occurrences How many times the given item occurs in the list.
2 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.Count(3)
#--> 2
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUSTWFNthOccurrenceCS
Same as FindNthOccurrenceCS: FindNthOccurrenceCS: find nth occurrence
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NthOccurrenceCS(2, 3, TRUE)
#--> 4
composé à partir de la signature, exécuté pour cette page aucune extensionCase-insensitive word-order aliases used by narrative tests. (Cannot live inside FindNthOccurrenceCS as nested defs because they take a different arity -- top-level methods instead.)
7 exemples exécutéso1 = new stzList([ "_", "_", "♥", "_", "♥", "_", "_", "♥", "_", "_" ])
? o1.FindNth(3, "♥")
#--> 8
test de la bibliothèqueQCSXTZZZIBWUSame as FindNthOccurrenceCS: FindNthOccurrenceCS: find nth occurrence
1 exemples exécutéso1 = new stzList([ "_", "A", "_", "B", "C" ])
? o1.FindNthOccurrence(2, "_")
#--> 3
test de la bibliothèqueQCSXTZZZIBWUFindNumbersAsSections: scan content, return [[startPos,endPos],...] for each contiguous run of numeric items. Each section endpoint is a 1-based position in the original list. Single-number runs are returned as [pos, pos] (degenerate section).
2 exemples exécutésaussi écrite: NumbersAsSectionso1 = new stzList([ 1, 2, 3, 4, "A", "B", 7, 8, "C", "D", 11, 12, 13 ])
? @@( o1.FindNumbersAsSections() )
#--> [ [ 1, 4 ], [ 7, 8 ], [ 11, 13 ] ]
test de la bibliothèqueaucune extensionSame as FindFirstOccurrenceCS: FindFirstOccurrenceCS / FindLastOccurrenceCS The position of the FIRST occurrence of the item (0 if none).
11 exemples exécutéso1 = new stzList([ "a", "ab", "abnA", "abAb" ])
? o1.Contains("n")
? o1.FindFirst("n")
#--> 0
#--> 0test de la bibliothèqueQCSXTZZZIBWUFindLastOccurrenceCS
(sans commentaire dans la source : le nom se lit comme une phrase) find last occurrence csdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.FindLastOccurrenceCS(3, TRUE)
#--> 4
composé à partir de la signature, exécuté pour cette page aucune extension (sans commentaire dans la source : le nom se lit comme une phrase) find last 7 exemples exécutésdans la section essential methods for submodule supporto1 = new stzList([0, 0, 1, 0, 1])
? o1.FindLast(0)
#--> 4
test de la bibliothèqueQCSXTZZZIBWU Same as ContainsManyCS: ContainsManyCS: check if list contains multiple items
1 exemples exécutés# containsthese example 1
? @@( Q([ "a", "♥", "*" ]).ContainsThese([ "♥", "*"]) )
o1 = new stzList([ [ "a", "♥", "*" ], [ "♥", "*"], [ "a", "b", "♥", "*" ] ])
# containsthese example 2
? @@( o1.EachContainsThese([ "♥", "*" ]) )
#--> 1
#--> 1
test de la bibliothèqueQCSXTZZZIBWUSame as ContainsManyCS: ContainsManyCS: check if list contains multiple items
1 exemples exécutésaussi écrite: ContainsEachOneOfTheseo1 = new stzList([ "1", "2", "A", "B", "C", "3", "4" ])
? o1.ContainsEach([ "A", "B", "C" ])
? o1.ContainsEachOneOfThese([ "A", "B", "C" ])
#--> 1
#--> 1
test de la bibliothèqueQCSXTZZZIBWUContainsAll
Same as ContainsManyCS: ContainsManyCS: check if list contains multiple items
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.ContainsAll([ 2, 3 ])
#--> 0
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUSame as RemoveAllCS: RemoveAllCS: remove all occurrences of an item
4 exemples exécutésoL = new stzList(aOrders)
oL.RemoveAll("tea")
? @@( oL.Content() )
#--> [ "rice", "fish", "rice", "soup", "rice" ]test de la bibliothèqueQCSXTZZZIBWUExceptFindW: find items matching a condition (eval-based) (case-sensitive by default)
3 exemples exécutésaussi écrite: FindWhere · PositionsW · PositionsWhere · ItemsPositionsW · FindAllItemsWhereo1 = new stzList([ 2, 8, 2, 11, 2, 11, 1, 4, 2, 1, 3, 2, 10, 8, 3, 6, 8 ])
? o1.FindW( '{ Q( @NextItem ).IsDoubleOf( @PreviousItem ) }' )
? o1.FindWhere( '{ Q( This[@i+1] ).IsDoubleOf( This[@i-1] ) }' )
#--> 8
#--> 11
#--> 8
#--> 11test de la bibliothèqueQCSXTZZZIBWUFAllItemsWF
(sans commentaire dans la source : le nom se lit comme une phrase) all items wfdans la section essential methods for submodule supportaucune extension
CheckW: all items satisfy a W (DSL) condition. CheckW is the same -- now that the DSL is engine-backed (the perf/expressiveness split is gone).
4 exemples exécutéso1 = new stzList([ "A", "B", "C" ])
? o1.CheckW('{ isString(@item) and IsUppercase(@item) }')
#--> 1test de la bibliothèqueQCSXTZZZIBWUFAllItemsVerify
Same as AllItemsVerifyW: AllItemsVerifyW: readable alias of CheckW ("do ALL items verify ...?"). Haro's NULL is the empty string, but the W-engine doesn't know the NULL token, so '@item != NULL' is normalized to '@item != ""' first -- making the idiomatic non-null-string check work.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.AllItemsVerify("@item > 3")
#--> 0composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUEachItemVerifiesW
Same as AllItemsVerifyW: AllItemsVerifyW: readable alias of CheckW ("do ALL items verify ...?"). Haro's NULL is the empty string, but the W-engine doesn't know the NULL token, so '@item != NULL' is normalized to '@item != ""' first -- making the idiomatic non-null-string check work.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.EachItemVerifiesW("@item > 3")
#--> 0composé à partir de la signature, exécuté pour cette page aucune extensionthe items at panPos all satisfy a W (DSL) condition
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.CheckItemsAtW([ 2, 3 ], "@item > 3")
#--> 0
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUFSame as CheckItemsAtWF: WF variants: the items at panPos all satisfy an anonymous function
1 exemples exécutéso1 = new stzList([ "Word1", "كلمة 2", "Word3", "كلمة 4", "Word5", "كلمة 6" ])
? o1.CheckOnWF([1, 3, 5], func x { return Q(x).IsLeftToRight() } )
#--> 1test de la bibliothèqueaucune extensionCountUniqueItemsWF
(sans commentaire dans la source : le nom se lit comme une phrase) count unique items wfdans la section essential methods for submodule supportaucune extension
FindW: the extended (expressive) where-scan. Returns the matching -- POSITIONS (use ItemsW for the items at those positions). It accepts -- @NextItem/@PreviousItem/... and the Q(EXPR).Method(...) predicate form. -- ItemsAtPositions: get items at given positions
2 exemples exécutésaussi écrite: ItemsAtaOrders = [ "tea", "rice", "tea", "fish", "rice", "tea", "soup", "tea", "rice" ]
? @@( StzListQ([ 1, 2, 3, 4, 5, 6, 7, 8, 9 ]).FindW("@item % 3 = 1") )
? @@( StzListQ(aOrders).ItemsAtPositions([ 1, 4, 7 ]) )
#--> [ 1, 4, 7 ]
#--> [ "tea", "fish", "soup" ]test de la bibliothèqueQCSXTZZZIBWUExtendToPositionWith
Same as ExtendToPositionXT: ExtendToPositionXT: extend list to a given position
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.ExtendToPositionWith(2, 9)
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page aucune extensionSugar aliases over ExtendToPositionXT: the same operation but using the more natural "ExtendTo" / "Extend" naming. Default filler is the empty string.
4 exemples exécutéso1 = new stzList([ "A", "B", "C" ])
o1.ExtendTo(5)
? @@( o1.content() )
#--> [ "A", "B", "C", "", "" ]
test de la bibliothèqueQCSXTZZZIBWUSame as ExtendToPositionXT: ExtendToPositionXT: extend list to a given position
1 exemples exécutéso1 = new stzList("A" : "C")
o1.ExtendToWith(5, "*")
# extendtowith example 1
? @@( o1.Content() )
#--> [ "A", "B", "C", "*", "*" ]test de la bibliothèqueaucune extension(sans commentaire dans la source : le nom se lit comme une phrase) difference with 1 exemples exécutésdans la section essential methods for submodule supporto1 = new stzList([ "green", "red" ])
? @@( o1.DifferenceWith([ "b","x", "a", "f"]) ) # Or DifferentItemsWith()
? @@( o1.CommonItemsWith([ "b","x", "a", "f"]) ) # or Intersection()
? o1.ContainsSameItemsAs([ "red", "green" ])
? o1.ContainsSameItemsAs([ "a", "b", "c", "f" ])
#--> [ "green", "red", "b", "x", "a", "f" ]
#--> [ ]
#--> 1
#--> 0
test de la bibliothèqueQCSXTZZZIBWU Shrink: truncate the list to the first n items (in place).
1 exemples exécutéso1 = new stzList([ "A", "B", "C", "D", "E" ])
o1.ShrinkTo(3)
? o1.Content()
#--> A
#--> B
#--> C
test de la bibliothèqueQCSXTZZZIBWUTruncateTo
Same as ShrinkTo: Shrink: truncate the list to the first n items (in place).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.TruncateTo(2)
? @@( o1.Content() )
#--> [ 5, 3 ]
composé à partir de la signature, exécuté pour cette page aucune extensionKeepFirst
Same as ShrinkTo: Shrink: truncate the list to the first n items (in place).aucune extension
(sans commentaire dans la source : le nom se lit comme une phrase) extend 6 exemples exécutésdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.Extend(9)
? @@( o1.Content() )
#--> [ 5, 3, 8, 3, 1, 9 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU (sans commentaire dans la source : le nom se lit comme une phrase) extend with 1 exemples exécutésdans la section essential methods for submodule supporto1 = new stzList("A" : "C")
o1.ExtendWith(["D", "E"])
# extendwith example 1
? @@( o1.Content() )
#--> [ "A", "B", "C", "D", "E" ]test de la bibliothèqueaucune extension Min / Max for numeric lists
2 exemples exécutésaussi nommée: smallest minimum lowest leastaussi écrite: Lowest · Smallestexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.Min()
#--> 1
composé à partir de la signature, exécuté pour cette page aucune extension(sans commentaire dans la source : le nom se lit comme une phrase) max 2 exemples exécutésaussi nommée: largest maximum highest biggest greatestaussi écrite: Highest · Largest · Greatestdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.Max()
#--> 8
composé à partir de la signature, exécuté pour cette page aucune extension Sum / Product / Mean (engine-backed)
1 exemples exécutésaussi nommée: total add up aggregate sum of the numbers# Sum([1,2,3,4]) is 10
? Q([1,2,3,4]).Sum()
# IsEmpty([]) is TRUE
? Q([]).IsEmpty()
# IsEmpty([1]) is FALSE
? Q([1]).IsEmpty()
#--> 10
#--> 1
#--> 0
test de la bibliothèqueaucune extension(sans commentaire dans la source : le nom se lit comme une phrase) product 1 exemples exécutésaussi nommée: multiply all times all together multiplied productdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.Product()
#--> 360
composé à partir de la signature, exécuté pour cette page aucune extension (sans commentaire dans la source : le nom se lit comme une phrase) mean 1 exemples exécutésaussi écrite: Averagedans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.Mean()
#--> 4
composé à partir de la signature, exécuté pour cette page aucune extension Variance
FIXED 2026-07-25: Variance() here returned the POPULATION variance while stzDataSet returned the sample one, so the same data gave two answers depending on which class you held. The divisor now comes from one place in the engine (stats.varianceDivisor).
aussi nommée: spread dispersion sample varianceexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.Variance()
#--> 7
composé à partir de la signature, exécuté pour cette page aucune extension(sans commentaire dans la source : le nom se lit comme une phrase) variance sample 1 exemples exécutésdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.VarianceSample()
#--> 7
composé à partir de la signature, exécuté pour cette page aucune extension (sans commentaire dans la source : le nom se lit comme une phrase) variance population 1 exemples exécutésdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.VariancePopulation()
#--> 5.60
composé à partir de la signature, exécuté pour cette page aucune extension Stddev
(sans commentaire dans la source : le nom se lit comme une phrase) stddevaussi écrite: StandardDeviationdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.Stddev()
#--> 2.65
composé à partir de la signature, exécuté pour cette page aucune extension StddevSample
(sans commentaire dans la source : le nom se lit comme une phrase) stddev sampleaussi écrite: StandardDeviationSampledans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.StddevSample()
#--> 2.65
composé à partir de la signature, exécuté pour cette page aucune extension StddevPopulation
(sans commentaire dans la source : le nom se lit comme une phrase) stddev populationaussi écrite: StandardDeviationPopulationdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.StddevPopulation()
#--> 2.37
composé à partir de la signature, exécuté pour cette page aucune extension (sans commentaire dans la source : le nom se lit comme une phrase) nth smallest 1 exemples exécutésdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NthSmallest(2)
#--> 3
composé à partir de la signature, exécuté pour cette page aucune extension NthLargest
(sans commentaire dans la source : le nom se lit comme une phrase) nth largestdans la section essential methods for submodule supportexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NthLargest(2)
#--> 5
composé à partir de la signature, exécuté pour cette page aucune extension Repeat
Repeat (engine-backed) Turn the content into n copies of the whole list, NESTED ([1,2] -> [[1,2],[1,2]]) -- mutating. For flat tiling, use the * operator.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.Repeat(2)
? @@( o1.Content() )
#--> [ [ 5, 3, 8, 3, 1 ], [ 5, 3, 8, 3, 1 ] ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU(sans commentaire dans la source : le nom se lit comme une phrase) repeated 1 exemples exécutésaussi écrite: RepeatNTimes · RepeatedNTimesdans la section essential methods for submodule support? @@NL( StzListQ([ 1, 2, 3 ]).RepeatNTimes(3) )
#--> [
#--> [ 1, 2, 3 ],
#--> [ 1, 2, 3 ],
#--> [ 1, 2, 3 ]
#--> ...
test de la bibliothèqueaucune extension SplitAt
SplitAt (engine-backed) Split the list at the given cut position(s): the parts.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.SplitAt(2) )
#--> [ [ 5 ], [ 3, 8, 3, 1 ] ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWURanked
Ranked (engine-backed) The rank of each item in the sorted order, as a list.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.Ranked() )
#--> [ 4, 2, 5, 2, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionJoin
Join (engine-backed) The items joined into one string with the given separator.
aussi nommée: concatenate glue together merge into one stringaussi écrite: Joinedexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.Join(" ")
#--> 5 3 8 3 1composé à partir de la signature, exécuté pour cette page aucune extensionIsListOfHashLists
additional type checking methods
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsListOfHashLists()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionadditional type checking methods
1 exemples exécutéso1 = new stzList([ "a", "b", "c", "a", "a", "b", "c" ])
? o1.IsMadeOf([ "a", "b", "c" ])
? o1.IsMadeOfSome([ "a", "b", "c", "x", "z" ])
#--> 1
#--> 1
test de la bibliothèqueaucune extensionIsPairOfStrings
additional type checking methods
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsPairOfStrings()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionSame as AntiFindCS: The positions of the items DIFFERENT from the given item.
1 exemples exécutéso1 = new stzList([ "1", "2", "♥", "4", "5", "♥", "6", "7", "♥", "9" ])
? @@( o1.Find("♥") ) + NL
? @@( o1.AntiFind("♥") ) + NL
#--> [ 3, 6, 9 ]
#--> [ 1, 2, 4, 5, 7, 8, 10 ]test de la bibliothèqueQCSXTZZZIBWUAntiFindAsSections
Same as AntiFindAsSectionsCS: The [start, end] sections of the runs of items DIFFERENT from the given item.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.AntiFindAsSections(3) )
#--> [ [ 1, 1 ], [ 3, 3 ], [ 5, 5 ] ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUgetting the anti-positions of the given positions in the list
1 exemples exécutéso1 = new stzList(1:10)
? o1.AntiPositions([ 3, 4, 7, 9 ])
#--> 1
#--> 2
#--> 5
#--> 6
#--> ...
test de la bibliothèqueQCSXTZZZIBWUFindNOccurrences
The positions of the first n occurrences of the given item.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FindNOccurrences(2, 3) )
#--> [ 2, 4 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUFindGivenOccurrences
Same as FindGivenOccurrencesCS: FindFirstCS/FindFirst/FindLastCS/FindLast already defined above as aliasesQCSXTZZZIBWU
FindAllExceptFirst
The positions of every occurrence of the item EXCEPT the first.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FindAllExceptFirst(3) )
#--> [ 4 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUFindAllExceptLast
The positions of every occurrence of the item EXCEPT the last.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FindAllExceptLast(3) )
#--> [ 2 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUThe position of the nth occurrence of the item AFTER the given position (0 when there is none).
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.FindNextNthOccurrence(2, 3, 5)
#--> 0
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUFindNextOccurrence
The position of the next occurrence of the item after the given position (0 when there is none).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.FindNextOccurrence(3, 2)
#--> 4
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUFindNext: convenience wrapper used by narrative tests. Accepts either FindNext(item, n) or FindNext(item, :StartingAt = n).
6 exemples exécutéso1 = new stzList([ 1, 2, 3, "*", 5, 6, "*", 8, 9 ])
# findnext example 1
? @@( o1.FindNext("*", :StartingAt = 4) )
#--> 7test de la bibliothèqueQCSXTZZZIBWUSTThe position of the nearest occurrence of the item BEFORE the given position (0 when there is none).
4 exemples exécutéso1 = new stzList([ "1", "2", "♥", "4", "♥", "6", "7" ])
? o1.FindPrevious("♥", :StartingAt = 5)
? o1.FindNthPrevious(2, "♥", :StartingAt = 6)
#--> 3
#--> 3test de la bibliothèqueQCSXTZZZIBWUSTFindNthPrevious(n, pItem, pnStartingAt): word-order alias over FindPreviousNthOccurrence -- find the Nth occurrence of pItem walking backwards from pnStartingAt. Accepts :StartingAt = n.
5 exemples exécutéso1 = new stzList([ 1, 2, 3, "A":"C", 5, 7, 8, 9, "A":"C" ])
? o1.FindNthPrevious(2, "A":"C", :StartingAt = 7)
#--> 0
test de la bibliothèqueQCSXTZZZIBWUFindNthNext(n, pItem, pnStartingAt): symmetric forward variant.
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.FindNthNext(2, 3, 5)
#--> 0
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUThe position of the nth occurrence of the item BEFORE the given position (0 when there is none).
1 exemples exécutéso1 = new stzList([ "mio", "mix", "mia", "mio", "mix", "miz", "mix" ])
? o1.FindPreviousNthOccurrence( 2, :Of = "mix", :StartingAt = 6)
#--> 2
test de la bibliothèqueQCSXTZZZIBWUFindPreviousOccurrence
The position of the nearest occurrence of the item before the given position (0 when there is none).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.FindPreviousOccurrence(3, 2)
#--> 0
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUMissing name-variants for the next/previous occurrence family -- (delegating to stzListFinder; strictly-after / strictly-before).
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.FindNthNextOccurrence(2, 3, 5)
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionThe position of the nth occurrence of the item after the given position.
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.FindNextNth(2, 3, 5)
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionThe positions of ALL the occurrences after the given position.
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FindNextOccurrences(3, 2) )
#--> [ 4 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUSTthe listed nths (forward index) after / before a position
1 exemples exécutéso1 = new stzList([ "A" , "B", "A", "C", "A", "D", "A" ])
# FindNextOccurrencesST('A', 3) -> positions of A after 3
? @@( o1.FindNextOccurrencesST("A", 3) )
# FindNextNthOccurrencesST([1,2], 'A', 3) picks the 1st and 2nd of those
? @@( o1.FindNextNthOccurrencesST([1, 2], "A", 3) )
#--> [ 5, 7 ]
#--> [ 5, 7 ]test de la bibliothèqueaucune extensionFindPreviousOccurrences
The positions of ALL the occurrences before the given position.QCSXTZZZIBWUST
FindPreviousNthOccurrences
next / previous occurrence search (from a position)QCSXTZZZIBWU
FindFirstNext
The position of the first occurrence after the given position.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.FindFirstNext(3, 2)
#--> 4
composé à partir de la signature, exécuté pour cette page aucune extensionFindFirstPrevious
The position of the first occurrence before the given position (scanning backward).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.FindFirstPrevious(3, 2)
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionThe positions of every occurrence of the item (the Find contract).
1 exemples exécutésaussi nommée: index of position of locate where is at what indexexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FindItem(3) )
#--> [ 2, 4 ]
composé à partir de la signature, exécuté pour cette page aucune extensionThe position of the nth occurrence before the given position.
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.FindPreviousNth(2, 3, 5)
#--> 2
composé à partir de la signature, exécuté pour cette page aucune extensionThe position of the nth occurrence after the given position.
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NthNextOccurrence(2, 3, 5)
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionThe position of the nth occurrence after the given position.
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NextNthOccurrence(2, 3, 5)
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionsmallest/largest positions, items-with-positions, etc.
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FindSmallest() )
#--> [ 5 ]
composé à partir de la signature, exécuté pour cette page aucune extensionsmallest/largest positions, items-with-positions, etc.
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfSmallest()
#--> 1
composé à partir de la signature, exécuté pour cette page aucune extensionsmallest/largest positions, items-with-positions, etc.
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfOccurrencesOfSmallestItem()
#--> 1
composé à partir de la signature, exécuté pour cette page aucune extensionsmallest/largest positions, items-with-positions, etc.
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FindLargest() )
#--> [ 3 ]
composé à partir de la signature, exécuté pour cette page aucune extensionNumberOfLargest
smallest/largest positions, items-with-positions, etc.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfLargest()
#--> 1
composé à partir de la signature, exécuté pour cette page aucune extensionNumberOfOccurrencesOfLargestItem
smallest/largest positions, items-with-positions, etc.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfOccurrencesOfLargestItem()
#--> 1
composé à partir de la signature, exécuté pour cette page aucune extension[[item, [positions...]], ...] in first-appearance order
6 exemples exécutésaussi écrite: Index · ItemsAndTheirPositionso1 = new stzList([ "A", "B", "A", "C", "D", "B" ])
? @@( o1.Index() )
#--> [ [ "A", [ 1, 3 ] ], [ "B", [ 2, 6 ] ], [ "C", [ 4 ] ], [ "D", [ 5 ] ] ]
test de la bibliothèqueQCSXTZZZIBWUWF[[item, count], ...] in first-appearance order (type-sensitive)
1 exemples exécutéso1 = new stzList([ "1", "A", "B", "A", "A", "C", "B", 1 ])
? @@( o1.Withoutduplication() ) + NL
? @@( o1.FindItems() ) + NL # Or ItemsZ()
? @@( o1.ItemsCount() )
#--> [ "1", "A", "B", "C", 1 ]
#--> [ [ "1", [ 1 ] ], [ "A", [ 2, 4, 5 ] ], [ "B", [ 3, 7 ] ], [ "C", [ 6 ] ], [ 1, [ 8 ] ] ]
#--> [ [ "1", 1 ], [ "A", 3 ], [ "B", 2 ], [ "C", 1 ], [ 1, 1 ] ]
test de la bibliothèqueaucune extensionThe items that repeat in consecutive runs (dup-secutive: duplicated AND consecutive). (case-sensitive by default)
1 exemples exécutésQCSXTZZZIBWUThe consecutive-duplicate run of the given item, along with its positions.
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.DupSecutiveItemCSZ(3, TRUE) )
#--> [ 3, [ ] ]
composé à partir de la signature, exécuté pour cette page aucune extensionDupSecutiveItemZ
Same as DupSecutiveItemCSZ: The consecutive-duplicate run of the given item, along with its positions.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.DupSecutiveItemZ(3) )
#--> [ 3, [ ] ]
composé à partir de la signature, exécuté pour cette page aucune extensionRemoveDupSecutiveItems
Same as RemoveDupSecutiveItemsCS: Collapse every consecutive-duplicate run to a single item (mutating).
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.RemoveDupSecutiveItems()
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUSame as RemoveDupSecutiveItemCS: Collapse the consecutive-duplicate runs of the GIVEN item (mutating).
1 exemples exécutésexemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.RemoveDupSecutiveItem(3)
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUThe position(s) of the nth smallest item.
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FindNthSmallest(2) )
#--> [ 2, 4 ]
composé à partir de la signature, exécuté pour cette page aucune extensionFindNthLargest
The position(s) of the nth largest item.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FindNthLargest(2) )
#--> [ 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensioncontiguous runs of strings / lists as [start,end] sections
1 exemples exécutésaussi écrite: FindStringsZZexemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
? @@( o1.FindStringsAsSections() )
#--> [ [ 1, 4 ] ]
composé à partir de la signature, exécuté pour cette page aucune extensionThe [start, end] runs of consecutive LIST items.
1 exemples exécutésaussi écrite: FindListsZZaucune extensionFindObjectsAsSections
The [start, end] runs of consecutive OBJECT items.aucune extension
first position type-sensitively equal to pItem ("2" != 2 != [2])
1 exemples exécutés? StzListQ([ 3, 2, 5 ]).FindFirstOccurrence("2")
? StzListQ([ 3, 2, 5 ]).FindFirstOccurrence([ 2 ])
? StzListQ([ 3, 2, 5 ]).FindFirstOccurrence( 2 )
? Q(2).IsOneOfThese([ 3, 2, 5 ])
? Q("2").IsOneOfThese([ 3, 2, 5 ])
? Q([2]).IsOneOfThese([ 3, 2, 5 ])
#--> 0
#--> 0
#--> 2
#--> 1
#--> ...test de la bibliothèqueQCSXTZZZIBWUFindItemsOtherThan
Same as FindAllExcept: positions of items NOT in paItems
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FindItemsOtherThan([ 2, 3 ]) )
#--> [ 1, 3, 5 ]
composé à partir de la signature, exécuté pour cette page aucune extensionSame as RemoveAllCS: RemoveAllCS: remove all occurrences of an item
2 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.Remove(3)
? @@( o1.Content() )
#--> [ 5, 8, 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUWFManyRemoveTheseItems
(sans commentaire dans la source : le nom se lit comme une phrase) remove these itemsdans la section remove family (occurrences / except / runs / dups)exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.RemoveTheseItems([ 2, 3 ])
? @@( o1.Content() )
#--> [ 5, 8, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extension RemoveItemsOtherThan
Same as RemoveAllExcept: keep only items that are members of paItems (drop everything else)
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.RemoveItemsOtherThan([ 2, 3 ])
? @@( o1.Content() )
#--> [ 3, 3 ]
composé à partir de la signature, exécuté pour cette page aucune extensionremove the panOcc-th occurrences of pItem (by occurrence index)
1 exemples exécutéso1 = new stzList([ "a", "b", "a", "a", "c", "d", "a" ])
o1.RemoveOccurrences([ 4, 1, 3 ], "a")
? o1.Content()
#--> b
#--> a
#--> c
#--> d
test de la bibliothèqueaucune extension(sans commentaire dans la source : le nom se lit comme une phrase) remove any item from start 1 exemples exécutésdans la section remove family (occurrences / except / runs / dups)o1 = new stzList([ "🔻", "🔻", "1", "2", "3", "🔻", "🔻" ])
o1.RemoveAnyItemFromStart("🔻")
? @@( o1.Content() )
o1.RemoveAnyItemFromEnd("🔻")
? @@( o1.Content() )
#--> [ "1", "2", "3", "🔻", "🔻" ]
#--> [ "1", "2", "3" ]test de la bibliothèqueaucune extension (sans commentaire dans la source : le nom se lit comme une phrase) remove any item from end 1 exemples exécutésdans la section remove family (occurrences / except / runs / dups)o1 = new stzList([ "🔻", "🔻", "1", "2", "3", "🔻", "🔻" ])
o1.RemoveAnyItemFromStart("🔻")
? @@( o1.Content() )
o1.RemoveAnyItemFromEnd("🔻")
? @@( o1.Content() )
#--> [ "1", "2", "3", "🔻", "🔻" ]
#--> [ "1", "2", "3" ]test de la bibliothèqueaucune extension (sans commentaire dans la source : le nom se lit comme une phrase) remove non duplicates 1 exemples exécutésdans la section remove family (occurrences / except / runs / dups)o1 = new stzList([ "A", "B", "2", "A", "A", "B", 2, 2, "." ])
o1.RemoveNonDuplicates()
# removenonduplicates example 1
? @@( o1.Content() )
#--> [ "A", "B", "A", "A", "B", 2, 2 ]
test de la bibliothèqueaucune extension remove the n-th occurrence of pItem
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.RemoveThisNthItem(2, 3)
? @@( o1.Content() )
#--> [ 5, 3, 8, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionSame as RemoveThisNthItem: remove the n-th occurrence of pItem
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.RemoveNth(2, 3)
? @@( o1.Content() )
#--> [ 5, 3, 8, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionRemoveNextNthOccurrence
occurrence removal relative to a position (Next strictly after, -- Previous strictly before; the Nth index is forward into that run)
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.RemoveNextNthOccurrence(2, 3, 5)
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page aucune extensionRemoveNextNthOccurrences
(sans commentaire dans la source : le nom se lit comme une phrase) remove next nth occurrencesdans la section remove family (occurrences / except / runs / dups)exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.RemoveNextNthOccurrences([ 2, 3 ], 3, 2)
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page aucune extension NextNthOccurrencesRemoved
(sans commentaire dans la source : le nom se lit comme une phrase) next nth occurrences removeddans la section remove family (occurrences / except / runs / dups)exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
? @@( o1.NextNthOccurrencesRemoved([ 2, 3 ], 3, 2) )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page aucune extension RemovePreviousNthOccurrence
(sans commentaire dans la source : le nom se lit comme une phrase) remove previous nth occurrencedans la section remove family (occurrences / except / runs / dups)exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.RemovePreviousNthOccurrence(2, 3, 5)
? @@( o1.Content() )
#--> [ 5, 3, 8, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extension RemovePreviousNthOccurrences
(sans commentaire dans la source : le nom se lit comme une phrase) remove previous nth occurrencesdans la section remove family (occurrences / except / runs / dups)exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.RemovePreviousNthOccurrences([ 2, 3 ], 3, 2)
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page aucune extension PreviousNthOccurrencesRemoved
(sans commentaire dans la source : le nom se lit comme une phrase) previous nth occurrences removeddans la section remove family (occurrences / except / runs / dups)exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
? @@( o1.PreviousNthOccurrencesRemoved([ 2, 3 ], 3, 2) )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page aucune extension remove the first occurrence of pItem
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.RemoveFirst(3)
? @@( o1.Content() )
#--> [ 5, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionSame as RemoveFirst: remove the first occurrence of pItem
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.RemoveThisFirstItem(3)
? @@( o1.Content() )
#--> [ 5, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUremove the item at position n; accepts :First / :Last
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.RemoveNthItem(2)
? @@( o1.Content() )
#--> [ 5, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extension(sans commentaire dans la source : le nom se lit comme une phrase) contains no 3 exemples exécutésdans la section contains predicates (no / both / each / only-one / by-type)o1 = new stzList([ "A", "B", "C" ])
? o1.ContainsNo("v")
? o1.ContainsNoObjects()
#--> 1
#--> 1test de la bibliothèqueaucune extension ContainsBoth
(sans commentaire dans la source : le nom se lit comme une phrase) contains bothdans la section contains predicates (no / both / each / only-one / by-type)exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.ContainsBoth(3, 4)
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extension TRUE iff exactly ONE distinct member of paItems is present
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.ContainsOnlyOneOfThese([ 2, 3 ])
#--> 1
composé à partir de la signature, exécuté pour cette page aucune extension(sans commentaire dans la source : le nom se lit comme une phrase) contains no objects 2 exemples exécutésdans la section contains predicates (no / both / each / only-one / by-type)o1 = new stzList([ "A", "B", "C" ])
? o1.ContainsNo("v")
? o1.ContainsNoObjects()
#--> 1
#--> 1test de la bibliothèqueaucune extension ContainsObjects
(sans commentaire dans la source : le nom se lit comme une phrase) contains objectsdans la section contains predicates (no / both / each / only-one / by-type)exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.ContainsObjects()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extension ContainsOneOrMoreLists
(sans commentaire dans la source : le nom se lit comme une phrase) contains one or more listsaussi écrite: ContainsListsdans la section contains predicates (no / both / each / only-one / by-type)exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.ContainsOneOrMoreLists()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extension ContainsNoNumbers
(sans commentaire dans la source : le nom se lit comme une phrase) contains no numbersdans la section contains predicates (no / both / each / only-one / by-type)exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.ContainsNoNumbers()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extension ContainsNoStrings
(sans commentaire dans la source : le nom se lit comme une phrase) contains no stringsdans la section contains predicates (no / both / each / only-one / by-type)exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.ContainsNoStrings()
#--> 1
composé à partir de la signature, exécuté pour cette page aucune extension (sans commentaire dans la source : le nom se lit comme une phrase) is single 1 exemples exécutésdans la section singles (1-elem lists) and pairs (2-elem lists)exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsSingle()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extension (sans commentaire dans la source : le nom se lit comme une phrase) find singles 1 exemples exécutésdans la section singles (1-elem lists) and pairs (2-elem lists)aucune extension (sans commentaire dans la source : le nom se lit comme une phrase) singles 1 exemples exécutésdans la section singles (1-elem lists) and pairs (2-elem lists)QCSXTZZZIBWU (sans commentaire dans la source : le nom se lit comme une phrase) contains singles 1 exemples exécutésdans la section singles (1-elem lists) and pairs (2-elem lists)exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.ContainsSingles()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extension (sans commentaire dans la source : le nom se lit comme une phrase) singlified 1 exemples exécutésdans la section singles (1-elem lists) and pairs (2-elem lists)exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.Singlified() )
#--> [ [ 5 ], [ 3 ], [ 8 ], [ 3 ], [ 1 ] ]
composé à partir de la signature, exécuté pour cette page aucune extension FindPairs
(sans commentaire dans la source : le nom se lit comme une phrase) find pairsdans la section singles (1-elem lists) and pairs (2-elem lists)aucune extension
ItemsThatArePairs
(sans commentaire dans la source : le nom se lit comme une phrase) items that are pairsdans la section singles (1-elem lists) and pairs (2-elem lists)aucune extension
ContainsPairs
(sans commentaire dans la source : le nom se lit comme une phrase) contains pairsdans la section singles (1-elem lists) and pairs (2-elem lists)exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.ContainsPairs()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extension Pairified
(sans commentaire dans la source : le nom se lit comme une phrase) pairifieddans la section singles (1-elem lists) and pairs (2-elem lists)exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.Pairified() )
#--> [ [ 5, "" ], [ 3, "" ], [ 8, "" ], [ 3, "" ], [ 1, "" ] ]
composé à partir de la signature, exécuté pour cette page aucune extension [[item,[positions]],...] for each given item (includes empties)
2 exemples exécutéso1 = new stzList([ :one, :two, :one, :three, :one, :four ])
? o1.FindMany([ :one, :five ])
? @@(o1.TheseItemsZ([ :one, :five ]))
#--> 1
#--> 3
#--> 5
#--> [ [ "one", [ 1, 3, 5 ] ], [ "five", [ ] ] ]
test de la bibliothèqueaucune extensiondistinct items by occurrence count (>= n by default)
2 exemples exécutésaussi écrite: ItemsOccuringNTimes · ItemsOccurringNTimesOrMoreexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.ItemsOccurringNTimes(2) )
#--> [ 3 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU(sans commentaire dans la source : le nom se lit comme une phrase) items occurring exactly n times 1 exemples exécutésaussi écrite: ItemsOccuringExactlyNTimesdans la section items / these-items familyexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.ItemsOccurringExactlyNTimes(2) )
#--> [ 3 ]
composé à partir de la signature, exécuté pour cette page aucune extension (sans commentaire dans la source : le nom se lit comme une phrase) items occurring less than n times 1 exemples exécutésdans la section items / these-items familyexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.ItemsOccurringLessThanNTimes(2) )
#--> [ 5, 8, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extension (sans commentaire dans la source : le nom se lit comme une phrase) items occurring n times or less 1 exemples exécutésdans la section items / these-items familyexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.ItemsOccurringNTimesOrLess(2) )
#--> [ 5, 3, 8, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extension ItemsOccurringMoreThanNTimes
(sans commentaire dans la source : le nom se lit comme une phrase) items occurring more than n timesdans la section items / these-items familyaucune extension
(sans commentaire dans la source : le nom se lit comme une phrase) items have same type 1 exemples exécutésaussi écrite: AllItemsHaveSameTypedans la section items / these-items familyoList = new stzList([ [1],[1],[1],[1] ])
? oList.ItemsHaveSameType()
? oList.ItemsAreEmptyLists()
#--> 1
#--> 0
test de la bibliothèqueaucune extension (sans commentaire dans la source : le nom se lit comme une phrase) items are empty lists 1 exemples exécutésdans la section items / these-items familyoList = new stzList([ [1],[1],[1],[1] ])
? oList.ItemsHaveSameType()
? oList.ItemsAreEmptyLists()
#--> 1
#--> 0
test de la bibliothèqueaucune extension IsMadeOfItem -> every item equals the given one.
2 exemples exécutésaussi écrite: IsMadeOfItem · IsMadeOfThisItemdans la section items / these-items familyo1 = new stzList([ "a", "a", "A", "A", "a", "A" ])
? o1.ItemsAreEqualTo("a")
? o1.ItemsAreEqualToCS("a", FALSE)
? o1.ContainsOnly("a")
? o1.ContainsOnlyCS("A", FALSE)
#--> 0
#--> 1
#--> 0
#--> 1test de la bibliothèqueQCSXTZZZIBWUItemsHaveXT
all items satisfy a W-condition
aussi écrite: AllItemsHaveXTexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.ItemsHaveXT("@item > 3")
#--> 0composé à partir de la signature, exécuté pour cette page aucune extensioninsert after/before many positions / by w-condition
1 exemples exécutéso1 = new stzList([ "a", "b", "c", "d", "e" ])
o1.InsertAfterManyPositions([ 2, 4, 5 ], "*")
? @@( o1.Content() )
#--> [ "a", "b", "*", "c", "d", "*", "e", "*" ]
test de la bibliothèqueaucune extensioninsert after/before many positions / by w-condition
1 exemples exécutéso1 = new stzList([ "a", "b", "c", "d", "e" ])
o1.InsertBeforeManyPositions([ 2, 4, 5 ], "*")
? @@( o1.Content() )
#--> [ "a", "*", "b", "c", "*", "d", "*", "e" ]
test de la bibliothèqueaucune extensionNumberOfUniqueItemsW
How many unique items satisfy the given W condition.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfUniqueItemsW("@item > 3")
#--> 2composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUFSplitXT
SplitAt already defined in coreaucune extension
SplittedXT
Split with the given item-or-options param; the parts, as data.aucune extension
SplitAsSectionsXT
Split with the given item-or-options param; the [start, end] sections of the parts.aucune extension
SplittedAsSectionsXT
The [start, end] sections of the parts, as data (XT options form).aucune extension
SplitCS
Split the list at the given item (or position): the parts.aucune extension
SplitAtPositions
SplitAtPositions MUTATES the content into the list of parts; the items AT the positions are DROPPED (split "at", not "before").
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.SplitAtPositions([ 2, 3 ]) )
#--> [ [ 5 ], [ 3, 1 ] ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUSplittedAtPositions
The parts of the list split at the given positions.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.SplittedAtPositions([ 2, 3 ]) )
#--> [ [ 5 ], [ 3 ], [ 8, 3, 1 ] ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUSplitAtPosition
Split the list at the given position: the parts.
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.SplitAtPosition(2)
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUSplittedAtPosition
The parts of the list split at the given position.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.SplittedAtPosition(2) )
#--> [ [ 5 ], [ 3, 8, 3, 1 ] ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUSplittedAt
The parts of the list split at each occurrence of the given item (the item itself is not kept in the parts).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.SplittedAt(3) )
#--> [ [ 5, 3 ], [ 8, 3, 1 ] ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUSplitBeforePosition
Split the list before the given position: the parts.
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.SplitBeforePosition(2)
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page aucune extensionSplittedBeforePosition
The parts of the list split before the given position.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.SplittedBeforePosition(2) )
#--> [ [ 5 ], [ 3, 8, 3, 1 ] ]
composé à partir de la signature, exécuté pour cette page aucune extensionSplitBefore
Split the list before each occurrence of the item: each occurrence starts a new part.
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.SplitBefore(3)
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUSplitAfterPosition
Split the list after the given position: the parts.
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.SplitAfterPosition(2)
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page aucune extensionSplittedAfterPosition
The parts of the list split after the given position.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.SplittedAfterPosition(2) )
#--> [ [ 5, 3 ], [ 8, 3, 1 ] ]
composé à partir de la signature, exécuté pour cette page aucune extensionSplitAfter
Split the list after each occurrence of the item: each occurrence closes its part.
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.SplitAfter(3)
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUSplit the list into n (near-)equal parts.
1 exemples exécutésaussi nommée: divide chunk break into parts portionso1 = new stzSplitter(3)
? @@( o1.SplitToNParts(0) )
o1 = new stzList([ "A", "B", "C" ])
? @@( o1.SplittedToNParts(3) )
#--> [ ]
#--> [ [ "A" ], [ "B" ], [ "C" ] ]
test de la bibliothèqueQCSXTZZZIBWUThe n (near-)equal parts of the list, as data.
3 exemples exécutéso1 = new stzList(["one", "two", "three", "four", "five", "six" ])
? @@( o1.SplittedToPartsOfNItems(3) ) + NL
? @@( o1.SplittedToNParts(3) )
#--> [ [ "one", "two", "three" ], [ "four", "five", "six" ] ]
#--> [ [ "one", "two" ], [ "three", "four" ], [ "five", "six" ] ]
test de la bibliothèqueaucune extensionSplitToPartsOfNItems
Split the list into parts of n items each.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.SplitToPartsOfNItems(2)
? @@( o1.Content() )
#--> [ [ 5, 3 ], [ 8, 3 ], [ 1 ] ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUSplitToPartsOf
Same as SplitToPartsOfNItems: Split the list into parts of n items each.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.SplitToPartsOf(2)
? @@( o1.Content() )
#--> [ [ 5, 3 ], [ 8, 3 ], [ 1 ] ]
composé à partir de la signature, exécuté pour cette page aucune extensionsplitting to parts of n items
2 exemples exécutésaussi écrite: SplittedToPartsOfo1 = new stzList(["one", "two", "three", "four", "five", "six" ])
? @@( o1.SplittedToPartsOfNItems(3) ) + NL
? @@( o1.SplittedToNParts(3) )
#--> [ [ "one", "two", "three" ], [ "four", "five", "six" ] ]
#--> [ [ "one", "two" ], [ "three", "four" ], [ "five", "six" ] ]
test de la bibliothèqueQCSXTZZZIBWUSplitAtPacer
splitting using a given pacer
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.SplitAtPacer(2, 5)
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page aucune extensionSplittedAtPacer
splitting using a given pacer
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.SplittedAtPacer(2, 5) )
#--> [ [ 5, 3, 8, 3 ], [ 1 ] ]
composé à partir de la signature, exécuté pour cette page aucune extensionSplitW
SplitW MUTATES the content into the list of parts (the matching items are dropped; SplittedW is the passive twin).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.SplitW("@item > 3") )
#--> [ [ 3 ], [ 3, 1 ] ]composé à partir de la signature, exécuté pour cette page aucune extensionSplittedW
splitting using a condition
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.SplittedW("@item > 3") )
#--> [ [ 5, 3 ], [ 8, 3, 1 ] ]composé à partir de la signature, exécuté pour cette page aucune extensionHasRepeatedLeadingItems
Same as HasRepeatedLeadingItemsCS: TRUE if the list starts with a repeated run of the same item.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.HasRepeatedLeadingItems()
#--> 0
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWURepeatedLeadingItems
Same as RepeatedLeadingItemsCS: The repeated run at the START of the list, as a list.QCSXTZZZIBWU
RepeatedLeadingItem
Same as RepeatedLeadingItemCS: The item repeated at the start of the list.QCSXTZZZIBWU
NumberOfRepeatedLeadingItems
Same as NumberOfRepeatedLeadingItemsCS: How long the repeated run at the start of the list is.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfRepeatedLeadingItems()
#--> 0
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUHasRepeatedTrailingItems
Same as HasRepeatedTrailingItemsCS: TRUE if the list ends with a repeated run of the same item.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.HasRepeatedTrailingItems()
#--> 0
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWURepeatedTrailingItems
Same as RepeatedTrailingItemsCS: The repeated run at the END of the list, as a list.QCSXTZZZIBWU
RepeatedTrailingItem
Same as RepeatedTrailingItemCS: The item repeated at the end of the list.QCSXTZZZIBWU
NumberOfRepeatedTrailingItems
Same as NumberOfRepeatedTrailingItemsCS: How long the repeated run at the end of the list is.QCSXTZZZIBWU
Pop
Remove the LAST item and return it.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.Pop()
#--> 1
composé à partir de la signature, exécuté pour cette page aucune extensionPopFirst
Remove the FIRST item and return it.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.PopFirst()
#--> 5
composé à partir de la signature, exécuté pour cette page aucune extensionTake
Remove the first n items and return them.
aussi nommée: pop first items grab draw from the frontexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.Take(2) )
#--> [ 5, 3 ]
composé à partir de la signature, exécuté pour cette page aucune extensionTakeLast
Remove the last n items and return them.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.TakeLast(2) )
#--> [ 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionSame as TrimCS: Remove the runs of EMPTY items (0, empty string, empty sublist, false-object -- the monolith semantics) from BOTH ends; a fully-empty list keeps one item (mutating).
1 exemples exécutéso1 = new stzList([ 0, "", [], 1, 2, 3, [], NULL, 0 ])
o1.Trim()
? @@( o1.Content() )
#--> [ 1, 2, 3 ]
test de la bibliothèqueQCSXTZZZIBWUTrimmed
Same as TrimmedCS: A copy with the empty boundary runs trimmed; the original is unchanged.
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
? @@( o1.Trimmed() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUSame as TrimLeftCS: Remove the leading run of empty items (0, empty string, empty sublist, false-object) -- mutating.
1 exemples exécutéso1 = new stzList([ 0, "", [], 1, 2, 3, [], NULL, 0 ])
o1.TrimLeft()
o1.TrimRight()
? @@( o1.Content() )
#--> [ 1, 2, 3 ]
test de la bibliothèqueQCSXTZZZIBWUTrimmedLeft
Same as TrimmedCS: A copy with the empty boundary runs trimmed; the original is unchanged.
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
? @@( o1.TrimmedLeft() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page aucune extensionSame as TrimRightCS: Remove the trailing run of empty items (mutating).
1 exemples exécutéso1 = new stzList([ 0, "", [], 1, 2, 3, [], NULL, 0 ])
o1.TrimLeft()
o1.TrimRight()
? @@( o1.Content() )
#--> [ 1, 2, 3 ]
test de la bibliothèqueQCSXTZZZIBWUTrimmedRight
A copy with the trailing empty run trimmed; the original is unchanged.
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
? @@( o1.TrimmedRight() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page aucune extensionTrimItem
Same as TrimItemCS: Remove the runs of the given item from BOTH ends (mutating).
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.TrimItem(3)
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUTrimItemFromLeft
Same as TrimItemFromLeftCS: Remove the run of the given item from the START (mutating).
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.TrimItemFromLeft(3)
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUTrimItemFromRight
Same as TrimItemFromRightCS: Remove the run of the given item from the END (mutating).
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.TrimItemFromRight(3)
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUCompact
Remove the blank strings (whitespace-only) and empty sublists throughout the list (mutating).
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.Compact()
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page aucune extensionCompacted
compact (remove all empty items)
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
? @@( o1.Compacted() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page aucune extensionSqueeze
Collapse each consecutive run of blank strings to a single one (mutating).aucune extension
Squeezed
squeeze (remove consecutive duplicate empty items)
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
? @@( o1.Squeezed() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page aucune extensionStripNulls
Remove the null items from the list (mutating).
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.StripNulls()
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page aucune extensionNullsStripped
strip nulls (remove nulls and empty strings)
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
? @@( o1.NullsStripped() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page aucune extensionTrimToSize
Cut the list down to its first n items (mutating).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.TrimToSize(2)
? @@( o1.Content() )
#--> [ 5, 3 ]
composé à partir de la signature, exécuté pour cette page aucune extensionTrimmedToSize
trim to size (keep only first n items)
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.TrimmedToSize(2) )
#--> [ 5, 3 ]
composé à partir de la signature, exécuté pour cette page aucune extensionSame as UniqueItemsCS: The unique items of the list, in first-seen order.
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.UniqueItems() )
#--> [ 5, 3, 8, 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUWFRandomItem
One item picked at random.QCSXTZZZIBWUExcept
NRandomItems
n items picked at random.aussi écrite: rndNItems · RandomNItemsaucune extension
rndItems
The items of the list, in random order.aussi écrite: RandomItemsaucune extension
rndRemoveNItems
Remove n randomly-chosen items (mutating).aussi écrite: RandomRemoveNItemsQCSXTZZZIBWU
rndRemoveItems
Remove randomly-chosen items (mutating).aussi écrite: RandomRemoveItemsQCSXTZZZIBWU
ItemsBetween
items between two positions
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.ItemsBetween(2, 5) )
#--> [ 3, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionEveryNthItem
Every nth item of the list (n, 2n, 3n, ...).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.EveryNthItem(2) )
#--> [ 3, 3 ]
composé à partir de la signature, exécuté pour cette page aucune extensionHead
The first n items of the list.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.Head(2) )
#--> [ 5, 3 ]
composé à partir de la signature, exécuté pour cette page aucune extensionTail
The last n items of the list.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.Tail(2) )
#--> [ 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionOnlyStrings
Only the STRING items of the list.
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
? @@( o1.OnlyStrings() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUOnly the NUMBER items of the list.
1 exemples exécutéso1 = new stzList( 1:7 + "str1" + "str2" + [ "+", "-" ] )
# onlynumbers example 1
? @@( o1.OnlyNumbers() )
#--> [ 1, 2, 3, 4, 5, 6, 7 ]
test de la bibliothèqueQCSXTZZZIBWUOnlyLists
Only the LIST items of the list.QCSXTZZZIBWU
OnlyChars
Only the CHAR items of the list.QCSXTZZZIBWU
Pairs
Pairs(): the items of the list that are themselves pairs (2-element -- lists). For the sliding/consecutive grouping use Pairify()/ToPairs().QCSXTZZZIBWU
Pairify
Pairify()/ToPairs(): group the list into consecutive (sliding) pairs, -- e.g. [1,2,3,4] -> [[1,2],[2,3],[3,4]].
aussi écrite: ToPairsexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.Pairify() )
#--> [ [ 5, 3 ], [ 3, 8 ], [ 8, 3 ], [ 3, 1 ] ]
composé à partir de la signature, exécuté pour cette page aucune extensionTriplets
pairs / triplets / windows
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.Triplets() )
#--> [ [ 5, 3, 8 ], [ 3, 8, 3 ], [ 8, 3, 1 ] ]
composé à partir de la signature, exécuté pour cette page aucune extensionSlidingWindow
pairs / triplets / windows
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.SlidingWindow(2) )
#--> [ [ 5, 3 ], [ 3, 8 ], [ 8, 3 ], [ 3, 1 ] ]
composé à partir de la signature, exécuté pour cette page aucune extensionAddWalker
AddWalker: register a NAMED walker over this list. The 4 args may be -- given positionally (name, start, end, step) OR as named pairs / -- function-style helpers in any order: -- AddWalker(:Named=:W, :StartingAt=1, :EndingAt=10, :NStep=2) -- AddWalker(Named(:W), StartingAt(1), EndingAt(10), NStepsATime(2)) -- AddWalker(:W, 6, 10, [:NStepsATime, 3]) -- AddWalker(Named(:W), StartingAt(1), EndingAt(10), TakingNEqualMoves(3)) -- The walker is stored on THIS list (@aWalkers) and queried later with -- WalkedItems/WalkedPositions/... ( :By = <name> ).aucune extension
Walkers
The named walkers attached to this list.aucune extension
WalkedPositions
The positions visited by the given walker.aucune extension
WalkedItems
The items visited by the given walker.aucune extension
NumberOfWalkedItems
How many items the given walker visited.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfWalkedItems(TRUE)
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionWalkedLastPosition
The last position the given walker reached.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.WalkedLastPosition(TRUE)
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionWalkedLastItem
The item at the walker's last position.aucune extension
YieldWhileWalking
YieldWhileWalking: project each item the named walker visits through an -- engine W-DSL yielder (e.g. '@item * 2', 'Q(@item).Upper()'). Eval-free -- and engine-backed (stz_list_map_expr). For arbitrary Haro logic -- (ring_type, upper, StringContains, ...) use YieldWhileWalkingWF.QCSXTZZZIBWUWF
WalkNForward
walking the list n items forward
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.WalkNForward(2) )
#--> [ 1, 3, 5 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUWalkNBackward
walking the list n items backward
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.WalkNBackward(2) )
#--> [ 5, 3, 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUWalkBetween
Same as WalkBetweenIB: Walk the inclusive range n1..n2 (descending if n1 > n2). The IB form takes a return type (:WalkedPositions default / :WalkedItems).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.WalkBetween(2, 5) )
#--> [ 2, 3, 4, 5 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUWalkForthAndBack
Same as WalkForthAndBackXT: Walk forward 1..n then back n-1..1.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.WalkForthAndBack() )
#--> [ 1, 2, 3, 4, 5, 4, 3, 2, 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUWalk forward up to and including the first occurrence of pItem.
1 exemples exécutéso1 = new stzList([ "A", "B", "C", "D", "E", "F" ])
? @@( o1.WalkUntilItem("D") )
#--> [ 1, 2, 3, 4 ]test de la bibliothèqueaucune extensionWalkW
Walk the list collecting where the W condition holds.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.WalkW("@item > 3") )
#--> [ 1, 3 ]composé à partir de la signature, exécuté pour cette page aucune extensionWalkUntil
Walk the items UNTIL the given condition holds.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.WalkUntil("@item > 3") )
#--> [ 1 ]composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUWalkWhile
Walk the items WHILE the given condition holds.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.WalkWhile("@item > 3") )
#--> [ 1 ]composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUWalkZigZag
walking in zigzag pattern
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.WalkZigZag(2) )
#--> [ 1, 3, 5, 5, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionWalkEveryNth
walking every nth position
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.WalkEveryNth(2) )
#--> [ 2, 4 ]
composé à partir de la signature, exécuté pour cette page aucune extensionWalkFromTo
PositionsWhere already defined above as alias of FindAllItemsW
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.WalkFromTo(2, 5) )
#--> [ 2, 3, 4, 5 ]
composé à partir de la signature, exécuté pour cette page aucune extensionWalkSkipping
walk skipping n items
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.WalkSkipping(2) )
#--> [ 1, 4 ]
composé à partir de la signature, exécuté pour cette page aucune extensionWalkAccumulating
walk with custom accumulator
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.WalkAccumulating("@item > 3") )
#--> [ 1, 0, 1, 0, 0 ]composé à partir de la signature, exécuté pour cette page aucune extensionWalkWhere
Walk the list collecting where the condition holds.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.WalkWhere("@item > 3") )
#--> [ 1, 3 ]composé à partir de la signature, exécuté pour cette page aucune extensionWalkWhen
The When-walk over the items (see stzListWalker), driven by the given condition.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.WalkWhen("@item > 3") )
#--> [ 1, 2, 3, 4, 5 ]composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUMove / Swap accept the named-param spellings Move(:ItemFromPosition = a, :To = b), Swap(:Positions = a, :And = b), and the value form Swap(item1, :And = item2).
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.Move(2, 5)
? @@( o1.Content() )
#--> [ 5, 8, 3, 1, 3 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUManyExchange the items at the two given positions (mutating).
2 exemples exécutésaussi nommée: exchange swap positions interchange two itemsexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.Swap(2, 5)
? @@( o1.Content() )
#--> [ 5, 1, 8, 3, 3 ]
composé à partir de la signature, exécuté pour cette page aucune extensionMoveToStart
Move the item at position n to the START of the list (mutating).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.MoveToStart(2)
? @@( o1.Content() )
#--> [ 3, 5, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionMoveToEnd
Move the item at position n to the END of the list (mutating).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.MoveToEnd(2)
? @@( o1.Content() )
#--> [ 5, 8, 3, 1, 3 ]
composé à partir de la signature, exécuté pour cette page aucune extensionSwapFirstAndLast
swap first and last
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.SwapFirstAndLast()
? @@( o1.Content() )
#--> [ 1, 3, 8, 3, 5 ]
composé à partir de la signature, exécuté pour cette page aucune extensionRotateLeft
rotate -- circular shift
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.RotateLeft(2)
? @@( o1.Content() )
#--> [ 8, 3, 1, 5, 3 ]
composé à partir de la signature, exécuté pour cette page aucune extensionRotatedLeft
rotate -- circular shift
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.RotatedLeft(2) )
#--> [ 8, 3, 1, 5, 3 ]
composé à partir de la signature, exécuté pour cette page aucune extensionRotateRight
rotate -- circular shift
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.RotateRight(2)
? @@( o1.Content() )
#--> [ 3, 1, 5, 3, 8 ]
composé à partir de la signature, exécuté pour cette page aucune extensionRotatedRight
rotate -- circular shift
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.RotatedRight(2) )
#--> [ 3, 1, 5, 3, 8 ]
composé à partir de la signature, exécuté pour cette page aucune extensionShuffle
shuffle -- random reorderaucune extension
Shuffled
shuffle -- random reorderaussi nommée: randomize mix scramble random order jumbleaucune extension
MoveItemToStart
move item by value
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.MoveItemToStart(3)
? @@( o1.Content() )
#--> [ 3, 5, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionMoveItemToEnd
move item by value
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.MoveItemToEnd(3)
? @@( o1.Content() )
#--> [ 5, 8, 3, 1, 3 ]
composé à partir de la signature, exécuté pour cette page aucune extensionSections
getting many sections (slices)aucune extension
FindAntiSection
finding the anti-section(s) of given section(s)
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FindAntiSection(2, 5) )
#--> [ [ 1, 1 ] ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUAntiSection
finding the anti-section(s) of given section(s)QCSXTZZZIBWU
The [start, end] sections OUTSIDE the given sections.
2 exemples exécutéso1 = new stzList("A":"J")
? @@( o1.FindAntiSections( :Of = [ [3, 5], [7, 8] ] ) )
? @@( o1.AntiSections(:Of = [ [3, 5], [7, 8] ] ) )
#--> [ [ 1, 2 ], [ 6, 6 ], [ 9, 10 ] ]
#--> [ [ "A", "B" ], [ "F" ], [ "I", "J" ] ]test de la bibliothèqueQCSXTZZZIBWUThe items lying outside the given sections.
1 exemples exécutéso1 = new stzList("A":"J")
? @@( o1.FindAntiSections( :Of = [ [3, 5], [7, 8] ] ) )
? @@( o1.AntiSections(:Of = [ [3, 5], [7, 8] ] ) )
#--> [ [ 1, 2 ], [ 6, 6 ], [ 9, 10 ] ]
#--> [ [ "A", "B" ], [ "F" ], [ "I", "J" ] ]test de la bibliothèqueQCSXTZZZIBWURanges
getting many ranges of the listaucune extension
AntiRanges
getting the anti-ranges of a given set of sectionsQCSXTZZZIBWU
RangesAndAntiRanges
getting the anti-ranges of a given set of sectionsQCSXTZZZIBWU
Classify
Group the items into classes of equal values.
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
? @@( o1.Classify() )
#--> [ [ "tea", [ 1, 3 ] ], [ "rice", [ 2 ] ], [ "fish", [ 4 ] ] ]
composé à partir de la signature, exécuté pour cette page aucune extensionClassified
The items grouped into classes of equal values, as data.
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
? @@( o1.Classified() )
#--> [ [ "tea", [ 1, 3 ] ], [ "rice", [ 2 ] ], [ "fish", [ 4 ] ] ]
composé à partir de la signature, exécuté pour cette page aucune extensionClasses
The distinct classes (values) of the list.
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
? @@( o1.Classes() )
#--> [ "tea", "rice", "fish" ]
composé à partir de la signature, exécuté pour cette page aucune extensionClassesSF
Short-form classification for lists of (contiguous) number-lists: each list-class key is rendered as "min:max" (e.g. "1:5").aucune extension
ClassifySF
The classification of the items, in short form.aussi écrite: ClassifiedSFaucune extension
KlassSF
The members of the given class, short-form access.aucune extension
ClassifyBy
Group the items into classes by the given expression.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.ClassifyBy("@item > 3") )
#--> [ [ "true", [ 1, 3 ] ], [ "false", [ 2, 4, 5 ] ] ]composé à partir de la signature, exécuté pour cette page aucune extensionNumberOfClasses
How many distinct classes the items form.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfClasses()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionFrequencies
frequency of each item
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.Frequencies() )
#--> [ [ "5", 1 ], [ "3", 2 ], [ "8", 1 ], [ "1", 1 ] ]
composé à partir de la signature, exécuté pour cette page aucune extensionMostFrequent
most / least frequent
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.MostFrequent()
#--> 3
composé à partir de la signature, exécuté pour cette page aucune extensionLeastFrequent
most / least frequent
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.LeastFrequent()
#--> 5
composé à partir de la signature, exécuté pour cette page aucune extensionGroupBy
Group the items by the given expression.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.GroupBy("@item > 3") )
#--> [ [ "true", [ 1, 3 ] ], [ "false", [ 2, 4, 5 ] ] ]composé à partir de la signature, exécuté pour cette page aucune extensionHistogram
histogram -- frequency as pairs [value, count]
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.Histogram() )
#--> [ [ "5", 1 ], [ "3", 2 ], [ "8", 1 ], [ "1", 1 ] ]
composé à partir de la signature, exécuté pour cette page aucune extensionItemsAppearingNTimes
items appearing exactly n times
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.ItemsAppearingNTimes(2) )
#--> [ "3" ]
composé à partir de la signature, exécuté pour cette page aucune extensionItemsAppearingMoreThanNTimes
items appearing more/less than n timesaucune extension
ItemsAppearingLessThanNTimes
items appearing more/less than n times
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.ItemsAppearingLessThanNTimes(2) )
#--> [ "5", "8", "1" ]
composé à partir de la signature, exécuté pour cette page aucune extensionFrequencyOf
frequency of a specific item
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.FrequencyOf(3)
#--> 2
composé à partir de la signature, exécuté pour cette page aucune extensionMode
mode -- most common items (all ties)
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.Mode() )
#--> [ "3" ]
composé à partir de la signature, exécuté pour cette page aucune extensionBisect
bisection -- split into halves
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.Bisect() )
#--> [ [ 5, 3, 8 ], [ 3, 1 ] ]
composé à partir de la signature, exécuté pour cette page aucune extensionFirstHalf
The first floor(n/2) items of the list.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FirstHalf() )
#--> [ 5, 3 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUSecondHalf
The items from floor(n/2)+1 on (the longer half when odd).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.SecondHalf() )
#--> [ 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUPartitionW
Partition the items into [satisfying, not-satisfying] by the W condition.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.PartitionW("@item > 3") )
#--> [ [ 5, 8 ], [ 3, 3, 1 ] ]composé à partir de la signature, exécuté pour cette page aucune extensionChunks
chunk -- split into groups of size n
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.Chunks(2) )
#--> [ [ 5, 3 ], [ 8, 3 ], [ 1 ] ]
composé à partir de la signature, exécuté pour cette page aucune extensionRandomPosition
getting a random position in the list
aussi écrite: APosition · AnyPosition · ARandomPositionexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.AnyPosition()
#--> 1
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUExceptRandomSection
A random [start, end] pair within the list's positions.
aussi écrite: ASection · AnySection · ARandomSectionexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.ASection() )
#--> [ 4, 4 ]
composé à partir de la signature, exécuté pour cette page aucune extensionRandomPositionGreaterThan
getting a random position greater than / less than the one providedaucune extension
RandomPositionLessThan
getting a random position greater than / less than the one providedaucune extension
RandomPositionExceptPositions
getting a random position except one / manyaucune extension
NRandomPositions
getting n random positions in the listaucune extension
RandomItemExceptPosition
getting a random item except at the given positionaucune extension
Randomize
randomizing the items positions in the listaucune extension
Randomized
randomizing the items positions in the listaucune extension
RandomiseNumbers
Same as RandomizeNumbers: randomizing the numbers existing in the listaucune extension
ShuffleNumbers
Same as RandomizeNumbers: randomizing the numbers existing in the listaucune extension
RandomiseStrings
Same as RandomizeStrings: randomizing the strings existing in the listaucune extension
ShuffleStrings
Same as RandomizeStrings: randomizing the strings existing in the listaucune extension
randomizing the items positions in the given section of the list
1 exemples exécutésaucune extensionSectionRandomized
randomizing the items positions in the given section of the listaucune extension
YieldOn
Evaluate the yielder expression over the items and return the results AT the given positions.aucune extension
YieldAtW
YieldW(pcCondition, pcYielder): the @item-syntax form of YieldW -- for items matching pcCondition, yield the value of pcYielder. Engine-backed via YieldW (no eval). YieldAtW / YieldAtW: restrict to the given positions first, then yield over those.aucune extension
Where
Same as ItemsW: ItemsW / ItemsW / ItemsWXTQ: filter the list by an evaluated Haro expression where @item is the loop variable. Returns the items for which the expression is truthy. ItemsWXTQ wraps the result in stzList for fluent chains.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.Where("@item > 3") )
#--> [ 5, 8 ]composé à partir de la signature, exécuté pour cette page aucune extensionYieldPairs
yield pairs [position, item]aucune extension
AssociateWith
Pair each item with its counterpart in the given list: [ [item, other], ... ].
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.AssociateWith([ 2, 3 ]) )
#--> [ [ 5, 2 ], [ 3, 3 ], [ 8, "" ], [ 3, "" ], [ 1, "" ] ]
composé à partir de la signature, exécuté pour cette page aucune extensionAssociatedWith
The item/counterpart pairs, as data (the passive twin of AssociateWith).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.AssociatedWith([ 2, 3 ]) )
#--> [ [ 5, 2 ], [ 3, 3 ], [ 8, "" ], [ 3, "" ], [ 1, "" ] ]
composé à partir de la signature, exécuté pour cette page aucune extensionInterleaveWith
Interleave the given list's items with this one's (mutating).aucune extension
InterleavedWith
The items interleaved with the given list's items, alternating.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.InterleavedWith([ 2, 3 ]) )
#--> [ 5, 2, 3, 3, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionZipWith
zip -- pair items from two lists
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.ZipWith([ 2, 3 ]) )
#--> [ [ 5, 2 ], [ 3, 3 ] ]
composé à partir de la signature, exécuté pour cette page aucune extensionZippedWith
zip -- pair items from two lists
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.ZippedWith([ 2, 3 ]) )
#--> [ [ 5, 2 ], [ 3, 3 ] ]
composé à partir de la signature, exécuté pour cette page aucune extensionUnzip
unzip -- split pairs into two listsaucune extension
Unzipped
unzip -- split pairs into two listsaucune extension
PrependWith
Put the given list's items in front (mutating).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.PrependWith([ 2, 3 ])
? @@( o1.Content() )
#--> [ 2, 3, 5, 3, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionPrependedWith
A copy with the given list's items put in front.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.PrependedWith([ 2, 3 ]) )
#--> [ 2, 3, 5, 3, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionDiffWith
diff -- items in this but not in other
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.DiffWith([ 2, 3 ]) )
#--> [ 5, 8, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionIntersectWith
Set-ops fetch the engine RESULT HANDLE from the merger (a number, no list copy) and unmarshal ONCE here -- one Haro method-return copy instead of two (merger return + this return).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.IntersectWith([ 2, 3 ]) )
#--> [ 3 ]
composé à partir de la signature, exécuté pour cette page aucune extensionUnionWith
Keep the UNION with the given list -- set semantics (mutating).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.UnionWith([ 2, 3 ]) )
#--> [ 5, 3, 8, 1, 2 ]
composé à partir de la signature, exécuté pour cette page aucune extensionInsert
inserting an item before a given positionaussi nommée: put at position add at place into inject at indexaucune extension
InsertBeforePosition
inserting an item before a given position
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.InsertBeforePosition(2, 3)
? @@( o1.Content() )
#--> [ 3, 5, 3, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionInsertAfterPosition
inserting an item after a given position
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.InsertAfterPosition(2, 3)
? @@( o1.Content() )
#--> [ 5, 3, 3, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionInsertBeforePositions
Insert the item before EACH of the given positions (mutating).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.InsertBeforePositions([ 2, 3 ], 3)
? @@( o1.Content() )
#--> [ 5, 3, 3, 3, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionAreBoundsOf
Same as AreBoundsOfCS: checking if the 2 items are bounds of a substringQCSXTZZZIBWU
Same as IsBoundedByCS: checking if the list is bounded by the given two items
2 exemples exécutéso1 = new stzList([ "{", "A", "B", "C", "}" ])
? o1.IsBoundedBy([ "{", "}" ]) + NL
o1.RemoveTheseBounds("{", "}")
? o1.Content()
#--> 1
#--> A
#--> B
#--> Ctest de la bibliothèqueQCSXTZZZIBWUgetting bounds of the list up to n items
1 exemples exécutéso1 = new stzList([ "{", "<", "A", "B", "C", ">", "}" ])
? @@( o1.BoundsUpToNItems(1) ) + NL
? @@( o1.BoundsUpToNItems(2) )
#--> [ "{", "}" ]
#--> [ [ "{", "<" ], [ ">", "}" ] ]test de la bibliothèqueaucune extensionBounds
getting bounds of the list up to n items
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.Bounds() )
#--> [ 5, 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWURemoveBounds
Same as RemoveBoundsCS: Remove the given bounds from the ends of the list (mutating).QCSXTZZZIBWU
BoundsRemoved
A copy of the list with the given bounds removed; the original is unchanged.aucune extension
Middle
getting the middle of the list
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.Middle() )
#--> [ 3, 8, 3 ]
composé à partir de la signature, exécuté pour cette page aucune extensionClampedTo
clamped to min/max values
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.ClampedTo(2, 5) )
#--> [ 5, 3, 5, 3, 2 ]
composé à partir de la signature, exécuté pour cette page aucune extensionClampTo
clamped to min/max valuesaucune extension
IsWithinBounds
check if position is within bounds
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsWithinBounds(2)
#--> 1
composé à partir de la signature, exécuté pour cette page aucune extensionItemsBetweenPositions
items between two positions
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.ItemsBetweenPositions(2, 5) )
#--> [ 3, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionOn any unknown predicate / type, the side fails silently and returns FALSE rather than crashing -- callers can rely on the method always returning a boolean.
2 exemples exécutésaussi écrite: ItemsAreEither · ItemsHaveEither · EachItemIsEither · EachItemIsEitherA · AllItemsHaveEither · EachItemIsEitherAno1 = new stzList([ 6, -2, 9, 5, -10 ])
? o1.EachItemIsEitherA(:Positive, :Or = :Negative, :Number)
#--> 1
test de la bibliothèqueaucune extensionSame as DeepContainsCS: stzListPaths has only 3 methods - minimal, skip for now -- DeepRemove / DeepRemoveMany: walk the nested list structure and drop any item that matches pItem / any item in paItems. Recurses into nested lists. Ported from archive line 16144; simpler implementation here -- pure structural walk, no @@()-stringification round-trip. DeepContains / DeepContainsCS: does the (nested) list contain pItem at any depth? Recursive walk. Complements DeepRemove.
2 exemples exécutésaussi écrite: DeeplyContainsexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.DeepContains(3)
#--> 1
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUManyDeep find: the index-path to every (nested) occurrence of pItem. Engine-backed via the stzDeepList wrapper (stz_list_deep_find).
2 exemples exécutésaussi écrite: DeepFindAllexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.DeepFind(3) )
#--> [ [ 2 ], [ 4 ] ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUPaths
Paths(): the index-path to every node (containers AND leaves) of the nested list, in depth-first order. Documented Softanza feature whose wiring was dropped in the split; engine-backed (stz_list_deep_paths) -- same all-node format as the reference GeneratePaths() in stzListPaths.aussi écrite: AllPathsaucune extension
Every list-valued item at any depth (depth-first pre-order). Objects are excluded (isList is false for them). E.g. ListsAtAnyLevel.
1 exemples exécutéso1 = new stzList([ "A", 1:3, NullObject(), "B", [ "C", 4:5, [ "V", 6:8, ["T", 9:12 ,"K"] ] ], "D" ])
? @@( o1.DeepLists() ) # Or ListsAtAnyLevel()
#--> [ [ 1, 2, 3 ], [ "C", [ 4, 5 ], [ "V", [ 6, 7, 8 ], [ "T", [ 9, 10, 11, 12 ], "K" ] ] ], [ 4, 5 ], [ "V", [ 6, 7, 8 ], [ "T", [ 9, 10, 11, 12 ], "K" ] ], [ 6, 7, 8 ], [ "T", [ 9, 10, 11, 12 ], "K" ], [ 9, 10, 11, 12 ] ]
test de la bibliothèqueaucune extensionListsAtAnyLevel
Every sublist at ANY nesting depth.aucune extension
FilledWith
FilledWith(pItems): replace the wrapped list with pItems, then return its content. Used for the 'start from an empty list and fill it with these items' fluent shape.QCSXTZZZIBWU
Same as DeepReplaceCS: DeepReplace: recursive replace -- walk nested lists and substitute every occurrence of pOld with pNew. The recursion enters every list sublist; non-list items are compared with Haro's = (deep-equal for lists, value-equal for scalars).
2 exemples exécutésQCSXTZZZIBWUDeeplyReplace
Same as DeepReplace: Same as DeepReplaceCS: DeepReplace: recursive replace -- walk nested lists and substitute every occurrence of pOld with pNew. The recursion enters every list sublist; non-list items are compared with Haro's = (deep-equal for lists, value-equal for scalars).aucune extension
Remove every occurrence of the item at ANY depth of the nested list (mutating).
1 exemples exécutésQCSXTZZZIBWUManyDeepRemoved
A copy with the item removed at ANY depth; the original is unchanged.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.DeepRemoved(3) )
#--> [ 5, 8, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionManyDeepRemoved
A copy with each given item removed at any depth.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.ManyDeepRemoved([ 2, 3 ]) )
#--> [ 5, 8, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionUnicodes
The Unicode codepoint of each character-string item in the list.
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
? @@( o1.Unicodes() )
#--> [ [ 116, 101, 97 ], [ 114, 105, 99, 101 ], [ 116, 101, 97 ], [ 102, 105, 115, 104 ] ]
composé à partir de la signature, exécuté pour cette page aucune extensionNames
The names of the items (char names for chars, object names for objects).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.Names() )
#--> [ "<control>", "<control>", "<control>", "<control>", "<control>" ]
composé à partir de la signature, exécuté pour cette page aucune extensionSortOnDown
SortOnDown / SortedOnDown for stzList: when the list is flat (numbers / strings), forwards to descending sort on the whole list. When the list is a list-of-lists, forwards to the stzListOfLists.SortOnDown(n) which sorts on column n.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.SortOnDown(2)
? @@( o1.Content() )
#--> [ 8, 5, 3, 3, 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUSortedOnDown
A descending-sorted copy; the original is unchanged.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.SortedOnDown(2) )
#--> [ 8, 5, 3, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionIsMadeOfNumbersOrStrings
IsMadeOf*: predicates that answer "is every item one of the listed types?". Used by the narrative tests for mixed-content guards. The Or/And variants are synonyms -- both mean 'every item is in {numbers, strings}'.
aussi écrite: IsMadeOfNumbersAndStringsexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsMadeOfNumbersOrStrings()
#--> 1
composé à partir de la signature, exécuté pour cette page aucune extensionIsMadeOfNumbers
Same as IsListOfNumbers: TRUE if the list is non-empty and every item is a number.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsMadeOfNumbers()
#--> 1
composé à partir de la signature, exécuté pour cette page aucune extensionIsMadeOfStrings
Same as IsListOfStrings: TRUE if the list is non-empty and every item is a string.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsMadeOfStrings()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionTypes(): map ring_type over the items, return the list of type tags. "STRING", "NUMBER", "LIST", "OBJECT". Used by the RepeatedInAPair narrative tests on stzObject.
3 exemples exécutés? @@( StzListQ([ "a", 1, "b", 2, "c", 3 ]).Types() ) + NL
? StzListQ([ "a", 1, "b", 2, "c", 3 ]).UniqueTypes()
#--> [ "STRING", "NUMBER", "STRING", "NUMBER", "STRING", "NUMBER" ]
#--> STRING
#--> NUMBER
test de la bibliothèqueQCSXTZZZIBWUUnique list of the item types (Types() with duplicates removed)
1 exemples exécutés? @@( StzListQ([ "a", 1, "b", 2, "c", 3 ]).Types() ) + NL
? StzListQ([ "a", 1, "b", 2, "c", 3 ]).UniqueTypes()
#--> [ "STRING", "NUMBER", "STRING", "NUMBER", "STRING", "NUMBER" ]
#--> STRING
#--> NUMBER
test de la bibliothèqueQCSXTZZZIBWUItemsAndTheirTypes: each item paired with its type name, in order. -- e.g. [ 1, "A", [2] ] -> [ [1,"NUMBER"], ["A","STRING"], [[2],"LIST"] ].
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.ItemsAndTheirTypes() )
#--> [ [ 5, "NUMBER" ], [ 3, "NUMBER" ], [ 8, "NUMBER" ], [ 3, "NUMBER" ], [ 1, "NUMBER" ] ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUTypesAndTheirSections (alias TypesZZ): group the list into maximal -- runs of one type, then collect, per distinct type, the [start,end] -- position ranges of its runs. e.g. [1,2,"A",3] -> -- [ ["NUMBER",[[1,2],[4,4]]], ["STRING",[[3,3]]] ].
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.TypesAndTheirSections() )
#--> [ [ "NUMBER", [ [ 1, 5 ] ] ] ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUThe items that are NOT numbers (engine DSL)
1 exemples exécutésaussi écrite: OnlyNonNumberso1 = new stzList([ "A", "B", 1, "C", 2, 3, "D", 4, 5 ])
? o1 - These( o1.NonNumbers() )
#--> 1
#--> 2
#--> 3
#--> 4
#--> ...
test de la bibliothèqueQCSXTZZZIBWUA copy of the list with every numeric 0 removed (non-mutating)
1 exemples exécutéso1 = new stzList([ "A", 0, 0, "B", "C", 0, "D", 0, 0 ])
? o1.ZerosRemoved()
#--> A
#--> B
#--> C
#--> D
test de la bibliothèqueQCSXTZZZIBWUThe nth item counted from the end: NthToLast(1) is the item -- before the last, NthToLast(2) the one before it, and so on.
1 exemples exécutéso1 = new stzList([ "S", "O", "F", "T", "A", "N", "Z", "A" ])
? o1.NthToLast(2)
#--> N
test de la bibliothèqueaucune extensionShrink the list down to its first n items (mutating). -- Accepts Shrink(n) or the named form Shrink(:ToPosition = n).
1 exemples exécutéso1 = new stzList([ "A", "B", "C", "D", "E" ])
o1.Shrink( :ToPosition = 3 )
# Shrink(:ToPosition = 3) keeps only the first three items
? @@( o1.Content() )
#--> [ "A", "B", "C" ]
test de la bibliothèqueQCSXTZZZIBWUSwap two items by position (mutating). Accepts SwapItems(n1, n2) -- or the named form SwapItems(:AtPositions = n1, :And = n2).
1 exemples exécutésQCSXTZZZIBWUA two-item list whose both items share a given type.
1 exemples exécutésaussi écrite: Contains2Numbers · ContainsTwoNumbersexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.BothAreNumbers()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionBothAreStrings
For a PAIR: TRUE if both items are strings.
aussi écrite: Contains2Strings · ContainsTwoStringsexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.BothAreStrings()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionBothAreLists
For a PAIR: TRUE if both items are lists.
aussi écrite: Contains2Lists · ContainsTwoListsexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.BothAreLists()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionBothAreObjects
For a PAIR: TRUE if both items are objects.
aussi écrite: Contains2Objects · ContainsTwoObjectsexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.BothAreObjects()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionIsMadeOf family: "the list consists of these items". -- IsMadeOf / IsMadeOfThese -> contains ALL the given items.
1 exemples exécutéso1 = new stzList([ "a", "b", "c", "a", "a", "b", "c" ])
? o1.IsMadeOf([ "a", "b", "c" ])
? o1.IsMadeOfSome([ "a", "b", "c", "x", "z" ])
#--> 1
#--> 1
test de la bibliothèqueaucune extensionSame as ContainsMany: Same as ContainsManyCS: ContainsManyCS: check if list contains multiple items
1 exemples exécutéso1 = new stzList([ "by", "except", "stopwords" ])
? o1.IsMadeOfThese([ :by, :except, :stopwords ])
#--> 1
test de la bibliothèqueaucune extensionTRUE if every item is of the given type.
2 exemples exécutésaussi écrite: ContainsOnlyo1 = new stzList([ "a", "a", "A", "A", "a", "A" ])
? o1.ItemsAreEqualTo("a")
? o1.ItemsAreEqualToCS("a", FALSE)
? o1.ContainsOnly("a")
? o1.ContainsOnlyCS("A", FALSE)
#--> 0
#--> 1
#--> 0
#--> 1test de la bibliothèqueQCSXTZZZIBWUContainsSome
Same as ContainsSomeCS: ContainsSome / IsMadeOfSome -> contains some (one or more) of them.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.ContainsSome([ 2, 3 ])
#--> 1
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUIsMadeOfSomeOfThese
Same as ContainsSomeCS: ContainsSome / IsMadeOfSome -> contains some (one or more) of them.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsMadeOfSomeOfThese([ 2, 3 ])
#--> 1
composé à partir de la signature, exécuté pour cette page aucune extensionIsMadeOfOneOrMoreOfThese
Same as ContainsSomeCS: ContainsSome / IsMadeOfSome -> contains some (one or more) of them.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsMadeOfOneOrMoreOfThese([ 2, 3 ])
#--> 1
composé à partir de la signature, exécuté pour cette page aucune extensionIsMadeOfOneOrMoreOf
Same as ContainsSomeCS: ContainsSome / IsMadeOfSome -> contains some (one or more) of them.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsMadeOfOneOrMoreOf([ 2, 3 ])
#--> 1
composé à partir de la signature, exécuté pour cette page aucune extensionSame as BoundsCS: Thin aliases over existing methods (restored from the monolith). Bounds of an item: for each occurrence of pItem, the up-to-N items immediately before and after it. pUpTo is a number (same count both sides) or a [before, after] pair. Accepts the named form BoundsOf(item, :UpToNItems = n). (Bounds() no-arg already exists, so the parametered form lives under BoundsCS/BoundsOf.)
1 exemples exécutésaucune extensionNBoundsOf
Same as BoundsCS: Thin aliases over existing methods (restored from the monolith). Bounds of an item: for each occurrence of pItem, the up-to-N items immediately before and after it. pUpTo is a number (same count both sides) or a [before, after] pair. Accepts the named form BoundsOf(item, :UpToNItems = n). (Bounds() no-arg already exists, so the parametered form lives under BoundsCS/BoundsOf.)aucune extension
Klass
The members of the given class (from Classify).aucune extension
OnlyWhere
Same as ItemsW: ItemsW / ItemsW / ItemsWXTQ: filter the list by an evaluated Haro expression where @item is the loop variable. Returns the items for which the expression is truthy. ItemsWXTQ wraps the result in stzList for fluent chains.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.OnlyWhere("@item > 3") )
#--> [ 5, 8 ]composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWURemoveItemCS
Same as RemoveAllCS: RemoveAllCS: remove all occurrences of an item
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.RemoveItemCS(3, TRUE)
? @@( o1.Content() )
#--> [ 5, 8, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionContainsAtLeastOneW
Same as ContainsW: True if at least one item satisfies the W condition.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.ContainsAtLeastOneW("@item > 3")
#--> 1composé à partir de la signature, exécuté pour cette page aucune extensionSame as SectionsBetweenCS: Every section that starts at an occurrence of pItem1 and ends at -- a later occurrence of pItem2. Accepts SectionsBetween(a, :And = b).
1 exemples exécutésaussi écrite: SectionsBetweenItemsQCSXTZZZIBWUDistribute the items over the given beneficiaries, round-robin.
1 exemples exécutésQCSXTZZZIBWUA copy with all occurrences of an item removed (non-mutating).
1 exemples exécutésaussi écrite: AllOccurrencesOfThisItemRemovedexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.ItemRemoved(3) )
#--> [ 5, 8, 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUTrue if EVERY given position holds an item matching a W condition.
1 exemples exécutésaussi écrite: ContainsAtWexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.ContainsItemsAtW([ 2, 3 ], "@item > 3")
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionSame as EachContainsCS: EachContains: every item (string or sub-list) contains pItem.
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.EachContains(3)
#--> 0
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUEachItemContains
Same as EachContainsCS: EachContains: every item (string or sub-list) contains pItem.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.EachItemContains(3)
#--> 0
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUSame as EachContainsTheseCS: EachContainsThese: every item contains all the given items.
1 exemples exécutés# containsthese example 1
? @@( Q([ "a", "♥", "*" ]).ContainsThese([ "♥", "*"]) )
o1 = new stzList([ [ "a", "♥", "*" ], [ "♥", "*"], [ "a", "b", "♥", "*" ] ])
# containsthese example 2
? @@( o1.EachContainsThese([ "♥", "*" ]) )
#--> 1
#--> 1
test de la bibliothèqueQCSXTZZZIBWUThe items shared with the given list.
1 exemples exécutésaussi écrite: Commono1 = new stzList([ "green", "red" ])
? @@( o1.DifferenceWith([ "b","x", "a", "f"]) ) # Or DifferentItemsWith()
? @@( o1.CommonItemsWith([ "b","x", "a", "f"]) ) # or Intersection()
? o1.ContainsSameItemsAs([ "red", "green" ])
? o1.ContainsSameItemsAs([ "a", "b", "c", "f" ])
#--> [ "green", "red", "b", "x", "a", "f" ]
#--> [ ]
#--> 1
#--> 0
test de la bibliothèqueaucune extensionIntersectionWith
The items shared with the given list (pairwise intersection).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.IntersectionWith([ 2, 3 ]) )
#--> [ 3 ]
composé à partir de la signature, exécuté pour cette page aucune extensionDifferentItemsWith
Same as DifferentItemsWithCS: Symmetric difference: (this items not in other) ++ (other items not -- in this). Engine-faithful element compare via BothAreEqualCS.
aussi écrite: Diffexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.DifferentItemsWith([ 2, 3 ]) )
#--> [ 5, 8, 1, 2 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUXTTSame as ContainsSameItemsAsCS: Same items as another list, regardless of order/count (set equality).
1 exemples exécutéso1 = new stzList([ "green", "red" ])
? @@( o1.DifferenceWith([ "b","x", "a", "f"]) ) # Or DifferentItemsWith()
? @@( o1.CommonItemsWith([ "b","x", "a", "f"]) ) # or Intersection()
? o1.ContainsSameItemsAs([ "red", "green" ])
? o1.ContainsSameItemsAs([ "a", "b", "c", "f" ])
#--> [ "green", "red", "b", "x", "a", "f" ]
#--> [ ]
#--> 1
#--> 0
test de la bibliothèqueQCSXTZZZIBWUIsContainedIn
Same as IsContainedInCS: IsContainedIn(p): this list, taken as a single value, is an -- element of p (NOT element-wise -- that is AreContainedIn).QCSXTZZZIBWU
Same as IsContainedInCS: IsContainedIn(p): this list, taken as a single value, is an -- element of p (NOT element-wise -- that is AreContainedIn).
1 exemples exécutés? Q(["a", "b", "c"]).ExistsIn(["a", "b", "c", "x", "z"])
? @@(Q(["a", "b", "c", "x", "z"]).FindAll(["a", "b", "c"]))
? Q(["a", "b", "c"]).ExistsIn(["a", "b", "c", "x", "z", ["a", "b", "c"]])
? Q(["a", "b", "c"]).ExistIn(["a", "b", "c", "x", "z"])
#--> 0
#--> [ ]
#--> 1
#--> 1
test de la bibliothèqueQCSXTZZZIBWUSame as EachItemExistsInCS: AreContainedIn / ExistIn: every item of this list also exists -- somewhere in the other list (element-wise membership).
1 exemples exécutéso1 = new stzList([ "A", "B", "C" ])
? o1.EachItemExistsIn([ "1", "2", "A", "B", "C", "3", "4" ])
#--> 1
test de la bibliothèqueQCSXTZZZIBWUSame as EachItemExistsInCS: AreContainedIn / ExistIn: every item of this list also exists -- somewhere in the other list (element-wise membership).
1 exemples exécutés? Q(["a", "b", "c"]).ExistsIn(["a", "b", "c", "x", "z"])
? @@(Q(["a", "b", "c", "x", "z"]).FindAll(["a", "b", "c"]))
? Q(["a", "b", "c"]).ExistsIn(["a", "b", "c", "x", "z", ["a", "b", "c"]])
? Q(["a", "b", "c"]).ExistIn(["a", "b", "c", "x", "z"])
#--> 0
#--> [ ]
#--> 1
#--> 1
test de la bibliothèqueaucune extensionAreContainedIn
Same as EachItemExistsInCS: AreContainedIn / ExistIn: every item of this list also exists -- somewhere in the other list (element-wise membership).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.AreContainedIn([ 2, 3 ])
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionHasSameSizeAs
Same as HasSameNumberOfItemsAsCS: HasSameNumberOfItemsAs: same length as another list.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.HasSameSizeAs([ 2, 3 ])
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionHasSameWidthAs
Same as HasSameNumberOfItemsAsCS: HasSameNumberOfItemsAs: same length as another list.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.HasSameWidthAs([ 2, 3 ])
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionContainsNoOneOfThese
Negative form of ContainsOneOfThese.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.ContainsNoOneOfThese([ 2, 3 ])
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionContainsNoneOfThese
TRUE if NONE of the given items occurs in the list.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.ContainsNoneOfThese([ 2, 3 ])
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionContainsNoItemOfThese
TRUE if NONE of the given items occurs in the list.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.ContainsNoItemOfThese([ 2, 3 ])
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionObjects
Objects: the items that are objects.aussi écrite: OnlyObjectsQCSXTZZZIBWU
NumbersAndStrings: the scalar items (numbers or strings). -- The Z form pairs each with its 1-based position.
1 exemples exécutésaussi écrite: StringsAndNumberso1 = new stzList( 10:12 + "str1" + "str2" + [ "+", "-" ] + o1 )
# numbersandstrings example 1
? @@( o1.NumbersAndStrings() )
# numbersandstrings example 2
? @@( o1.NumbersAndStringsZ() )
#--> [ 10, 11, 12, "str1", "str2" ]
#--> [ [ 10, 1 ], [ 11, 2 ], [ 12, 3 ], [ "str1", 4 ], [ "str2", 5 ] ]
test de la bibliothèqueQCSXTZZZIBWULowercased
A copy with every string item lower/upper-cased (UTF-8 via the -- engine-backed StzLower/StzUpper); non-string items pass through.
aussi écrite: StringsLowercasedexemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
? @@( o1.Lowercased() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page aucune extensionUppercased
A copy with every string item uppercased; the original is unchanged.
aussi écrite: StringsUppercasedexemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
? @@( o1.Uppercased() )
#--> [ "TEA", "RICE", "TEA", "FISH" ]
composé à partir de la signature, exécuté pour cette page aucune extensionVizFindAllOccurrences
Same as VizFindAllOccurrencesCS: VizFind: a visual map of where a char occurs -- the list rendered -- as code, with a "^"/"-" marker line underneath. (Chars only, as the -- markers align to single columns; generalising is a TODO.)QCSXTZZZIBWU
Same as VizFindCS: A visual map of where the item occurs: the list rendered as code with ^ marks.
2 exemples exécutésQCSXTZZZIBWUManyVizFindAll
Same as VizFindCS: A visual map of where the item occurs: the list rendered as code with ^ marks.aucune extension
Same as VizDeepFindCS: VizDeepFind* : like VizFind*, but the markers ALSO cover occurrences -- nested inside sub-lists (any bracket depth), not just top-level ones. -- The "(count)" is the total occurrences, same as the deep markers.
1 exemples exécutésQCSXTZZZIBWUVizDeepFindAll
Same as VizDeepFindCS: VizDeepFind* : like VizFind*, but the markers ALSO cover occurrences -- nested inside sub-lists (any bracket depth), not just top-level ones. -- The "(count)" is the total occurrences, same as the deep markers.aucune extension
Numbers
Type-filter family: Xs() = items of type X, XsZ() = [item,pos] -- pairs, NumberOfXs() = count. Char = single-codepoint string -- (StzLen=1); Letter = a single ASCII letter.QCSXTZZZIBWU
NumberOfNumbers
How many NUMBER items the list holds.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfNumbers()
#--> 5
composé à partir de la signature, exécuté pour cette page aucune extensionStrings
Only the STRING items of the list.
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
? @@( o1.Strings() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUWFNumberOfStrings
How many STRING items the list holds.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfStrings()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionChars
Only the CHAR items of the list.QCSXTZZZIBWU
Letters
Only the LETTER items of the list.QCSXTZZZIBWU
NumberOfLetters
How many LETTER items the list holds.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfLetters()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionLists
Only the LIST items of the list.QCSXTZZZIBWU
NumberOfLists
How many LIST items the list holds.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfLists()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionNumberOfPairs
How many pairs the list holds.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfPairs()
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extensionExtend the list up to position n. ExtendToPosition pads with 0 -- (number lists) or "" ; the WithItemsIn/Repeated forms pad by -- cycling through a given list (or the list's own items).
1 exemples exécutéso1 = new stzList([ 1, 2, 3])
o1.ExtendToPosition(5)
? @@( o1.Content() )
o1.ExtendToPositionXT( 8, :With = 5 )
? @@(o1.Content())
#--> [ 1, 2, 3, 0, 0 ]
#--> [ 1, 2, 3, 0, 0, 5, 5, 5 ]
test de la bibliothèqueQCSXTZZZIBWUExtendToPositionWithItemsIn
Extend the list to position n by cycling the given items (mutating).
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.ExtendToPositionWithItemsIn(2, [ 2, 3 ])
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page aucune extensionSame as ExtendToPositionWithItemsIn: Extend the list to position n by cycling the given items (mutating).
1 exemples exécutéso1 = new stzList(1 : 3)
o1.ExtendToWithItemsIn( 8, "A":"C" )
# extendtowithitemsin example 1
? @@( o1.Content() )
#--> [ 1, 2, 3, "A", "B", "C", "A", "B" ]
test de la bibliothèqueaucune extensionExtendToPositionWithItemsRepeated
Extend to position n by cycling the list's own items (mutating).
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.ExtendToPositionWithItemsRepeated(2)
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page aucune extensionExtendToWithItemsRepeated
Same as ExtendToPositionWithItemsRepeated: Extend to position n by cycling the list's own items (mutating).
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.ExtendToWithItemsRepeated(2)
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page aucune extensionExtendToByRepeatingItems
Same as ExtendToPositionWithItemsRepeated: Extend to position n by cycling the list's own items (mutating).
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.ExtendToByRepeatingItems(2)
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page aucune extensionSize comparison with another list. Accept the named form -- IsLarger(:Than = otherList) or the raw list.
1 exemples exécutésaussi écrite: IsLarger · HasMoreItems · IsLargerThan? Q([1, 2, 3, 4, 5]).IsLarger(:Than = [8, 9])
? Q([1, 2, 3, 4, 5]).HasMoreItems(:Than = [8, 9])
? Q([8, 9]).IsSmaller(:Than = [1, 2, 3, 4, 5])
? Q([8, 9]).HasLessItems(:Than = [1, 2, 3, 4, 5])
#--> 1
#--> 1
#--> 1
#--> 1
test de la bibliothèqueaucune extensionTRUE if this list has fewer items than the given one.
1 exemples exécutésaussi écrite: IsSmaller · HasLessItems · HasFewerItems · IsSmallerThan? Q([1, 2, 3, 4, 5]).IsLarger(:Than = [8, 9])
? Q([1, 2, 3, 4, 5]).HasMoreItems(:Than = [8, 9])
? Q([8, 9]).IsSmaller(:Than = [1, 2, 3, 4, 5])
? Q([8, 9]).HasLessItems(:Than = [1, 2, 3, 4, 5])
#--> 1
#--> 1
#--> 1
#--> 1
test de la bibliothèqueaucune extensionIsListOfEmptyLists: every item is an empty list.
1 exemples exécutésaussi écrite: AllItemsAreEmptyLists · ContainsOnlyEmptyLists? Q([ [], [] ]).AllItemsAreEmptyLists()
? @@( Association([ [], [] ]) )
#--> 1
#--> [ ]
test de la bibliothèqueaucune extensionFindFirstDuplicates
Same as FindFirstDuplicatesCS: First-occurrence positions of the items that are duplicated -- ("duplicate origins"). Built engine-first: the duplicated VALUES -- come from the engine-backed DuplicatedItemsCS, and each value's -- first position from the engine-backed FindFirstCS -- avoiding the -- monolith's O(n^2) StzFind loop (whose arg order is ambiguous now).
aussi écrite: FindDuplicatesOrigins · FindDuplicationsOriginsexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FindFirstDuplicates() )
#--> [ 2 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUFindFirstDuplicatedItems
Same as FindFirstDuplicatesCS: First-occurrence positions of the items that are duplicated -- ("duplicate origins"). Built engine-first: the duplicated VALUES -- come from the engine-backed DuplicatedItemsCS, and each value's -- first position from the engine-backed FindFirstCS -- avoiding the -- monolith's O(n^2) StzFind loop (whose arg order is ambiguous now).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FindFirstDuplicatedItems() )
#--> [ 2 ]
composé à partir de la signature, exécuté pour cette page aucune extensionFindFirstOccurrenceOfEachDuplicatedItem
Same as FindFirstDuplicatesCS: First-occurrence positions of the items that are duplicated -- ("duplicate origins"). Built engine-first: the duplicated VALUES -- come from the engine-backed DuplicatedItemsCS, and each value's -- first position from the engine-backed FindFirstCS -- avoiding the -- monolith's O(n^2) StzFind loop (whose arg order is ambiguous now).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FindFirstOccurrenceOfEachDuplicatedItem() )
#--> [ 2 ]
composé à partir de la signature, exécuté pour cette page aucune extensionSame as FindFirstDuplicatesCS: First-occurrence positions of the items that are duplicated -- ("duplicate origins"). Built engine-first: the duplicated VALUES -- come from the engine-backed DuplicatedItemsCS, and each value's -- first position from the engine-backed FindFirstCS -- avoiding the -- monolith's O(n^2) StzFind loop (whose arg order is ambiguous now).
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FindDupOrigins() )
#--> [ 2 ]
composé à partir de la signature, exécuté pour cette page aucune extensionRemove the first occurrence of each duplicated item (mutating).
1 exemples exécutésexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.RemoveDupOrigins()
? @@( o1.Content() )
#--> [ 5, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionRemoveDuplicatesOrigins
Same as RemoveDupOrigins: Remove the first occurrence of each duplicated item (mutating).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.RemoveDuplicatesOrigins()
? @@( o1.Content() )
#--> [ 5, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionoperator
For element-wise operations, use the explicit method calls (AddMany / RemoveMany / etc.) -- the operator is reserved for the simple "single item" reading.aucune extension
(sans commentaire dans la source : le nom se lit comme une phrase) contains no duplicates 1 exemples exécutésaussi écrite: NoItemsAreDuplicated · ContainsNoDuplicationsdans la section monolith -- split-dropped, authoritative semantics).o1 = new stzList([ "A", "B", "2", 1:3, "C", 2 ])
# noitemsareduplicated example 1
? @@( o1.NoItemsAreDuplicated() )
o1 = new stzList("A":"E")
# noitemsareduplicated example 2
? @@( o1.NoItemsAreDuplicated() )
#--> 1
#--> 1test de la bibliothèqueQCSXTZZZIBWU ContainsNonDuplicatedItems
Same as ContainsNonDuplicatedItemsCS: NON-DUPLICATED ITEMS TRUE if at least one item occurs exactly once.
aussi écrite: ContainsItemsNonDuplicated · ContainsAtLeastOneNonDuplicatedItemexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.ContainsNonDuplicatedItems()
#--> 1
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUContainsItemsThatAreNotDuplicatedCS
Same as ContainsNonDuplicatedItemsCS: NON-DUPLICATED ITEMS TRUE if at least one item occurs exactly once.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.ContainsItemsThatAreNotDuplicatedCS(TRUE)
#--> 1
composé à partir de la signature, exécuté pour cette page aucune extensionNonDuplicatedItems
(sans commentaire dans la source : le nom se lit comme une phrase) non duplicated itemsdans la section monolith -- split-dropped, authoritative semantics).exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.NonDuplicatedItems() )
#--> [ 5, 8, 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU NumberOfNonDuplicatedItems
(sans commentaire dans la source : le nom se lit comme une phrase) number of non duplicated itemsdans la section monolith -- split-dropped, authoritative semantics).exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.NumberOfNonDuplicatedItems()
#--> 3
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU FindNonDuplicatedItems
(sans commentaire dans la source : le nom se lit comme une phrase) find non duplicated itemsdans la section monolith -- split-dropped, authoritative semantics).exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FindNonDuplicatedItems() )
#--> [ 1, 3, 5 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU NonDuplicatedItemsAndTheirPositions
(sans commentaire dans la source : le nom se lit comme une phrase) non duplicated items and their positionsdans la section monolith -- split-dropped, authoritative semantics).exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.NonDuplicatedItemsAndTheirPositions() )
#--> [ [ 5, 1 ], [ 8, 3 ], [ 1, 5 ] ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU NListify
N-LISTIFY (pad each item into an n-element sublist)QCSXTZZZIBWU
NListified
(sans commentaire dans la source : le nom se lit comme une phrase) n listifieddans la section monolith -- split-dropped, authoritative semantics).exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.NListified(2) )
#--> [ [ 5, "" ], [ 3, "" ], [ 8, "" ], [ 3, "" ], [ 1, "" ] ]
composé à partir de la signature, exécuté pour cette page aucune extension FirstHalfAndPosition
(sans commentaire dans la source : le nom se lit comme une phrase) first half and positionaussi écrite: FirstHalfAndItsPositiondans la section monolith -- split-dropped, authoritative semantics).exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FirstHalfAndPosition() )
#--> [ [ 5, 3 ], 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU FirstHalfAndSection
(sans commentaire dans la source : le nom se lit comme une phrase) first half and sectionaussi écrite: FirstHalfAndItsSectiondans la section monolith -- split-dropped, authoritative semantics).exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FirstHalfAndSection() )
#--> [ [ 5, 3 ], [ 1, 2 ] ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU SecondHalfAndPosition
(sans commentaire dans la source : le nom se lit comme une phrase) second half and positionaussi écrite: SecondHalfAndItsPositiondans la section monolith -- split-dropped, authoritative semantics).exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.SecondHalfAndPosition() )
#--> [ [ 8, 3, 1 ], 3 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU SecondHalfAndSection
(sans commentaire dans la source : le nom se lit comme une phrase) second half and sectionaussi écrite: SecondHalfAndItsSectiondans la section monolith -- split-dropped, authoritative semantics).exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.SecondHalfAndSection() )
#--> [ [ 8, 3, 1 ], [ 3, 5 ] ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU Halves
(sans commentaire dans la source : le nom se lit comme une phrase) halvesdans la section monolith -- split-dropped, authoritative semantics).exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.Halves() )
#--> [ [ 5, 3 ], [ 8, 3, 1 ] ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU HalvesAndPositions
(sans commentaire dans la source : le nom se lit comme une phrase) halves and positionsdans la section monolith -- split-dropped, authoritative semantics).exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.HalvesAndPositions() )
#--> [ [ [ 5, 3 ], 1 ], [ [ 8, 3, 1 ], 3 ] ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU HalvesAndSections
(sans commentaire dans la source : le nom se lit comme une phrase) halves and sectionsdans la section monolith -- split-dropped, authoritative semantics).exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.HalvesAndSections() )
#--> [ [ [ 5, 3 ], [ 1, 2 ] ], [ [ 8, 3, 1 ], [ 3, 5 ] ] ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU IsNeither
allitemsareequalto (split-dropped / new).
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.IsNeither([ 2, 3 ], [ 2, 3 ])
#--> 1
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUHasSameContent: order-INsensitive content equality (a multiset -- comparison). Same items, any order, optionally case-folded.
1 exemples exécutés? Q([ "I", "B", "M" ]).HasSameContent( :As = [ "B", "M", "I" ] )
? Q([ "I", "B", "M" ]).HasSameContentCS( :As = [ "b", "m", "i" ], :CS = FALSE )
#--> 1
#--> 1
test de la bibliothèqueQCSXTZZZIBWUFirst sublist (item that is itself a list) and its position.
1 exemples exécutéso1 = new stzList([ "A", "B", 1:3, "C", "D", 4:5 ])
? o1.FirstList()
? o1.FindFirstList()
#--> 1
#--> 2
#--> 3
#--> 3
test de la bibliothèqueaucune extensionallitemsareequalto (split-dropped / new).
1 exemples exécutéso1 = new stzList([ "A", "B", 1:3, "C", "D", 4:5 ])
? o1.FirstList()
? o1.FindFirstList()
#--> 1
#--> 2
#--> 3
#--> 3
test de la bibliothèqueaucune extensionSame as AllItemsAreEqualToCS: AllItemsAreEqualTo: every item equals pItem (content-compare, so -- sublists match too).
1 exemples exécutéso1 = new stzList([ 1, 1, 1 ])
? o1.AllItemsAreEqualTo(1)
#--> 1
test de la bibliothèqueQCSXTZZZIBWUFindNumbers
The positions of the NUMBER items.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.FindNumbers() )
#--> [ 1, 2, 3, 4, 5 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUFindNonNumbers
The positions of the non-number items.
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
? @@( o1.FindNonNumbers() )
#--> [ 1, 2, 3, 4 ]
composé à partir de la signature, exécuté pour cette page aucune extensionRemoveNumbers
Remove all the number items (mutating).
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.RemoveNumbers()
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page aucune extensionRemoveOnlyNumbers
Same as RemoveNumbers: Remove all the number items (mutating).
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.RemoveOnlyNumbers()
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page aucune extensionRemoveAllExceptNonNumbers
Same as RemoveNumbers: Remove all the number items (mutating).
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
o1.RemoveAllExceptNonNumbers()
? @@( o1.Content() )
#--> [ "tea", "rice", "tea", "fish" ]
composé à partir de la signature, exécuté pour cette page aucune extensionRemoveNonNumbers
Remove every non-number item (mutating).aucune extension
RemoveOnlyNonNumbers
Same as RemoveNonNumbers: Remove every non-number item (mutating).aucune extension
RemoveAllExceptNumbers
Same as RemoveNonNumbers: Remove every non-number item (mutating).aucune extension
NumberOfOccurrenceOfItems
Same as NumberOfOccurrenceOfItemsCS: Occurrence counts: each distinct item paired with how many times -- it appears.
aussi écrite: NumberOfOccurrenceOfEachItemexemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.NumberOfOccurrenceOfItems() )
#--> [ [ 5, 1 ], [ 3, 2 ], [ 8, 1 ], [ 1, 1 ] ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUTRUE if every item is a number or a pair of numbers.
1 exemples exécutéso1 = new stzList([ 0, 2, 0, 3, [1,2] ])
? o1.IsListOfNumbersAndPairsOfNumbers()
#--> 1
test de la bibliothèqueaucune extensionSplitAfterPositions
Split the list after EACH of the given positions.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.SplitAfterPositions([ 2, 3 ])
? @@( o1.Content() )
#--> [ [ 5, 3 ], [ 8 ], [ 3, 1 ] ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUThe parts split after the given positions, as data.
1 exemples exécutéso1 = new stzList([ "a", "b", "c", "d", "e" ])
? @@( o1.SplittedToPartsOfNItemsXT(2) ) + NL
? @@( o1.SplittedAfterPositions([ 3, 5 ]) ) + NL
? @@( o1.SplittedBeforePositions([ 3, 5 ]) )
#--> [ [ "a", "b" ], [ "c", "d" ], [ "e" ] ]
#--> [ [ "a", "b", "c" ], [ "d", "e" ] ]
#--> [ [ "a", "b" ], [ "c", "d" ], [ "e" ] ]
test de la bibliothèqueaucune extensionSplitBeforePositions
Split the list before EACH of the given positions.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.SplitBeforePositions([ 2, 3 ])
? @@( o1.Content() )
#--> [ [ 5 ], [ 3 ], [ 8, 3, 1 ] ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUThe parts split before the given positions, as data.
1 exemples exécutéso1 = new stzList([ "a", "b", "c", "d", "e" ])
? @@( o1.SplittedToPartsOfNItemsXT(2) ) + NL
? @@( o1.SplittedAfterPositions([ 3, 5 ]) ) + NL
? @@( o1.SplittedBeforePositions([ 3, 5 ]) )
#--> [ [ "a", "b" ], [ "c", "d" ], [ "e" ] ]
#--> [ [ "a", "b", "c" ], [ "d", "e" ] ]
#--> [ [ "a", "b" ], [ "c", "d" ], [ "e" ] ]
test de la bibliothèqueaucune extensionSame as FindNthPreviousOccurrenceCS: Nth previous occurrence (scanning backward from a start position).
1 exemples exécutésaussi écrite: PreviousNthOccurrenceo1 = new stzList( [ 0, 8, 0, 0, 1, 8, 0, 0 ] )
? o1.PreviousNthOccurrence(2, :Of = 0, :StartingAt = 5)
? o1.PreviousNthOccurrence(2, :Of = 8, :StartingAt = :LastItem)
#--> 3
#--> 2
test de la bibliothèqueQCSXTZZZIBWUSame as RemoveTheseBoundsCS: Remove a matching opening/closing bound pair (e.g. "{" ... "}"). -- TheseBoundsRemoved returns a fresh list; RemoveTheseBounds mutates.
1 exemples exécutéso1 = new stzList([ "{", "A", "B", "C", "}" ])
? o1.IsBoundedBy([ "{", "}" ]) + NL
o1.RemoveTheseBounds("{", "}")
? o1.Content()
#--> 1
#--> A
#--> B
#--> Ctest de la bibliothèqueQCSXTZZZIBWUA copy with the two given bounds removed from the ends.
2 exemples exécutéso1 = new stzList([ "{", "A", "B", "C", "}" ])
? o1.TheseBoundsRemoved("{", "}")
#--> A
#--> B
#--> Ctest de la bibliothèqueaucune extensionMultiply the list by the given factor (number: tile; list: pairwise).
1 exemples exécutésaucune extensionThe positions of the stzNumber OBJECT items.
1 exemples exécutéso1 = new stzList([ Q("one"), Q(1), Q("two"), Q(2), Q("three"), Q(3), Q(1:2), NullObject() ])
? @@( o1.FindStzNumbers() )
? @@( o1.FindStzStrings() )
? @@( o1.FindStzLists() )
? @@( o1.FindStzObjects() )
#--> [ 2, 4, 6 ]
#--> [ 1, 3, 5 ]
#--> [ 7 ]
#--> [ 1, 2, 3, 4, 5, 6, 7, 8 ]test de la bibliothèqueaucune extensionSame as ReplaceThisItemAt: positional replacers (ported from the monolith)
1 exemples exécutéso1 = new stzList([ "♥", 2, "♥", "♥", 5 ])
o1.ReplaceAt([2, 5], "♥") # Or ReplaceAnyAt()
? @@( o1.Content() )
o1.ReplaceThisAt(3, "♥", 3)
? @@( o1.Content() )
#--> [ "♥", "♥", "♥", "♥", "♥" ]
#--> [ "♥", "♥", 3, "♥", "♥" ]
test de la bibliothèqueaucune extensionReplaceAnyAt
Same as ReplaceAt: Positional replace: swap whatever lives at position n with pNewItem. Mirrors AddItemAt / InsertAt / RemoveAt naming.aucune extension
Positions of items that are stz objects of a given kind.
1 exemples exécutéso1 = new stzList([ Q("one"), Q(1), Q("two"), Q(2), Q("three"), Q(3), Q(1:2), NullObject() ])
? @@( o1.FindStzNumbers() )
? @@( o1.FindStzStrings() )
? @@( o1.FindStzLists() )
? @@( o1.FindStzObjects() )
#--> [ 2, 4, 6 ]
#--> [ 1, 3, 5 ]
#--> [ 7 ]
#--> [ 1, 2, 3, 4, 5, 6, 7, 8 ]test de la bibliothèqueaucune extensionThe positions of the stzList OBJECT items.
1 exemples exécutéso1 = new stzList([ Q("one"), Q(1), Q("two"), Q(2), Q("three"), Q(3), Q(1:2), NullObject() ])
? @@( o1.FindStzNumbers() )
? @@( o1.FindStzStrings() )
? @@( o1.FindStzLists() )
? @@( o1.FindStzObjects() )
#--> [ 2, 4, 6 ]
#--> [ 1, 3, 5 ]
#--> [ 7 ]
#--> [ 1, 2, 3, 4, 5, 6, 7, 8 ]test de la bibliothèqueaucune extensionToStzListOfStrings
Convert to a stzListOfStrings (for string-oriented chaining like -- ConcatenatedUsing / Joined). Needed by the ..Q() chain idioms.aucune extension
InsertAfter(:ItemAtPosition = n, item): NON-mutating -- returns the -- would-be list with item inserted after position n, leaving This as-is -- (use InsertAfterPosition for the mutating form).
3 exemples exécutéso1 = new stzList([ "A1", "A2", "A3" ])
o1.InsertAfter( :ItemAtPosition = 3, "A4" )
? o1.Content()
#--> A1
#--> A2
#--> A3
test de la bibliothèqueQCSXTZZZIBWUWFUppercaseQ
UppercaseQ: uppercase every string item in place, return This for -- chaining (mirrors LowercaseQ; relies on Uppercased).aucune extension
LowercaseQ
Lowercase every string item, chainable.aucune extension
AddedItemsComparedToCS
(sans commentaire dans la source : le nom se lit comme une phrase) added items compared to csdans la section from the monolith (split-dropped).exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.AddedItemsComparedToCS([ 2, 3 ], TRUE) )
#--> [ 2 ]
composé à partir de la signature, exécuté pour cette page aucune extension RemovedItemsComparedToCS
(sans commentaire dans la source : le nom se lit comme une phrase) removed items compared to csdans la section from the monolith (split-dropped).exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.RemovedItemsComparedToCS([ 2, 3 ], TRUE) )
#--> [ 5, 8, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extension ModifiedItemsComparedToCSXT
(sans commentaire dans la source : le nom se lit comme une phrase) modified items compared to csxtdans la section from the monolith (split-dropped).aucune extension
Objectify
Objectify: wrap each item in a Q() stz object (so per-item stz -- methods like ContainsCS can be called). Needed by DiffXTT's -- similarity matching.QCSXTZZZIBWU
Objectified
(sans commentaire dans la source : le nom se lit comme une phrase) objectifieddans la section from the monolith (split-dropped).exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.Objectified() )
#--> [ @noname, @noname, @noname, @noname, @noname ]
composé à partir de la signature, exécuté pour cette page aucune extension IsQuietEqualTo: approximate equality. Exact-equal (engine-backed -- IsEqualTo) OR the length-difference ratio is below the tunable -- QuietEqualityRatio (default 0.09; SetQuietEqualityRatio to change). -- No element loop here -- the content compare is the engine's job.
1 exemples exécutéso1 = new stzList([ "f","a","y","e","d" ])
? o1.IsQuietEqualTo([ "a","l", "f", "a","y","e","d" ])
? QuietEqualityRatio()
SetQuietEqualityRatio(0.41)
? o1.IsQuietEqualTo([ "a","l", "f", "a","y","e","d" ])
#--> 0
#--> 0.09
#--> 1
test de la bibliothèqueaucune extensionDeepContainsThese
Same as DeepContainsManyCS: Deep "contains" combinators. The heavy work is DeepContainsCS -- (engine-backed: stringify the whole list + StzFind). These just -- loop over the small QUERY list, not the data -- so no data-loop.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.DeepContainsThese([ 2, 3 ])
#--> 0
composé à partir de la signature, exécuté pour cette page aucune extension(sans commentaire dans la source : le nom se lit comme une phrase) deep contains both 1 exemples exécutésdans la section from the monolith (split-dropped).QCSXTZZZIBWU (sans commentaire dans la source : le nom se lit comme une phrase) deep contains one of these 1 exemples exécutésdans la section from the monolith (split-dropped).exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.DeepContainsOneOfThese([ 2, 3 ])
#--> 1
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU (sans commentaire dans la source : le nom se lit comme une phrase) deep contains n of these 1 exemples exécutésdans la section from the monolith (split-dropped).exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? o1.DeepContainsNOfThese(2, [ 2, 3 ])
#--> 0
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU ToListOfStzStrings
tion over the established per-string locale lookups.
exemple composé
o1 = new stzList([ "tea", "rice", "tea", "fish" ])
? @@( o1.ToListOfStzStrings() )
#--> [ @noname, @noname, @noname, @noname ]
composé à partir de la signature, exécuté pour cette page aucune extensiontion over the established per-string locale lookups.
1 exemples exécutés? Q([ :ar, :en, :fr ]).AreLanguageAbbreviations()
#--> 1
test de la bibliothèqueaucune extensiontion over the established per-string locale lookups.
1 exemples exécutéso1 = new stzList([ :Language = "arabic", :Country = "tn", :Script = "arabic" ])
? o1.IsLocaleList() + NL
o1 = new stzList([ :Language = "ar", :Country = "TN", :script = "arabic" ])
? o1.IsLocaleList() + NL
? StringIsScriptName("latin")
#--> 1
#--> 1
#--> 1test de la bibliothèqueaucune extensiontion over the established per-string locale lookups.
1 exemples exécutéso1 = new stzList([ :english = "house", :french = "maison", :arabic = "منزل" ])
? o1.IsMultilingualString()
o1 = new stzList([ :en = "house", :fr = "maison", :ar = "منزل" ])
? o1.IsMultilingualString()
#--> 1
#--> 1
test de la bibliothèqueaucune extensionReplaceRepeatedLeadingItem
Replace the run of repeated LEADING items with a given value -- (:with names it). Delegates to ReplaceLeadingItems.
exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
o1.ReplaceRepeatedLeadingItem(3)
? @@( o1.Content() )
#--> [ 3, 3, 8, 3, 1 ]
composé à partir de la signature, exécuté pour cette page aucune extensionWalkBackAndForth
(sans commentaire dans la source : le nom se lit comme une phrase) walk back and forthdans la section sequences (arithmetic); itemsat does the gather.exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.WalkBackAndForth() )
#--> [ 5, 4, 3, 2, 1, 2, 3, 4, 5 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU WalkNItemsForwardXT
N-step (every nth item)aucune extension
WalkNItemsBackwardXT
(sans commentaire dans la source : le nom se lit comme une phrase) walk n items backward xtdans la section sequences (arithmetic); itemsat does the gather.aucune extension
WalkNProgressiveItemsForward
(sans commentaire dans la source : le nom se lit comme une phrase) walk n progressive items forwardaussi écrite: WalkNMoreForwarddans la section sequences (arithmetic); itemsat does the gather.exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.WalkNProgressiveItemsForward(2) )
#--> [ 1, 3 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU WalkNProgressiveItemsBackward
(sans commentaire dans la source : le nom se lit comme une phrase) walk n progressive items backwardaussi écrite: WalkNMoreBackwarddans la section sequences (arithmetic); itemsat does the gather.exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.WalkNProgressiveItemsBackward(2) )
#--> [ 5, 3 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU WalkNItemsForwardNItemsBackward
(sans commentaire dans la source : le nom se lit comme une phrase) walk n items forward n items backwardaussi écrite: WalkForwardBackwarddans la section walk zigzag + start/end family (split-dropped).exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.WalkNItemsForwardNItemsBackward(2, 5) )
#--> [ 4 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU WalkNItemsBackwardNItemsForward
walking n items forward and n items backward
aussi écrite: WalkBackwardForwarddans la section walk zigzag + start/end family (split-dropped).exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.WalkNItemsBackwardNItemsForward(2, 5) )
#--> [ 3 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUWalkNItemsFromStartNItemsFromEnd
walking n steps from start and n steps from end
aussi écrite: WalkNStartNEnddans la section walk zigzag + start/end family (split-dropped).exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.WalkNItemsFromStartNItemsFromEnd(2, 5) )
#--> [ 1 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWUWalkNItemsFromEndNItemsFromStart
walking n steps from start and n steps from end
aussi écrite: WalkNEndNStartdans la section walk zigzag + start/end family (split-dropped).exemple composé
o1 = new stzList([ 5, 3, 8, 3, 1 ])
? @@( o1.WalkNItemsFromEndNItemsFromStart(2, 5) )
#--> [ 5, 3, 1, 2 ]
composé à partir de la signature, exécuté pour cette page QCSXTZZZIBWU