BibParser.BibTeX.AccumulatorType
    mutable struct Accumulator

    A structure to accumulate part of the input stream as a simple string. It differs from Position that store line and column information.

    source
    BibParser.BibTeX.BibTeXErrorType
    BibTeXError

    Description of a BibTeXError, including the relevant position in the input string.

    Arguments:

    • kind::Symbol: the type of BibTeX error
    • input::String: the BibTeX string being parsed
    • start::Position: the row/col start position of the BibTeXError
    • stop::Position: the row/col end position of the BibTeXError
    source
    BibParser.BibTeX.ContentType
    Content

    Store the different BibTeX elements once succesfully parsed.

    Note:

    Free text, comments entries and preambles entries are currently ignored.

    source
    BibParser.BibTeX.ContentMethod
    Content()

    Create an (almost) empty content constructor for a new Parser. Some usual BibTeX content is added:

    • List of months abbreviations in English (added automatically by some BibTeX class)

    Feel free to contribute to more default content.

    source
    BibParser.BibTeX.FieldType
    Field

    A structure that can store BibTeX fields information.

    Arguments:

    • braces::Int: counter to the number of opened braces in a field being parsed
    • name::String: name of the field being parsed
    • quotes::Bool: true if the field is delimited by quotes
    • value::String: the value of the field
    source
    BibParser.BibTeX.ParserType
    Parser

    A structure allowing to parse a BibTeX formatted string one character at a time.

    Arguments:

    • acc::Accumulator: an accumulated string from last dump to content
    • content::Content: the current content of a parser
    • errors::Vector{BibTeXError}: a collection of BibTeX errors
    • field::Field: temporary storage for an entry fields names
    • input::Vector{Char}: the BibTeX string
    • pos_start::Position: pointer to the raw/col start position
    • pos_end::Position: pointer to the raw/col end position
    • storage::Storage: temporary storage of the content of an entry being parsed
    • task::Symbol: describe which part of the BibTeX gramma is being parsed
    source
    BibParser.BibTeX.StorageType
    Storage

    Store the content of an entry being parsed.

    Arguments:

    • delim::Union{Char, Nothing}: the character delimiting the entry
    • fields::Vector{Field}: a collection of the entry's fields
    • key::String: the key of the entry
    • kind::String: the kind/type of BibTeX entry
    source
    BibParser.BibTeX.dump!Function
    dump!(parser, char = ' ')

    Dump the content of the parser Accumulator into the parser Content. Dispatch to the appropriate dump! method according to the state of the parser.

    source
    BibParser.BibTeX.get_accMethod
    get_acc(parser; from = 1, to = 0)

    Retrieve the Accumulator of the parser.

    Arguments:

    • parser: a Parser
    • from: a positive offset from the start of the Accumulator, default to 1
    • to: a negative offset from the end of the Accumulator, default to 0
    source
    BibParser.BibTeX.inc!Method
    inc!(parser, char, dumped)

    Increment the start/end position and accumulator of the parser.

    Arguments:

    • parser: a BibTeX.Parser structure
    • char: the character being parsed
    • dumped: boolean value describing if the Accumulator content is being dumped into the parser Content
    source
    BibParser.BibTeX.is_dumpedMethod
    is_dumped(parser, char)

    Check if an Accumulator needs to be dump!ed. Dispatch to the appropriate is_dumped method according to the state of the parser.

    source