Archeus 0.0.0
A C library and game engine that focuses on documentation
Loading...
Searching...
No Matches
parserlang.h File Reference
#include "arc/std/parser.h"

Go to the source code of this file.

Macros

#define ARC_PARSERLANG_TOKEN_NULL   0
 
#define ARC_PARSERLANG_TOKEN_NUMBER   1
 
#define ARC_PARSERLANG_TOKEN_ALPHA_LOWER_CHAR   2
 
#define ARC_PARSERLANG_TOKEN_ALPHA_UPPER_CHAR   3
 
#define ARC_PARSERLANG_TOKEN_WHITESPACE   4
 
#define ARC_PARSERLANG_TOKEN_NEWLINE_ID   5
 
#define ARC_PARSERLANG_TOKEN_NEWLINE_CHAR   '\n'
 
#define ARC_PARSERLANG_TOKEN_LESS_THAN_ID   6
 
#define ARC_PARSERLANG_TOKEN_LESS_THAN_CHAR   '<'
 
#define ARC_PARSERLANG_TOKEN_GREATER_THAN_ID   7
 
#define ARC_PARSERLANG_TOKEN_GREATER_THAN_CHAR   '>'
 
#define ARC_PARSERLANG_TOKEN_OR_ID   8
 
#define ARC_PARSERLANG_TOKEN_OR_CHAR   '|'
 
#define ARC_PARSERLANG_TOKEN_UNDERSCORE_ID   9
 
#define ARC_PARSERLANG_TOKEN_UNDERSCORE_CHAR   '_'
 
#define ARC_PARSERLANG_TOKEN_ARROW_ID   10
 
#define ARC_PARSERLANG_TOKEN_ARROW_CSTRING   "->"
 
#define ARC_PARSERLANG_LAMBDA   ARC_PARSER_TAG_LAMBDA
 
#define ARC_PARSERLANG_LINE   11
 
#define ARC_PARSERLANG_BODY   12
 
#define ARC_PARSERLANG_ARGUMENTS   13
 
#define ARC_PARSERLANG_ARGUMENT   14
 
#define ARC_PARSERLANG_TAG_OR_CONSTANT   15
 
#define ARC_PARSERLANG_CONSTANT   16
 
#define ARC_PARSERLANG_CONSTANT_BODY   17
 
#define ARC_PARSERLANG_CONSTANT_CHAR   18
 
#define ARC_PARSERLANG_TAG   19
 
#define ARC_PARSERLANG_VARIABLE   20
 
#define ARC_PARSERLANG_VARIABLE_BODY   21
 
#define ARC_PARSERLANG_VARIABLE_CHAR   22
 
#define ARC_PARSERLANG_ALPHA_CHAR   23
 
#define ARC_PARSERLANG_WHITESPACE   24
 

Functions

void ARC_ParserLang_CreateAsParser (ARC_Parser **parser, ARC_Parser_GetStringIdFn getStringIdFn)
 creates a parser for the Parser Lang
 

Macro Definition Documentation

◆ ARC_PARSERLANG_ALPHA_CHAR

#define ARC_PARSERLANG_ALPHA_CHAR   23

Definition at line 74 of file parserlang.h.

◆ ARC_PARSERLANG_ARGUMENT

#define ARC_PARSERLANG_ARGUMENT   14

Definition at line 65 of file parserlang.h.

◆ ARC_PARSERLANG_ARGUMENTS

#define ARC_PARSERLANG_ARGUMENTS   13

Definition at line 64 of file parserlang.h.

◆ ARC_PARSERLANG_BODY

#define ARC_PARSERLANG_BODY   12

Definition at line 63 of file parserlang.h.

◆ ARC_PARSERLANG_CONSTANT

#define ARC_PARSERLANG_CONSTANT   16

Definition at line 67 of file parserlang.h.

◆ ARC_PARSERLANG_CONSTANT_BODY

#define ARC_PARSERLANG_CONSTANT_BODY   17

Definition at line 68 of file parserlang.h.

◆ ARC_PARSERLANG_CONSTANT_CHAR

#define ARC_PARSERLANG_CONSTANT_CHAR   18

Definition at line 69 of file parserlang.h.

◆ ARC_PARSERLANG_LAMBDA

#define ARC_PARSERLANG_LAMBDA   ARC_PARSER_TAG_LAMBDA

Definition at line 61 of file parserlang.h.

◆ ARC_PARSERLANG_LINE

#define ARC_PARSERLANG_LINE   11

Definition at line 62 of file parserlang.h.

◆ ARC_PARSERLANG_TAG

#define ARC_PARSERLANG_TAG   19

Definition at line 70 of file parserlang.h.

◆ ARC_PARSERLANG_TAG_OR_CONSTANT

