| 1 | struct Buffer[T] { |
| 2 | size int |
| 3 | mut: |
| 4 | content []T |
| 5 | } |
| 6 | |
| 7 | pub fn create_buffer[T](size int) Buffer[T] { |
| 8 | return Buffer[T]{ |
| 9 | size: size |
| 10 | content: []T{} |
| 11 | } |
| 12 | } |
| 13 | |
| 14 | pub fn (mut b Buffer[T]) write(value T) { |
| 15 | b.content.prepend(value) |
| 16 | } |
| 17 | |
| 18 | fn test_main() { |
| 19 | mut buffer := create_buffer[int](3) |
| 20 | buffer.write(1) |
| 21 | assert buffer.content[0] == 1 |
| 22 | } |
| 23 |