PatchworkOS
Loading...
Searching...
No Matches
argsplit.h
Go to the documentation of this file.
1
#pragma once
2
3
#include <
ctype.h
>
4
#include <
errno.h
>
5
#include <
stdbool.h
>
6
#include <
stdint.h
>
7
#include <
stdio.h
>
8
#include <
stdlib.h
>
9
#include <
string.h
>
10
11
typedef
struct
12
{
13
const
char
*
current
;
14
uint8_t
escaped
;
15
bool
inQuote
;
16
bool
isNewArg
;
17
bool
isFirst
;
18
uint64_t
processedChars
;
19
uint64_t
maxLen
;
20
}
_argsplit_state_t
;
21
22
#define _ARGSPLIT_CREATE(str, maxLen) {str, 0, false, false, true, 0, maxLen}
23
24
bool
_argsplit_step_state
(
_argsplit_state_t
* state);
25
26
uint64_t
_argsplit_count_chars_and_args
(
const
char
* str,
uint64_t
* argc,
uint64_t
* totalChars,
uint64_t
maxLen);
27
28
const
char
**
_argsplit_backend
(
const
char
** argv,
const
char
* str,
uint64_t
argc,
uint64_t
maxLen);
ctype.h
errno.h
_argsplit_count_chars_and_args
uint64_t _argsplit_count_chars_and_args(const char *str, uint64_t *argc, uint64_t *totalChars, uint64_t maxLen)
Definition
argsplit.c:72
_argsplit_backend
const char ** _argsplit_backend(const char **argv, const char *str, uint64_t argc, uint64_t maxLen)
Definition
argsplit.c:100
_argsplit_step_state
bool _argsplit_step_state(_argsplit_state_t *state)
Definition
argsplit.c:3
stdbool.h
stdint.h
uint64_t
__UINT64_TYPE__ uint64_t
Definition
stdint.h:17
uint8_t
__UINT8_TYPE__ uint8_t
Definition
stdint.h:11
stdio.h
stdlib.h
string.h
_argsplit_state_t
Definition
argsplit.h:12
_argsplit_state_t::current
const char * current
Definition
argsplit.h:13
_argsplit_state_t::processedChars
uint64_t processedChars
Definition
argsplit.h:18
_argsplit_state_t::isNewArg
bool isNewArg
Definition
argsplit.h:16
_argsplit_state_t::inQuote
bool inQuote
Definition
argsplit.h:15
_argsplit_state_t::escaped
uint8_t escaped
Definition
argsplit.h:14
_argsplit_state_t::isFirst
bool isFirst
Definition
argsplit.h:17
_argsplit_state_t::maxLen
uint64_t maxLen
Definition
argsplit.h:19
src
libstd
common
argsplit.h
Generated by
1.9.8