Skip to content
mathius edited this page Oct 9, 2014 · 1 revision

Welcome to the ProjectJSON wiki!

json/exception/.h - Definitions of different kind of exceptions are here. json/objects/.h - Definitions of different kind of objects (the result of the parser). json/parser/ - A lot of interesting things is there :)

json/parser/InputBuffer.h

Simple buffer for the input. The input can be either string (std::string) or opened file for reading (std::ifstream). The class InputBuffer allows you to read characters, skip over white spaces, and obtain and manipulate with position.

json/parser/Token.(h|cpp)

A class representing a token. Any token can be one of the type listed in the beginning of the Token.h file.

json/parser/Tokenizer.(h|cpp)

A class which reads the input from InputBuffer and transforms it into the Tokens. It can also parse numbers (integers and reals), strings, and few literals. This class contains the deterministic finite automaton.

json/parser/Parser.(h|cpp)

A class which is responsible to generate a tree of JSON objects in memory. It uses class Tokenizer to obtain tokens. This class contains the push down automaton.

json/json.(h|cpp)

A class which provides the interface for the user. It can also react to the exceptions and gives the information what is wrong to the user.

test.(h|cpp)

Small and quite not good framework for testing the JSON parser. This class really needs refactoring.

Clone this wiki locally