gemmi/cif.hpp file

Namespaces

namespace gemmi
namespace gemmi::cif
namespace gemmi::cif::rules

Classes

template<int TableVal>
struct gemmi::cif::rules::lookup_char
struct gemmi::cif::rules::nonblank_ch
struct gemmi::cif::rules::anyprint_ch
struct gemmi::cif::rules::comment
struct gemmi::cif::rules::whitespace
struct gemmi::cif::rules::ws_or_eof
struct gemmi::cif::rules::str_data
struct gemmi::cif::rules::str_loop
struct gemmi::cif::rules::str_global
struct gemmi::cif::rules::str_save
struct gemmi::cif::rules::str_stop
struct gemmi::cif::rules::keyword
template<typename Q>
struct gemmi::cif::rules::endq
template<typename Q>
struct gemmi::cif::rules::quoted_tail
template<typename Q>
struct gemmi::cif::rules::quoted
struct gemmi::cif::rules::singlequoted
struct gemmi::cif::rules::doublequoted
struct gemmi::cif::rules::field_sep
struct gemmi::cif::rules::textfield
struct gemmi::cif::rules::unquoted
struct gemmi::cif::rules::datablockname
struct gemmi::cif::rules::datablockheading
struct gemmi::cif::rules::tag
struct gemmi::cif::rules::simunq
struct gemmi::cif::rules::value
struct gemmi::cif::rules::item_tag
struct gemmi::cif::rules::item_value
struct gemmi::cif::rules::loop_tag
struct gemmi::cif::rules::loop_value
struct gemmi::cif::rules::loop_end
struct gemmi::cif::rules::loop
struct gemmi::cif::rules::missing_value
struct gemmi::cif::rules::dataitem
struct gemmi::cif::rules::framename
struct gemmi::cif::rules::endframe
struct gemmi::cif::rules::frame
struct gemmi::cif::rules::datablock
struct gemmi::cif::rules::content
struct gemmi::cif::rules::file
template<typename Rule>
struct gemmi::cif::Action
template<>
struct gemmi::cif::Action<rules::datablockname>
template<>
struct gemmi::cif::Action<rules::str_global>
template<>
struct gemmi::cif::Action<rules::framename>
template<>
struct gemmi::cif::Action<rules::endframe>
template<>
struct gemmi::cif::Action<rules::item_tag>
template<>
struct gemmi::cif::Action<rules::item_value>
template<>
struct gemmi::cif::Action<rules::str_loop>
template<>
struct gemmi::cif::Action<rules::loop_tag>
template<>
struct gemmi::cif::Action<rules::loop_value>
template<>
struct gemmi::cif::Action<rules::loop>
template<typename Rule>
struct gemmi::cif::CheckAction
template<>
struct gemmi::cif::CheckAction<rules::missing_value>

Typedefs

using ordinary_char = lookup_char<1>
using ws_char = lookup_char<2>

Functions

template<typename Rule>
auto error_message() -> const std::string&
template<typename Input>
void parse_input(Document& d, Input&& in)
template<typename Input>
auto read_input(Input&& in) -> Document
auto read_file(const std::string& filename) -> Document
auto read_string(const std::string& data) -> Document
auto read_memory(const char* data, size_t size, const char* name) -> Document
auto read_cstream(std::FILE* f, size_t bufsize, const char* name) -> Document
auto read_istream(std::istream& is, size_t bufsize, const char* name) -> Document
template<typename Input>
auto check_syntax(Input&& in, std::string* msg) -> bool
template<typename T>
auto read(T&& input) -> Document
template<typename T>
auto check_syntax_any(T&& input, std::string* msg) -> bool

Defines

#define error_msg(rule, msg)
#define GEMMI_CIF_FILE_INPUT(in, path)