SYMBOL INDEX (370 symbols across 37 files) FILE: example.cpp function main (line 30) | int main() FILE: generator.py function include (line 3) | def include(header, incs, root, included): function main (line 25) | def main(): FILE: include/cexpr/string.hpp type cexpr (line 7) | namespace cexpr class string (line 11) | class string method string (line 16) | constexpr string() noexcept : size_{ 0 }, string_{ 0 } method string (line 19) | constexpr string(const Char(&s)[N]) noexcept : string{} method string (line 27) | constexpr string(cexpr::string const& s) noexcept : string{} method string (line 35) | constexpr string(std::basic_string_view const& s) noexcept : s... method fill (line 46) | constexpr void fill(const Char* begin, const Char* end) noexcept method fill_from (line 51) | constexpr void fill_from(const Char* begin, const Char* end, Char* s... method capacity (line 62) | inline constexpr std::size_t capacity() const noexcept method size (line 67) | inline constexpr std::size_t size() const noexcept method Char (line 72) | inline constexpr Char* begin() noexcept method Char (line 76) | inline constexpr const Char* cbegin() const noexcept method Char (line 81) | inline constexpr Char* end() noexcept method Char (line 85) | inline constexpr const Char* cend() const noexcept method Char (line 90) | inline constexpr Char& operator[](std::size_t i) method Char (line 94) | inline constexpr Char const& operator[](std::size_t i) const FILE: include/ra/cross.hpp type ra (line 6) | namespace ra class cross (line 10) | class cross : public ra::join FILE: include/ra/join.hpp type ra (line 9) | namespace ra function recr_merge (line 16) | constexpr auto recr_merge() function merge (line 31) | inline constexpr auto merge() function recr_copy (line 44) | constexpr void recr_copy(Dest& dest, Row const& src) function copy (line 58) | inline constexpr void copy(Dest& dest, Row const& src) class join (line 73) | class join : public ra::binary method seed (line 82) | static inline void seed(Inputs const&... rs) method reset (line 88) | static inline void reset() FILE: include/ra/natural.hpp type ra (line 10) | namespace ra class natural (line 14) | class natural : public ra::join method seed (line 24) | static void seed(Inputs const&... rs) FILE: include/ra/operation.hpp type ra (line 5) | namespace ra class unary (line 9) | class unary method seed (line 15) | static inline void seed(Inputs const&... rs) method reset (line 20) | static inline void reset() class binary (line 27) | class binary method seed (line 34) | static inline void seed(Inputs const&... rs) method reset (line 40) | static inline void reset() FILE: include/ra/projection.hpp type ra (line 7) | namespace ra class projection (line 11) | class projection : public ra::unary method fold (line 26) | static inline constexpr void fold(Dest& dest, input_type const& src) FILE: include/ra/relation.hpp type ra (line 6) | namespace ra type data_end (line 9) | struct data_end : std::exception class relation (line 15) | class relation method seed (line 33) | static void seed(Input const& r, Inputs const&... rs) noexcept method reset (line 47) | static inline void reset() noexcept FILE: include/ra/rename.hpp type ra (line 7) | namespace ra class rename (line 11) | class rename : public ra::unary method fold (line 26) | static inline constexpr void fold(Dest& dest, Src const& src) FILE: include/ra/selection.hpp type ra (line 5) | namespace ra class selection (line 9) | class selection : public ra::unary FILE: include/sql/column.hpp type sql (line 5) | namespace sql type column (line 9) | struct column FILE: include/sql/index.hpp type sql (line 9) | namespace sql type index (line 13) | struct index type comparator (line 16) | struct comparator method compare (line 25) | bool compare(Row const& left, Row const& right) const noexcept FILE: include/sql/predicate.hpp type sql (line 7) | namespace sql type value (line 15) | struct value method value (line 17) | constexpr value(Type v) : val{ v } type operation (line 26) | struct operation method eval (line 28) | static constexpr bool eval(Row const& row) noexcept type variable (line 70) | struct variable method eval (line 72) | static constexpr auto eval(Row const& row) noexcept type constant (line 79) | struct constant method eval (line 81) | static constexpr auto eval([[maybe_unused]] Row const& row) noexcept FILE: include/sql/query.hpp type sql (line 23) | namespace sql type context (line 31) | struct context type colinfo (line 38) | struct colinfo function exists (line 46) | constexpr bool exists() noexcept function convert (line 66) | constexpr value convert(cexpr::string const& str) noexcept function isquote (line 99) | inline constexpr bool isquote(std::string_view const& tv) noexcept function isor (line 104) | inline constexpr bool isor(std::string_view const& tv) noexcept function isand (line 109) | inline constexpr bool isand(std::string_view const& tv) noexcept function isnot (line 114) | inline constexpr bool isnot(std::string_view const& tv) noexcept function isnatural (line 119) | inline constexpr bool isnatural(std::string_view const& tv) noexcept function isjoin (line 124) | inline constexpr bool isjoin(std::string_view const& tv) noexcept function iswhere (line 129) | inline constexpr bool iswhere(std::string_view const& tv) noexcept function isfrom (line 134) | inline constexpr bool isfrom(std::string_view const& tv) noexcept function isas (line 139) | inline constexpr bool isas(std::string_view const& tv) noexcept function isselect (line 144) | inline constexpr bool isselect(std::string_view const& tv) noexcept function iscomma (line 149) | inline constexpr bool iscomma(std::string_view const& tv) noexcept function isintegral (line 154) | constexpr bool isintegral(std::string_view const& tv) noexcept function isdigit (line 166) | constexpr bool isdigit(char c) noexcept function iscomp (line 171) | constexpr bool iscomp(char c) noexcept function iscolumn (line 176) | constexpr bool iscolumn(std::string_view const& tv) noexcept function isseparator (line 181) | constexpr bool isseparator(std::string_view const& tv) noexcept class query_iterator (line 190) | class query_iterator method query_iterator (line 196) | query_iterator(bool end) : end_{ end }, row_{} method row_type (line 211) | inline row_type const& operator*() const noexcept method query_iterator (line 216) | query_iterator& operator++() class query (line 239) | class query method parse_terms (line 244) | static constexpr auto parse_terms() method recurse_comparison (line 288) | static constexpr auto recurse_comparison() method parse_comparison (line 308) | static constexpr auto parse_comparison() method parse_negation (line 317) | static constexpr auto parse_negation() method recurse_and (line 336) | static constexpr auto recurse_and() method parse_and (line 355) | static constexpr auto parse_and() method recurse_or (line 364) | static constexpr auto recurse_or() method parse_or (line 383) | static constexpr auto parse_or() method recurse_schemas (line 392) | static constexpr auto recurse_schemas() method parse_schema (line 408) | static constexpr auto parse_schema() method choose_join (line 432) | static constexpr auto choose_join() method parse_join (line 446) | static constexpr auto parse_join() method parse_from (line 469) | static constexpr auto parse_from() method recurse_types (line 496) | static constexpr auto recurse_types() method column_type (line 512) | static constexpr auto column_type() method next_column (line 521) | static constexpr std::size_t next_column() method parse_colinfo (line 536) | static constexpr auto parse_colinfo() method recurse_columns (line 566) | static constexpr auto recurse_columns() method parse_projection (line 588) | static constexpr auto parse_projection() method parse_rename (line 601) | static constexpr auto parse_rename() method has_rename (line 613) | static constexpr bool has_rename() method parse_root (line 642) | static constexpr auto parse_root() method query (line 670) | query(Schemas const&... tables) method iterator (line 688) | inline iterator begin() const method iterator (line 693) | inline iterator end() const FILE: include/sql/row.hpp type sql (line 9) | namespace sql type void_row (line 12) | struct void_row class row (line 18) | class row method row (line 26) | row() = default; method row (line 29) | row(column::type const& val, ColTs const&... vals) : value_{ val }, ... method row (line 33) | row(column::type&& val, ColTs&&... vals) : value_{ std::forward> (line 136) | class tuple_size> : public integral_constant> (line 140) | struct tuple_element> FILE: include/sql/schema.hpp type sql (line 15) | namespace sql class schema (line 19) | class schema method schema (line 33) | schema() = default; method schema (line 36) | schema(std::vector const& col, Types const&... cols) : schema{} method schema (line 42) | schema(std::vector&& col, Types&&... cols) : schema{} method emplace (line 48) | inline void emplace(Types const&... vals) method emplace (line 61) | inline void emplace(Types&&... vals) method insert (line 74) | void insert(std::vector const& col, Types const&... cols) method insert (line 83) | void insert(std::vector&& col, Types&&... cols) method insert (line 91) | void insert(row_type const& row) method insert (line 103) | void insert(row_type&& row) method const_iterator (line 115) | inline const_iterator begin() const noexcept method const_iterator (line 120) | inline const_iterator end() const noexcept function fill (line 133) | void fill(std::fstream& fstr, Row& row, [[maybe_unused]] char delim) function fill (line 158) | void fill(std::fstream& fstr, Row const& row, char delim) function Schema (line 181) | Schema load(std::string const& file, char delim) function Schema (line 204) | inline Schema load(std::string const& file) function store (line 211) | void store(Type const& data, std::string const& file, char delim) function store (line 223) | inline void store(Type const& data, std::string const& file) FILE: include/sql/tokens.hpp type sql (line 10) | namespace sql function whitespace (line 16) | constexpr bool whitespace(Char curr) function syntax (line 22) | constexpr bool syntax(Char curr) function Char (line 29) | constexpr const Char* skip(const Char *curr, const Char *end) function Char (line 36) | constexpr const Char* next(const Char *curr, const Char *end) class tokens (line 64) | class tokens method tokens (line 69) | constexpr tokens() = default; method tokens (line 72) | constexpr tokens(cexpr::string const& cs) : tokens_{} method count (line 103) | constexpr std::size_t count() const noexcept method token_view (line 108) | constexpr token_view* begin() noexcept method token_view (line 112) | constexpr const token_view* cbegin() const noexcept method token_view (line 117) | constexpr token_view* end() noexcept method token_view (line 121) | constexpr const token_view* cend() const noexcept method token_view (line 126) | constexpr token_view& operator[](std::size_t i) method token_view (line 130) | constexpr token_view const& operator[](std::size_t i) const function preprocess (line 140) | constexpr std::size_t preprocess(cexpr::string const& cs) noe... FILE: single-header/sql.hpp type cexpr (line 16) | namespace cexpr class string (line 20) | class string method string (line 25) | constexpr string() noexcept : size_{ 0 }, string_{ 0 } method string (line 28) | constexpr string(const Char(&s)[N]) noexcept : string{} method string (line 36) | constexpr string(cexpr::string const& s) noexcept : string{} method string (line 44) | constexpr string(std::basic_string_view const& s) noexcept : s... method fill (line 55) | constexpr void fill(const Char* begin, const Char* end) noexcept method fill_from (line 60) | constexpr void fill_from(const Char* begin, const Char* end, Char* s... method capacity (line 71) | inline constexpr std::size_t capacity() const noexcept method size (line 76) | inline constexpr std::size_t size() const noexcept method Char (line 81) | inline constexpr Char* begin() noexcept method Char (line 85) | inline constexpr const Char* cbegin() const noexcept method Char (line 90) | inline constexpr Char* end() noexcept method Char (line 94) | inline constexpr const Char* cend() const noexcept method Char (line 99) | inline constexpr Char& operator[](std::size_t i) method Char (line 103) | inline constexpr Char const& operator[](std::size_t i) const type sql (line 170) | namespace sql type column (line 174) | struct column type void_row (line 186) | struct void_row class row (line 192) | class row method row (line 200) | row() = default; method row (line 203) | row(column::type const& val, ColTs const&... vals) : value_{ val }, ... method row (line 207) | row(column::type&& val, ColTs&&... vals) : value_{ std::forward const& col, Types const&... cols) : schema{} method schema (line 384) | schema(std::vector&& col, Types&&... cols) : schema{} method emplace (line 390) | inline void emplace(Types const&... vals) method emplace (line 403) | inline void emplace(Types&&... vals) method insert (line 416) | void insert(std::vector const& col, Types const&... cols) method insert (line 425) | void insert(std::vector&& col, Types&&... cols) method insert (line 433) | void insert(row_type const& row) method insert (line 445) | void insert(row_type&& row) method const_iterator (line 457) | inline const_iterator begin() const noexcept method const_iterator (line 462) | inline const_iterator end() const noexcept function fill (line 475) | void fill(std::fstream& fstr, Row& row, [[maybe_unused]] char delim) function fill (line 500) | void fill(std::fstream& fstr, Row const& row, char delim) function Schema (line 523) | Schema load(std::string const& file, char delim) function Schema (line 546) | inline Schema load(std::string const& file) function store (line 553) | void store(Type const& data, std::string const& file, char delim) function store (line 565) | inline void store(Type const& data, std::string const& file) function whitespace (line 989) | constexpr bool whitespace(Char curr) function syntax (line 995) | constexpr bool syntax(Char curr) function Char (line 1002) | constexpr const Char* skip(const Char *curr, const Char *end) function Char (line 1009) | constexpr const Char* next(const Char *curr, const Char *end) class tokens (line 1037) | class tokens method tokens (line 1042) | constexpr tokens() = default; method tokens (line 1045) | constexpr tokens(cexpr::string const& cs) : tokens_{} method count (line 1076) | constexpr std::size_t count() const noexcept method token_view (line 1081) | constexpr token_view* begin() noexcept method token_view (line 1085) | constexpr const token_view* cbegin() const noexcept method token_view (line 1090) | constexpr token_view* end() noexcept method token_view (line 1094) | constexpr const token_view* cend() const noexcept method token_view (line 1099) | constexpr token_view& operator[](std::size_t i) method token_view (line 1103) | constexpr token_view const& operator[](std::size_t i) const function preprocess (line 1113) | constexpr std::size_t preprocess(cexpr::string const& cs) noe... type value (line 1139) | struct value method value (line 1141) | constexpr value(Type v) : val{ v } type operation (line 1150) | struct operation method eval (line 1152) | static constexpr bool eval(Row const& row) noexcept type variable (line 1194) | struct variable method eval (line 1196) | static constexpr auto eval(Row const& row) noexcept type constant (line 1203) | struct constant method eval (line 1205) | static constexpr auto eval([[maybe_unused]] Row const& row) noexcept type context (line 1221) | struct context type colinfo (line 1228) | struct colinfo function exists (line 1236) | constexpr bool exists() noexcept function convert (line 1256) | constexpr value convert(cexpr::string const& str) noexcept function isquote (line 1289) | inline constexpr bool isquote(std::string_view const& tv) noexcept function isor (line 1294) | inline constexpr bool isor(std::string_view const& tv) noexcept function isand (line 1299) | inline constexpr bool isand(std::string_view const& tv) noexcept function isnot (line 1304) | inline constexpr bool isnot(std::string_view const& tv) noexcept function isnatural (line 1309) | inline constexpr bool isnatural(std::string_view const& tv) noexcept function isjoin (line 1314) | inline constexpr bool isjoin(std::string_view const& tv) noexcept function iswhere (line 1319) | inline constexpr bool iswhere(std::string_view const& tv) noexcept function isfrom (line 1324) | inline constexpr bool isfrom(std::string_view const& tv) noexcept function isas (line 1329) | inline constexpr bool isas(std::string_view const& tv) noexcept function isselect (line 1334) | inline constexpr bool isselect(std::string_view const& tv) noexcept function iscomma (line 1339) | inline constexpr bool iscomma(std::string_view const& tv) noexcept function isintegral (line 1344) | constexpr bool isintegral(std::string_view const& tv) noexcept function isdigit (line 1356) | constexpr bool isdigit(char c) noexcept function iscomp (line 1361) | constexpr bool iscomp(char c) noexcept function iscolumn (line 1366) | constexpr bool iscolumn(std::string_view const& tv) noexcept function isseparator (line 1371) | constexpr bool isseparator(std::string_view const& tv) noexcept class query_iterator (line 1380) | class query_iterator method query_iterator (line 1386) | query_iterator(bool end) : end_{ end }, row_{} method row_type (line 1401) | inline row_type const& operator*() const noexcept method query_iterator (line 1406) | query_iterator& operator++() class query (line 1429) | class query method parse_terms (line 1434) | static constexpr auto parse_terms() method recurse_comparison (line 1478) | static constexpr auto recurse_comparison() method parse_comparison (line 1498) | static constexpr auto parse_comparison() method parse_negation (line 1507) | static constexpr auto parse_negation() method recurse_and (line 1526) | static constexpr auto recurse_and() method parse_and (line 1545) | static constexpr auto parse_and() method recurse_or (line 1554) | static constexpr auto recurse_or() method parse_or (line 1573) | static constexpr auto parse_or() method recurse_schemas (line 1582) | static constexpr auto recurse_schemas() method parse_schema (line 1598) | static constexpr auto parse_schema() method choose_join (line 1622) | static constexpr auto choose_join() method parse_join (line 1636) | static constexpr auto parse_join() method parse_from (line 1659) | static constexpr auto parse_from() method recurse_types (line 1686) | static constexpr auto recurse_types() method column_type (line 1702) | static constexpr auto column_type() method next_column (line 1711) | static constexpr std::size_t next_column() method parse_colinfo (line 1726) | static constexpr auto parse_colinfo() method recurse_columns (line 1756) | static constexpr auto recurse_columns() method parse_projection (line 1778) | static constexpr auto parse_projection() method parse_rename (line 1791) | static constexpr auto parse_rename() method has_rename (line 1803) | static constexpr bool has_rename() method parse_root (line 1832) | static constexpr auto parse_root() method query (line 1860) | query(Schemas const&... tables) method iterator (line 1878) | inline iterator begin() const method iterator (line 1883) | inline iterator end() const type sql (line 183) | namespace sql type column (line 174) | struct column type void_row (line 186) | struct void_row class row (line 192) | class row method row (line 200) | row() = default; method row (line 203) | row(column::type const& val, ColTs const&... vals) : value_{ val }, ... method row (line 207) | row(column::type&& val, ColTs&&... vals) : value_{ std::forward const& col, Types const&... cols) : schema{} method schema (line 384) | schema(std::vector&& col, Types&&... cols) : schema{} method emplace (line 390) | inline void emplace(Types const&... vals) method emplace (line 403) | inline void emplace(Types&&... vals) method insert (line 416) | void insert(std::vector const& col, Types const&... cols) method insert (line 425) | void insert(std::vector&& col, Types&&... cols) method insert (line 433) | void insert(row_type const& row) method insert (line 445) | void insert(row_type&& row) method const_iterator (line 457) | inline const_iterator begin() const noexcept method const_iterator (line 462) | inline const_iterator end() const noexcept function fill (line 475) | void fill(std::fstream& fstr, Row& row, [[maybe_unused]] char delim) function fill (line 500) | void fill(std::fstream& fstr, Row const& row, char delim) function Schema (line 523) | Schema load(std::string const& file, char delim) function Schema (line 546) | inline Schema load(std::string const& file) function store (line 553) | void store(Type const& data, std::string const& file, char delim) function store (line 565) | inline void store(Type const& data, std::string const& file) function whitespace (line 989) | constexpr bool whitespace(Char curr) function syntax (line 995) | constexpr bool syntax(Char curr) function Char (line 1002) | constexpr const Char* skip(const Char *curr, const Char *end) function Char (line 1009) | constexpr const Char* next(const Char *curr, const Char *end) class tokens (line 1037) | class tokens method tokens (line 1042) | constexpr tokens() = default; method tokens (line 1045) | constexpr tokens(cexpr::string const& cs) : tokens_{} method count (line 1076) | constexpr std::size_t count() const noexcept method token_view (line 1081) | constexpr token_view* begin() noexcept method token_view (line 1085) | constexpr const token_view* cbegin() const noexcept method token_view (line 1090) | constexpr token_view* end() noexcept method token_view (line 1094) | constexpr const token_view* cend() const noexcept method token_view (line 1099) | constexpr token_view& operator[](std::size_t i) method token_view (line 1103) | constexpr token_view const& operator[](std::size_t i) const function preprocess (line 1113) | constexpr std::size_t preprocess(cexpr::string const& cs) noe... type value (line 1139) | struct value method value (line 1141) | constexpr value(Type v) : val{ v } type operation (line 1150) | struct operation method eval (line 1152) | static constexpr bool eval(Row const& row) noexcept type variable (line 1194) | struct variable method eval (line 1196) | static constexpr auto eval(Row const& row) noexcept type constant (line 1203) | struct constant method eval (line 1205) | static constexpr auto eval([[maybe_unused]] Row const& row) noexcept type context (line 1221) | struct context type colinfo (line 1228) | struct colinfo function exists (line 1236) | constexpr bool exists() noexcept function convert (line 1256) | constexpr value convert(cexpr::string const& str) noexcept function isquote (line 1289) | inline constexpr bool isquote(std::string_view const& tv) noexcept function isor (line 1294) | inline constexpr bool isor(std::string_view const& tv) noexcept function isand (line 1299) | inline constexpr bool isand(std::string_view const& tv) noexcept function isnot (line 1304) | inline constexpr bool isnot(std::string_view const& tv) noexcept function isnatural (line 1309) | inline constexpr bool isnatural(std::string_view const& tv) noexcept function isjoin (line 1314) | inline constexpr bool isjoin(std::string_view const& tv) noexcept function iswhere (line 1319) | inline constexpr bool iswhere(std::string_view const& tv) noexcept function isfrom (line 1324) | inline constexpr bool isfrom(std::string_view const& tv) noexcept function isas (line 1329) | inline constexpr bool isas(std::string_view const& tv) noexcept function isselect (line 1334) | inline constexpr bool isselect(std::string_view const& tv) noexcept function iscomma (line 1339) | inline constexpr bool iscomma(std::string_view const& tv) noexcept function isintegral (line 1344) | constexpr bool isintegral(std::string_view const& tv) noexcept function isdigit (line 1356) | constexpr bool isdigit(char c) noexcept function iscomp (line 1361) | constexpr bool iscomp(char c) noexcept function iscolumn (line 1366) | constexpr bool iscolumn(std::string_view const& tv) noexcept function isseparator (line 1371) | constexpr bool isseparator(std::string_view const& tv) noexcept class query_iterator (line 1380) | class query_iterator method query_iterator (line 1386) | query_iterator(bool end) : end_{ end }, row_{} method row_type (line 1401) | inline row_type const& operator*() const noexcept method query_iterator (line 1406) | query_iterator& operator++() class query (line 1429) | class query method parse_terms (line 1434) | static constexpr auto parse_terms() method recurse_comparison (line 1478) | static constexpr auto recurse_comparison() method parse_comparison (line 1498) | static constexpr auto parse_comparison() method parse_negation (line 1507) | static constexpr auto parse_negation() method recurse_and (line 1526) | static constexpr auto recurse_and() method parse_and (line 1545) | static constexpr auto parse_and() method recurse_or (line 1554) | static constexpr auto recurse_or() method parse_or (line 1573) | static constexpr auto parse_or() method recurse_schemas (line 1582) | static constexpr auto recurse_schemas() method parse_schema (line 1598) | static constexpr auto parse_schema() method choose_join (line 1622) | static constexpr auto choose_join() method parse_join (line 1636) | static constexpr auto parse_join() method parse_from (line 1659) | static constexpr auto parse_from() method recurse_types (line 1686) | static constexpr auto recurse_types() method column_type (line 1702) | static constexpr auto column_type() method next_column (line 1711) | static constexpr std::size_t next_column() method parse_colinfo (line 1726) | static constexpr auto parse_colinfo() method recurse_columns (line 1756) | static constexpr auto recurse_columns() method parse_projection (line 1778) | static constexpr auto parse_projection() method parse_rename (line 1791) | static constexpr auto parse_rename() method has_rename (line 1803) | static constexpr bool has_rename() method parse_root (line 1832) | static constexpr auto parse_root() method query (line 1860) | query(Schemas const&... tables) method iterator (line 1878) | inline iterator begin() const method iterator (line 1883) | inline iterator end() const type std (line 306) | namespace std class tuple_size> (line 310) | class tuple_size> : public integral_constant> (line 314) | struct tuple_element> type sql (line 321) | namespace sql type column (line 174) | struct column type void_row (line 186) | struct void_row class row (line 192) | class row method row (line 200) | row() = default; method row (line 203) | row(column::type const& val, ColTs const&... vals) : value_{ val }, ... method row (line 207) | row(column::type&& val, ColTs&&... vals) : value_{ std::forward const& col, Types const&... cols) : schema{} method schema (line 384) | schema(std::vector&& col, Types&&... cols) : schema{} method emplace (line 390) | inline void emplace(Types const&... vals) method emplace (line 403) | inline void emplace(Types&&... vals) method insert (line 416) | void insert(std::vector const& col, Types const&... cols) method insert (line 425) | void insert(std::vector&& col, Types&&... cols) method insert (line 433) | void insert(row_type const& row) method insert (line 445) | void insert(row_type&& row) method const_iterator (line 457) | inline const_iterator begin() const noexcept method const_iterator (line 462) | inline const_iterator end() const noexcept function fill (line 475) | void fill(std::fstream& fstr, Row& row, [[maybe_unused]] char delim) function fill (line 500) | void fill(std::fstream& fstr, Row const& row, char delim) function Schema (line 523) | Schema load(std::string const& file, char delim) function Schema (line 546) | inline Schema load(std::string const& file) function store (line 553) | void store(Type const& data, std::string const& file, char delim) function store (line 565) | inline void store(Type const& data, std::string const& file) function whitespace (line 989) | constexpr bool whitespace(Char curr) function syntax (line 995) | constexpr bool syntax(Char curr) function Char (line 1002) | constexpr const Char* skip(const Char *curr, const Char *end) function Char (line 1009) | constexpr const Char* next(const Char *curr, const Char *end) class tokens (line 1037) | class tokens method tokens (line 1042) | constexpr tokens() = default; method tokens (line 1045) | constexpr tokens(cexpr::string const& cs) : tokens_{} method count (line 1076) | constexpr std::size_t count() const noexcept method token_view (line 1081) | constexpr token_view* begin() noexcept method token_view (line 1085) | constexpr const token_view* cbegin() const noexcept method token_view (line 1090) | constexpr token_view* end() noexcept method token_view (line 1094) | constexpr const token_view* cend() const noexcept method token_view (line 1099) | constexpr token_view& operator[](std::size_t i) method token_view (line 1103) | constexpr token_view const& operator[](std::size_t i) const function preprocess (line 1113) | constexpr std::size_t preprocess(cexpr::string const& cs) noe... type value (line 1139) | struct value method value (line 1141) | constexpr value(Type v) : val{ v } type operation (line 1150) | struct operation method eval (line 1152) | static constexpr bool eval(Row const& row) noexcept type variable (line 1194) | struct variable method eval (line 1196) | static constexpr auto eval(Row const& row) noexcept type constant (line 1203) | struct constant method eval (line 1205) | static constexpr auto eval([[maybe_unused]] Row const& row) noexcept type context (line 1221) | struct context type colinfo (line 1228) | struct colinfo function exists (line 1236) | constexpr bool exists() noexcept function convert (line 1256) | constexpr value convert(cexpr::string const& str) noexcept function isquote (line 1289) | inline constexpr bool isquote(std::string_view const& tv) noexcept function isor (line 1294) | inline constexpr bool isor(std::string_view const& tv) noexcept function isand (line 1299) | inline constexpr bool isand(std::string_view const& tv) noexcept function isnot (line 1304) | inline constexpr bool isnot(std::string_view const& tv) noexcept function isnatural (line 1309) | inline constexpr bool isnatural(std::string_view const& tv) noexcept function isjoin (line 1314) | inline constexpr bool isjoin(std::string_view const& tv) noexcept function iswhere (line 1319) | inline constexpr bool iswhere(std::string_view const& tv) noexcept function isfrom (line 1324) | inline constexpr bool isfrom(std::string_view const& tv) noexcept function isas (line 1329) | inline constexpr bool isas(std::string_view const& tv) noexcept function isselect (line 1334) | inline constexpr bool isselect(std::string_view const& tv) noexcept function iscomma (line 1339) | inline constexpr bool iscomma(std::string_view const& tv) noexcept function isintegral (line 1344) | constexpr bool isintegral(std::string_view const& tv) noexcept function isdigit (line 1356) | constexpr bool isdigit(char c) noexcept function iscomp (line 1361) | constexpr bool iscomp(char c) noexcept function iscolumn (line 1366) | constexpr bool iscolumn(std::string_view const& tv) noexcept function isseparator (line 1371) | constexpr bool isseparator(std::string_view const& tv) noexcept class query_iterator (line 1380) | class query_iterator method query_iterator (line 1386) | query_iterator(bool end) : end_{ end }, row_{} method row_type (line 1401) | inline row_type const& operator*() const noexcept method query_iterator (line 1406) | query_iterator& operator++() class query (line 1429) | class query method parse_terms (line 1434) | static constexpr auto parse_terms() method recurse_comparison (line 1478) | static constexpr auto recurse_comparison() method parse_comparison (line 1498) | static constexpr auto parse_comparison() method parse_negation (line 1507) | static constexpr auto parse_negation() method recurse_and (line 1526) | static constexpr auto recurse_and() method parse_and (line 1545) | static constexpr auto parse_and() method recurse_or (line 1554) | static constexpr auto recurse_or() method parse_or (line 1573) | static constexpr auto parse_or() method recurse_schemas (line 1582) | static constexpr auto recurse_schemas() method parse_schema (line 1598) | static constexpr auto parse_schema() method choose_join (line 1622) | static constexpr auto choose_join() method parse_join (line 1636) | static constexpr auto parse_join() method parse_from (line 1659) | static constexpr auto parse_from() method recurse_types (line 1686) | static constexpr auto recurse_types() method column_type (line 1702) | static constexpr auto column_type() method next_column (line 1711) | static constexpr std::size_t next_column() method parse_colinfo (line 1726) | static constexpr auto parse_colinfo() method recurse_columns (line 1756) | static constexpr auto recurse_columns() method parse_projection (line 1778) | static constexpr auto parse_projection() method parse_rename (line 1791) | static constexpr auto parse_rename() method has_rename (line 1803) | static constexpr bool has_rename() method parse_root (line 1832) | static constexpr auto parse_root() method query (line 1860) | query(Schemas const&... tables) method iterator (line 1878) | inline iterator begin() const method iterator (line 1883) | inline iterator end() const type sql (line 357) | namespace sql type column (line 174) | struct column type void_row (line 186) | struct void_row class row (line 192) | class row method row (line 200) | row() = default; method row (line 203) | row(column::type const& val, ColTs const&... vals) : value_{ val }, ... method row (line 207) | row(column::type&& val, ColTs&&... vals) : value_{ std::forward const& col, Types const&... cols) : schema{} method schema (line 384) | schema(std::vector&& col, Types&&... cols) : schema{} method emplace (line 390) | inline void emplace(Types const&... vals) method emplace (line 403) | inline void emplace(Types&&... vals) method insert (line 416) | void insert(std::vector const& col, Types const&... cols) method insert (line 425) | void insert(std::vector&& col, Types&&... cols) method insert (line 433) | void insert(row_type const& row) method insert (line 445) | void insert(row_type&& row) method const_iterator (line 457) | inline const_iterator begin() const noexcept method const_iterator (line 462) | inline const_iterator end() const noexcept function fill (line 475) | void fill(std::fstream& fstr, Row& row, [[maybe_unused]] char delim) function fill (line 500) | void fill(std::fstream& fstr, Row const& row, char delim) function Schema (line 523) | Schema load(std::string const& file, char delim) function Schema (line 546) | inline Schema load(std::string const& file) function store (line 553) | void store(Type const& data, std::string const& file, char delim) function store (line 565) | inline void store(Type const& data, std::string const& file) function whitespace (line 989) | constexpr bool whitespace(Char curr) function syntax (line 995) | constexpr bool syntax(Char curr) function Char (line 1002) | constexpr const Char* skip(const Char *curr, const Char *end) function Char (line 1009) | constexpr const Char* next(const Char *curr, const Char *end) class tokens (line 1037) | class tokens method tokens (line 1042) | constexpr tokens() = default; method tokens (line 1045) | constexpr tokens(cexpr::string const& cs) : tokens_{} method count (line 1076) | constexpr std::size_t count() const noexcept method token_view (line 1081) | constexpr token_view* begin() noexcept method token_view (line 1085) | constexpr const token_view* cbegin() const noexcept method token_view (line 1090) | constexpr token_view* end() noexcept method token_view (line 1094) | constexpr const token_view* cend() const noexcept method token_view (line 1099) | constexpr token_view& operator[](std::size_t i) method token_view (line 1103) | constexpr token_view const& operator[](std::size_t i) const function preprocess (line 1113) | constexpr std::size_t preprocess(cexpr::string const& cs) noe... type value (line 1139) | struct value method value (line 1141) | constexpr value(Type v) : val{ v } type operation (line 1150) | struct operation method eval (line 1152) | static constexpr bool eval(Row const& row) noexcept type variable (line 1194) | struct variable method eval (line 1196) | static constexpr auto eval(Row const& row) noexcept type constant (line 1203) | struct constant method eval (line 1205) | static constexpr auto eval([[maybe_unused]] Row const& row) noexcept type context (line 1221) | struct context type colinfo (line 1228) | struct colinfo function exists (line 1236) | constexpr bool exists() noexcept function convert (line 1256) | constexpr value convert(cexpr::string const& str) noexcept function isquote (line 1289) | inline constexpr bool isquote(std::string_view const& tv) noexcept function isor (line 1294) | inline constexpr bool isor(std::string_view const& tv) noexcept function isand (line 1299) | inline constexpr bool isand(std::string_view const& tv) noexcept function isnot (line 1304) | inline constexpr bool isnot(std::string_view const& tv) noexcept function isnatural (line 1309) | inline constexpr bool isnatural(std::string_view const& tv) noexcept function isjoin (line 1314) | inline constexpr bool isjoin(std::string_view const& tv) noexcept function iswhere (line 1319) | inline constexpr bool iswhere(std::string_view const& tv) noexcept function isfrom (line 1324) | inline constexpr bool isfrom(std::string_view const& tv) noexcept function isas (line 1329) | inline constexpr bool isas(std::string_view const& tv) noexcept function isselect (line 1334) | inline constexpr bool isselect(std::string_view const& tv) noexcept function iscomma (line 1339) | inline constexpr bool iscomma(std::string_view const& tv) noexcept function isintegral (line 1344) | constexpr bool isintegral(std::string_view const& tv) noexcept function isdigit (line 1356) | constexpr bool isdigit(char c) noexcept function iscomp (line 1361) | constexpr bool iscomp(char c) noexcept function iscolumn (line 1366) | constexpr bool iscolumn(std::string_view const& tv) noexcept function isseparator (line 1371) | constexpr bool isseparator(std::string_view const& tv) noexcept class query_iterator (line 1380) | class query_iterator method query_iterator (line 1386) | query_iterator(bool end) : end_{ end }, row_{} method row_type (line 1401) | inline row_type const& operator*() const noexcept method query_iterator (line 1406) | query_iterator& operator++() class query (line 1429) | class query method parse_terms (line 1434) | static constexpr auto parse_terms() method recurse_comparison (line 1478) | static constexpr auto recurse_comparison() method parse_comparison (line 1498) | static constexpr auto parse_comparison() method parse_negation (line 1507) | static constexpr auto parse_negation() method recurse_and (line 1526) | static constexpr auto recurse_and() method parse_and (line 1545) | static constexpr auto parse_and() method recurse_or (line 1554) | static constexpr auto recurse_or() method parse_or (line 1573) | static constexpr auto parse_or() method recurse_schemas (line 1582) | static constexpr auto recurse_schemas() method parse_schema (line 1598) | static constexpr auto parse_schema() method choose_join (line 1622) | static constexpr auto choose_join() method parse_join (line 1636) | static constexpr auto parse_join() method parse_from (line 1659) | static constexpr auto parse_from() method recurse_types (line 1686) | static constexpr auto recurse_types() method column_type (line 1702) | static constexpr auto column_type() method next_column (line 1711) | static constexpr std::size_t next_column() method parse_colinfo (line 1726) | static constexpr auto parse_colinfo() method recurse_columns (line 1756) | static constexpr auto recurse_columns() method parse_projection (line 1778) | static constexpr auto parse_projection() method parse_rename (line 1791) | static constexpr auto parse_rename() method has_rename (line 1803) | static constexpr bool has_rename() method parse_root (line 1832) | static constexpr auto parse_root() method query (line 1860) | query(Schemas const&... tables) method iterator (line 1878) | inline iterator begin() const method iterator (line 1883) | inline iterator end() const type ra (line 572) | namespace ra class unary (line 576) | class unary method seed (line 582) | static inline void seed(Inputs const&... rs) method reset (line 587) | static inline void reset() class binary (line 594) | class binary method seed (line 601) | static inline void seed(Inputs const&... rs) method reset (line 607) | static inline void reset() function recr_merge (line 623) | constexpr auto recr_merge() function merge (line 638) | inline constexpr auto merge() function recr_copy (line 651) | constexpr void recr_copy(Dest& dest, Row const& src) function copy (line 665) | inline constexpr void copy(Dest& dest, Row const& src) class join (line 680) | class join : public ra::binary method seed (line 689) | static inline void seed(Inputs const&... rs) method reset (line 695) | static inline void reset() type data_end (line 712) | struct data_end : std::exception class relation (line 718) | class relation method seed (line 736) | static void seed(Input const& r, Inputs const&... rs) noexcept method reset (line 750) | static inline void reset() noexcept class cross (line 776) | class cross : public ra::join class natural (line 805) | class natural : public ra::join method seed (line 815) | static void seed(Inputs const&... rs) class projection (line 876) | class projection : public ra::unary method fold (line 891) | static inline constexpr void fold(Dest& dest, input_type const& src) class rename (line 916) | class rename : public ra::unary method fold (line 931) | static inline constexpr void fold(Dest& dest, Src const& src) class selection (line 956) | class selection : public ra::unary type ra (line 616) | namespace ra class unary (line 576) | class unary method seed (line 582) | static inline void seed(Inputs const&... rs) method reset (line 587) | static inline void reset() class binary (line 594) | class binary method seed (line 601) | static inline void seed(Inputs const&... rs) method reset (line 607) | static inline void reset() function recr_merge (line 623) | constexpr auto recr_merge() function merge (line 638) | inline constexpr auto merge() function recr_copy (line 651) | constexpr void recr_copy(Dest& dest, Row const& src) function copy (line 665) | inline constexpr void copy(Dest& dest, Row const& src) class join (line 680) | class join : public ra::binary method seed (line 689) | static inline void seed(Inputs const&... rs) method reset (line 695) | static inline void reset() type data_end (line 712) | struct data_end : std::exception class relation (line 718) | class relation method seed (line 736) | static void seed(Input const& r, Inputs const&... rs) noexcept method reset (line 750) | static inline void reset() noexcept class cross (line 776) | class cross : public ra::join class natural (line 805) | class natural : public ra::join method seed (line 815) | static void seed(Inputs const&... rs) class projection (line 876) | class projection : public ra::unary method fold (line 891) | static inline constexpr void fold(Dest& dest, input_type const& src) class rename (line 916) | class rename : public ra::unary method fold (line 931) | static inline constexpr void fold(Dest& dest, Src const& src) class selection (line 956) | class selection : public ra::unary type ra (line 709) | namespace ra class unary (line 576) | class unary method seed (line 582) | static inline void seed(Inputs const&... rs) method reset (line 587) | static inline void reset() class binary (line 594) | class binary method seed (line 601) | static inline void seed(Inputs const&... rs) method reset (line 607) | static inline void reset() function recr_merge (line 623) | constexpr auto recr_merge() function merge (line 638) | inline constexpr auto merge() function recr_copy (line 651) | constexpr void recr_copy(Dest& dest, Row const& src) function copy (line 665) | inline constexpr void copy(Dest& dest, Row const& src) class join (line 680) | class join : public ra::binary method seed (line 689) | static inline void seed(Inputs const&... rs) method reset (line 695) | static inline void reset() type data_end (line 712) | struct data_end : std::exception class relation (line 718) | class relation method seed (line 736) | static void seed(Input const& r, Inputs const&... rs) noexcept method reset (line 750) | static inline void reset() noexcept class cross (line 776) | class cross : public ra::join class natural (line 805) | class natural : public ra::join method seed (line 815) | static void seed(Inputs const&... rs) class projection (line 876) | class projection : public ra::unary method fold (line 891) | static inline constexpr void fold(Dest& dest, input_type const& src) class rename (line 916) | class rename : public ra::unary method fold (line 931) | static inline constexpr void fold(Dest& dest, Src const& src) class selection (line 956) | class selection : public ra::unary type ra (line 772) | namespace ra class unary (line 576) | class unary method seed (line 582) | static inline void seed(Inputs const&... rs) method reset (line 587) | static inline void reset() class binary (line 594) | class binary method seed (line 601) | static inline void seed(Inputs const&... rs) method reset (line 607) | static inline void reset() function recr_merge (line 623) | constexpr auto recr_merge() function merge (line 638) | inline constexpr auto merge() function recr_copy (line 651) | constexpr void recr_copy(Dest& dest, Row const& src) function copy (line 665) | inline constexpr void copy(Dest& dest, Row const& src) class join (line 680) | class join : public ra::binary method seed (line 689) | static inline void seed(Inputs const&... rs) method reset (line 695) | static inline void reset() type data_end (line 712) | struct data_end : std::exception class relation (line 718) | class relation method seed (line 736) | static void seed(Input const& r, Inputs const&... rs) noexcept method reset (line 750) | static inline void reset() noexcept class cross (line 776) | class cross : public ra::join class natural (line 805) | class natural : public ra::join method seed (line 815) | static void seed(Inputs const&... rs) class projection (line 876) | class projection : public ra::unary method fold (line 891) | static inline constexpr void fold(Dest& dest, input_type const& src) class rename (line 916) | class rename : public ra::unary method fold (line 931) | static inline constexpr void fold(Dest& dest, Src const& src) class selection (line 956) | class selection : public ra::unary type ra (line 801) | namespace ra class unary (line 576) | class unary method seed (line 582) | static inline void seed(Inputs const&... rs) method reset (line 587) | static inline void reset() class binary (line 594) | class binary method seed (line 601) | static inline void seed(Inputs const&... rs) method reset (line 607) | static inline void reset() function recr_merge (line 623) | constexpr auto recr_merge() function merge (line 638) | inline constexpr auto merge() function recr_copy (line 651) | constexpr void recr_copy(Dest& dest, Row const& src) function copy (line 665) | inline constexpr void copy(Dest& dest, Row const& src) class join (line 680) | class join : public ra::binary method seed (line 689) | static inline void seed(Inputs const&... rs) method reset (line 695) | static inline void reset() type data_end (line 712) | struct data_end : std::exception class relation (line 718) | class relation method seed (line 736) | static void seed(Input const& r, Inputs const&... rs) noexcept method reset (line 750) | static inline void reset() noexcept class cross (line 776) | class cross : public ra::join class natural (line 805) | class natural : public ra::join method seed (line 815) | static void seed(Inputs const&... rs) class projection (line 876) | class projection : public ra::unary method fold (line 891) | static inline constexpr void fold(Dest& dest, input_type const& src) class rename (line 916) | class rename : public ra::unary method fold (line 931) | static inline constexpr void fold(Dest& dest, Src const& src) class selection (line 956) | class selection : public ra::unary type ra (line 872) | namespace ra class unary (line 576) | class unary method seed (line 582) | static inline void seed(Inputs const&... rs) method reset (line 587) | static inline void reset() class binary (line 594) | class binary method seed (line 601) | static inline void seed(Inputs const&... rs) method reset (line 607) | static inline void reset() function recr_merge (line 623) | constexpr auto recr_merge() function merge (line 638) | inline constexpr auto merge() function recr_copy (line 651) | constexpr void recr_copy(Dest& dest, Row const& src) function copy (line 665) | inline constexpr void copy(Dest& dest, Row const& src) class join (line 680) | class join : public ra::binary method seed (line 689) | static inline void seed(Inputs const&... rs) method reset (line 695) | static inline void reset() type data_end (line 712) | struct data_end : std::exception class relation (line 718) | class relation method seed (line 736) | static void seed(Input const& r, Inputs const&... rs) noexcept method reset (line 750) | static inline void reset() noexcept class cross (line 776) | class cross : public ra::join class natural (line 805) | class natural : public ra::join method seed (line 815) | static void seed(Inputs const&... rs) class projection (line 876) | class projection : public ra::unary method fold (line 891) | static inline constexpr void fold(Dest& dest, input_type const& src) class rename (line 916) | class rename : public ra::unary method fold (line 931) | static inline constexpr void fold(Dest& dest, Src const& src) class selection (line 956) | class selection : public ra::unary type ra (line 912) | namespace ra class unary (line 576) | class unary method seed (line 582) | static inline void seed(Inputs const&... rs) method reset (line 587) | static inline void reset() class binary (line 594) | class binary method seed (line 601) | static inline void seed(Inputs const&... rs) method reset (line 607) | static inline void reset() function recr_merge (line 623) | constexpr auto recr_merge() function merge (line 638) | inline constexpr auto merge() function recr_copy (line 651) | constexpr void recr_copy(Dest& dest, Row const& src) function copy (line 665) | inline constexpr void copy(Dest& dest, Row const& src) class join (line 680) | class join : public ra::binary method seed (line 689) | static inline void seed(Inputs const&... rs) method reset (line 695) | static inline void reset() type data_end (line 712) | struct data_end : std::exception class relation (line 718) | class relation method seed (line 736) | static void seed(Input const& r, Inputs const&... rs) noexcept method reset (line 750) | static inline void reset() noexcept class cross (line 776) | class cross : public ra::join class natural (line 805) | class natural : public ra::join method seed (line 815) | static void seed(Inputs const&... rs) class projection (line 876) | class projection : public ra::unary method fold (line 891) | static inline constexpr void fold(Dest& dest, input_type const& src) class rename (line 916) | class rename : public ra::unary method fold (line 931) | static inline constexpr void fold(Dest& dest, Src const& src) class selection (line 956) | class selection : public ra::unary type ra (line 952) | namespace ra class unary (line 576) | class unary method seed (line 582) | static inline void seed(Inputs const&... rs) method reset (line 587) | static inline void reset() class binary (line 594) | class binary method seed (line 601) | static inline void seed(Inputs const&... rs) method reset (line 607) | static inline void reset() function recr_merge (line 623) | constexpr auto recr_merge() function merge (line 638) | inline constexpr auto merge() function recr_copy (line 651) | constexpr void recr_copy(Dest& dest, Row const& src) function copy (line 665) | inline constexpr void copy(Dest& dest, Row const& src) class join (line 680) | class join : public ra::binary method seed (line 689) | static inline void seed(Inputs const&... rs) method reset (line 695) | static inline void reset() type data_end (line 712) | struct data_end : std::exception class relation (line 718) | class relation method seed (line 736) | static void seed(Input const& r, Inputs const&... rs) noexcept method reset (line 750) | static inline void reset() noexcept class cross (line 776) | class cross : public ra::join class natural (line 805) | class natural : public ra::join method seed (line 815) | static void seed(Inputs const&... rs) class projection (line 876) | class projection : public ra::unary method fold (line 891) | static inline constexpr void fold(Dest& dest, input_type const& src) class rename (line 916) | class rename : public ra::unary method fold (line 931) | static inline constexpr void fold(Dest& dest, Src const& src) class selection (line 956) | class selection : public ra::unary type sql (line 983) | namespace sql type column (line 174) | struct column type void_row (line 186) | struct void_row class row (line 192) | class row method row (line 200) | row() = default; method row (line 203) | row(column::type const& val, ColTs const&... vals) : value_{ val }, ... method row (line 207) | row(column::type&& val, ColTs&&... vals) : value_{ std::forward const& col, Types const&... cols) : schema{} method schema (line 384) | schema(std::vector&& col, Types&&... cols) : schema{} method emplace (line 390) | inline void emplace(Types const&... vals) method emplace (line 403) | inline void emplace(Types&&... vals) method insert (line 416) | void insert(std::vector const& col, Types const&... cols) method insert (line 425) | void insert(std::vector&& col, Types&&... cols) method insert (line 433) | void insert(row_type const& row) method insert (line 445) | void insert(row_type&& row) method const_iterator (line 457) | inline const_iterator begin() const noexcept method const_iterator (line 462) | inline const_iterator end() const noexcept function fill (line 475) | void fill(std::fstream& fstr, Row& row, [[maybe_unused]] char delim) function fill (line 500) | void fill(std::fstream& fstr, Row const& row, char delim) function Schema (line 523) | Schema load(std::string const& file, char delim) function Schema (line 546) | inline Schema load(std::string const& file) function store (line 553) | void store(Type const& data, std::string const& file, char delim) function store (line 565) | inline void store(Type const& data, std::string const& file) function whitespace (line 989) | constexpr bool whitespace(Char curr) function syntax (line 995) | constexpr bool syntax(Char curr) function Char (line 1002) | constexpr const Char* skip(const Char *curr, const Char *end) function Char (line 1009) | constexpr const Char* next(const Char *curr, const Char *end) class tokens (line 1037) | class tokens method tokens (line 1042) | constexpr tokens() = default; method tokens (line 1045) | constexpr tokens(cexpr::string const& cs) : tokens_{} method count (line 1076) | constexpr std::size_t count() const noexcept method token_view (line 1081) | constexpr token_view* begin() noexcept method token_view (line 1085) | constexpr const token_view* cbegin() const noexcept method token_view (line 1090) | constexpr token_view* end() noexcept method token_view (line 1094) | constexpr const token_view* cend() const noexcept method token_view (line 1099) | constexpr token_view& operator[](std::size_t i) method token_view (line 1103) | constexpr token_view const& operator[](std::size_t i) const function preprocess (line 1113) | constexpr std::size_t preprocess(cexpr::string const& cs) noe... type value (line 1139) | struct value method value (line 1141) | constexpr value(Type v) : val{ v } type operation (line 1150) | struct operation method eval (line 1152) | static constexpr bool eval(Row const& row) noexcept type variable (line 1194) | struct variable method eval (line 1196) | static constexpr auto eval(Row const& row) noexcept type constant (line 1203) | struct constant method eval (line 1205) | static constexpr auto eval([[maybe_unused]] Row const& row) noexcept type context (line 1221) | struct context type colinfo (line 1228) | struct colinfo function exists (line 1236) | constexpr bool exists() noexcept function convert (line 1256) | constexpr value convert(cexpr::string const& str) noexcept function isquote (line 1289) | inline constexpr bool isquote(std::string_view const& tv) noexcept function isor (line 1294) | inline constexpr bool isor(std::string_view const& tv) noexcept function isand (line 1299) | inline constexpr bool isand(std::string_view const& tv) noexcept function isnot (line 1304) | inline constexpr bool isnot(std::string_view const& tv) noexcept function isnatural (line 1309) | inline constexpr bool isnatural(std::string_view const& tv) noexcept function isjoin (line 1314) | inline constexpr bool isjoin(std::string_view const& tv) noexcept function iswhere (line 1319) | inline constexpr bool iswhere(std::string_view const& tv) noexcept function isfrom (line 1324) | inline constexpr bool isfrom(std::string_view const& tv) noexcept function isas (line 1329) | inline constexpr bool isas(std::string_view const& tv) noexcept function isselect (line 1334) | inline constexpr bool isselect(std::string_view const& tv) noexcept function iscomma (line 1339) | inline constexpr bool iscomma(std::string_view const& tv) noexcept function isintegral (line 1344) | constexpr bool isintegral(std::string_view const& tv) noexcept function isdigit (line 1356) | constexpr bool isdigit(char c) noexcept function iscomp (line 1361) | constexpr bool iscomp(char c) noexcept function iscolumn (line 1366) | constexpr bool iscolumn(std::string_view const& tv) noexcept function isseparator (line 1371) | constexpr bool isseparator(std::string_view const& tv) noexcept class query_iterator (line 1380) | class query_iterator method query_iterator (line 1386) | query_iterator(bool end) : end_{ end }, row_{} method row_type (line 1401) | inline row_type const& operator*() const noexcept method query_iterator (line 1406) | query_iterator& operator++() class query (line 1429) | class query method parse_terms (line 1434) | static constexpr auto parse_terms() method recurse_comparison (line 1478) | static constexpr auto recurse_comparison() method parse_comparison (line 1498) | static constexpr auto parse_comparison() method parse_negation (line 1507) | static constexpr auto parse_negation() method recurse_and (line 1526) | static constexpr auto recurse_and() method parse_and (line 1545) | static constexpr auto parse_and() method recurse_or (line 1554) | static constexpr auto recurse_or() method parse_or (line 1573) | static constexpr auto parse_or() method recurse_schemas (line 1582) | static constexpr auto recurse_schemas() method parse_schema (line 1598) | static constexpr auto parse_schema() method choose_join (line 1622) | static constexpr auto choose_join() method parse_join (line 1636) | static constexpr auto parse_join() method parse_from (line 1659) | static constexpr auto parse_from() method recurse_types (line 1686) | static constexpr auto recurse_types() method column_type (line 1702) | static constexpr auto column_type() method next_column (line 1711) | static constexpr std::size_t next_column() method parse_colinfo (line 1726) | static constexpr auto parse_colinfo() method recurse_columns (line 1756) | static constexpr auto recurse_columns() method parse_projection (line 1778) | static constexpr auto parse_projection() method parse_rename (line 1791) | static constexpr auto parse_rename() method has_rename (line 1803) | static constexpr bool has_rename() method parse_root (line 1832) | static constexpr auto parse_root() method query (line 1860) | query(Schemas const&... tables) method iterator (line 1878) | inline iterator begin() const method iterator (line 1883) | inline iterator end() const type sql (line 1131) | namespace sql type column (line 174) | struct column type void_row (line 186) | struct void_row class row (line 192) | class row method row (line 200) | row() = default; method row (line 203) | row(column::type const& val, ColTs const&... vals) : value_{ val }, ... method row (line 207) | row(column::type&& val, ColTs&&... vals) : value_{ std::forward const& col, Types const&... cols) : schema{} method schema (line 384) | schema(std::vector&& col, Types&&... cols) : schema{} method emplace (line 390) | inline void emplace(Types const&... vals) method emplace (line 403) | inline void emplace(Types&&... vals) method insert (line 416) | void insert(std::vector const& col, Types const&... cols) method insert (line 425) | void insert(std::vector&& col, Types&&... cols) method insert (line 433) | void insert(row_type const& row) method insert (line 445) | void insert(row_type&& row) method const_iterator (line 457) | inline const_iterator begin() const noexcept method const_iterator (line 462) | inline const_iterator end() const noexcept function fill (line 475) | void fill(std::fstream& fstr, Row& row, [[maybe_unused]] char delim) function fill (line 500) | void fill(std::fstream& fstr, Row const& row, char delim) function Schema (line 523) | Schema load(std::string const& file, char delim) function Schema (line 546) | inline Schema load(std::string const& file) function store (line 553) | void store(Type const& data, std::string const& file, char delim) function store (line 565) | inline void store(Type const& data, std::string const& file) function whitespace (line 989) | constexpr bool whitespace(Char curr) function syntax (line 995) | constexpr bool syntax(Char curr) function Char (line 1002) | constexpr const Char* skip(const Char *curr, const Char *end) function Char (line 1009) | constexpr const Char* next(const Char *curr, const Char *end) class tokens (line 1037) | class tokens method tokens (line 1042) | constexpr tokens() = default; method tokens (line 1045) | constexpr tokens(cexpr::string const& cs) : tokens_{} method count (line 1076) | constexpr std::size_t count() const noexcept method token_view (line 1081) | constexpr token_view* begin() noexcept method token_view (line 1085) | constexpr const token_view* cbegin() const noexcept method token_view (line 1090) | constexpr token_view* end() noexcept method token_view (line 1094) | constexpr const token_view* cend() const noexcept method token_view (line 1099) | constexpr token_view& operator[](std::size_t i) method token_view (line 1103) | constexpr token_view const& operator[](std::size_t i) const function preprocess (line 1113) | constexpr std::size_t preprocess(cexpr::string const& cs) noe... type value (line 1139) | struct value method value (line 1141) | constexpr value(Type v) : val{ v } type operation (line 1150) | struct operation method eval (line 1152) | static constexpr bool eval(Row const& row) noexcept type variable (line 1194) | struct variable method eval (line 1196) | static constexpr auto eval(Row const& row) noexcept type constant (line 1203) | struct constant method eval (line 1205) | static constexpr auto eval([[maybe_unused]] Row const& row) noexcept type context (line 1221) | struct context type colinfo (line 1228) | struct colinfo function exists (line 1236) | constexpr bool exists() noexcept function convert (line 1256) | constexpr value convert(cexpr::string const& str) noexcept function isquote (line 1289) | inline constexpr bool isquote(std::string_view const& tv) noexcept function isor (line 1294) | inline constexpr bool isor(std::string_view const& tv) noexcept function isand (line 1299) | inline constexpr bool isand(std::string_view const& tv) noexcept function isnot (line 1304) | inline constexpr bool isnot(std::string_view const& tv) noexcept function isnatural (line 1309) | inline constexpr bool isnatural(std::string_view const& tv) noexcept function isjoin (line 1314) | inline constexpr bool isjoin(std::string_view const& tv) noexcept function iswhere (line 1319) | inline constexpr bool iswhere(std::string_view const& tv) noexcept function isfrom (line 1324) | inline constexpr bool isfrom(std::string_view const& tv) noexcept function isas (line 1329) | inline constexpr bool isas(std::string_view const& tv) noexcept function isselect (line 1334) | inline constexpr bool isselect(std::string_view const& tv) noexcept function iscomma (line 1339) | inline constexpr bool iscomma(std::string_view const& tv) noexcept function isintegral (line 1344) | constexpr bool isintegral(std::string_view const& tv) noexcept function isdigit (line 1356) | constexpr bool isdigit(char c) noexcept function iscomp (line 1361) | constexpr bool iscomp(char c) noexcept function iscolumn (line 1366) | constexpr bool iscolumn(std::string_view const& tv) noexcept function isseparator (line 1371) | constexpr bool isseparator(std::string_view const& tv) noexcept class query_iterator (line 1380) | class query_iterator method query_iterator (line 1386) | query_iterator(bool end) : end_{ end }, row_{} method row_type (line 1401) | inline row_type const& operator*() const noexcept method query_iterator (line 1406) | query_iterator& operator++() class query (line 1429) | class query method parse_terms (line 1434) | static constexpr auto parse_terms() method recurse_comparison (line 1478) | static constexpr auto recurse_comparison() method parse_comparison (line 1498) | static constexpr auto parse_comparison() method parse_negation (line 1507) | static constexpr auto parse_negation() method recurse_and (line 1526) | static constexpr auto recurse_and() method parse_and (line 1545) | static constexpr auto parse_and() method recurse_or (line 1554) | static constexpr auto recurse_or() method parse_or (line 1573) | static constexpr auto parse_or() method recurse_schemas (line 1582) | static constexpr auto recurse_schemas() method parse_schema (line 1598) | static constexpr auto parse_schema() method choose_join (line 1622) | static constexpr auto choose_join() method parse_join (line 1636) | static constexpr auto parse_join() method parse_from (line 1659) | static constexpr auto parse_from() method recurse_types (line 1686) | static constexpr auto recurse_types() method column_type (line 1702) | static constexpr auto column_type() method next_column (line 1711) | static constexpr std::size_t next_column() method parse_colinfo (line 1726) | static constexpr auto parse_colinfo() method recurse_columns (line 1756) | static constexpr auto recurse_columns() method parse_projection (line 1778) | static constexpr auto parse_projection() method parse_rename (line 1791) | static constexpr auto parse_rename() method has_rename (line 1803) | static constexpr bool has_rename() method parse_root (line 1832) | static constexpr auto parse_root() method query (line 1860) | query(Schemas const&... tables) method iterator (line 1878) | inline iterator begin() const method iterator (line 1883) | inline iterator end() const type sql (line 1213) | namespace sql type column (line 174) | struct column type void_row (line 186) | struct void_row class row (line 192) | class row method row (line 200) | row() = default; method row (line 203) | row(column::type const& val, ColTs const&... vals) : value_{ val }, ... method row (line 207) | row(column::type&& val, ColTs&&... vals) : value_{ std::forward const& col, Types const&... cols) : schema{} method schema (line 384) | schema(std::vector&& col, Types&&... cols) : schema{} method emplace (line 390) | inline void emplace(Types const&... vals) method emplace (line 403) | inline void emplace(Types&&... vals) method insert (line 416) | void insert(std::vector const& col, Types const&... cols) method insert (line 425) | void insert(std::vector&& col, Types&&... cols) method insert (line 433) | void insert(row_type const& row) method insert (line 445) | void insert(row_type&& row) method const_iterator (line 457) | inline const_iterator begin() const noexcept method const_iterator (line 462) | inline const_iterator end() const noexcept function fill (line 475) | void fill(std::fstream& fstr, Row& row, [[maybe_unused]] char delim) function fill (line 500) | void fill(std::fstream& fstr, Row const& row, char delim) function Schema (line 523) | Schema load(std::string const& file, char delim) function Schema (line 546) | inline Schema load(std::string const& file) function store (line 553) | void store(Type const& data, std::string const& file, char delim) function store (line 565) | inline void store(Type const& data, std::string const& file) function whitespace (line 989) | constexpr bool whitespace(Char curr) function syntax (line 995) | constexpr bool syntax(Char curr) function Char (line 1002) | constexpr const Char* skip(const Char *curr, const Char *end) function Char (line 1009) | constexpr const Char* next(const Char *curr, const Char *end) class tokens (line 1037) | class tokens method tokens (line 1042) | constexpr tokens() = default; method tokens (line 1045) | constexpr tokens(cexpr::string const& cs) : tokens_{} method count (line 1076) | constexpr std::size_t count() const noexcept method token_view (line 1081) | constexpr token_view* begin() noexcept method token_view (line 1085) | constexpr const token_view* cbegin() const noexcept method token_view (line 1090) | constexpr token_view* end() noexcept method token_view (line 1094) | constexpr const token_view* cend() const noexcept method token_view (line 1099) | constexpr token_view& operator[](std::size_t i) method token_view (line 1103) | constexpr token_view const& operator[](std::size_t i) const function preprocess (line 1113) | constexpr std::size_t preprocess(cexpr::string const& cs) noe... type value (line 1139) | struct value method value (line 1141) | constexpr value(Type v) : val{ v } type operation (line 1150) | struct operation method eval (line 1152) | static constexpr bool eval(Row const& row) noexcept type variable (line 1194) | struct variable method eval (line 1196) | static constexpr auto eval(Row const& row) noexcept type constant (line 1203) | struct constant method eval (line 1205) | static constexpr auto eval([[maybe_unused]] Row const& row) noexcept type context (line 1221) | struct context type colinfo (line 1228) | struct colinfo function exists (line 1236) | constexpr bool exists() noexcept function convert (line 1256) | constexpr value convert(cexpr::string const& str) noexcept function isquote (line 1289) | inline constexpr bool isquote(std::string_view const& tv) noexcept function isor (line 1294) | inline constexpr bool isor(std::string_view const& tv) noexcept function isand (line 1299) | inline constexpr bool isand(std::string_view const& tv) noexcept function isnot (line 1304) | inline constexpr bool isnot(std::string_view const& tv) noexcept function isnatural (line 1309) | inline constexpr bool isnatural(std::string_view const& tv) noexcept function isjoin (line 1314) | inline constexpr bool isjoin(std::string_view const& tv) noexcept function iswhere (line 1319) | inline constexpr bool iswhere(std::string_view const& tv) noexcept function isfrom (line 1324) | inline constexpr bool isfrom(std::string_view const& tv) noexcept function isas (line 1329) | inline constexpr bool isas(std::string_view const& tv) noexcept function isselect (line 1334) | inline constexpr bool isselect(std::string_view const& tv) noexcept function iscomma (line 1339) | inline constexpr bool iscomma(std::string_view const& tv) noexcept function isintegral (line 1344) | constexpr bool isintegral(std::string_view const& tv) noexcept function isdigit (line 1356) | constexpr bool isdigit(char c) noexcept function iscomp (line 1361) | constexpr bool iscomp(char c) noexcept function iscolumn (line 1366) | constexpr bool iscolumn(std::string_view const& tv) noexcept function isseparator (line 1371) | constexpr bool isseparator(std::string_view const& tv) noexcept class query_iterator (line 1380) | class query_iterator method query_iterator (line 1386) | query_iterator(bool end) : end_{ end }, row_{} method row_type (line 1401) | inline row_type const& operator*() const noexcept method query_iterator (line 1406) | query_iterator& operator++() class query (line 1429) | class query method parse_terms (line 1434) | static constexpr auto parse_terms() method recurse_comparison (line 1478) | static constexpr auto recurse_comparison() method parse_comparison (line 1498) | static constexpr auto parse_comparison() method parse_negation (line 1507) | static constexpr auto parse_negation() method recurse_and (line 1526) | static constexpr auto recurse_and() method parse_and (line 1545) | static constexpr auto parse_and() method recurse_or (line 1554) | static constexpr auto recurse_or() method parse_or (line 1573) | static constexpr auto parse_or() method recurse_schemas (line 1582) | static constexpr auto recurse_schemas() method parse_schema (line 1598) | static constexpr auto parse_schema() method choose_join (line 1622) | static constexpr auto choose_join() method parse_join (line 1636) | static constexpr auto parse_join() method parse_from (line 1659) | static constexpr auto parse_from() method recurse_types (line 1686) | static constexpr auto recurse_types() method column_type (line 1702) | static constexpr auto column_type() method next_column (line 1711) | static constexpr std::size_t next_column() method parse_colinfo (line 1726) | static constexpr auto parse_colinfo() method recurse_columns (line 1756) | static constexpr auto recurse_columns() method parse_projection (line 1778) | static constexpr auto parse_projection() method parse_rename (line 1791) | static constexpr auto parse_rename() method has_rename (line 1803) | static constexpr bool has_rename() method parse_root (line 1832) | static constexpr auto parse_root() method query (line 1860) | query(Schemas const&... tables) method iterator (line 1878) | inline iterator begin() const method iterator (line 1883) | inline iterator end() const FILE: tests/data.hpp function books_type (line 68) | books_type books_load() function stories_type (line 93) | stories_type stories_load() function authored_type (line 117) | authored_type authored_load() function collected_type (line 140) | collected_type collected_load() FILE: tests/perf/queries/lib-query0.cpp function main (line 12) | int main() FILE: tests/perf/queries/lib-query1.cpp function main (line 12) | int main() FILE: tests/perf/queries/lib-query2.cpp function main (line 13) | int main() FILE: tests/perf/queries/lib-query3.cpp function main (line 13) | int main() FILE: tests/perf/queries/lib-query4.cpp function main (line 13) | int main() FILE: tests/perf/queries/lib-query5.cpp function main (line 13) | int main() FILE: tests/perf/queries/query0.cpp function stories_type (line 10) | stories_type query(stories_type const& s) function main (line 26) | int main() FILE: tests/perf/queries/query1.cpp function books_type (line 10) | books_type query(books_type const& b) function main (line 26) | int main() FILE: tests/perf/queries/query2.cpp function authored_type (line 10) | authored_type query(books_type const& b, authored_type const& a) function main (line 39) | int main() FILE: tests/perf/queries/query3.cpp function output_type (line 12) | output_type query(stories_type const& s, authored_type const& a) function main (line 41) | int main() FILE: tests/perf/queries/query4.cpp function output_type (line 12) | output_type query(books_type const& b, authored_type const& a) function main (line 31) | int main() FILE: tests/perf/queries/query5.cpp function output_type (line 12) | output_type query(stories_type const& s, collected_type const& c) function main (line 31) | int main() FILE: tests/perf/scripts/runner.py function exe (line 5) | def exe(file, q): function main (line 13) | def main(): FILE: tests/scripts/compose.py function data (line 21) | def data(tokens): function templ (line 37) | def templ(query, ts): function func (line 43) | def func(ts, cs): function main (line 59) | def main(): FILE: tests/scripts/generate.py function col_list (line 41) | def col_list(cs): function froms (line 60) | def froms(ts): function compose (line 73) | def compose(ts, cs, pred): function next (line 82) | def next(cs, ci): function predicate (line 92) | def predicate(ts, cs, ci, pred): function operation (line 103) | def operation(ts, cs, ci, pred): function select (line 122) | def select(ts): function root_query (line 135) | def root_query(left): function main (line 140) | def main(): FILE: tests/scripts/runner.py function main (line 3) | def main(): FILE: tests/scripts/select.py function main (line 5) | def main():