struct Scanner[T] {
	contents []T
}

pub fn (s Scanner[T]) tokenize() {
	for z, ztest in s.contents {
		if ztest == `\n` {
			println('${z}: \\n')
		} else if ztest == '\r' {
			println('${z}: \\r')
		} else {
			println('${z}: ${ztest}')
		}
	}
}

pub fn new_scanner[T](contents []T) Scanner[T] {
	return Scanner[T]{contents}
}

fn main() {
	s := new_scanner([`\n`, `b`])
	s.tokenize()
}
