vendor tsgo

This commit is contained in:
2026-07-09 16:50:43 -04:00
parent c06ea2e5a4
commit 98978e4930
5804 changed files with 1556156 additions and 101 deletions

View File

@@ -0,0 +1,33 @@
package core
type Stack[T any] struct {
data []T
}
func (s *Stack[T]) Push(item T) {
s.data = append(s.data, item)
}
func (s *Stack[T]) Pop() T {
l := len(s.data)
if l == 0 {
panic("stack is empty")
}
item := s.data[l-1]
var zero T
s.data[l-1] = zero
s.data = s.data[:l-1]
return item
}
func (s *Stack[T]) Peek() T {
l := len(s.data)
if l == 0 {
panic("stack is empty")
}
return s.data[l-1]
}
func (s *Stack[T]) Len() int {
return len(s.data)
}