Module root_io::core::parsers[][src]

Functions

c_string

Parse a null terminated string

checked_byte_count

Return the size in bytes of the following object in the input. The count is the remainder of this object minus the size of the count.

class_name_and_buffer

Figure out the class we are looking at. This parser immediately resolves possible references returning the name of the object in this buffer and the associated data. This function needs a Context, though, which may not be available. If so, have a look at the classinfo parser.

classinfo

Figure out the class we are looking at. The data might not be saved locally but rather in a reference to some other place in the buffer.This is modeled after ROOT's TBufferFile::ReadObjectAny and TBufferFile::ReadClass

decompress

Decompress the given buffer. Figures out the compression algorithm from the preceeding "magic" bytes

parse_custom_mantissa

Some Double_* values are saved with a custom mantissa... The number of bytes can be found in the comment string of the generated YAML code (for ALICE ESD files at least). This function reconstructs a float from the exponent and mantissa

parse_tobjarray_of_tnameds

ESD trigger classes are strings describing a particular Trigger. Each event (but in reality every run) might have a different "menu" of available triggers. The trigger menu is saved as an TObjArray of TNamed objects for each event. This breaks it down to a simple vector

raw

Parse a Raw chunk from the given input buffer. This is usefull when one does not know the exact type at the time of parsing

raw_no_context

Same as raw but doesn't require a Context as input. Panics if a Context is required to parse the underlying buffer (i.e., the given buffer contains a reference to some other part of the file.

string

Read ROOT's version of short and long strings (preceeded by u8). Does not read null terminated!

tarray

Parse a so-called TArray. Note that ROOT's TArrays are actually not fixed size. Example usage for TArrayI: tarray(nom::complete::be_i32, input_slice)

tlist

Parse a TList

tnamed

Parser for TNamed objects

tobjarray

Parse a TObjArray

tobjarray_no_context

Parse a TObjArray which does not have references pointing outside of the input buffer

tobject

Parser for the most basic of ROOT types

tobjstring

Parser for TObjString