@@ 290,8 290,10 @@ impl Lexer {
}
if self.c == '.' {
number.push('.');
- while self.read_char().is_ascii_digit() {
+ self.read_char();
+ while self.peek().is_ascii_digit() {
number.push(self.c as char);
+ self.read_char();
}
}
// panic = error in this code
@@ 1,15 1,13 @@
//use std::{env, fs};
-//use kabel::{debug::{debug_ast, debug_token_array}, run_lexer, run_parser, run_semantic_analysis};
-
-use kabel::{run_codegen, run_lexer, run_parser, run_semantic_analysis};
+use kabel::{debug::{debug_ast, debug_token_array}, run_codegen, run_lexer, run_parser, run_semantic_analysis};
fn main() {
/*let args: Vec<String> = env::args().collect();
let program =
fs::read_to_string(args[1].clone()).unwrap();*/
- let program = "print 4|5;".to_string();
+ let program = "print 4.1+5.3;".to_string();
let mut output = "".to_string();