brainfuck interpreter
brainfuck cli rust
5

Configure Feed

Select the types of activity you want to include in your feed.

lexer: Token now contains current_offset at time of construction

used for miette pretty errors

digi.rip (Jun 9, 2026, 2:18 PM EDT) 7a746d1c 64700e93

+4
+4
src/lexer.rs
··· 1 1 #[derive(Copy, Clone, Debug)] 2 2 pub struct Token { 3 3 pub byte: u8, 4 + pub offset: usize, 4 5 pub line: usize, 5 6 pub col: usize, 6 7 } ··· 9 10 let mut tokens = Vec::new(); 10 11 let mut current_line: usize = 1; 11 12 let mut current_col: usize = 1; 13 + let mut current_offset: usize = 0; 12 14 13 15 for b in input.bytes() { 14 16 if b == b'\n' { ··· 20 22 if matches!(b, b'>' | b'<' | b'+' | b'-' | b'.' | b',' | b'[' | b']') { 21 23 tokens.push(Token { 22 24 byte: b, 25 + offset: current_offset, 23 26 line: current_line, 24 27 col: current_col, 25 28 }); 26 29 } 27 30 28 31 current_col += 1; 32 + current_offset += 1; 29 33 } 30 34 31 35 tokens