at operator return -1 when fails in lists and arrays; insert operators (<< and >>) changes che container if it is a variable

This commit is contained in:
2026-07-16 07:25:15 +02:00
parent 8c55f4ac4b
commit 2f616f349b
11 changed files with 105 additions and 60 deletions
+12
View File
@@ -51,6 +51,18 @@ func ArrayFromStrings(stringSlice []string) (aRef *ArrayType) {
return
}
func ArrayFromIntsA(ints ...int) (aRef *ArrayType) {
return ArrayFromInts(ints)
}
func ArrayFromInts(intSlice []int) (aRef *ArrayType) {
aRef = MakeArray(len(intSlice), 0)
for i, s := range intSlice {
(*aRef)[i] = int64(s)
}
return
}
func (aRef *ArrayType) ToString(opt kern.FmtOpt) (s string) {
indent := kern.GetFormatIndent(opt)
flags := kern.GetFormatFlags(opt)
+13
View File
@@ -141,6 +141,19 @@ func (ls *LinkedList) Last() (data any, err error) {
return
}
// func (ls *LinkedList) Reverse() *ListNode {
// var prev *ListNode
// for current := ls.first; current != nil; {
// succ := current.next
// prev = succ.next
// succ.next = current
// current = prev
// }
// ls.first, ls.last = ls.last, ls.first
// return ls.first
// }
func (ls *LinkedList) NodeAt(index64 int64) (node *ListNode, err error) {
index := int(index64)
if ls.count == 0 {