diff --git a/src/parser.odin b/src/parser.odin index 13ea937..1713e05 100644 --- a/src/parser.odin +++ b/src/parser.odin @@ -53,33 +53,29 @@ parse_header :: proc(line: string) -> (int, string) { return lvl, line[lvl + 1:] } -parse :: proc(lines: []string, allocator := context.allocator) -> string { - builder := strings.builder_make(allocator) - strings.write_string(&builder, "
")
+parse :: proc(lines: []string, allocator := context.allocator) -> [dynamic]Token {
+ for untrimmed_line in lines {
+ line := strings.trim_space(untrimmed_line)
- for line in lines {
- trimmed := strings.trim_space(line)
-
- if len(trimmed) == 0 {
- strings.write_string(&builder, "
\n")
+ if len(line) == 0 {
+ append(&token_tree, Token{TokenType.BreakLine, TokenMode.Start, nil})
continue
}
- lvl, text := parse_header(trimmed)
- is_header := lvl > 0
+ // lvl, text := parse_header(trimmed)
+ // is_header := lvl > 0
- if is_header {
- fmt.sbprintf(&builder, "
")
- }
+ // if is_header {
+ // fmt.sbprintf(&builder, "
")
+ // }
- strings.write_string(&builder, "\n")
+ // strings.write_string(&builder, "\n")
}
- strings.write_string(&builder, "