args

CLI Argument Parser

Functions

FunctionDescription
args_str_eqInternal: compare two C strings up to len bytes.
args_strlenInternal: strlen of a C string (null-terminated).
args_find_eqInternal: find ‘=’ in a C string, return index or -1.
args_newCreate argument parser.
args_parseParse all arguments (skip argv[0] which is the program name).
args_has_flagCheck if a flag is present.
args_get_optGet option value for –key=val. Returns 0 if not found.
args_positionalGet positional argument at index.
args_positional_countNumber of positional arguments.
args_argcTotal argc.

Details

args_str_eq

fn args_str_eq(a: &i8, b: &i8, len: i64) -> i64

Internal: compare two C strings up to len bytes.

args_strlen

fn args_strlen(s: &i8) -> i64

Internal: strlen of a C string (null-terminated).

args_find_eq

fn args_find_eq(s: &i8, len: i64) -> i64

Internal: find ‘=’ in a C string, return index or -1.

args_new

fn args_new(argc: i64, argv: &i64) -> &i64

Create argument parser.

args_parse

fn args_parse(ap: &i64)

Parse all arguments (skip argv[0] which is the program name).

args_has_flag

fn args_has_flag(ap: &i64, flag: &i8, flen: i64) -> i64

Check if a flag is present.

args_get_opt

fn args_get_opt(ap: &i64, key: &i8, klen: i64) -> &i8

Get option value for –key=val. Returns 0 if not found.

args_positional

fn args_positional(ap: &i64, idx: i64) -> &i8

Get positional argument at index.

args_positional_count

fn args_positional_count(ap: &i64) -> i64

Number of positional arguments.

args_argc

fn args_argc(ap: &i64) -> i64

Total argc.