mirror of https://git.sr.ht/~garritfra/sabre
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
38 lines
646 B
38 lines
646 B
// Raw wrapper around _printf builtin function. |
|
// Writes the given content to stdout |
|
fn print(arg: string) { |
|
_printf(arg) |
|
} |
|
|
|
// Like print(), but with an extra newline ('\n') character |
|
fn println(msg: string) { |
|
print(msg + "\n") |
|
} |
|
|
|
// Prints the size of an array |
|
fn len(arr: int[]): int { |
|
let c: int = 0 |
|
while arr[c] { |
|
c = c + 1 |
|
} |
|
|
|
return c |
|
} |
|
|
|
// Reverses an array |
|
// TODO: fix me! |
|
fn rev(arr: int[]): int[] { |
|
|
|
let l: int = len(arr) |
|
let new_arr: int[] = [] |
|
|
|
let i: int = 0 |
|
let j: int = l |
|
while i < l { |
|
new_arr[i] = arr[j] |
|
i = i - 1 |
|
j = j - 1 |
|
} |
|
|
|
return new_arr |
|
} |