scanner.h File Reference
`#include <proton/import_export.h>`
`#include <stddef.h>`
`#include <stdarg.h>`

Go to the source code of this file.

## Data Structures

struct | pn_token_t

## Typedefs

typedef struct pn_scanner_t | pn_scanner_t

## Enumerations

enum | pn_token_type_t { PN_TOK_LBRACE, PN_TOK_RBRACE, PN_TOK_LBRACKET, PN_TOK_RBRACKET, PN_TOK_EQUAL, PN_TOK_COMMA, PN_TOK_POS, PN_TOK_NEG, PN_TOK_DOT, PN_TOK_AT, PN_TOK_DOLLAR, PN_TOK_BINARY, PN_TOK_STRING, PN_TOK_SYMBOL, PN_TOK_ID, PN_TOK_FLOAT, PN_TOK_INT, PN_TOK_TRUE, PN_TOK_FALSE, PN_TOK_NULL, PN_TOK_EOS, PN_TOK_ERR }

## Functions

PN_EXTERN pn_scanner_t * | pn_scanner (void)
PN_EXTERN void | pn_scanner_free (pn_scanner_t *scanner)
PN_EXTERN pn_token_t | pn_scanner_token (pn_scanner_t *scanner)
PN_EXTERN int | pn_scanner_err (pn_scanner_t *scanner, int code, const char *fmt,...)
PN_EXTERN int | pn_scanner_verr (pn_scanner_t *scanner, int code, const char *fmt, va_list ap)
PN_EXTERN void | pn_scanner_line_info (pn_scanner_t *scanner, int *line, int *col)
PN_EXTERN int | pn_scanner_errno (pn_scanner_t *scanner)
PN_EXTERN const char * | pn_scanner_error (pn_scanner_t *scanner)
PN_EXTERN int | pn_scanner_start (pn_scanner_t *scanner, const char *input)
PN_EXTERN int | pn_scanner_scan (pn_scanner_t *scanner)
PN_EXTERN int | pn_scanner_shift (pn_scanner_t *scanner)

## Typedef Documentation

## pn_scanner_t

typedef struct pn_scanner_t pn_scanner_t

## Enumeration Type Documentation

## pn_token_type_t

enum pn_token_type_t

Enumerator
PN_TOK_LBRACE |
PN_TOK_RBRACE |
PN_TOK_LBRACKET |
PN_TOK_RBRACKET |
PN_TOK_EQUAL |
PN_TOK_COMMA |
PN_TOK_POS |
PN_TOK_NEG |
PN_TOK_DOT |
PN_TOK_AT |
PN_TOK_DOLLAR |
PN_TOK_BINARY |
PN_TOK_STRING |
PN_TOK_SYMBOL |
PN_TOK_ID |
PN_TOK_FLOAT |
PN_TOK_INT |
PN_TOK_TRUE |
PN_TOK_FALSE |
PN_TOK_NULL |
PN_TOK_EOS |
PN_TOK_ERR |

## Function Documentation

## pn_scanner()

PN_EXTERN pn_scanner_t* pn_scanner | ( | void |  | ) |

## pn_scanner_err()

PN_EXTERN int pn_scanner_err | ( | pn_scanner_t * | scanner,
|  | int | code,
|  | const char * | fmt,
|  |  | ...
| ) |  |

## pn_scanner_errno()

PN_EXTERN int pn_scanner_errno | ( | pn_scanner_t * | scanner | ) |

## pn_scanner_error()

PN_EXTERN const char* pn_scanner_error | ( | pn_scanner_t * | scanner | ) |

## pn_scanner_free()

PN_EXTERN void pn_scanner_free | ( | pn_scanner_t * | scanner | ) |

## pn_scanner_line_info()

PN_EXTERN void pn_scanner_line_info | ( | pn_scanner_t * | scanner,
|  | int * | line,
|  | int * | col
| ) |  |

## pn_scanner_scan()

PN_EXTERN int pn_scanner_scan | ( | pn_scanner_t * | scanner | ) |

## pn_scanner_shift()

PN_EXTERN int pn_scanner_shift | ( | pn_scanner_t * | scanner | ) |

## pn_scanner_start()

PN_EXTERN int pn_scanner_start | ( | pn_scanner_t * | scanner,
|  | const char * | input
| ) |  |

## pn_scanner_token()

PN_EXTERN pn_token_t pn_scanner_token | ( | pn_scanner_t * | scanner | ) |

## pn_scanner_verr()

PN_EXTERN int pn_scanner_verr | ( | pn_scanner_t * | scanner,
|  | int | code,
|  | const char * | fmt,
|  | va_list | ap
| ) |  |