mirror of
https://github.com/MeexReay/sustlang.git
synced 2025-06-24 02:23:00 +03:00
81 lines
1.8 KiB
Plaintext
81 lines
1.8 KiB
Plaintext
# constants
|
|
|
|
INIT_VAR char space
|
|
SET_VAR space 32
|
|
|
|
INIT_VAR int one
|
|
SET_VAR one 1
|
|
|
|
# constants
|
|
|
|
|
|
|
|
FUNC null println text string # println function
|
|
TEMP_VAR char new_line 10
|
|
ADD_STR text new_line
|
|
WRITE text cout
|
|
FUNC_END
|
|
|
|
|
|
# write args length
|
|
|
|
INIT_VAR integer args_size
|
|
LIST_SIZE args args_size
|
|
|
|
TEMP_VAR integer add -1
|
|
ADD_INT args_size add
|
|
|
|
INIT_VAR string args_size_str
|
|
TO_STRING args_size args_size_str
|
|
|
|
INIT_VAR string args_size_str_formatted # create var
|
|
SET_VAR args_size_str_formatted # init var with value
|
|
|
|
INIT_VAR string prefix
|
|
SET_VAR prefix Args length:
|
|
|
|
ADD_STR args_size_str_formatted prefix
|
|
ADD_STR args_size_str_formatted space
|
|
ADD_STR args_size_str_formatted args_size_str
|
|
|
|
USE_FUNC println null args_size_str_formatted
|
|
DROP_VAR prefix
|
|
DROP_VAR args_size_str_formatted
|
|
DROP_VAR args_size_str
|
|
DROP_VAR args_size
|
|
|
|
FUNC null print_arg_finally
|
|
INIT_VAR string prefix
|
|
SET_VAR prefix -
|
|
ADD_STR prefix space
|
|
ADD_STR prefix now_arg
|
|
USE_FUNC println null prefix
|
|
FUNC_END
|
|
|
|
FUNC null print_arg index integer
|
|
INIT_VAR bool is_first
|
|
SET_VAR is_first false
|
|
TEMP_VAR integer first 0
|
|
MORE index first is_first
|
|
GET_ITEM args index now_arg
|
|
IF is_first print_arg_finally
|
|
FUNC_END
|
|
|
|
FUNC null print_args_list
|
|
TEMP_VAR string text Args:
|
|
USE_FUNC println null text
|
|
INIT_VAR integer end_index
|
|
LIST_SIZE args end_index
|
|
TEMP_VAR integer add -1
|
|
ADD_INT end_index add
|
|
TEMP_VAR integer start_index 0
|
|
FOR print_arg start_index end_index
|
|
FUNC_END
|
|
|
|
INIT_VAR integer args_size
|
|
LIST_SIZE args args_size
|
|
INIT_VAR string now_arg
|
|
INIT_VAR bool is_args_more_than_one
|
|
MORE args_size one is_args_more_than_one
|
|
IF is_args_more_than_one print_args_list
|