#define ARC_PARSERLANG_TAG_OR_CONSTANT   15

Definition at line 66 of file parserlang.h.

◆ ARC_PARSERLANG_TOKEN_ALPHA_LOWER_CHAR

#define ARC_PARSERLANG_TOKEN_ALPHA_LOWER_CHAR   2

Definition at line 43 of file parserlang.h.

◆ ARC_PARSERLANG_TOKEN_ALPHA_UPPER_CHAR

#define ARC_PARSERLANG_TOKEN_ALPHA_UPPER_CHAR   3

Definition at line 44 of file parserlang.h.

◆ ARC_PARSERLANG_TOKEN_ARROW_CSTRING

#define ARC_PARSERLANG_TOKEN_ARROW_CSTRING   "->"

Definition at line 59 of file parserlang.h.

◆ ARC_PARSERLANG_TOKEN_ARROW_ID

#define ARC_PARSERLANG_TOKEN_ARROW_ID   10

Definition at line 58 of file parserlang.h.

◆ ARC_PARSERLANG_TOKEN_GREATER_THAN_CHAR

#define ARC_PARSERLANG_TOKEN_GREATER_THAN_CHAR   '>'

Definition at line 52 of file parserlang.h.

◆ ARC_PARSERLANG_TOKEN_GREATER_THAN_ID

#define ARC_PARSERLANG_TOKEN_GREATER_THAN_ID   7

Definition at line 51 of file parserlang.h.

◆ ARC_PARSERLANG_TOKEN_LESS_THAN_CHAR

#define ARC_PARSERLANG_TOKEN_LESS_THAN_CHAR   '<'

Definition at line 50 of file parserlang.h.

◆ ARC_PARSERLANG_TOKEN_LESS_THAN_ID

#define ARC_PARSERLANG_TOKEN_LESS_THAN_ID   6

Definition at line 49 of file parserlang.h.

◆ ARC_PARSERLANG_TOKEN_NEWLINE_CHAR

#define ARC_PARSERLANG_TOKEN_NEWLINE_CHAR   '\n'

Definition at line 48 of file parserlang.h.

◆ ARC_PARSERLANG_TOKEN_NEWLINE_ID

#define ARC_PARSERLANG_TOKEN_NEWLINE_ID   5

Definition at line 47 of file parserlang.h.

◆ ARC_PARSERLANG_TOKEN_NULL

#define ARC_PARSERLANG_TOKEN_NULL   0

Definition at line 41 of file parserlang.h.

◆ ARC_PARSERLANG_TOKEN_NUMBER

#define ARC_PARSERLANG_TOKEN_NUMBER   1

Definition at line 42 of file parserlang.h.

◆ ARC_PARSERLANG_TOKEN_OR_CHAR

#define ARC_PARSERLANG_TOKEN_OR_CHAR   '|'

Definition at line 54 of file parserlang.h.

◆ ARC_PARSERLANG_TOKEN_OR_ID

#define ARC_PARSERLANG_TOKEN_OR_ID   8

Definition at line 53 of file parserlang.h.

◆ ARC_PARSERLANG_TOKEN_UNDERSCORE_CHAR

#define ARC_PARSERLANG_TOKEN_UNDERSCORE_CHAR   '_'

Definition at line 56 of file parserlang.h.

◆ ARC_PARSERLANG_TOKEN_UNDERSCORE_ID

#define ARC_PARSERLANG_TOKEN_UNDERSCORE_ID   9

Definition at line 55 of file parserlang.h.

◆ ARC_PARSERLANG_TOKEN_WHITESPACE

#define ARC_PARSERLANG_TOKEN_WHITESPACE   4

Definition at line 45 of file parserlang.h.

◆ ARC_PARSERLANG_VARIABLE

#define ARC_PARSERLANG_VARIABLE   20

Definition at line 71 of file parserlang.h.

◆ ARC_PARSERLANG_VARIABLE_BODY

#define ARC_PARSERLANG_VARIABLE_BODY   21

Definition at line 72 of file parserlang.h.

◆ ARC_PARSERLANG_VARIABLE_CHAR

#define ARC_PARSERLANG_VARIABLE_CHAR   22

Definition at line 73 of file parserlang.h.

◆ ARC_PARSERLANG_WHITESPACE

#define ARC_PARSERLANG_WHITESPACE   24

Definition at line 75 of file parserlang.h.

Function Documentation

◆ ARC_ParserLang_CreateAsParser()

void ARC_ParserLang_CreateAsParser ( ARC_Parser ** parser,
ARC_Parser_GetStringIdFn getStringIdFn )

creates a parser for the Parser Lang

Note
the rules will be inited for the parser lang
the parsed data will be saved as a vector of ARC_ParserLanguageTag
Parameters
[out]parserthe parser to create