feat: observer pattern for statistics

This commit is contained in:
2025-12-29 00:51:50 -05:00
parent e9dc3fe171
commit c2b397a9f6
11 changed files with 165 additions and 70 deletions

View File

@@ -18,8 +18,8 @@ func (s *Set[T]) Remove(items ...T) {
}
}
func (s *Set[T]) Merge(o Set[T]) {
for item := range o {
func (s *Set[T]) Merge(o *Set[T]) {
for item := range *o {
s.Add(item)
}
}
@@ -34,8 +34,8 @@ func (s Set[T]) ToList() []T {
return list
}
func New[T comparable](items ...T) Set[T] {
result := Set[T]{}
func New[T comparable](items ...T) *Set[T] {
result := &Set[T]{}
for _, item := range items {
result.Add(item)