Functions | |
int | ur_parseBinary (UThread *ut, UBuffer *bin, UIndex start, UIndex end, UIndex *parsePos, const UBuffer *ruleBlk, int(*eval)(UThread *, const UCell *)) |
Parse a binary data format. | |
int | ur_parseBlock (UThread *ut, UBuffer *blk, UIndex start, UIndex end, UIndex *parsePos, const UBuffer *ruleBlk, int(*eval)(UThread *, const UCell *)) |
Parse a block using the parse language. | |
int | ur_parseString (UThread *ut, UBuffer *str, UIndex start, UIndex end, UIndex *parsePos, const UBuffer *ruleBlk, int(*eval)(UThread *, const UCell *), int matchCase) |
Parse a string using the parse language. |
int ur_parseBinary | ( | UThread * | ut, | |
UBuffer * | bin, | |||
UIndex | start, | |||
UIndex | end, | |||
UIndex * | parsePos, | |||
const UBuffer * | ruleBlk, | |||
int(*)(UThread *, const UCell *) | eval | |||
) |
Parse a binary data format.
bin | Input to parse, which must be in thread storage. | |
start | Starting byte in input. | |
end | Ending byte in input. | |
parsePos | Index in input where parse ended. | |
ruleBlk | Rules in the parse language. This block must be held and remain unchanged during the parsing. | |
eval | Evaluator callback to do paren values in rule. The callback must return UR_OK/UR_THROW. |
int ur_parseBlock | ( | UThread * | ut, | |
UBuffer * | blk, | |||
UIndex | start, | |||
UIndex | end, | |||
UIndex * | parsePos, | |||
const UBuffer * | ruleBlk, | |||
int(*)(UThread *, const UCell *) | eval | |||
) |
Parse a block using the parse language.
blk | Input to parse, which must be in thread storage. | |
start | Starting cell in input. | |
end | Ending cell in input. | |
parsePos | Index in input where parse ended. | |
ruleBlk | Rules in the parse language. This block must be held and remain unchanged during the parsing. | |
eval | Evaluator callback to do paren values in rule. The callback must return UR_OK/UR_THROW. |
int ur_parseString | ( | UThread * | ut, | |
UBuffer * | str, | |||
UIndex | start, | |||
UIndex | end, | |||
UIndex * | parsePos, | |||
const UBuffer * | ruleBlk, | |||
int(*)(UThread *, const UCell *) | eval, | |||
int | matchCase | |||
) |
Parse a string using the parse language.
UR_ENC_UTF8 strings are accepted but multi-byte characters are not handled.
str | Input to parse, which must be in thread storage. | |
start | Starting character in input. | |
end | Ending character in input. | |
parsePos | Index in input where parse ended. | |
ruleBlk | Rules in the parse language. This block must be held and remain unchanged during the parsing. | |
eval | Evaluator callback to do paren values in rule. The callback must return UR_OK/UR_THROW. | |
matchCase | Use character case when comparing strings. |