Merge branch 'main' of https://git.neemek.com/neemek/anglais
All checks were successful
/ test (push) Successful in 53s

This commit is contained in:
Neemek 2026-07-06 13:48:18 +02:00
commit 10f55313b0
Signed by: neemek
GPG key ID: 84FFE4D7D40AB25E
2 changed files with 26 additions and 9 deletions

View file

@ -17,18 +17,23 @@ func NewStack[T any](capacity Pos) *Stack[T] {
func (s *Stack[T]) Push(items ...T) {
for _, item := range items {
if s.Current >= s.Capacity {
panic("stack overflow")
}
if int(s.Current) == len(s.items) {
s.items = append(s.items, item)
}
s.items[s.Current] = item
s.Current++
s.pushItem(item)
}
}
func (s *Stack[T]) pushItem(item T) {
if s.Current >= s.Capacity {
panic("stack overflow")
}
if int(s.Current) == len(s.items) {
s.items = append(s.items, item)
} else {
s.items[s.Current] = item
}
s.Current++
}
func (s *Stack[T]) Pop() T {
if s.Current <= 0 {
panic("stack underflow")

12
tests/strings.ang Normal file
View file

@ -0,0 +1,12 @@
txt := "Hello world!"
# string length
assertEq(txt.length(), 12)
# string split
assertEq(txt.split(" ").length(), 2)
# string indexing
assertEq(txt.at(1), "e")
assertEq(txt.at(6), "w")