return true;
}
+string_starts_with :: proc (str1: string, str2: string) -> bool {
+ if str1.count < str2.count do return false;
+ while i := 0; i < str2.count {
+ if str1[i] != str2[i] do return false;
+ i += 1;
+ }
+ return true;
+}
+
string_strip_leading_whitespace :: proc (str: ^string) {
while true do switch str.data[0] {
case #char " ", #char "\t", #char "\n", #char "\r" {
}
string_advance_line :: proc (str: ^string) {
+ if str.count == 0 do return;
+
adv := 0;
while str.data[adv] != #char "\n" do adv += 1;
- str.data += adv;
- str.count -= adv;
+ str.data += adv + 1;
+ str.count -= adv + 1;
}
string_read :: proc {