From 5529c50b87127c45e64198d41c1ec1d5140a87eb Mon Sep 17 00:00:00 2001 From: Robert Marki Date: Tue, 19 Feb 2019 19:20:09 +0100 Subject: [PATCH 1/4] Initial gh-pages commit --- README.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..e69de29 From cbee94b61b322447f5b8dbf12f0f4c844c09ac55 Mon Sep 17 00:00:00 2001 From: "Deployment Bot (from Travis CI)" Date: Tue, 19 Feb 2019 19:00:53 +0000 Subject: [PATCH 2/4] Deploy robertmrk/jmespath.cpp to github.com/robertmrk/jmespath.cpp.git:gh-pages --- README.md | 0 abstractnode_8cpp.html | 114 + abstractnode_8h.html | 125 + abstractnode_8h_source.html | 154 + abstractvisitor_8cpp.html | 114 + abstractvisitor_8h.html | 125 + abstractvisitor_8h_source.html | 222 + allnodes_8h.html | 130 + allnodes_8h_source.html | 185 + andexpressionnode_8cpp.html | 116 + andexpressionnode_8h.html | 124 + andexpressionnode_8h_source.html | 164 + annotated.html | 159 + appendescapesequenceaction_8h.html | 123 + appendescapesequenceaction_8h_source.html | 161 + appendutf8action_8h.html | 123 + appendutf8action_8h_source.html | 154 + arrayitemnode_8cpp.html | 115 + arrayitemnode_8h.html | 125 + arrayitemnode_8h_source.html | 162 + bc_s.png | Bin 0 -> 676 bytes bdwn.png | Bin 0 -> 147 bytes binaryexpressionnode_8cpp.html | 114 + binaryexpressionnode_8h.html | 124 + binaryexpressionnode_8h_source.html | 163 + bracketspecifiernode_8cpp.html | 115 + bracketspecifiernode_8h.html | 124 + bracketspecifiernode_8h_source.html | 171 + classes.html | 141 + ...path_1_1ast_1_1_abstract_node-members.html | 112 + classjmespath_1_1ast_1_1_abstract_node.html | 304 ++ classjmespath_1_1ast_1_1_abstract_node.png | Bin 0 -> 59622 bytes ..._1ast_1_1_and_expression_node-members.html | 121 + ...espath_1_1ast_1_1_and_expression_node.html | 327 ++ ...mespath_1_1ast_1_1_and_expression_node.png | Bin 0 -> 1216 bytes ...th_1_1ast_1_1_array_item_node-members.html | 116 + classjmespath_1_1ast_1_1_array_item_node.html | 280 ++ classjmespath_1_1ast_1_1_array_item_node.png | Bin 0 -> 758 bytes ...st_1_1_binary_expression_node-members.html | 119 + ...ath_1_1ast_1_1_binary_expression_node.html | 379 ++ ...path_1_1ast_1_1_binary_expression_node.png | Bin 0 -> 3366 bytes ...st_1_1_bracket_specifier_node-members.html | 126 + ...ath_1_1ast_1_1_bracket_specifier_node.html | 304 ++ ...path_1_1ast_1_1_bracket_specifier_node.png | Bin 0 -> 3355 bytes ..._1_comparator_expression_node-members.html | 124 + ...1_1ast_1_1_comparator_expression_node.html | 434 ++ ..._1_1ast_1_1_comparator_expression_node.png | Bin 0 -> 1265 bytes ...spath_1_1ast_1_1_current_node-members.html | 114 + classjmespath_1_1ast_1_1_current_node.html | 231 + classjmespath_1_1ast_1_1_current_node.png | Bin 0 -> 734 bytes ..._1_1_expression_argument_node-members.html | 116 + ...h_1_1ast_1_1_expression_argument_node.html | 280 ++ ...th_1_1ast_1_1_expression_argument_node.png | Bin 0 -> 851 bytes ...th_1_1ast_1_1_expression_node-members.html | 127 + classjmespath_1_1ast_1_1_expression_node.html | 343 ++ classjmespath_1_1ast_1_1_expression_node.png | Bin 0 -> 6336 bytes ...st_1_1_filter_expression_node-members.html | 116 + ...ath_1_1ast_1_1_filter_expression_node.html | 280 ++ ...path_1_1ast_1_1_filter_expression_node.png | Bin 0 -> 813 bytes ...ast_1_1_flatten_operator_node-members.html | 114 + ...path_1_1ast_1_1_flatten_operator_node.html | 231 + ...spath_1_1ast_1_1_flatten_operator_node.png | Bin 0 -> 819 bytes ..._1_1_function_expression_node-members.html | 118 + ...h_1_1ast_1_1_function_expression_node.html | 327 ++ ...th_1_1ast_1_1_function_expression_node.png | Bin 0 -> 827 bytes ...1_1ast_1_1_hash_wildcard_node-members.html | 121 + ...mespath_1_1ast_1_1_hash_wildcard_node.html | 324 ++ ...jmespath_1_1ast_1_1_hash_wildcard_node.png | Bin 0 -> 1211 bytes ...th_1_1ast_1_1_identifier_node-members.html | 116 + classjmespath_1_1ast_1_1_identifier_node.html | 280 ++ classjmespath_1_1ast_1_1_identifier_node.png | Bin 0 -> 740 bytes ...ast_1_1_index_expression_node-members.html | 124 + ...path_1_1ast_1_1_index_expression_node.html | 405 ++ ...spath_1_1ast_1_1_index_expression_node.png | Bin 0 -> 1210 bytes ...1_1ast_1_1_list_wildcard_node-members.html | 114 + ...mespath_1_1ast_1_1_list_wildcard_node.html | 231 + ...jmespath_1_1ast_1_1_list_wildcard_node.png | Bin 0 -> 780 bytes ...spath_1_1ast_1_1_literal_node-members.html | 116 + classjmespath_1_1ast_1_1_literal_node.html | 280 ++ classjmespath_1_1ast_1_1_literal_node.png | Bin 0 -> 735 bytes ...ast_1_1_multiselect_hash_node-members.html | 118 + ...path_1_1ast_1_1_multiselect_hash_node.html | 326 ++ ...spath_1_1ast_1_1_multiselect_hash_node.png | Bin 0 -> 808 bytes ...ast_1_1_multiselect_list_node-members.html | 117 + ...path_1_1ast_1_1_multiselect_list_node.html | 307 ++ ...spath_1_1ast_1_1_multiselect_list_node.png | Bin 0 -> 798 bytes ..._1ast_1_1_not_expression_node-members.html | 116 + ...espath_1_1ast_1_1_not_expression_node.html | 280 ++ ...mespath_1_1ast_1_1_not_expression_node.png | Bin 0 -> 809 bytes ...1_1ast_1_1_or_expression_node-members.html | 121 + ...mespath_1_1ast_1_1_or_expression_node.html | 324 ++ ...jmespath_1_1ast_1_1_or_expression_node.png | Bin 0 -> 1211 bytes ...ast_1_1_paren_expression_node-members.html | 116 + ...path_1_1ast_1_1_paren_expression_node.html | 280 ++ ...spath_1_1ast_1_1_paren_expression_node.png | Bin 0 -> 813 bytes ...1ast_1_1_pipe_expression_node-members.html | 121 + ...spath_1_1ast_1_1_pipe_expression_node.html | 324 ++ ...espath_1_1ast_1_1_pipe_expression_node.png | Bin 0 -> 1210 bytes ...th_1_1ast_1_1_raw_string_node-members.html | 116 + classjmespath_1_1ast_1_1_raw_string_node.html | 280 ++ classjmespath_1_1ast_1_1_raw_string_node.png | Bin 0 -> 775 bytes ...ast_1_1_slice_expression_node-members.html | 118 + ...path_1_1ast_1_1_slice_expression_node.html | 331 ++ ...spath_1_1ast_1_1_slice_expression_node.png | Bin 0 -> 816 bytes ...1_1ast_1_1_subexpression_node-members.html | 121 + ...mespath_1_1ast_1_1_subexpression_node.html | 290 ++ ...jmespath_1_1ast_1_1_subexpression_node.png | Bin 0 -> 1209 bytes ...spath_1_1ast_1_1_variant_node-members.html | 121 + classjmespath_1_1ast_1_1_variant_node.html | 478 +++ classjmespath_1_1ast_1_1_variant_node.png | Bin 0 -> 816 bytes ...t_1_1_variant_visitor_adaptor-members.html | 111 + ...th_1_1ast_1_1_variant_visitor_adaptor.html | 256 ++ ...ath_1_1ast_1_1_variant_visitor_adaptor.png | Bin 0 -> 755 bytes ...erpreter_1_1_abstract_visitor-members.html | 133 + ...h_1_1interpreter_1_1_abstract_visitor.html | 1087 +++++ ...th_1_1interpreter_1_1_abstract_visitor.png | Bin 0 -> 778 bytes ...context_value_visitor_adaptor-members.html | 109 + ...ter_1_1_context_value_visitor_adaptor.html | 220 + ...eter_1_1_context_value_visitor_adaptor.png | Bin 0 -> 1141 bytes ..._1interpreter_1_1_interpreter-members.html | 196 + ...espath_1_1interpreter_1_1_interpreter.html | 3724 +++++++++++++++++ ...mespath_1_1interpreter_1_1_interpreter.png | Bin 0 -> 774 bytes ...append_escape_sequence_action-members.html | 110 + ...ser_1_1_append_escape_sequence_action.html | 208 + ...parser_1_1_append_utf8_action-members.html | 109 + ...path_1_1parser_1_1_append_utf8_action.html | 190 + ..._encode_surrogate_pair_action-members.html | 109 + ...rser_1_1_encode_surrogate_pair_action.html | 191 + ...mespath_1_1parser_1_1_grammar-members.html | 152 + classjmespath_1_1parser_1_1_grammar.html | 1291 ++++++ classjmespath_1_1parser_1_1_grammar.png | Bin 0 -> 1297 bytes ...parser_1_1_insert_node_action-members.html | 111 + ...path_1_1parser_1_1_insert_node_action.html | 267 ++ ...rser_1_1_left_child_extractor-members.html | 112 + ...th_1_1parser_1_1_left_child_extractor.html | 317 ++ ...ath_1_1parser_1_1_left_child_extractor.png | Bin 0 -> 955 bytes ...parser_1_1_left_edge_iterator-members.html | 116 + ...path_1_1parser_1_1_left_edge_iterator.html | 402 ++ ...spath_1_1parser_1_1_left_edge_iterator.png | Bin 0 -> 1130 bytes ...ser_1_1_node_insert_condition-members.html | 110 + ...h_1_1parser_1_1_node_insert_condition.html | 242 ++ ...parser_1_1_node_insert_policy-members.html | 111 + ...path_1_1parser_1_1_node_insert_policy.html | 291 ++ ...jmespath_1_1parser_1_1_parser-members.html | 112 + classjmespath_1_1parser_1_1_parser.html | 269 ++ closed.png | Bin 0 -> 132 bytes comparatorexpressionnode_8cpp.html | 116 + comparatorexpressionnode_8h.html | 124 + comparatorexpressionnode_8h_source.html | 186 + contextvaluevisitoradaptor_8h.html | 136 + contextvaluevisitoradaptor_8h_source.html | 201 + currentnode_8cpp.html | 115 + currentnode_8h.html | 124 + currentnode_8h_source.html | 151 + dir_203e5988f1ed315d29383d699972de6f.html | 212 + dir_4904b5727094acb85f1fb3ce4b540d24.html | 110 + dir_68267d1309a1af8e8297ef4c3efbcdba.html | 115 + dir_6cd8491d143eb218b70983dbdb3c58bc.html | 122 + dir_c838f371594cdb581c6cc4a342ea0f4c.html | 108 + dir_d44c64559bbebec7f509842c48db8b23.html | 102 + doxygen.css | 1366 ++++++ doxygen.png | Bin 0 -> 3779 bytes dynsections.js | 97 + encodesurrogatepairaction_8h.html | 123 + encodesurrogatepairaction_8h_source.html | 154 + exceptions_8cpp.html | 111 + exceptions_8h.html | 152 + exceptions_8h_source.html | 195 + expression_8cpp.html | 113 + expression_8h.html | 138 + expression_8h_source.html | 196 + expressionargumentnode_8cpp.html | 114 + expressionargumentnode_8h.html | 125 + expressionargumentnode_8h_source.html | 162 + expressionnode_8cpp.html | 114 + expressionnode_8h.html | 126 + expressionnode_8h_source.html | 194 + files.html | 186 + filterexpressionnode_8cpp.html | 116 + filterexpressionnode_8h.html | 124 + filterexpressionnode_8h_source.html | 160 + flattenoperatornode_8cpp.html | 114 + flattenoperatornode_8h.html | 125 + flattenoperatornode_8h_source.html | 153 + ftv2blank.png | Bin 0 -> 86 bytes ftv2cl.png | Bin 0 -> 453 bytes ftv2doc.png | Bin 0 -> 746 bytes ftv2folderclosed.png | Bin 0 -> 616 bytes ftv2folderopen.png | Bin 0 -> 597 bytes ftv2lastnode.png | Bin 0 -> 86 bytes ftv2link.png | Bin 0 -> 746 bytes ftv2mlastnode.png | Bin 0 -> 246 bytes ftv2mnode.png | Bin 0 -> 246 bytes ftv2mo.png | Bin 0 -> 403 bytes ftv2node.png | Bin 0 -> 86 bytes ftv2ns.png | Bin 0 -> 388 bytes ftv2plastnode.png | Bin 0 -> 229 bytes ftv2pnode.png | Bin 0 -> 229 bytes ftv2splitbar.png | Bin 0 -> 314 bytes ftv2vertline.png | Bin 0 -> 86 bytes functionexpressionnode_8cpp.html | 116 + functionexpressionnode_8h.html | 128 + functionexpressionnode_8h_source.html | 176 + functions.html | 201 + functions_b.html | 144 + functions_c.html | 165 + functions_e.html | 172 + functions_enum.html | 111 + functions_eval.html | 129 + functions_f.html | 165 + functions_func.html | 191 + functions_func_b.html | 140 + functions_func_c.html | 158 + functions_func_e.html | 155 + functions_func_f.html | 146 + functions_func_g.html | 143 + functions_func_h.html | 137 + functions_func_i.html | 163 + functions_func_j.html | 137 + functions_func_k.html | 137 + functions_func_l.html | 146 + functions_func_m.html | 155 + functions_func_n.html | 140 + functions_func_o.html | 188 + functions_func_p.html | 146 + functions_func_r.html | 140 + functions_func_s.html | 166 + functions_func_t.html | 150 + functions_func_v.html | 147 + functions_func_~.html | 143 + functions_g.html | 153 + functions_h.html | 138 + functions_i.html | 176 + functions_j.html | 141 + functions_k.html | 141 + functions_l.html | 159 + functions_m.html | 319 ++ functions_n.html | 144 + functions_o.html | 189 + functions_p.html | 147 + functions_r.html | 158 + functions_s.html | 176 + functions_t.html | 151 + functions_type.html | 161 + functions_u.html | 138 + functions_v.html | 154 + functions_vars.html | 380 ++ functions_~.html | 144 + grammar_8h.html | 133 + grammar_8h_source.html | 670 +++ group__error__info.html | 152 + group__exceptions.html | 519 +++ group__exceptions.png | Bin 0 -> 1573 bytes group__public.html | 552 +++ hashwildcardnode_8cpp.html | 115 + hashwildcardnode_8h.html | 123 + hashwildcardnode_8h_source.html | 163 + hierarchy.html | 162 + identifiernode_8cpp.html | 115 + identifiernode_8h.html | 125 + identifiernode_8h_source.html | 162 + index.html | 211 + indexexpressionnode_8cpp.html | 114 + indexexpressionnode_8h.html | 125 + indexexpressionnode_8h_source.html | 172 + insertnodeaction_8h.html | 128 + insertnodeaction_8h_source.html | 175 + install.html | 133 + interpreter_8cpp.html | 125 + interpreter_8h.html | 156 + interpreter_8h_source.html | 386 ++ jmespath_8cpp.html | 133 + jmespath_8h.html | 136 + jmespath_8h_source.html | 154 + jquery.js | 31 + leftchildextractor_8h.html | 124 + leftchildextractor_8h_source.html | 194 + leftedgeiterator_8h.html | 125 + leftedgeiterator_8h_source.html | 192 + listwildcardnode_8cpp.html | 115 + listwildcardnode_8h.html | 123 + listwildcardnode_8h_source.html | 150 + literalnode_8cpp.html | 115 + literalnode_8h.html | 125 + literalnode_8h_source.html | 162 + modules.html | 99 + multiselecthashnode_8cpp.html | 116 + multiselecthashnode_8h.html | 130 + multiselecthashnode_8h_source.html | 171 + multiselectlistnode_8cpp.html | 115 + multiselectlistnode_8h.html | 127 + multiselectlistnode_8h_source.html | 165 + namespacejmespath.html | 404 ++ namespacejmespath_1_1ast.html | 197 + namespacejmespath_1_1interpreter.html | 358 ++ namespacejmespath_1_1literals.html | 167 + namespacejmespath_1_1parser.html | 812 ++++ namespacemembers.html | 224 + namespacemembers_func.html | 133 + namespacemembers_type.html | 142 + namespaces.html | 107 + nav_f.png | Bin 0 -> 153 bytes nav_g.png | Bin 0 -> 95 bytes nav_h.png | Bin 0 -> 98 bytes nodeinsertcondition_8h.html | 125 + nodeinsertcondition_8h_source.html | 185 + nodeinsertpolicy_8h.html | 123 + nodeinsertpolicy_8h_source.html | 179 + noderank_8h.html | 189 + noderank_8h_source.html | 266 ++ notexpressionnode_8cpp.html | 116 + notexpressionnode_8h.html | 125 + notexpressionnode_8h_source.html | 162 + open.png | Bin 0 -> 123 bytes orexpressionnode_8cpp.html | 116 + orexpressionnode_8h.html | 124 + orexpressionnode_8h_source.html | 164 + pages.html | 97 + parenexpressionnode_8cpp.html | 116 + parenexpressionnode_8h.html | 124 + parenexpressionnode_8h_source.html | 160 + parser_8h.html | 125 + parser_8h_source.html | 200 + pipeexpressionnode_8cpp.html | 116 + pipeexpressionnode_8h.html | 124 + pipeexpressionnode_8h_source.html | 164 + rawstringnode_8cpp.html | 115 + rawstringnode_8h.html | 125 + rawstringnode_8h_source.html | 162 + search/all_0.html | 26 + search/all_0.js | 33 + search/all_1.html | 26 + search/all_1.js | 12 + search/all_10.html | 26 + search/all_10.js | 27 + search/all_11.html | 26 + search/all_11.js | 10 + search/all_12.html | 26 + search/all_12.js | 8 + search/all_13.html | 26 + search/all_13.js | 16 + search/all_14.html | 26 + search/all_14.js | 6 + search/all_2.html | 26 + search/all_2.js | 22 + search/all_3.html | 26 + search/all_3.js | 30 + search/all_4.html | 26 + search/all_4.js | 22 + search/all_5.html | 26 + search/all_5.js | 12 + search/all_6.html | 26 + search/all_6.js | 7 + search/all_7.html | 26 + search/all_7.js | 33 + search/all_8.html | 26 + search/all_8.js | 14 + search/all_9.html | 26 + search/all_9.js | 5 + search/all_a.html | 26 + search/all_a.js | 21 + search/all_b.html | 26 + search/all_b.js | 72 + search/all_c.html | 26 + search/all_c.js | 15 + search/all_d.html | 26 + search/all_d.js | 15 + search/all_e.html | 26 + search/all_e.js | 15 + search/all_f.html | 26 + search/all_f.js | 12 + search/classes_0.html | 26 + search/classes_0.js | 9 + search/classes_1.html | 26 + search/classes_1.js | 5 + search/classes_10.html | 26 + search/classes_10.js | 7 + search/classes_2.html | 26 + search/classes_2.js | 6 + search/classes_3.html | 26 + search/classes_3.js | 9 + search/classes_4.html | 26 + search/classes_4.js | 6 + search/classes_5.html | 26 + search/classes_5.js | 4 + search/classes_6.html | 26 + search/classes_6.js | 4 + search/classes_7.html | 26 + search/classes_7.js | 11 + search/classes_8.html | 26 + search/classes_8.js | 7 + search/classes_9.html | 26 + search/classes_9.js | 5 + search/classes_a.html | 26 + search/classes_a.js | 6 + search/classes_b.html | 26 + search/classes_b.js | 4 + search/classes_c.html | 26 + search/classes_c.js | 6 + search/classes_d.html | 26 + search/classes_d.js | 4 + search/classes_e.html | 26 + search/classes_e.js | 6 + search/classes_f.html | 26 + search/classes_f.js | 4 + search/close.png | Bin 0 -> 273 bytes search/enums_0.html | 26 + search/enums_0.js | 4 + search/enumvalues_0.html | 26 + search/enumvalues_0.js | 4 + search/enumvalues_1.html | 26 + search/enumvalues_1.js | 5 + search/enumvalues_2.html | 26 + search/enumvalues_2.js | 5 + search/enumvalues_3.html | 26 + search/enumvalues_3.js | 4 + search/enumvalues_4.html | 26 + search/enumvalues_4.js | 4 + search/files_0.html | 26 + search/files_0.js | 14 + search/files_1.html | 26 + search/files_1.js | 7 + search/files_10.html | 26 + search/files_10.js | 4 + search/files_11.html | 26 + search/files_11.js | 6 + search/files_2.html | 26 + search/files_2.js | 8 + search/files_3.html | 26 + search/files_3.js | 12 + search/files_4.html | 26 + search/files_4.js | 9 + search/files_5.html | 26 + search/files_5.js | 4 + search/files_6.html | 26 + search/files_6.js | 5 + search/files_7.html | 26 + search/files_7.js | 10 + search/files_8.html | 26 + search/files_8.js | 5 + search/files_9.html | 26 + search/files_9.js | 9 + search/files_a.html | 26 + search/files_a.js | 7 + search/files_b.html | 26 + search/files_b.js | 8 + search/files_c.html | 26 + search/files_c.js | 5 + search/files_d.html | 26 + search/files_d.js | 8 + search/files_e.html | 26 + search/files_e.js | 5 + search/files_f.html | 26 + search/files_f.js | 7 + search/functions_0.html | 26 + search/functions_0.js | 13 + search/functions_1.html | 26 + search/functions_1.js | 5 + search/functions_10.html | 26 + search/functions_10.js | 15 + search/functions_11.html | 26 + search/functions_11.js | 8 + search/functions_12.html | 26 + search/functions_12.js | 7 + search/functions_13.html | 26 + search/functions_13.js | 6 + search/functions_2.html | 26 + search/functions_2.js | 11 + search/functions_3.html | 26 + search/functions_3.js | 10 + search/functions_4.html | 26 + search/functions_4.js | 7 + search/functions_5.html | 26 + search/functions_5.js | 7 + search/functions_6.html | 26 + search/functions_6.js | 4 + search/functions_7.html | 26 + search/functions_7.js | 10 + search/functions_8.html | 26 + search/functions_8.js | 4 + search/functions_9.html | 26 + search/functions_9.js | 4 + search/functions_a.html | 26 + search/functions_a.js | 7 + search/functions_b.html | 26 + search/functions_b.js | 12 + search/functions_c.html | 26 + search/functions_c.js | 6 + search/functions_d.html | 26 + search/functions_d.js | 12 + search/functions_e.html | 26 + search/functions_e.js | 7 + search/functions_f.html | 26 + search/functions_f.js | 5 + search/groups_0.html | 26 + search/groups_0.js | 5 + search/groups_1.html | 26 + search/groups_1.js | 4 + search/mag_sel.png | Bin 0 -> 563 bytes search/namespaces_0.html | 26 + search/namespaces_0.js | 8 + search/nomatches.html | 12 + search/pages_0.html | 26 + search/pages_0.js | 4 + search/search.css | 271 ++ search/search.js | 813 ++++ search/search_l.png | Bin 0 -> 604 bytes search/search_m.png | Bin 0 -> 158 bytes search/search_r.png | Bin 0 -> 612 bytes search/typedefs_0.html | 26 + search/typedefs_0.js | 5 + search/typedefs_1.html | 26 + search/typedefs_1.js | 5 + search/typedefs_2.html | 26 + search/typedefs_2.js | 4 + search/typedefs_3.html | 26 + search/typedefs_3.js | 8 + search/typedefs_4.html | 26 + search/typedefs_4.js | 4 + search/typedefs_5.html | 26 + search/typedefs_5.js | 9 + search/typedefs_6.html | 26 + search/typedefs_6.js | 6 + search/typedefs_7.html | 26 + search/typedefs_7.js | 4 + search/typedefs_8.html | 26 + search/typedefs_8.js | 5 + search/typedefs_9.html | 26 + search/typedefs_9.js | 5 + search/typedefs_a.html | 26 + search/typedefs_a.js | 6 + search/typedefs_b.html | 26 + search/typedefs_b.js | 4 + search/variables_0.html | 26 + search/variables_0.js | 4 + search/variables_1.html | 26 + search/variables_1.js | 4 + search/variables_2.html | 26 + search/variables_2.js | 4 + search/variables_3.html | 26 + search/variables_3.js | 5 + search/variables_4.html | 26 + search/variables_4.js | 4 + search/variables_5.html | 26 + search/variables_5.js | 5 + search/variables_6.html | 26 + search/variables_6.js | 5 + search/variables_7.html | 26 + search/variables_7.js | 57 + search/variables_8.html | 26 + search/variables_8.js | 5 + search/variables_9.html | 26 + search/variables_9.js | 6 + search/variables_a.html | 26 + search/variables_a.js | 4 + sliceexpressionnode_8cpp.html | 115 + sliceexpressionnode_8h.html | 127 + sliceexpressionnode_8h_source.html | 173 + ...ession_1_1_expression_deleter-members.html | 108 + ...1_1_expression_1_1_expression_deleter.html | 149 + subexpressionnode_8cpp.html | 114 + subexpressionnode_8h.html | 123 + subexpressionnode_8h_source.html | 158 + sync_off.png | Bin 0 -> 853 bytes sync_on.png | Bin 0 -> 845 bytes tab_a.png | Bin 0 -> 142 bytes tab_b.png | Bin 0 -> 169 bytes tab_h.png | Bin 0 -> 177 bytes tab_s.png | Bin 0 -> 184 bytes tabs.css | 60 + types_8h.html | 145 + types_8h_source.html | 163 + variantnode_8h.html | 125 + variantnode_8h_source.html | 202 + variantvisitoradaptor_8cpp.html | 115 + variantvisitoradaptor_8h.html | 124 + variantvisitoradaptor_8h_source.html | 160 + 577 files changed, 60719 insertions(+) delete mode 100644 README.md create mode 100644 abstractnode_8cpp.html create mode 100644 abstractnode_8h.html create mode 100644 abstractnode_8h_source.html create mode 100644 abstractvisitor_8cpp.html create mode 100644 abstractvisitor_8h.html create mode 100644 abstractvisitor_8h_source.html create mode 100644 allnodes_8h.html create mode 100644 allnodes_8h_source.html create mode 100644 andexpressionnode_8cpp.html create mode 100644 andexpressionnode_8h.html create mode 100644 andexpressionnode_8h_source.html create mode 100644 annotated.html create mode 100644 appendescapesequenceaction_8h.html create mode 100644 appendescapesequenceaction_8h_source.html create mode 100644 appendutf8action_8h.html create mode 100644 appendutf8action_8h_source.html create mode 100644 arrayitemnode_8cpp.html create mode 100644 arrayitemnode_8h.html create mode 100644 arrayitemnode_8h_source.html create mode 100644 bc_s.png create mode 100644 bdwn.png create mode 100644 binaryexpressionnode_8cpp.html create mode 100644 binaryexpressionnode_8h.html create mode 100644 binaryexpressionnode_8h_source.html create mode 100644 bracketspecifiernode_8cpp.html create mode 100644 bracketspecifiernode_8h.html create mode 100644 bracketspecifiernode_8h_source.html create mode 100644 classes.html create mode 100644 classjmespath_1_1ast_1_1_abstract_node-members.html create mode 100644 classjmespath_1_1ast_1_1_abstract_node.html create mode 100644 classjmespath_1_1ast_1_1_abstract_node.png create mode 100644 classjmespath_1_1ast_1_1_and_expression_node-members.html create mode 100644 classjmespath_1_1ast_1_1_and_expression_node.html create mode 100644 classjmespath_1_1ast_1_1_and_expression_node.png create mode 100644 classjmespath_1_1ast_1_1_array_item_node-members.html create mode 100644 classjmespath_1_1ast_1_1_array_item_node.html create mode 100644 classjmespath_1_1ast_1_1_array_item_node.png create mode 100644 classjmespath_1_1ast_1_1_binary_expression_node-members.html create mode 100644 classjmespath_1_1ast_1_1_binary_expression_node.html create mode 100644 classjmespath_1_1ast_1_1_binary_expression_node.png create mode 100644 classjmespath_1_1ast_1_1_bracket_specifier_node-members.html create mode 100644 classjmespath_1_1ast_1_1_bracket_specifier_node.html create mode 100644 classjmespath_1_1ast_1_1_bracket_specifier_node.png create mode 100644 classjmespath_1_1ast_1_1_comparator_expression_node-members.html create mode 100644 classjmespath_1_1ast_1_1_comparator_expression_node.html create mode 100644 classjmespath_1_1ast_1_1_comparator_expression_node.png create mode 100644 classjmespath_1_1ast_1_1_current_node-members.html create mode 100644 classjmespath_1_1ast_1_1_current_node.html create mode 100644 classjmespath_1_1ast_1_1_current_node.png create mode 100644 classjmespath_1_1ast_1_1_expression_argument_node-members.html create mode 100644 classjmespath_1_1ast_1_1_expression_argument_node.html create mode 100644 classjmespath_1_1ast_1_1_expression_argument_node.png create mode 100644 classjmespath_1_1ast_1_1_expression_node-members.html create mode 100644 classjmespath_1_1ast_1_1_expression_node.html create mode 100644 classjmespath_1_1ast_1_1_expression_node.png create mode 100644 classjmespath_1_1ast_1_1_filter_expression_node-members.html create mode 100644 classjmespath_1_1ast_1_1_filter_expression_node.html create mode 100644 classjmespath_1_1ast_1_1_filter_expression_node.png create mode 100644 classjmespath_1_1ast_1_1_flatten_operator_node-members.html create mode 100644 classjmespath_1_1ast_1_1_flatten_operator_node.html create mode 100644 classjmespath_1_1ast_1_1_flatten_operator_node.png create mode 100644 classjmespath_1_1ast_1_1_function_expression_node-members.html create mode 100644 classjmespath_1_1ast_1_1_function_expression_node.html create mode 100644 classjmespath_1_1ast_1_1_function_expression_node.png create mode 100644 classjmespath_1_1ast_1_1_hash_wildcard_node-members.html create mode 100644 classjmespath_1_1ast_1_1_hash_wildcard_node.html create mode 100644 classjmespath_1_1ast_1_1_hash_wildcard_node.png create mode 100644 classjmespath_1_1ast_1_1_identifier_node-members.html create mode 100644 classjmespath_1_1ast_1_1_identifier_node.html create mode 100644 classjmespath_1_1ast_1_1_identifier_node.png create mode 100644 classjmespath_1_1ast_1_1_index_expression_node-members.html create mode 100644 classjmespath_1_1ast_1_1_index_expression_node.html create mode 100644 classjmespath_1_1ast_1_1_index_expression_node.png create mode 100644 classjmespath_1_1ast_1_1_list_wildcard_node-members.html create mode 100644 classjmespath_1_1ast_1_1_list_wildcard_node.html create mode 100644 classjmespath_1_1ast_1_1_list_wildcard_node.png create mode 100644 classjmespath_1_1ast_1_1_literal_node-members.html create mode 100644 classjmespath_1_1ast_1_1_literal_node.html create mode 100644 classjmespath_1_1ast_1_1_literal_node.png create mode 100644 classjmespath_1_1ast_1_1_multiselect_hash_node-members.html create mode 100644 classjmespath_1_1ast_1_1_multiselect_hash_node.html create mode 100644 classjmespath_1_1ast_1_1_multiselect_hash_node.png create mode 100644 classjmespath_1_1ast_1_1_multiselect_list_node-members.html create mode 100644 classjmespath_1_1ast_1_1_multiselect_list_node.html create mode 100644 classjmespath_1_1ast_1_1_multiselect_list_node.png create mode 100644 classjmespath_1_1ast_1_1_not_expression_node-members.html create mode 100644 classjmespath_1_1ast_1_1_not_expression_node.html create mode 100644 classjmespath_1_1ast_1_1_not_expression_node.png create mode 100644 classjmespath_1_1ast_1_1_or_expression_node-members.html create mode 100644 classjmespath_1_1ast_1_1_or_expression_node.html create mode 100644 classjmespath_1_1ast_1_1_or_expression_node.png create mode 100644 classjmespath_1_1ast_1_1_paren_expression_node-members.html create mode 100644 classjmespath_1_1ast_1_1_paren_expression_node.html create mode 100644 classjmespath_1_1ast_1_1_paren_expression_node.png create mode 100644 classjmespath_1_1ast_1_1_pipe_expression_node-members.html create mode 100644 classjmespath_1_1ast_1_1_pipe_expression_node.html create mode 100644 classjmespath_1_1ast_1_1_pipe_expression_node.png create mode 100644 classjmespath_1_1ast_1_1_raw_string_node-members.html create mode 100644 classjmespath_1_1ast_1_1_raw_string_node.html create mode 100644 classjmespath_1_1ast_1_1_raw_string_node.png create mode 100644 classjmespath_1_1ast_1_1_slice_expression_node-members.html create mode 100644 classjmespath_1_1ast_1_1_slice_expression_node.html create mode 100644 classjmespath_1_1ast_1_1_slice_expression_node.png create mode 100644 classjmespath_1_1ast_1_1_subexpression_node-members.html create mode 100644 classjmespath_1_1ast_1_1_subexpression_node.html create mode 100644 classjmespath_1_1ast_1_1_subexpression_node.png create mode 100644 classjmespath_1_1ast_1_1_variant_node-members.html create mode 100644 classjmespath_1_1ast_1_1_variant_node.html create mode 100644 classjmespath_1_1ast_1_1_variant_node.png create mode 100644 classjmespath_1_1ast_1_1_variant_visitor_adaptor-members.html create mode 100644 classjmespath_1_1ast_1_1_variant_visitor_adaptor.html create mode 100644 classjmespath_1_1ast_1_1_variant_visitor_adaptor.png create mode 100644 classjmespath_1_1interpreter_1_1_abstract_visitor-members.html create mode 100644 classjmespath_1_1interpreter_1_1_abstract_visitor.html create mode 100644 classjmespath_1_1interpreter_1_1_abstract_visitor.png create mode 100644 classjmespath_1_1interpreter_1_1_context_value_visitor_adaptor-members.html create mode 100644 classjmespath_1_1interpreter_1_1_context_value_visitor_adaptor.html create mode 100644 classjmespath_1_1interpreter_1_1_context_value_visitor_adaptor.png create mode 100644 classjmespath_1_1interpreter_1_1_interpreter-members.html create mode 100644 classjmespath_1_1interpreter_1_1_interpreter.html create mode 100644 classjmespath_1_1interpreter_1_1_interpreter.png create mode 100644 classjmespath_1_1parser_1_1_append_escape_sequence_action-members.html create mode 100644 classjmespath_1_1parser_1_1_append_escape_sequence_action.html create mode 100644 classjmespath_1_1parser_1_1_append_utf8_action-members.html create mode 100644 classjmespath_1_1parser_1_1_append_utf8_action.html create mode 100644 classjmespath_1_1parser_1_1_encode_surrogate_pair_action-members.html create mode 100644 classjmespath_1_1parser_1_1_encode_surrogate_pair_action.html create mode 100644 classjmespath_1_1parser_1_1_grammar-members.html create mode 100644 classjmespath_1_1parser_1_1_grammar.html create mode 100644 classjmespath_1_1parser_1_1_grammar.png create mode 100644 classjmespath_1_1parser_1_1_insert_node_action-members.html create mode 100644 classjmespath_1_1parser_1_1_insert_node_action.html create mode 100644 classjmespath_1_1parser_1_1_left_child_extractor-members.html create mode 100644 classjmespath_1_1parser_1_1_left_child_extractor.html create mode 100644 classjmespath_1_1parser_1_1_left_child_extractor.png create mode 100644 classjmespath_1_1parser_1_1_left_edge_iterator-members.html create mode 100644 classjmespath_1_1parser_1_1_left_edge_iterator.html create mode 100644 classjmespath_1_1parser_1_1_left_edge_iterator.png create mode 100644 classjmespath_1_1parser_1_1_node_insert_condition-members.html create mode 100644 classjmespath_1_1parser_1_1_node_insert_condition.html create mode 100644 classjmespath_1_1parser_1_1_node_insert_policy-members.html create mode 100644 classjmespath_1_1parser_1_1_node_insert_policy.html create mode 100644 classjmespath_1_1parser_1_1_parser-members.html create mode 100644 classjmespath_1_1parser_1_1_parser.html create mode 100644 closed.png create mode 100644 comparatorexpressionnode_8cpp.html create mode 100644 comparatorexpressionnode_8h.html create mode 100644 comparatorexpressionnode_8h_source.html create mode 100644 contextvaluevisitoradaptor_8h.html create mode 100644 contextvaluevisitoradaptor_8h_source.html create mode 100644 currentnode_8cpp.html create mode 100644 currentnode_8h.html create mode 100644 currentnode_8h_source.html create mode 100644 dir_203e5988f1ed315d29383d699972de6f.html create mode 100644 dir_4904b5727094acb85f1fb3ce4b540d24.html create mode 100644 dir_68267d1309a1af8e8297ef4c3efbcdba.html create mode 100644 dir_6cd8491d143eb218b70983dbdb3c58bc.html create mode 100644 dir_c838f371594cdb581c6cc4a342ea0f4c.html create mode 100644 dir_d44c64559bbebec7f509842c48db8b23.html create mode 100644 doxygen.css create mode 100644 doxygen.png create mode 100644 dynsections.js create mode 100644 encodesurrogatepairaction_8h.html create mode 100644 encodesurrogatepairaction_8h_source.html create mode 100644 exceptions_8cpp.html create mode 100644 exceptions_8h.html create mode 100644 exceptions_8h_source.html create mode 100644 expression_8cpp.html create mode 100644 expression_8h.html create mode 100644 expression_8h_source.html create mode 100644 expressionargumentnode_8cpp.html create mode 100644 expressionargumentnode_8h.html create mode 100644 expressionargumentnode_8h_source.html create mode 100644 expressionnode_8cpp.html create mode 100644 expressionnode_8h.html create mode 100644 expressionnode_8h_source.html create mode 100644 files.html create mode 100644 filterexpressionnode_8cpp.html create mode 100644 filterexpressionnode_8h.html create mode 100644 filterexpressionnode_8h_source.html create mode 100644 flattenoperatornode_8cpp.html create mode 100644 flattenoperatornode_8h.html create mode 100644 flattenoperatornode_8h_source.html create mode 100644 ftv2blank.png create mode 100644 ftv2cl.png create mode 100644 ftv2doc.png create mode 100644 ftv2folderclosed.png create mode 100644 ftv2folderopen.png create mode 100644 ftv2lastnode.png create mode 100644 ftv2link.png create mode 100644 ftv2mlastnode.png create mode 100644 ftv2mnode.png create mode 100644 ftv2mo.png create mode 100644 ftv2node.png create mode 100644 ftv2ns.png create mode 100644 ftv2plastnode.png create mode 100644 ftv2pnode.png create mode 100644 ftv2splitbar.png create mode 100644 ftv2vertline.png create mode 100644 functionexpressionnode_8cpp.html create mode 100644 functionexpressionnode_8h.html create mode 100644 functionexpressionnode_8h_source.html create mode 100644 functions.html create mode 100644 functions_b.html create mode 100644 functions_c.html create mode 100644 functions_e.html create mode 100644 functions_enum.html create mode 100644 functions_eval.html create mode 100644 functions_f.html create mode 100644 functions_func.html create mode 100644 functions_func_b.html create mode 100644 functions_func_c.html create mode 100644 functions_func_e.html create mode 100644 functions_func_f.html create mode 100644 functions_func_g.html create mode 100644 functions_func_h.html create mode 100644 functions_func_i.html create mode 100644 functions_func_j.html create mode 100644 functions_func_k.html create mode 100644 functions_func_l.html create mode 100644 functions_func_m.html create mode 100644 functions_func_n.html create mode 100644 functions_func_o.html create mode 100644 functions_func_p.html create mode 100644 functions_func_r.html create mode 100644 functions_func_s.html create mode 100644 functions_func_t.html create mode 100644 functions_func_v.html create mode 100644 functions_func_~.html create mode 100644 functions_g.html create mode 100644 functions_h.html create mode 100644 functions_i.html create mode 100644 functions_j.html create mode 100644 functions_k.html create mode 100644 functions_l.html create mode 100644 functions_m.html create mode 100644 functions_n.html create mode 100644 functions_o.html create mode 100644 functions_p.html create mode 100644 functions_r.html create mode 100644 functions_s.html create mode 100644 functions_t.html create mode 100644 functions_type.html create mode 100644 functions_u.html create mode 100644 functions_v.html create mode 100644 functions_vars.html create mode 100644 functions_~.html create mode 100644 grammar_8h.html create mode 100644 grammar_8h_source.html create mode 100644 group__error__info.html create mode 100644 group__exceptions.html create mode 100644 group__exceptions.png create mode 100644 group__public.html create mode 100644 hashwildcardnode_8cpp.html create mode 100644 hashwildcardnode_8h.html create mode 100644 hashwildcardnode_8h_source.html create mode 100644 hierarchy.html create mode 100644 identifiernode_8cpp.html create mode 100644 identifiernode_8h.html create mode 100644 identifiernode_8h_source.html create mode 100644 index.html create mode 100644 indexexpressionnode_8cpp.html create mode 100644 indexexpressionnode_8h.html create mode 100644 indexexpressionnode_8h_source.html create mode 100644 insertnodeaction_8h.html create mode 100644 insertnodeaction_8h_source.html create mode 100644 install.html create mode 100644 interpreter_8cpp.html create mode 100644 interpreter_8h.html create mode 100644 interpreter_8h_source.html create mode 100644 jmespath_8cpp.html create mode 100644 jmespath_8h.html create mode 100644 jmespath_8h_source.html create mode 100644 jquery.js create mode 100644 leftchildextractor_8h.html create mode 100644 leftchildextractor_8h_source.html create mode 100644 leftedgeiterator_8h.html create mode 100644 leftedgeiterator_8h_source.html create mode 100644 listwildcardnode_8cpp.html create mode 100644 listwildcardnode_8h.html create mode 100644 listwildcardnode_8h_source.html create mode 100644 literalnode_8cpp.html create mode 100644 literalnode_8h.html create mode 100644 literalnode_8h_source.html create mode 100644 modules.html create mode 100644 multiselecthashnode_8cpp.html create mode 100644 multiselecthashnode_8h.html create mode 100644 multiselecthashnode_8h_source.html create mode 100644 multiselectlistnode_8cpp.html create mode 100644 multiselectlistnode_8h.html create mode 100644 multiselectlistnode_8h_source.html create mode 100644 namespacejmespath.html create mode 100644 namespacejmespath_1_1ast.html create mode 100644 namespacejmespath_1_1interpreter.html create mode 100644 namespacejmespath_1_1literals.html create mode 100644 namespacejmespath_1_1parser.html create mode 100644 namespacemembers.html create mode 100644 namespacemembers_func.html create mode 100644 namespacemembers_type.html create mode 100644 namespaces.html create mode 100644 nav_f.png create mode 100644 nav_g.png create mode 100644 nav_h.png create mode 100644 nodeinsertcondition_8h.html create mode 100644 nodeinsertcondition_8h_source.html create mode 100644 nodeinsertpolicy_8h.html create mode 100644 nodeinsertpolicy_8h_source.html create mode 100644 noderank_8h.html create mode 100644 noderank_8h_source.html create mode 100644 notexpressionnode_8cpp.html create mode 100644 notexpressionnode_8h.html create mode 100644 notexpressionnode_8h_source.html create mode 100644 open.png create mode 100644 orexpressionnode_8cpp.html create mode 100644 orexpressionnode_8h.html create mode 100644 orexpressionnode_8h_source.html create mode 100644 pages.html create mode 100644 parenexpressionnode_8cpp.html create mode 100644 parenexpressionnode_8h.html create mode 100644 parenexpressionnode_8h_source.html create mode 100644 parser_8h.html create mode 100644 parser_8h_source.html create mode 100644 pipeexpressionnode_8cpp.html create mode 100644 pipeexpressionnode_8h.html create mode 100644 pipeexpressionnode_8h_source.html create mode 100644 rawstringnode_8cpp.html create mode 100644 rawstringnode_8h.html create mode 100644 rawstringnode_8h_source.html create mode 100644 search/all_0.html create mode 100644 search/all_0.js create mode 100644 search/all_1.html create mode 100644 search/all_1.js create mode 100644 search/all_10.html create mode 100644 search/all_10.js create mode 100644 search/all_11.html create mode 100644 search/all_11.js create mode 100644 search/all_12.html create mode 100644 search/all_12.js create mode 100644 search/all_13.html create mode 100644 search/all_13.js create mode 100644 search/all_14.html create mode 100644 search/all_14.js create mode 100644 search/all_2.html create mode 100644 search/all_2.js create mode 100644 search/all_3.html create mode 100644 search/all_3.js create mode 100644 search/all_4.html create mode 100644 search/all_4.js create mode 100644 search/all_5.html create mode 100644 search/all_5.js create mode 100644 search/all_6.html create mode 100644 search/all_6.js create mode 100644 search/all_7.html create mode 100644 search/all_7.js create mode 100644 search/all_8.html create mode 100644 search/all_8.js create mode 100644 search/all_9.html create mode 100644 search/all_9.js create mode 100644 search/all_a.html create mode 100644 search/all_a.js create mode 100644 search/all_b.html create mode 100644 search/all_b.js create mode 100644 search/all_c.html create mode 100644 search/all_c.js create mode 100644 search/all_d.html create mode 100644 search/all_d.js create mode 100644 search/all_e.html create mode 100644 search/all_e.js create mode 100644 search/all_f.html create mode 100644 search/all_f.js create mode 100644 search/classes_0.html create mode 100644 search/classes_0.js create mode 100644 search/classes_1.html create mode 100644 search/classes_1.js create mode 100644 search/classes_10.html create mode 100644 search/classes_10.js create mode 100644 search/classes_2.html create mode 100644 search/classes_2.js create mode 100644 search/classes_3.html create mode 100644 search/classes_3.js create mode 100644 search/classes_4.html create mode 100644 search/classes_4.js create mode 100644 search/classes_5.html create mode 100644 search/classes_5.js create mode 100644 search/classes_6.html create mode 100644 search/classes_6.js create mode 100644 search/classes_7.html create mode 100644 search/classes_7.js create mode 100644 search/classes_8.html create mode 100644 search/classes_8.js create mode 100644 search/classes_9.html create mode 100644 search/classes_9.js create mode 100644 search/classes_a.html create mode 100644 search/classes_a.js create mode 100644 search/classes_b.html create mode 100644 search/classes_b.js create mode 100644 search/classes_c.html create mode 100644 search/classes_c.js create mode 100644 search/classes_d.html create mode 100644 search/classes_d.js create mode 100644 search/classes_e.html create mode 100644 search/classes_e.js create mode 100644 search/classes_f.html create mode 100644 search/classes_f.js create mode 100644 search/close.png create mode 100644 search/enums_0.html create mode 100644 search/enums_0.js create mode 100644 search/enumvalues_0.html create mode 100644 search/enumvalues_0.js create mode 100644 search/enumvalues_1.html create mode 100644 search/enumvalues_1.js create mode 100644 search/enumvalues_2.html create mode 100644 search/enumvalues_2.js create mode 100644 search/enumvalues_3.html create mode 100644 search/enumvalues_3.js create mode 100644 search/enumvalues_4.html create mode 100644 search/enumvalues_4.js create mode 100644 search/files_0.html create mode 100644 search/files_0.js create mode 100644 search/files_1.html create mode 100644 search/files_1.js create mode 100644 search/files_10.html create mode 100644 search/files_10.js create mode 100644 search/files_11.html create mode 100644 search/files_11.js create mode 100644 search/files_2.html create mode 100644 search/files_2.js create mode 100644 search/files_3.html create mode 100644 search/files_3.js create mode 100644 search/files_4.html create mode 100644 search/files_4.js create mode 100644 search/files_5.html create mode 100644 search/files_5.js create mode 100644 search/files_6.html create mode 100644 search/files_6.js create mode 100644 search/files_7.html create mode 100644 search/files_7.js create mode 100644 search/files_8.html create mode 100644 search/files_8.js create mode 100644 search/files_9.html create mode 100644 search/files_9.js create mode 100644 search/files_a.html create mode 100644 search/files_a.js create mode 100644 search/files_b.html create mode 100644 search/files_b.js create mode 100644 search/files_c.html create mode 100644 search/files_c.js create mode 100644 search/files_d.html create mode 100644 search/files_d.js create mode 100644 search/files_e.html create mode 100644 search/files_e.js create mode 100644 search/files_f.html create mode 100644 search/files_f.js create mode 100644 search/functions_0.html create mode 100644 search/functions_0.js create mode 100644 search/functions_1.html create mode 100644 search/functions_1.js create mode 100644 search/functions_10.html create mode 100644 search/functions_10.js create mode 100644 search/functions_11.html create mode 100644 search/functions_11.js create mode 100644 search/functions_12.html create mode 100644 search/functions_12.js create mode 100644 search/functions_13.html create mode 100644 search/functions_13.js create mode 100644 search/functions_2.html create mode 100644 search/functions_2.js create mode 100644 search/functions_3.html create mode 100644 search/functions_3.js create mode 100644 search/functions_4.html create mode 100644 search/functions_4.js create mode 100644 search/functions_5.html create mode 100644 search/functions_5.js create mode 100644 search/functions_6.html create mode 100644 search/functions_6.js create mode 100644 search/functions_7.html create mode 100644 search/functions_7.js create mode 100644 search/functions_8.html create mode 100644 search/functions_8.js create mode 100644 search/functions_9.html create mode 100644 search/functions_9.js create mode 100644 search/functions_a.html create mode 100644 search/functions_a.js create mode 100644 search/functions_b.html create mode 100644 search/functions_b.js create mode 100644 search/functions_c.html create mode 100644 search/functions_c.js create mode 100644 search/functions_d.html create mode 100644 search/functions_d.js create mode 100644 search/functions_e.html create mode 100644 search/functions_e.js create mode 100644 search/functions_f.html create mode 100644 search/functions_f.js create mode 100644 search/groups_0.html create mode 100644 search/groups_0.js create mode 100644 search/groups_1.html create mode 100644 search/groups_1.js create mode 100644 search/mag_sel.png create mode 100644 search/namespaces_0.html create mode 100644 search/namespaces_0.js create mode 100644 search/nomatches.html create mode 100644 search/pages_0.html create mode 100644 search/pages_0.js create mode 100644 search/search.css create mode 100644 search/search.js create mode 100644 search/search_l.png create mode 100644 search/search_m.png create mode 100644 search/search_r.png create mode 100644 search/typedefs_0.html create mode 100644 search/typedefs_0.js create mode 100644 search/typedefs_1.html create mode 100644 search/typedefs_1.js create mode 100644 search/typedefs_2.html create mode 100644 search/typedefs_2.js create mode 100644 search/typedefs_3.html create mode 100644 search/typedefs_3.js create mode 100644 search/typedefs_4.html create mode 100644 search/typedefs_4.js create mode 100644 search/typedefs_5.html create mode 100644 search/typedefs_5.js create mode 100644 search/typedefs_6.html create mode 100644 search/typedefs_6.js create mode 100644 search/typedefs_7.html create mode 100644 search/typedefs_7.js create mode 100644 search/typedefs_8.html create mode 100644 search/typedefs_8.js create mode 100644 search/typedefs_9.html create mode 100644 search/typedefs_9.js create mode 100644 search/typedefs_a.html create mode 100644 search/typedefs_a.js create mode 100644 search/typedefs_b.html create mode 100644 search/typedefs_b.js create mode 100644 search/variables_0.html create mode 100644 search/variables_0.js create mode 100644 search/variables_1.html create mode 100644 search/variables_1.js create mode 100644 search/variables_2.html create mode 100644 search/variables_2.js create mode 100644 search/variables_3.html create mode 100644 search/variables_3.js create mode 100644 search/variables_4.html create mode 100644 search/variables_4.js create mode 100644 search/variables_5.html create mode 100644 search/variables_5.js create mode 100644 search/variables_6.html create mode 100644 search/variables_6.js create mode 100644 search/variables_7.html create mode 100644 search/variables_7.js create mode 100644 search/variables_8.html create mode 100644 search/variables_8.js create mode 100644 search/variables_9.html create mode 100644 search/variables_9.js create mode 100644 search/variables_a.html create mode 100644 search/variables_a.js create mode 100644 sliceexpressionnode_8cpp.html create mode 100644 sliceexpressionnode_8h.html create mode 100644 sliceexpressionnode_8h_source.html create mode 100644 structjmespath_1_1_expression_1_1_expression_deleter-members.html create mode 100644 structjmespath_1_1_expression_1_1_expression_deleter.html create mode 100644 subexpressionnode_8cpp.html create mode 100644 subexpressionnode_8h.html create mode 100644 subexpressionnode_8h_source.html create mode 100644 sync_off.png create mode 100644 sync_on.png create mode 100644 tab_a.png create mode 100644 tab_b.png create mode 100644 tab_h.png create mode 100644 tab_s.png create mode 100644 tabs.css create mode 100644 types_8h.html create mode 100644 types_8h_source.html create mode 100644 variantnode_8h.html create mode 100644 variantnode_8h_source.html create mode 100644 variantvisitoradaptor_8cpp.html create mode 100644 variantvisitoradaptor_8h.html create mode 100644 variantvisitoradaptor_8h_source.html diff --git a/README.md b/README.md deleted file mode 100644 index e69de29..0000000 diff --git a/abstractnode_8cpp.html b/abstractnode_8cpp.html new file mode 100644 index 0000000..42f8029 --- /dev/null +++ b/abstractnode_8cpp.html @@ -0,0 +1,114 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/abstractnode.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
abstractnode.cpp File Reference
+
+
+ + + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/abstractnode_8h.html b/abstractnode_8h.html new file mode 100644 index 0000000..e93970a --- /dev/null +++ b/abstractnode_8h.html @@ -0,0 +1,125 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/abstractnode.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
abstractnode.h File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::ast::AbstractNode
 The AbstractNode class is the common interface class for all AST node types. More...
 
+ + + + + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::interpreter
 Classes for interpreting the AST of the JMESPath expression.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/abstractnode_8h_source.html b/abstractnode_8h_source.html new file mode 100644 index 0000000..c9d5542 --- /dev/null +++ b/abstractnode_8h_source.html @@ -0,0 +1,154 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/abstractnode.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
abstractnode.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef ABSTRACTNODE_H
+
29 #define ABSTRACTNODE_H
+
30 
+
31 namespace jmespath { namespace interpreter {
+
32 
+
33 class AbstractVisitor;
+
34 }}
+
35 
+
40 namespace jmespath { namespace ast {
+ +
46 {
+
47 public:
+
51  AbstractNode() = default;
+
55  AbstractNode(const AbstractNode&) = default;
+
59  virtual ~AbstractNode();
+
64  AbstractNode& operator=(const AbstractNode&) = default;
+
74  virtual void accept(interpreter::AbstractVisitor* visitor) const = 0;
+
75 };
+
76 }} // namespace jmespath::ast
+
77 #endif // ABSTRACTNODE_H
+
virtual void accept(interpreter::AbstractVisitor *visitor) const =0
Accepts the given visitor object.
+
The AbstractVisitor class is an interface which defines the member functions required to visit every ...
Definition: abstractvisitor.h:71
+
AbstractNode & operator=(const AbstractNode &)=default
Copy-assigns the other object to this object.
+
AbstractNode()=default
Constructs an AbstractNode object.
+
virtual ~AbstractNode()
Destroys the AbstractNode object.
Definition: abstractnode.cpp:32
+
The AbstractNode class is the common interface class for all AST node types.
Definition: abstractnode.h:45
+
+ + + + diff --git a/abstractvisitor_8cpp.html b/abstractvisitor_8cpp.html new file mode 100644 index 0000000..7e1924d --- /dev/null +++ b/abstractvisitor_8cpp.html @@ -0,0 +1,114 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/interpreter/abstractvisitor.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
abstractvisitor.cpp File Reference
+
+
+ + + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::interpreter
 Classes for interpreting the AST of the JMESPath expression.
 
+
+ + + + diff --git a/abstractvisitor_8h.html b/abstractvisitor_8h.html new file mode 100644 index 0000000..2c29a0c --- /dev/null +++ b/abstractvisitor_8h.html @@ -0,0 +1,125 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/interpreter/abstractvisitor.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
abstractvisitor.h File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::interpreter::AbstractVisitor
 The AbstractVisitor class is an interface which defines the member functions required to visit every type of AST node. More...
 
+ + + + + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
 jmespath::interpreter
 Classes for interpreting the AST of the JMESPath expression.
 
+
+ + + + diff --git a/abstractvisitor_8h_source.html b/abstractvisitor_8h_source.html new file mode 100644 index 0000000..47dc8f4 --- /dev/null +++ b/abstractvisitor_8h_source.html @@ -0,0 +1,222 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/interpreter/abstractvisitor.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
abstractvisitor.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef ABSTRACTVISITOR_H
+
29 #define ABSTRACTVISITOR_H
+
30 
+
31 namespace jmespath { namespace ast {
+
32 
+
33 class AbstractNode;
+
34 class Node;
+
35 class ExpressionNode;
+
36 class IdentifierNode;
+
37 class RawStringNode;
+
38 class LiteralNode;
+
39 class SubexpressionNode;
+
40 class IndexExpressionNode;
+
41 class ArrayItemNode;
+
42 class FlattenOperatorNode;
+
43 class BracketSpecifierNode;
+
44 class SliceExpressionNode;
+
45 class ListWildcardNode;
+
46 class HashWildcardNode;
+
47 class MultiselectListNode;
+
48 class MultiselectHashNode;
+
49 class NotExpressionNode;
+
50 class ComparatorExpressionNode;
+
51 class OrExpressionNode;
+
52 class AndExpressionNode;
+
53 class ParenExpressionNode;
+
54 class PipeExpressionNode;
+
55 class CurrentNode;
+
56 class FilterExpressionNode;
+
57 class FunctionExpressionNode;
+
58 class ExpressionArgumentNode;
+
59 }} // namespace jmespath::ast
+
60 
+
65 namespace jmespath { namespace interpreter {
+ +
72 {
+
73 public:
+
77  virtual ~AbstractVisitor();
+
83  virtual void visit(const ast::AbstractNode* node) = 0;
+
84  virtual void visit(const ast::ExpressionNode* node) = 0;
+
85  virtual void visit(const ast::IdentifierNode* node) = 0;
+
86  virtual void visit(const ast::RawStringNode* node) = 0;
+
87  virtual void visit(const ast::LiteralNode* node) = 0;
+
88  virtual void visit(const ast::SubexpressionNode* node) = 0;
+
89  virtual void visit(const ast::IndexExpressionNode* node) = 0;
+
90  virtual void visit(const ast::ArrayItemNode* node) = 0;
+
91  virtual void visit(const ast::FlattenOperatorNode* node) = 0;
+
92  virtual void visit(const ast::BracketSpecifierNode* node) = 0;
+
93  virtual void visit(const ast::SliceExpressionNode* node) = 0;
+
94  virtual void visit(const ast::ListWildcardNode* node) = 0;
+
95  virtual void visit(const ast::HashWildcardNode* node) = 0;
+
96  virtual void visit(const ast::MultiselectListNode* node) = 0;
+
97  virtual void visit(const ast::MultiselectHashNode* node) = 0;
+
98  virtual void visit(const ast::NotExpressionNode* node) = 0;
+
99  virtual void visit(const ast::ComparatorExpressionNode* node) = 0;
+
100  virtual void visit(const ast::OrExpressionNode* node) = 0;
+
101  virtual void visit(const ast::AndExpressionNode* node) = 0;
+
102  virtual void visit(const ast::ParenExpressionNode* node) = 0;
+
103  virtual void visit(const ast::PipeExpressionNode* node) = 0;
+
104  virtual void visit(const ast::CurrentNode* node) = 0;
+
105  virtual void visit(const ast::FilterExpressionNode* node) = 0;
+
106  virtual void visit(const ast::FunctionExpressionNode* node) = 0;
+
107  virtual void visit(const ast::ExpressionArgumentNode* node) = 0;
+
109 };
+
110 }} // namespace jmespath::interpreter
+
111 #endif // ABSTRACTVISITOR_H
+
virtual ~AbstractVisitor()
Destroys the AbstractVisitor object.
Definition: abstractvisitor.cpp:32
+
The ComparatorExpressionNode class represents a JMESPath comparator expression.
Definition: comparatorexpressionnode.h:39
+
The ListWildcardNode class represents a JMESPath list wildcard expression.
Definition: listwildcardnode.h:38
+
virtual void visit(const ast::AbstractNode *node)=0
Visits the given node.
+
The HashWildcardNode class represents a JMESPath hash wildcard expression.
Definition: hashwildcardnode.h:38
+
The CurrentNode class represents a JMESPath current node expression.
Definition: currentnode.h:38
+
The BracketSpecifierNode class represents a JMESPath bracket specifier.
Definition: bracketspecifiernode.h:44
+
The IdentifierNode class represents a JMESPath identifier.
Definition: identifiernode.h:39
+
The AndExpressionNode class represents a JMESPath and expression.
Definition: andexpressionnode.h:38
+
The SliceExpressionNode class represents a JMESPath slice expression.
Definition: sliceexpressionnode.h:41
+
The MultiselectHashNode class represents a JMESPath multiselect hash expression.
Definition: multiselecthashnode.h:45
+
The PipeExpressionNode class represents a JMESPath pipe expression.
Definition: pipeexpressionnode.h:38
+
The SubexpressionNode class represents a JMESPath subexpression.
Definition: subexpressionnode.h:37
+
The ExpressionArgumentNode class represents a JMESPath expression argument.
Definition: expressionargumentnode.h:40
+
The LiteralNode class represents a JMESPath literal string.
Definition: literalnode.h:39
+
The FilterExpressionNode class represents a JMESPath filter expression.
Definition: filterexpressionnode.h:39
+
The OrExpressionNode class represents a JMESPath or expression.
Definition: orexpressionnode.h:38
+
The AbstractVisitor class is an interface which defines the member functions required to visit every ...
Definition: abstractvisitor.h:71
+
The IndexExpressionNode class represents a JMESPath index expression.
Definition: indexexpressionnode.h:39
+
The NotExpressionNode class represents a JMESPath not expression.
Definition: notexpressionnode.h:39
+
The RawStringNode class represents a JMESPath raw string literal.
Definition: rawstringnode.h:39
+
The ArrayItemNode class represents a JMESPath array index expression.
Definition: arrayitemnode.h:40
+
The FlattenOperatorNode class represents a JMESPath flatten operator.
Definition: flattenoperatornode.h:39
+
The MultiselectListNode class represents a JMESPath list wildcard expression.
Definition: multiselectlistnode.h:42
+
The ExpressionNode class represents a JMESPath expression.
Definition: expressionnode.h:56
+
The ParenExpressionNode class represents a JMESPath paren expression.
Definition: parenexpressionnode.h:38
+
The AbstractNode class is the common interface class for all AST node types.
Definition: abstractnode.h:45
+
The FunctionExpressionNode class represents a JMESPath function expression.
Definition: functionexpressionnode.h:45
+
+ + + + diff --git a/allnodes_8h.html b/allnodes_8h.html new file mode 100644 index 0000000..7cfc98a --- /dev/null +++ b/allnodes_8h.html @@ -0,0 +1,130 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/allnodes.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
allnodes.h File Reference
+
+ + + + + diff --git a/allnodes_8h_source.html b/allnodes_8h_source.html new file mode 100644 index 0000000..c754182 --- /dev/null +++ b/allnodes_8h_source.html @@ -0,0 +1,185 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/allnodes.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
allnodes.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef ALLNODES_H
+
29 #define ALLNODES_H
+
30 #include "src/ast/abstractnode.h"
+
31 #include "src/ast/expressionnode.h"
+
32 #include "src/ast/identifiernode.h"
+
33 #include "src/ast/rawstringnode.h"
+
34 #include "src/ast/literalnode.h"
+ + +
37 #include "src/ast/arrayitemnode.h"
+
38 #include "src/ast/variantnode.h"
+ + + + + + + + + + + + + + +
53 #include "src/ast/currentnode.h"
+ + + +
57 #endif // ALLNODES_H
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + diff --git a/andexpressionnode_8cpp.html b/andexpressionnode_8cpp.html new file mode 100644 index 0000000..f636b94 --- /dev/null +++ b/andexpressionnode_8cpp.html @@ -0,0 +1,116 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/andexpressionnode.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
andexpressionnode.cpp File Reference
+
+
+ + + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/andexpressionnode_8h.html b/andexpressionnode_8h.html new file mode 100644 index 0000000..4354332 --- /dev/null +++ b/andexpressionnode_8h.html @@ -0,0 +1,124 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/andexpressionnode.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
andexpressionnode.h File Reference
+
+
+
#include "src/ast/binaryexpressionnode.h"
+#include <boost/fusion/include/adapt_struct.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::ast::AndExpressionNode
 The AndExpressionNode class represents a JMESPath and expression. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/andexpressionnode_8h_source.html b/andexpressionnode_8h_source.html new file mode 100644 index 0000000..24fd9a4 --- /dev/null +++ b/andexpressionnode_8h_source.html @@ -0,0 +1,164 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/andexpressionnode.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
andexpressionnode.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef ANDEXPRESSIONNODE_H
+
29 #define ANDEXPRESSIONNODE_H
+ +
31 #include <boost/fusion/include/adapt_struct.hpp>
+
32 
+
33 namespace jmespath { namespace ast {
+
34 
+ +
39 {
+
40 public:
+ + + +
58  bool isProjection() const override;
+
65  bool stopsProjection() const override;
+
71  void accept(interpreter::AbstractVisitor* visitor) const override;
+
72 };
+
73 }} // namespace jmespath::ast
+
74 
+
75 BOOST_FUSION_ADAPT_STRUCT(
+ +
77  (jmespath::ast::ExpressionNode, leftExpression)
+
78  (jmespath::ast::ExpressionNode, rightExpression)
+
79 )
+
80 #endif // ANDEXPRESSIONNODE_H
+ +
AndExpressionNode()
Constructs an empty AndExpressionNode object.
Definition: andexpressionnode.cpp:34
+
The AndExpressionNode class represents a JMESPath and expression.
Definition: andexpressionnode.h:38
+
bool stopsProjection() const override
Reports whether the node should stop an ongoing projection or not.
Definition: andexpressionnode.cpp:50
+
The BinaryExpressionNode class is the base class for all node types which consist of a left and a rig...
Definition: binaryexpressionnode.h:39
+
ExpressionNode rightExpression
The right hand expression of the node.
Definition: binaryexpressionnode.h:88
+
The AbstractVisitor class is an interface which defines the member functions required to visit every ...
Definition: abstractvisitor.h:71
+
ExpressionNode leftExpression
The left hand expression of the node.
Definition: binaryexpressionnode.h:84
+
bool isProjection() const override
Returns whather this expression requires the projection of subsequent expressions.
Definition: andexpressionnode.cpp:45
+
The ExpressionNode class represents a JMESPath expression.
Definition: expressionnode.h:56
+
void accept(interpreter::AbstractVisitor *visitor) const override
Calls the visit method of the given visitor with the dynamic type of the node.
Definition: andexpressionnode.cpp:55
+
+ + + + diff --git a/annotated.html b/annotated.html new file mode 100644 index 0000000..7cf0ca0 --- /dev/null +++ b/annotated.html @@ -0,0 +1,159 @@ + + + + + + +jmespath.cpp: Class List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + +
+ + + + +
+ +
+ +
+
+
Class List
+
+
+
Here are the classes, structs, unions and interfaces with brief descriptions:
+
[detail level 123]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
\NjmespathThe top level namespace which contains the public functions of the library
 oNastClasses which represent the AST nodes
 |oCAbstractNodeCommon interface class for all AST node types
 |oCAndExpressionNodeJMESPath and expression
 |oCArrayItemNodeJMESPath array index expression
 |oCBinaryExpressionNodeBase class for all node types which consist of a left and a right hand side expression
 |oCBracketSpecifierNodeJMESPath bracket specifier
 |oCComparatorExpressionNodeJMESPath comparator expression
 |oCCurrentNodeJMESPath current node expression
 |oCExpressionArgumentNodeJMESPath expression argument
 |oCExpressionNodeJMESPath expression
 |oCFilterExpressionNodeJMESPath filter expression
 |oCFlattenOperatorNodeJMESPath flatten operator
 |oCFunctionExpressionNodeJMESPath function expression
 |oCHashWildcardNodeJMESPath hash wildcard expression
 |oCIdentifierNodeJMESPath identifier
 |oCIndexExpressionNodeJMESPath index expression
 |oCListWildcardNodeJMESPath list wildcard expression
 |oCLiteralNodeJMESPath literal string
 |oCMultiselectHashNodeJMESPath multiselect hash expression
 |oCMultiselectListNodeJMESPath list wildcard expression
 |oCNotExpressionNodeJMESPath not expression
 |oCOrExpressionNodeJMESPath or expression
 |oCParenExpressionNodeJMESPath paren expression
 |oCPipeExpressionNodeJMESPath pipe expression
 |oCRawStringNodeJMESPath raw string literal
 |oCSliceExpressionNodeJMESPath slice expression
 |oCSubexpressionNodeJMESPath subexpression
 |oCVariantNodeThe VariantNode class serves as a container node which can represent either one of the node types specified in the classes template argument list
 |\CVariantVisitorAdaptorAdapts an AbstractVisitor implementation to the boost::static_visitor interface, so it can be used to visit boost::variant objects
 oNinterpreterClasses for interpreting the AST of the JMESPath expression
 |oCAbstractVisitorInterface which defines the member functions required to visit every type of AST node
 |oCContextValueVisitorAdaptorThe ContextValueVisitorAdaptor class adapts a visitor object, which is callable with const lvalue reference of Json and with rvalue reference of Json objects, to ContextValue objects
 |\CInterpreterEvaluates the AST structure on a Json context
 oNliteralsUser defined literals
 oNparserClasses required for parsing JMESPath expressions
 |oCAppendEscapeSequenceActionFunctor for appending UTF-32 an escape sequence, consisting from a pair of UTF-32 characters, to a UTF-8 encoded strings
 |oCAppendUtf8ActionFunctor for appending UTF-32 characters to UTF-8 encoded strings
 |oCEncodeSurrogatePairActionFunctor for encoding surrogate pair characters in UTF-32
 |oCGrammarThe Grammar class contains the PEG rule definition based on the EBNF specifications of JMESPath
 |oCInsertNodeActionThe InsertNodeAction class is a functor for inserting the given node into the AST whose root node is specified with targetNode
 |oCLeftChildExtractorFunctor that extracts the child expression node from the given node which should be evaluated before the given node itself
 |oCLeftEdgeIteratorForward iterator which can be used to iterate over the ExpressionNode objects along the left edge of the AST
 |oCNodeInsertConditionFunctor that will either yield a true or false result based on whether the given node should be inserted at the location of the targetNode
 |oCNodeInsertPolicyFunctor for inserting a given node into the AST
 |\CParserThe Parser class parses expressions with the specified grammar
 oCExceptionThe Exception struct is the common base class for for all the exceptions thrown by the library
 oCSyntaxErrorThe SyntaxError struct represents a syntax error in the evaluated expression
 oCInvalidAgrumentThe InvalidAgrument struct signals a function call with illegal arguments
 oCInvalidValueThe InvalidValue struct represents an invalid value in the JMESPath expression
 oCUnknownFunctionThe UnknownFunction struct represents a call to a JMESPath built in function which doesn't exists
 oCInvalidFunctionArgumentArityThe InvalidFunctionArgumentArity struct signals the a JMESPath built in function was called with an unexpected number of arguments
 oCInvalidFunctionArgumentTypeThe InvalidFunctionArgumentType struct represents a call to a JMESPath built in function with an unexpected type of argument
 \CExpressionJMESPath expression
  \CExpressionDeleterThe ExpressionDeleter struct is a custom destruction policy for deleting ast::ExpressionNode objects
+
+
+ + + + diff --git a/appendescapesequenceaction_8h.html b/appendescapesequenceaction_8h.html new file mode 100644 index 0000000..5676af7 --- /dev/null +++ b/appendescapesequenceaction_8h.html @@ -0,0 +1,123 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/parser/appendescapesequenceaction.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
appendescapesequenceaction.h File Reference
+
+
+
#include "jmespath/types.h"
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::parser::AppendEscapeSequenceAction
 The AppendEscapeSequenceAction class is a functor for appending UTF-32 an escape sequence, consisting from a pair of UTF-32 characters, to a UTF-8 encoded strings. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::parser
 Classes required for parsing JMESPath expressions.
 
+
+ + + + diff --git a/appendescapesequenceaction_8h_source.html b/appendescapesequenceaction_8h_source.html new file mode 100644 index 0000000..4408578 --- /dev/null +++ b/appendescapesequenceaction_8h_source.html @@ -0,0 +1,161 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/parser/appendescapesequenceaction.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
appendescapesequenceaction.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2018 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef APPENDESCAPESEQUENCEACTION_H
+
29 #define APPENDESCAPESEQUENCEACTION_H
+
30 #include "jmespath/types.h"
+
31 
+
32 namespace jmespath { namespace parser {
+
33 
+ +
40 {
+
41 public:
+
45  using result_type = void;
+
49  using escape_type = std::pair<UnicodeChar, UnicodeChar>;
+ +
61  escape_type escapeSequence) const
+
62  {
+
63  auto outIt = std::back_inserter(utf8String);
+
64  boost::utf8_output_iterator<decltype(outIt)> utf8OutIt(outIt);
+
65  // if the escaped character is not a single quote then treat the entire
+
66  // escape sequence as regular characters
+
67  if (escapeSequence.second != U'\'')
+
68  {
+
69  *utf8OutIt++ = escapeSequence.first;
+
70  }
+
71  *utf8OutIt++ = escapeSequence.second;
+
72  }
+
73 };
+
74 }} // namespace jmespath::parser
+
75 #endif // APPENDESCAPESEQUENCEACTION_H
+
void result_type
The action's result type.
Definition: appendescapesequenceaction.h:45
+ +
std::basic_string< Char > String
UTF-8 encoded string type.
Definition: types.h:44
+
std::pair< UnicodeChar, UnicodeChar > escape_type
The type of the escape sequence.
Definition: appendescapesequenceaction.h:49
+
The AppendEscapeSequenceAction class is a functor for appending UTF-32 an escape sequence, consisting from a pair of UTF-32 characters, to a UTF-8 encoded strings.
Definition: appendescapesequenceaction.h:39
+
result_type operator()(String &utf8String, escape_type escapeSequence) const
Append the characters of the escapeSequence to the utf8String encoded in UTF-8.
Definition: appendescapesequenceaction.h:60
+
+ + + + diff --git a/appendutf8action_8h.html b/appendutf8action_8h.html new file mode 100644 index 0000000..6267c53 --- /dev/null +++ b/appendutf8action_8h.html @@ -0,0 +1,123 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/parser/appendutf8action.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
appendutf8action.h File Reference
+
+
+
#include "jmespath/types.h"
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::parser::AppendUtf8Action
 The AppendUtf8Action class is a functor for appending UTF-32 characters to UTF-8 encoded strings. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::parser
 Classes required for parsing JMESPath expressions.
 
+
+ + + + diff --git a/appendutf8action_8h_source.html b/appendutf8action_8h_source.html new file mode 100644 index 0000000..4dc758c --- /dev/null +++ b/appendutf8action_8h_source.html @@ -0,0 +1,154 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/parser/appendutf8action.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
appendutf8action.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef APPENDUTF8ACTION_H
+
29 #define APPENDUTF8ACTION_H
+
30 #include "jmespath/types.h"
+
31 
+
32 namespace jmespath { namespace parser {
+
33 
+ +
39 {
+
40 public:
+
44  using result_type = void;
+ +
53  UnicodeChar utf32Char) const
+
54  {
+
55  auto outIt = std::back_inserter(utf8String);
+
56  boost::utf8_output_iterator<decltype(outIt)> utf8OutIt(outIt);
+
57  *utf8OutIt++ = utf32Char;
+
58  }
+
59 };
+
60 }} // namespace jmespath::parser
+
61 #endif // APPENDUTF8ACTION_H
+ +
void result_type
The action's result type.
Definition: appendutf8action.h:44
+
std::basic_string< Char > String
UTF-8 encoded string type.
Definition: types.h:44
+
The AppendUtf8Action class is a functor for appending UTF-32 characters to UTF-8 encoded strings...
Definition: appendutf8action.h:38
+
char32_t UnicodeChar
32 bit character type
Definition: types.h:48
+
result_type operator()(String &utf8String, UnicodeChar utf32Char) const
Appends the utf32Char character to the utf8String encoded in UTF-8.
Definition: appendutf8action.h:52
+
+ + + + diff --git a/arrayitemnode_8cpp.html b/arrayitemnode_8cpp.html new file mode 100644 index 0000000..dd0467a --- /dev/null +++ b/arrayitemnode_8cpp.html @@ -0,0 +1,115 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/arrayitemnode.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arrayitemnode.cpp File Reference
+
+
+ + + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/arrayitemnode_8h.html b/arrayitemnode_8h.html new file mode 100644 index 0000000..0eaf362 --- /dev/null +++ b/arrayitemnode_8h.html @@ -0,0 +1,125 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/arrayitemnode.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
arrayitemnode.h File Reference
+
+
+
#include "src/ast/abstractnode.h"
+#include "jmespath/types.h"
+#include <boost/fusion/include/adapt_struct.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::ast::ArrayItemNode
 The ArrayItemNode class represents a JMESPath array index expression. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/arrayitemnode_8h_source.html b/arrayitemnode_8h_source.html new file mode 100644 index 0000000..b2adfa7 --- /dev/null +++ b/arrayitemnode_8h_source.html @@ -0,0 +1,162 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/arrayitemnode.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
arrayitemnode.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef ARRAYITEMNODE_H
+
29 #define ARRAYITEMNODE_H
+
30 #include "src/ast/abstractnode.h"
+
31 #include "jmespath/types.h"
+
32 #include <boost/fusion/include/adapt_struct.hpp>
+
33 
+
34 namespace jmespath { namespace ast {
+
35 
+ +
41 {
+
42 public:
+
46  ArrayItemNode();
+
52  ArrayItemNode(Index itemIndex);
+
58  void accept(interpreter::AbstractVisitor* visitor) const override;
+
65  bool operator==(const ArrayItemNode& other) const;
+ +
70 };
+
71 }} // namespace jmespath::ast
+
72 
+
73 BOOST_FUSION_ADAPT_STRUCT(
+ +
75  (jmespath::Index, index)
+
76 )
+
77 #endif // ARRAYITEMNODE_H
+ +
ArrayItemNode()
Constructs an empty ArrayItemNode object.
Definition: arrayitemnode.cpp:33
+
Index index
The node's value.
Definition: arrayitemnode.h:69
+ +
boost::multiprecision::number< boost::multiprecision::cpp_int_backend< std::numeric_limits< size_t >::digits, std::numeric_limits< size_t >::digits, boost::multiprecision::signed_magnitude, boost::multiprecision::checked, void > > Index
Signed integer type that can hold all values in the range of numeric_limits<size_t>::max() * -1 ...
Definition: types.h:77
+
The AbstractVisitor class is an interface which defines the member functions required to visit every ...
Definition: abstractvisitor.h:71
+
The ArrayItemNode class represents a JMESPath array index expression.
Definition: arrayitemnode.h:40
+
bool operator==(const ArrayItemNode &other) const
Equality compares this node to the other.
Definition: arrayitemnode.cpp:49
+
void accept(interpreter::AbstractVisitor *visitor) const override
Calls the visit method of the given visitor with the dynamic type of the node.
Definition: arrayitemnode.cpp:44
+
The AbstractNode class is the common interface class for all AST node types.
Definition: abstractnode.h:45
+
+ + + + diff --git a/bc_s.png b/bc_s.png new file mode 100644 index 0000000000000000000000000000000000000000..224b29aa9847d5a4b3902efd602b7ddf7d33e6c2 GIT binary patch literal 676 zcmV;V0$crwP)y__>=_9%My z{n931IS})GlGUF8K#6VIbs%684A^L3@%PlP2>_sk`UWPq@f;rU*V%rPy_ekbhXT&s z(GN{DxFv}*vZp`F>S!r||M`I*nOwwKX+BC~3P5N3-)Y{65c;ywYiAh-1*hZcToLHK ztpl1xomJ+Yb}K(cfbJr2=GNOnT!UFA7Vy~fBz8?J>XHsbZoDad^8PxfSa0GDgENZS zuLCEqzb*xWX2CG*b&5IiO#NzrW*;`VC9455M`o1NBh+(k8~`XCEEoC1Ybwf;vr4K3 zg|EB<07?SOqHp9DhLpS&bzgo70I+ghB_#)K7H%AMU3v}xuyQq9&Bm~++VYhF09a+U zl7>n7Jjm$K#b*FONz~fj;I->Bf;ule1prFN9FovcDGBkpg>)O*-}eLnC{6oZHZ$o% zXKW$;0_{8hxHQ>l;_*HATI(`7t#^{$(zLe}h*mqwOc*nRY9=?Sx4OOeVIfI|0V(V2 zBrW#G7Ss9wvzr@>H*`r>zE z+e8bOBgqIgldUJlG(YUDviMB`9+DH8n-s9SXRLyJHO1!=wY^79WYZMTa(wiZ!zP66 zA~!21vmF3H2{ngD;+`6j#~6j;$*f*G_2ZD1E;9(yaw7d-QnSCpK(cR1zU3qU0000< KMNUMnLSTYoA~SLT literal 0 HcmV?d00001 diff --git a/bdwn.png b/bdwn.png new file mode 100644 index 0000000000000000000000000000000000000000..940a0b950443a0bb1b216ac03c45b8a16c955452 GIT binary patch literal 147 zcmeAS@N?(olHy`uVBq!ia0vp^>_E)H!3HEvS)PKZC{Gv1kP61Pb5HX&C2wk~_T + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/binaryexpressionnode.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
binaryexpressionnode.cpp File Reference
+
+
+
#include "src/ast/allnodes.h"
+
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/binaryexpressionnode_8h.html b/binaryexpressionnode_8h.html new file mode 100644 index 0000000..4c6692c --- /dev/null +++ b/binaryexpressionnode_8h.html @@ -0,0 +1,124 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/binaryexpressionnode.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
binaryexpressionnode.h File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::ast::BinaryExpressionNode
 The BinaryExpressionNode class is the base class for all node types which consist of a left and a right hand side expression. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/binaryexpressionnode_8h_source.html b/binaryexpressionnode_8h_source.html new file mode 100644 index 0000000..b2c6a40 --- /dev/null +++ b/binaryexpressionnode_8h_source.html @@ -0,0 +1,163 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/binaryexpressionnode.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
binaryexpressionnode.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef BINARYEXPRESSIONNODE_H
+
29 #define BINARYEXPRESSIONNODE_H
+
30 #include "src/ast/abstractnode.h"
+
31 #include "src/ast/expressionnode.h"
+
32 
+
33 namespace jmespath { namespace ast {
+
34 
+ +
40 {
+
41 public:
+ + +
53  const ExpressionNode& right);
+
60  bool operator==(const BinaryExpressionNode& other) const;
+
66  void accept(interpreter::AbstractVisitor *visitor) const override;
+
73  virtual bool isProjection() const = 0;
+
80  virtual bool stopsProjection() const = 0;
+ + +
89 };
+
90 }} // namespace jmespath::ast
+
91 #endif // BINARYEXPRESSIONNODE_H
+
void accept(interpreter::AbstractVisitor *visitor) const override
Calls the accept method with the given visitor as the parameter on the node's child expressions...
Definition: binaryexpressionnode.cpp:55
+
BinaryExpressionNode()
Constructs an empty BinaryExpressionNode object.
Definition: binaryexpressionnode.cpp:32
+ +
The BinaryExpressionNode class is the base class for all node types which consist of a left and a rig...
Definition: binaryexpressionnode.h:39
+ +
ExpressionNode rightExpression
The right hand expression of the node.
Definition: binaryexpressionnode.h:88
+
virtual bool stopsProjection() const =0
Reports whether the node should stop an ongoing projection or not.
+
virtual bool isProjection() const =0
Reports whether the right hand side expression is projected onto the result of the operation or not...
+
bool operator==(const BinaryExpressionNode &other) const
Equality compares this node to the other.
Definition: binaryexpressionnode.cpp:45
+
The AbstractVisitor class is an interface which defines the member functions required to visit every ...
Definition: abstractvisitor.h:71
+
ExpressionNode leftExpression
The left hand expression of the node.
Definition: binaryexpressionnode.h:84
+
The ExpressionNode class represents a JMESPath expression.
Definition: expressionnode.h:56
+
The AbstractNode class is the common interface class for all AST node types.
Definition: abstractnode.h:45
+
+ + + + diff --git a/bracketspecifiernode_8cpp.html b/bracketspecifiernode_8cpp.html new file mode 100644 index 0000000..bbd4048 --- /dev/null +++ b/bracketspecifiernode_8cpp.html @@ -0,0 +1,115 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/bracketspecifiernode.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
bracketspecifiernode.cpp File Reference
+
+
+ + + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/bracketspecifiernode_8h.html b/bracketspecifiernode_8h.html new file mode 100644 index 0000000..9167472 --- /dev/null +++ b/bracketspecifiernode_8h.html @@ -0,0 +1,124 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/bracketspecifiernode.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
bracketspecifiernode.h File Reference
+
+
+
#include "src/ast/variantnode.h"
+#include <boost/fusion/include/adapt_struct.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::ast::BracketSpecifierNode
 The BracketSpecifierNode class represents a JMESPath bracket specifier. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/bracketspecifiernode_8h_source.html b/bracketspecifiernode_8h_source.html new file mode 100644 index 0000000..2f9b6c9 --- /dev/null +++ b/bracketspecifiernode_8h_source.html @@ -0,0 +1,171 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/bracketspecifiernode.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
bracketspecifiernode.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef BRACKETSPECIFIERNODE_H
+
29 #define BRACKETSPECIFIERNODE_H
+
30 #include "src/ast/variantnode.h"
+
31 #include <boost/fusion/include/adapt_struct.hpp>
+
32 
+
33 namespace jmespath { namespace ast {
+
34 
+
35 class ArrayItemNode;
+
36 class FlattenOperatorNode;
+
37 class SliceExpressionNode;
+
38 class ListWildcardNode;
+
39 class FilterExpressionNode;
+ +
45  boost::recursive_wrapper<ArrayItemNode>,
+
46  boost::recursive_wrapper<FlattenOperatorNode>,
+
47  boost::recursive_wrapper<SliceExpressionNode>,
+
48  boost::recursive_wrapper<ListWildcardNode>,
+
49  boost::recursive_wrapper<FilterExpressionNode> >
+
50 {
+
51 public:
+ +
61  BracketSpecifierNode(const ValueType& expression);
+
67  bool isProjection() const;
+
74  bool stopsProjection() const;
+
75 
+
76 private:
+
80  virtual void anchor();
+
81 };
+
82 }} // namespace jmespath::ast
+
83 
+
84 BOOST_FUSION_ADAPT_STRUCT(
+ + +
87 )
+
88 #endif // BRACKETSPECIFIERNODE_H
+
The BracketSpecifierNode class represents a JMESPath bracket specifier.
Definition: bracketspecifiernode.h:44
+ +
bool stopsProjection() const
Reports whether the node should stop an ongoing projection or not.
Definition: bracketspecifiernode.cpp:49
+ +
virtual void anchor()
A virtual function used to pin vtable to a transaltion unit.
Definition: bracketspecifiernode.cpp:54
+
bool isProjection() const
Returns whather this expression requires the projection of subsequent expressions.
Definition: bracketspecifiernode.cpp:43
+
The VariantNode class serves as a container node which can represent either one of the node types spe...
Definition: variantnode.h:42
+
BracketSpecifierNode()
Constructs an empty BracketSpecifierNode object.
Definition: bracketspecifiernode.cpp:33
+
+ + + + diff --git a/classes.html b/classes.html new file mode 100644 index 0000000..e6a7129 --- /dev/null +++ b/classes.html @@ -0,0 +1,141 @@ + + + + + + +jmespath.cpp: Class Index + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + +
+ + + + +
+ +
+ +
+
+
Class Index
+
+
+
A | B | C | E | F | G | H | I | L | M | N | O | P | R | S | U | V
+ + + + + + + + + + + + + + + + + + + + + +
  A  
+
  E  
+
  I  
+
MultiselectListNode (jmespath::ast)   
  S  
+
  N  
+
AbstractNode (jmespath::ast)   EncodeSurrogatePairAction (jmespath::parser)   IdentifierNode (jmespath::ast)   SliceExpressionNode (jmespath::ast)   
AbstractVisitor (jmespath::interpreter)   Exception (jmespath)   IndexExpressionNode (jmespath::ast)   NodeInsertCondition (jmespath::parser)   SubexpressionNode (jmespath::ast)   
AndExpressionNode (jmespath::ast)   Expression (jmespath)   InsertNodeAction (jmespath::parser)   NodeInsertPolicy (jmespath::parser)   SyntaxError (jmespath)   
AppendEscapeSequenceAction (jmespath::parser)   ExpressionArgumentNode (jmespath::ast)   Interpreter (jmespath::interpreter)   NotExpressionNode (jmespath::ast)   
  U  
+
AppendUtf8Action (jmespath::parser)   Expression::ExpressionDeleter (jmespath)   InvalidAgrument (jmespath)   
  O  
+
ArrayItemNode (jmespath::ast)   ExpressionNode (jmespath::ast)   InvalidFunctionArgumentArity (jmespath)   UnknownFunction (jmespath)   
  B  
+
  F  
+
InvalidFunctionArgumentType (jmespath)   OrExpressionNode (jmespath::ast)   
  V  
+
InvalidValue (jmespath)   
  P  
+
BinaryExpressionNode (jmespath::ast)   FilterExpressionNode (jmespath::ast)   
  L  
+
VariantNode (jmespath::ast)   
BracketSpecifierNode (jmespath::ast)   FlattenOperatorNode (jmespath::ast)   ParenExpressionNode (jmespath::ast)   VariantVisitorAdaptor (jmespath::ast)   
  C  
+
FunctionExpressionNode (jmespath::ast)   LeftChildExtractor (jmespath::parser)   Parser (jmespath::parser)   
  G  
+
LeftEdgeIterator (jmespath::parser)   PipeExpressionNode (jmespath::ast)   
ComparatorExpressionNode (jmespath::ast)   ListWildcardNode (jmespath::ast)   
  R  
+
ContextValueVisitorAdaptor (jmespath::interpreter)   Grammar (jmespath::parser)   LiteralNode (jmespath::ast)   
CurrentNode (jmespath::ast)   
  H  
+
  M  
+
RawStringNode (jmespath::ast)   
HashWildcardNode (jmespath::ast)   MultiselectHashNode (jmespath::ast)   
+
A | B | C | E | F | G | H | I | L | M | N | O | P | R | S | U | V
+
+ + + + diff --git a/classjmespath_1_1ast_1_1_abstract_node-members.html b/classjmespath_1_1ast_1_1_abstract_node-members.html new file mode 100644 index 0000000..0c8c748 --- /dev/null +++ b/classjmespath_1_1ast_1_1_abstract_node-members.html @@ -0,0 +1,112 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::ast::AbstractNode Member List
+
+
+ +

This is the complete list of members for jmespath::ast::AbstractNode, including all inherited members.

+ + + + + + +
AbstractNode()=defaultjmespath::ast::AbstractNode
AbstractNode(const AbstractNode &)=defaultjmespath::ast::AbstractNode
accept(interpreter::AbstractVisitor *visitor) const =0jmespath::ast::AbstractNodepure virtual
operator=(const AbstractNode &)=defaultjmespath::ast::AbstractNode
~AbstractNode()jmespath::ast::AbstractNodevirtual
+ + + + diff --git a/classjmespath_1_1ast_1_1_abstract_node.html b/classjmespath_1_1ast_1_1_abstract_node.html new file mode 100644 index 0000000..87dd751 --- /dev/null +++ b/classjmespath_1_1ast_1_1_abstract_node.html @@ -0,0 +1,304 @@ + + + + + + +jmespath.cpp: jmespath::ast::AbstractNode Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast::AbstractNode Class Referenceabstract
+
+
+ +

The AbstractNode class is the common interface class for all AST node types. + More...

+ +

#include <abstractnode.h>

+
+Inheritance diagram for jmespath::ast::AbstractNode:
+
+
+ + +jmespath::ast::ArrayItemNode +jmespath::ast::BinaryExpressionNode +jmespath::ast::CurrentNode +jmespath::ast::ExpressionArgumentNode +jmespath::ast::FilterExpressionNode +jmespath::ast::FlattenOperatorNode +jmespath::ast::FunctionExpressionNode +jmespath::ast::IdentifierNode +jmespath::ast::ListWildcardNode +jmespath::ast::LiteralNode +jmespath::ast::MultiselectHashNode +jmespath::ast::MultiselectListNode +jmespath::ast::NotExpressionNode +jmespath::ast::ParenExpressionNode +jmespath::ast::RawStringNode +jmespath::ast::SliceExpressionNode +jmespath::ast::VariantNode< VariantT > +jmespath::ast::VariantNode< boost::recursive_wrapper< ArrayItemNode >, boost::recursive_wrapper< FlattenOperatorNode >, boost::recursive_wrapper< SliceExpressionNode >, boost::recursive_wrapper< ListWildcardNode >, boost::recursive_wrapper< FilterExpressionNode > > +jmespath::ast::VariantNode< boost::recursive_wrapper< IdentifierNode >, boost::recursive_wrapper< RawStringNode >, boost::recursive_wrapper< LiteralNode >, boost::recursive_wrapper< SubexpressionNode >, boost::recursive_wrapper< IndexExpressionNode >, boost::recursive_wrapper< HashWildcardNode >, boost::recursive_wrapper< MultiselectListNode >, boost::recursive_wrapper< MultiselectHashNode >, boost::recursive_wrapper< NotExpressionNode >, boost::recursive_wrapper< ComparatorExpressionNode >, boost::recursive_wrapper< OrExpressionNode >, boost::recursive_wrapper< AndExpressionNode >, boost::recursive_wrapper< ParenExpressionNode >, boost::recursive_wrapper< PipeExpressionNode >, boost::recursive_wrapper< CurrentNode >, boost::recursive_wrapper< FunctionExpressionNode > > + +
+ + + + + + + + + + + + + + + + + +

+Public Member Functions

 AbstractNode ()=default
 Constructs an AbstractNode object. More...
 
 AbstractNode (const AbstractNode &)=default
 Copy-constructs an AbstractNode object. More...
 
virtual ~AbstractNode ()
 Destroys the AbstractNode object. More...
 
AbstractNodeoperator= (const AbstractNode &)=default
 Copy-assigns the other object to this object. More...
 
virtual void accept (interpreter::AbstractVisitor *visitor) const =0
 Accepts the given visitor object. More...
 
+

Detailed Description

+

The AbstractNode class is the common interface class for all AST node types.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
jmespath::ast::AbstractNode::AbstractNode ()
+
+default
+
+ +

Constructs an AbstractNode object.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
jmespath::ast::AbstractNode::AbstractNode (const AbstractNode)
+
+default
+
+ +

Copy-constructs an AbstractNode object.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
jmespath::ast::AbstractNode::~AbstractNode ()
+
+virtual
+
+ +

Destroys the AbstractNode object.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
virtual void jmespath::ast::AbstractNode::accept (interpreter::AbstractVisitorvisitor) const
+
+pure virtual
+
+ +

Accepts the given visitor object.

+

Subclasses should implement this function by calling the visit method of the visitor with a pointer to the node object itself and the accept method of the node's member nodes with the visitor as the parameter.

+
Parameters
+ + +
[in]visitorAn interpreter::AbstractVisitor object
+
+
+ +

Implemented in jmespath::ast::VariantNode< VariantT >, jmespath::ast::VariantNode< boost::recursive_wrapper< ArrayItemNode >, boost::recursive_wrapper< FlattenOperatorNode >, boost::recursive_wrapper< SliceExpressionNode >, boost::recursive_wrapper< ListWildcardNode >, boost::recursive_wrapper< FilterExpressionNode > >, jmespath::ast::VariantNode< boost::recursive_wrapper< IdentifierNode >, boost::recursive_wrapper< RawStringNode >, boost::recursive_wrapper< LiteralNode >, boost::recursive_wrapper< SubexpressionNode >, boost::recursive_wrapper< IndexExpressionNode >, boost::recursive_wrapper< HashWildcardNode >, boost::recursive_wrapper< MultiselectListNode >, boost::recursive_wrapper< MultiselectHashNode >, boost::recursive_wrapper< NotExpressionNode >, boost::recursive_wrapper< ComparatorExpressionNode >, boost::recursive_wrapper< OrExpressionNode >, boost::recursive_wrapper< AndExpressionNode >, boost::recursive_wrapper< ParenExpressionNode >, boost::recursive_wrapper< PipeExpressionNode >, boost::recursive_wrapper< CurrentNode >, boost::recursive_wrapper< FunctionExpressionNode > >, jmespath::ast::ComparatorExpressionNode, jmespath::ast::IndexExpressionNode, jmespath::ast::AndExpressionNode, jmespath::ast::HashWildcardNode, jmespath::ast::OrExpressionNode, jmespath::ast::PipeExpressionNode, jmespath::ast::MultiselectHashNode, jmespath::ast::FunctionExpressionNode, jmespath::ast::MultiselectListNode, jmespath::ast::BinaryExpressionNode, jmespath::ast::SliceExpressionNode, jmespath::ast::ArrayItemNode, jmespath::ast::ExpressionArgumentNode, jmespath::ast::FilterExpressionNode, jmespath::ast::IdentifierNode, jmespath::ast::NotExpressionNode, jmespath::ast::RawStringNode, jmespath::ast::LiteralNode, jmespath::ast::ParenExpressionNode, jmespath::ast::FlattenOperatorNode, jmespath::ast::CurrentNode, and jmespath::ast::ListWildcardNode.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
AbstractNode& jmespath::ast::AbstractNode::operator= (const AbstractNode)
+
+default
+
+ +

Copy-assigns the other object to this object.

+
Returns
Returns a reference to this object.
+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classjmespath_1_1ast_1_1_abstract_node.png b/classjmespath_1_1ast_1_1_abstract_node.png new file mode 100644 index 0000000000000000000000000000000000000000..445ffa48f2f154cea243e3b23c8f34d2185166d2 GIT binary patch literal 59622 zcmeHw3wRS{+O{hmK2O9|R|KS4msOTU>>|sVX4W4S6{Rb6tx{+{tXQ$8p_Crd97Yzk z3kX@{P=S`L7O04A7O+X7Nd~D9X`$iRv`mv}32oY@>9k3cNivz4e+oiYS` z>+*tzbmo1Z_jEt^dq2;!>aTNW-*@+jyKlMWmiu0O;n{h&-17M3TW-1SFaI@!{$%mn zndS5!kNoxJ*Pf#&ivDX`rzcB!_@DIOF8zP#(4pH`HS*~n|7-cYxe2$>U+VksT=i>D z)8EZ{@!4ly%l(zp;>?C;Zq~rNN2YWKc@iL_vwq#ze>B6TU30xh{(H6WjW=%j^-H89 zyVA0((vp6_lCEt`*CwTF;qhA7xfyn5*Eq8)Te$x-y5cXtz5l;%yS4w1CLnud_(wC+ zulWl73qd36Bbo8Ot53Q7Osbys5nA!gweS0FH@}kg(Woh*P3rpvGKKY#!FES~t1mzE z5ZK9l1S&@crPPOU>w;5V`^m9h$13P)MGV=hxbpTU-ZEA*zmpSwVrv;F$HhEB5lu zX$&*({XV6I=`)&POOaF(@5xq69KL#DH#WZY)m_-!DXMCMc{%wo%g$F#?~^v>#sX!0 zc`RR?98hc?rgkgtk)y;+|14YFIs7n{8&70QUty*JxN2m`#Jbc7YA^FqFfLv8q$&?U zlGC7DlSlIH@{R*(vhRHvO?%3j_KF7^BgnW`*)q$v#xP8LrcqabS&=8e&wK*AO=mu7 z+G8mB@QPspgy|d8t`*k|7Vn7DYjdmMnnOu8)p=#WRIB_P_zH0F??@iUpQv9O-0Bvz zr~2|g0={9|6`L{0+<}bu8C*+mVP1yh{7~OLdY_>;x8I-$dzoIHzsv$|`d_qix$jxm z+3{Fg+LdAZZ8u_LRvTj==AW4TEqD7p%)l{=J?yJZOUfMAeadFX!SE-CZ)n>u1~S6; zJ*E}RcV`+s*KhIW>$X_(6!XCT*%Q_|`+@5=*M8kjU*B}mhJ;V1s6~De7U`~^X1`dN zxvX~DG<#uT=G@w8W9)?+GHZ`r=VN3Dvk;}jn6()*1KupE(JY4di5fKTCuzn<`cZCV ze({jLfBh?quKRn7VS|mac$4*Z<{`$~>%6b8HAn`tNi0Q~&EQZ<>Y(ks+zWInv$Iv? zFneCp-u;90?@I6CoJX0htFe-Kdv`s{E>M*SCiURqnAwU){bs*mu6w`3eP{|+9{vjO zADk@irN(Is_KAePKP|(DE#jSNOb!Tm!J0pZ4~5q_jZ@FSd|2sn^%Q4F_4<2tlN6tj z?w-1y>1bSUd0=Z-Dly5fK9vY8leI|~V)h-wpnZyWMPVZk3!69%95E`L+6d2)?1rog zFIkrZ3pQK4Qh&?iKGD&{9;j5x_dM1dKH9|XLz(H$#Jl3fjO(?@;_14tZt7= zhmEe?nA=(I9oJOelVMeFSCwn4<5d$0O|Pk^a*{S|^*P1d76Ca_>rC;V^nHOIfxoeM zldV$VHpAZ(2WxsIq$5w22*&GKQ&YojYUWhP|4?aB$jHn~?nMIrD%Ieh&^z0cN>m+k zbSJfp?@lx+hXZE+H@)ac-^uggn+SA>S@whO9r%n!jdL9DPK}fL7R)h(Z!LH+_oYeW z;s1uoOzK2CYXo_jS4VJ=O@+K$E5c9P){F3X0(%Dz?-EeUsY?-d)nDXx7`|?kG|m|j z7x+yaS@Z$d53ob#4`Y93kGe9dO;LaowaE26s^}bv&JkvgD2uqG=Mb#zj$=^EkAyHe zZ>j7rhCzt&uy@p*On0$<*L)@m-LQUdvj|_u2_r=CA2>P;_!;`pNANM785h;-VWk6k zTz*%ebsx4xkuB>Y)AzAZ0MyFN-9g<6VrP0R?R#{mUEJxK+NEt1;Yy3)4I8vMBiwx; zF>bg5IN_Wv@%v6y=&i|jSVsWQQ~q2BjT>VE^NB5;lWg{O!0g-NNj<5q7iPrH;@5%j zkt8&&N&RR3-+^yfI7GRO8xHxi_8KBq#IH%mzmUZdrT%ekSOs!xAD|rDod0KNXFUs~ zoL~;gkaLsmv-J&uvc>7$(=)cU)Rux7t@Jp^FUkY6W1orjz?xXu%K=Fu4KE|$ZB+}m z(O8lm0dFVm$0h&hFnO$Xms5ke ztkMF9{DL!Oopw9&_jFk9cX~5U<8u-1UKR*n&Giiff^boj(KD_yp%H#d{S0u1cp<1c z4$l`mAm@crY?c+7f`88TN;h(Ss|Zev8Tvj<6~`_Uq-V;3!2&vh znf(mK4e}#Yt-qhq9dt8{&|B)Lq@RKfWmh<{NFnFoWzI>)V|()qkHY*5a{`(A`^#*A z%t^}p#!OQ`PsHplVPEZ@+0R}vk7c&HE5C8by&(Lt(S}4Va?L!7&XMrN^K-OFZs!k2 z8nD4nl%b(Fg~2J>kY$2@8_M_c#q%YT-;RJ6Yrc&q}q)q z`R7y~t(9*Pk4?5AcP8%vQuWJ8Ophb=!A2ONmyu91_21zRK!XOI&Ya7GQVH}F z)W}Zb%No>`-PU)APqJ&@2Nm*^>Cei6}4n53&CAW4fko26Egr+^hIr6*x zIwNnIHIp)Qv${Bz8|LC)xK=&lwI-JpRBK?pvPU&6*oFqYNYvITi_Jt>S^7Hrb=j$jrOGWZE-PwqV8jAH8m;d_l|3`9mn93I7J6(T)0no zfQ5qN|A(@Y$HHYLNiFUV;~xZ0985}qo%`b*klKT5Vt&uoF?`3lm;Ku3Y*;Em<&_re z)3W8TVjN@<%%%(*)VqQUIy22^r6v3tf^u*jt$~sFiUP;tps`SUuXu@d9yGqY4&UzA z_iXmea;bOep7O$7k#1N*j5?Uo<9=G{QC+n{gm0$q8O|CS(~Uo6{>S|NltapLtbi(R z#-2!DiOo^YrZp7gn&IhMD)2C?RXlF0AeM_xdmG#wUY0BSK38cRdmsK8ZP-89=@@QB4qU8aAIn%pc}3X`Rk6{=CHN@&~rEWJo9N4{<^Jf}eu8yw-ke;Lr+6BOY&>9J=3 zyHCBikp+UxPMW0UQ~!-376+8yFWsxQ)E zf&a5kb9bT^?=tUZy(3g_AFl6a@!=rrqMe>zv@H89?)T2ef75;5Hx(^iR?uT>G&Kko z6B}LWLnz-qDQkwkz;!mzT6^Bw*g&%G6}0C+%RG3t|N$HxYU-_Of~eTA5R7(A%B= z#J2Xc2L3G#*QWK)MS!OgBR+Y!_)=rv%VwN}jzAvAH+SiI0jhhNRsu^02& z0&iLKzk{BzU{tkRqR0LfJ5hfAGz*kX;D+=0?HYXn->ftgD5u2AftodD3G|WSaXgEf zicacD>r6YFzfSu$x(fIj>&jfsdyo|iX$q0q-c0o6dNxgtNz?>?p0%`RLc85#m6z{f zVZ~WoCk5@K2>xtnllDv&Y4vn^5Nt=KQ!hK-{eX9#ztF!jHV^p%Kv8)Q>kS+O8-de< z!13e_iqEhIywma2?|~C4jF%>RMCznY;uCx9<0HiOs_YD88eB3$Tg<611j&@&$~KH3#lJbGmxZkVV= zq85n;Ib0i&5fb)cKFtw$$(oTb2~%CkU;)dESYbMjx~&@t}9A z%ly5w;nlc6>#j~g_KI|d!DfKM%gNo<%M(Abo-vw9`@($P)nHJ}mu*F^xi54Hc5b68Qc)UP;CGL3rXqxBlQPx!_%)>P$j6O4eL(7b(n&-a?R zBh=wf+5S4W956S(XZ=D^eUvL_j&vF;iCQFNfiTC$HU9SxJV&Bjd4!{; zUoQFMbLD9v2~*6~3okl4VJG&v>V&BXX*|WEW~XtZW+{XwmoM?;X)RB=QjNpzN{^MR z?u=2hawdXba*7r6nk$Gu#PWd=TJxnu$Hq2*FCL|KTW1OP02_!lzeF1Env7>{(e74L zf*eI5JNL#a&M#u=Q&zeb1!+wQKV6-ongN)s;d&b=1hMvCi?M@)aoX0`W=1hh6Ii+e z6%~5y1Hj*6Wv4;HD#HFzxTZj3kdZ)e3LSaL%V!24E2CtE#c+}w@E-bXs z=C~&L^>%NJckH)Gy-BO#f<3G}io%P`Rx&sOoz%yuf8O&PvPQe4kL`ZRyX1VjG?woU zR%6r12-h7CTCH4TgxkD(Uu!H62Fa+!Z5|t z(BiInU>mh5*y5FRx<6z+zL@LdY2MYE4vkQ~Wt}d_20Mv|sBuOUD16GbWM}*Y)o5tG zf(3K`!VMnsa$swX(lHyUF>Wg`s9KIVbjbfhKGjf{(FPjp01LmnrFRWDHXqxGm4r%7KtIb%c|0tbdETim{`q zyKk`C1bsUjP2J7RHpVIK=jNiJqWz}00vn?iiCTn-)MqUh_8f^a(f?T{8oq{!u4)nv zQRPDi@>zh(#*I#+R0pq!L$H6USAuU#hWlp*r@C2`b^|vQg0y;zb+X{QjmhHJA>y_C zVoIjV($z|N@>23;uiKk;+EkZBi1w-!izC%6sb===!S&^EBRN)E;F<^OiB6&vrCHWW z=Ni{$cjEW3PN+vcrd7y0;;Rti5}Je&Zb^y>Q6IaSji2*9IIkJ>p`mQ@adg zCGvo3xVAT9x)S~}!$-P&s@k=^%jq4V3)hl>o35g+!E4^ousM*(a)88{w2mcSuM(@v zg}+j-Rl1YMsrKtXQXF^vjbu$1oZEDP`l3Rw5nNaLc-FUsnP75z+zHmK8P9pv444jZ z1>c)fy$V~+WWoU}OyfX7_RR~@IB>)u?}H3MC9i(9%A zmRA%_EOG-?*cjDfq_kTc&OK(OhkZ2~;}>q2s70a{>A&6$H^mjG{Y#xA(ZnL*Af{iV z(MRq4=v)r@LP%nfQddkM(~2gb^N7`w`~BydrqK26u4&Ic5jBMyuL?CdcfJn~Q><-N z)Fq3Rc1sp`-%m&bW~Z!tjrk$f9TC#5g$C&{&Rm45owR*eg>5Qh0i1g7klZ=T zIBYjC#(>m1bS!vyh8sKtPKVLYdi@>pYL5WdTCuKz^Cridvvjy)gpxM=Hs)L%T>3zV z#ziP0xi9_{e}wp$pwu(nljxKmiLdlY@Qq&E$E=HnP&@q~!Hjc=gkIx!=z7(As_BAK zH~y62{5cj3{+t^Orb9Jp`OFAmuReF1hUVH!td;i))k~3{BTrdzt4m%>8hos0zsmL5 z1LpZt4iPJ|40DN1PHnk$CGbh`B_izw5dACFE+oSS}sQe;iIz)uI(K+%X&yi@}?Fjd! z{U;trUW>(taSoF7+7DjMyDi>?om9CMs=R`ZxYm?1mB;ig(ulIq3ZG-{?Yt{Gk7f9q zQhnU^9JA-SdSzLG!8AmfbJOMg><0%_M~fd6&H!5!TLP246TPW8)+@&Sn|iY@l$;Z= zt4Q*)m>Z)|6(lQhJGo#`ux%;Czr@&;O?Gp{Hx3#rhSX@Mvuv*vwB)IXBvgtemeXp9 zMuf!($8&DDQy;8Q^y+0gNjv^#vaS{%-y7FZ(#Bh>eOpzRR}|Ro9oKGxOWx*d4}`l^ zp<4Bup{-3>;k0#!>I>irg);aW{*^6do!Z+!#Tk4F?&AdM`X=l(6(e_JPgR-6HRj0n zsKGwUb<-Ieohu+hA!j@(Xuv~%WgC)NVKd?cqkgfBm6d+?W5lm zSCDGdB2kOnK>m{`y#CL^Yhwt!2F9T)fOqr@VDEi78PJ#@FPkM7pmI1;*%pS%PJRzv zK`pD(5Hp}LIx&mw`8wC(RwEX+VOa(4#qSYBn#4 zouhceDLSFGnhzll7(SGs(jb)51LZ3RAEnsk-d2hG~WZ0JUShKRVFZstVpDsT#zUJx}yrGSNug5n4))Zly z`a!`H@)O6k^Gz~-=*Uv)ojhQq$px80cAS?(RzRNj+eHCZd)RMq(}%Fl~` ztx6YWv!pXBj5}fJHylAUmxEe9zlW^^akeDT(BByf2oCAg@=C4q0 zQQWIr0L)H)Q2()PK0VEZ6T$J`-MCqx(6Ia>_+7=7wx=VYe+j^#`nU$a{;maMJfCrATWMyc5*zjEueGId>u= z_O_ogci^48U-QkmN_<*(nr{y*#~f#`-ilwIQFv8|5awp$7z@MW7+;r+B>vPg>tK8h z8G|KRD;EZBHC?RN4&mn80kz@sY+f;6UZKC;YOV8)@1m~^AQSngcKJ3mLZL(>*D(@o zw4?(9>VW=U-6V21@g>z6d?ZjD*iSBMO05$v6u*eP11(SwLDO_bV!lUIThbs-BJU4= z&Z=Dse#VI__8Jd};KZ1r@5A5*YSknboTtiu(#Mq0t?A1j0)xu`L2G{2xR`a9#kz9& z;iczMeMyL*AgUb*^*j0u6SYXxA|VTeIjgR5KYrjj5+%U@vjlizXkB-{SwnP{Q=-nN zTKk~5xQksQ@?LJhnTk)3rM2kYX%~08o@-2^svgqDz9UE$-)vqC_0qwCc;@LOTPmft znmvlgbK%4IacviGH;dKfajda-cSI2WhlDtL3cdlY4t{gdVN(7U7 z@Nmp*gR+r45c4ecNZ#;94QN+*hgpzUSfGd+6N18+W!qiP;@+Y9EBX@MYcU@Rwi`rL zt#iBwOgehCiC4H(AxAOzvx8;m!*=lBQnX5Wl6Y^XlUHLHPYRq)`r>~!8X=dOgcAgS zRc+pQx@Jy6z~M|q#d11iu|WhC6nv%}4Os-A$Up1OD$`oEbqh5-wmO5yQCrYgqdcVU zV-o6&JBD`_)YW(%yO6`rlv|I}RBnX&>vv9P4v&hQ!7F-4sK1_dRQo+vhc+NX6hng} z$c}7;n4ZOgSRvIhZzk>arONW5X|MIKDdI7|H)&t|i@;)C62*@sG2tlvp{o&w=DyZp zmut$zU7Uo^rjxX|Xbyjab&AgrU?Fdgfs*vt50s09r$-l|?beTz_XoenHWP78<~+3p zny251%a#23EXZr;h@JauuNTBk!CB4z71t?C$2&@<{#!&XHl1LFIfEZ?b7=0QC1;nZ z?Q@y?Su!Ag6NBsq6;H7QK6HYU3}(X^G-Bc>V3}Fl)lc9k+^DEKTI!LREzDLImf<+6 zR0%gs)FM%fFlb<)#S=0|qNN@q95wwX!H*t@L`(=N^=PUVugGyLS^_g&StPnkN9b4= z-0>VSr}5$ucpe{sVf#t8Kt(ZyQle$y%bTgZd5xzvSJhxra@lS|ZUZ(t#= zF`TRBdH3opib;Yax-3~Ic^040T1t*RmX7Nik!<|mwK)k2YoqaA*7HFN!)6UGV@YX@ zknc~}u9$577>sur>P;uHGVDIx@t`t6asDV=%NlTHNJ6-qk$BVd%jmi)@m^vD&J`Sm zyBB^Mf50%pzoli?QFK@Eo3*CltT$5?Tu16!>U#pBfm3s|1z(zfBT!?Tn`YIbJA)N# zmHS!u5R`%I8wL!iEXAB|b9b64?Njr;KpI^s^Ye1&EPryfFoQK@Mvfr7uaII(^PzC~ zy%;7(a&vouf$P$&<+jvR7Y0mOBH(nva`U0wzfdtsW^F%f#AN^Dz=9hh7(4v#o!JL| z;4*K_V;Mi|%2EDHO_vtd&3@n#rN#SA!A`&&og8GcKyvt2QCGqOC-=M{>~-q}~FN#sHPjtC1U_+JI-boNA{2kx-#u zz)t{jI}5%PNiWt6v#Y0-XovVZmRoC=!epu1@K^BMJz3NqS6;gM95O`X+(5MrYmLW0 zwLk!66PrTDhOfRZ;(@`|EBbK7>oIp4?0KvFkNP~{fa^Pv(*2_NY}~xf7dUI6y20

O@WQ(L#ZD7*Fp^@QZrIGfVD7imCIh zpfZ<4%ik}{x2T#HL3|I@kWfKX z7;@hcrnE> zgYS!=$q=Wy;bybbHL8~bBgIwF7>TemwM}Zq??`?}QIE(QQTpdodraW;pi@gK z)o}ilw!}ue_(Xn-5ZNEg??z>xEAYnyepLG%WYr^zbh0(JK@6Sa=U{->+o(5(cnuT~ zQZ{Izd6VN{*#dJ`%K%Oo7|M0?%zff}kHVm@Q{1kbEI5Ie1WxCUG|X|0H7AY+_RG#6 z>+7VV{(L@cw+iPd8oSaEDOG$QWG6*p{$_un&0R%ipQbvR(REGAsUP7~lS%56-=jKh zf!6g71(xs4y z1qN1Jb8XjB)t7OHw>CDAta}9(p)Dx}I@F>oJ@!@gI9W0}{@bM5N>L~6(MqO3&&j%o z0~d{L$P-|->)deND|rZ9<)76^KAUY%I!Yqqy`ncKwpr}Dt766r2# zi}o5-J$_v-f$rZGZ5FH-1i|KeN$ENi#DHcrwB)#6lM*jT4%WU zdfNMZ5F&UKr0%9RxzvEelY};)653z~DU?YKDRdy#UNQLO2js?`_7=bvhLAOEW%IH}_k1^%=Mo;Aum%$P+L z7M%vkk(8~*H_X6Sy2!jn>IBy68Nhu-vZZ5T??=MXz&Pa)Bvb#LY-lj=JoJJWt!vPf z0aPPfgwL)HfP}i>w+d z6@*RaAj@+`Pm!%-Bgt3TK-qBWFqT52E%1U~qK|kb(AhF@hEjEdAT_WhSni)#l~$&0 z6G{Z%2o|U`J-H2-7oI0he%>0>duFRDJLq^+APAysD4E8T$rm)u@nFTit`us5iQ3+M z=2KK$3p+eLE2yKHzTuulgz`=D^ceC_RF(LMT1#M=x!|3Gu2%UGsPjVs6 zs7IBE$DJ@iYr&QckO@?h{t604%FK~N2$IWSpv5~cxkIg0=^>9rqg<>dlCxm}{wVR7 zH||?|Z>&P2_?zH}Q$ts-J)jaRCld#&?H0NY7VW@@I^<&It~l#4NYcqWMtx$Z{zNA2 zLMC^^QV&*CWidBtMdaV&gYBSi53-s!jh{|p$3S>S4?cs|0&Y|*o*_Z$YeJC&TQ_?a z222DS+JgZJVMdRdajLiKYlU z23h$_sl7*VcT<{KZHA_o;iBx9c=ViEC-c8Y?2K1Xzsd6f6yUSUzT`6)D-`23)bzP< zT3CIwb#73*zy0UDlo@f04YJSvE-F@!c;H3Bu~-_KyC3oLb#CvaEIaiMIrV(ebM0po-YZdd7q43MYZ_dREHiP2d)#S=0VTofQR`4 zt8uN2&>CzyptiPk&3=DJ13sPfk~->7ISUY=48N=Bv<>l@KTu~An1P?O4G%m+r6Sve zo`_(+Z*yZ)3`tm;P2|IVkFFu^m7{scp_=2^hpJl@Ex2xr`SIk@f~SI+6QTM1-ywE| ztb(Sd+7~1z$hQX`yKrWRHJ&spiO0~AAp}4KA=<+|RAN!c@jbQ8aaH*gia;~L6Aw~k zfO=RCdyg4c2&+JRMvr)?oyeH}RXq5F0@$dc6x5r96FrHVd^!3TARv%rb8qj;#xhhz zwdN9c6KxafHA?XkaR=cY6C}q6a-ZOlUx9DzvjvwI7M&QD>dt6d1H4;w%08@BzN+%J zQD(6*YgofrVhwGYdxiS>Ac|*DYusZ|>b%yGN-)QMlQnB$;^3l9a+7{RpY~LrJW`c@ zxinn7o7`>qv-M;2Q(3j=-1nv@RoTn<7`~6M@iu!8VCGNxTKqg_rQWSV4*;k$^ShEe zgKxR$6;qi{K~zvxl{}HCqp}V|&PNs01M*thK{Qd`@xGvnf)$YO@4-!Ddc{LaiUSv( zf!>vUJu`4bFYHD0)+@kXVGjhokps*YLN6B8q7$GgGm;w7eQu8@2Q2EcuBV**;*hy=#W07! zPI_~__R883coSSB=T(|Kn!|RF^#NUr4n9g(fL7(WlfJWCRdW=dkRn&flft5J;T@Qs zF!WS9iOGIM;LX2CpOB#cAHrS)=ti=KLf|Wg`5tjl1+EG{LQMDe^eB+v$}xD&+_pV; zN@f(s8|z<k>?8%T%Z-+bMp#2xa$ zM-3u=HH7aWrAODf6Asq4&H%dt(-m3I!=fC4V5u=HX8{IxZZ!DTQsw7Yo(MWoV}Ud% z%o7XF^7_55D+CI)cYlFnKv63#WHt$_)N$$;lP3nhCJYzz>+&78$qJ;oBD6Py|FYW_GppP+BStUM_7s7*;QdUZxgRCI!)79G^}`TD^Fb~3}yv_ zRc=EiwNq@Sxmsoo^}Eje8JD2bru-qWS1XnKs3Q}7NF13epuo+&Xk0$c&In!K#mhc{ zoJDP4YMkIRCHqCn<n*tt>Tgc>N` z_8{2x>&WAEMa>JYfK6#|mp+?9i@tRyl0pf|zl$o~0k%(jA07hMJP4rE$b&gw6w?fl zq^MRCce?$37{YQ26QF0{Y?R7KrgLWq9q((LLdPc>Cp^6j?bIgFUrwgLTo-j9GmfDu zm}4bqtX1?8Pp56`MR*NOJW*m((-IR{NxYgGpdhRXa;~DzPsCAh%=E8BI8`(^6^?0N z-gmbmo?fC@sc~8N%3J9FUVLuuvt|G9zyJRK0f{uV@Bjb+ literal 0 HcmV?d00001 diff --git a/classjmespath_1_1ast_1_1_and_expression_node-members.html b/classjmespath_1_1ast_1_1_and_expression_node-members.html new file mode 100644 index 0000000..12f889e --- /dev/null +++ b/classjmespath_1_1ast_1_1_and_expression_node-members.html @@ -0,0 +1,121 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +

+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::ast::AndExpressionNode Member List
+
+
+ +

This is the complete list of members for jmespath::ast::AndExpressionNode, including all inherited members.

+ + + + + + + + + + + + + + + +
AbstractNode()=defaultjmespath::ast::AbstractNode
AbstractNode(const AbstractNode &)=defaultjmespath::ast::AbstractNode
accept(interpreter::AbstractVisitor *visitor) const overridejmespath::ast::AndExpressionNodevirtual
AndExpressionNode()jmespath::ast::AndExpressionNode
AndExpressionNode(const ExpressionNode &leftExpression, const ExpressionNode &rightExpression)jmespath::ast::AndExpressionNode
BinaryExpressionNode()jmespath::ast::BinaryExpressionNode
BinaryExpressionNode(const ExpressionNode &left, const ExpressionNode &right)jmespath::ast::BinaryExpressionNode
isProjection() const overridejmespath::ast::AndExpressionNodevirtual
leftExpressionjmespath::ast::BinaryExpressionNode
operator=(const AbstractNode &)=defaultjmespath::ast::AbstractNode
operator==(const BinaryExpressionNode &other) const jmespath::ast::BinaryExpressionNode
rightExpressionjmespath::ast::BinaryExpressionNode
stopsProjection() const overridejmespath::ast::AndExpressionNodevirtual
~AbstractNode()jmespath::ast::AbstractNodevirtual
+ + + + diff --git a/classjmespath_1_1ast_1_1_and_expression_node.html b/classjmespath_1_1ast_1_1_and_expression_node.html new file mode 100644 index 0000000..d3a293f --- /dev/null +++ b/classjmespath_1_1ast_1_1_and_expression_node.html @@ -0,0 +1,327 @@ + + + + + + +jmespath.cpp: jmespath::ast::AndExpressionNode Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast::AndExpressionNode Class Reference
+
+
+ +

The AndExpressionNode class represents a JMESPath and expression. + More...

+ +

#include <andexpressionnode.h>

+
+Inheritance diagram for jmespath::ast::AndExpressionNode:
+
+
+ + +jmespath::ast::BinaryExpressionNode +jmespath::ast::AbstractNode + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 AndExpressionNode ()
 Constructs an empty AndExpressionNode object. More...
 
 AndExpressionNode (const ExpressionNode &leftExpression, const ExpressionNode &rightExpression)
 Constructs a AndExpressionNode object with the given leftExpression and rightExpression. More...
 
bool isProjection () const override
 Returns whather this expression requires the projection of subsequent expressions. More...
 
bool stopsProjection () const override
 Reports whether the node should stop an ongoing projection or not. More...
 
void accept (interpreter::AbstractVisitor *visitor) const override
 Calls the visit method of the given visitor with the dynamic type of the node. More...
 
- Public Member Functions inherited from jmespath::ast::BinaryExpressionNode
 BinaryExpressionNode ()
 Constructs an empty BinaryExpressionNode object. More...
 
 BinaryExpressionNode (const ExpressionNode &left, const ExpressionNode &right)
 Constructs a BinaryExpressionNode object with the given leftExpressin and rightExpression as its children. More...
 
bool operator== (const BinaryExpressionNode &other) const
 Equality compares this node to the other. More...
 
void accept (interpreter::AbstractVisitor *visitor) const override
 Calls the accept method with the given visitor as the parameter on the node's child expressions. More...
 
- Public Member Functions inherited from jmespath::ast::AbstractNode
 AbstractNode ()=default
 Constructs an AbstractNode object. More...
 
 AbstractNode (const AbstractNode &)=default
 Copy-constructs an AbstractNode object. More...
 
virtual ~AbstractNode ()
 Destroys the AbstractNode object. More...
 
AbstractNodeoperator= (const AbstractNode &)=default
 Copy-assigns the other object to this object. More...
 
+ + + + + + + + +

+Additional Inherited Members

- Public Attributes inherited from jmespath::ast::BinaryExpressionNode
ExpressionNode leftExpression
 The left hand expression of the node. More...
 
ExpressionNode rightExpression
 The right hand expression of the node. More...
 
+

Detailed Description

+

The AndExpressionNode class represents a JMESPath and expression.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
jmespath::ast::AndExpressionNode::AndExpressionNode ()
+
+ +

Constructs an empty AndExpressionNode object.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
jmespath::ast::AndExpressionNode::AndExpressionNode (const ExpressionNodeleftExpression,
const ExpressionNoderightExpression 
)
+
+ +

Constructs a AndExpressionNode object with the given leftExpression and rightExpression.

+
Parameters
+ + + +
[in]leftExpressionThe node's left hand child expression.
[in]rightExpressionThe node's right hand child expression.
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::ast::AndExpressionNode::accept (interpreter::AbstractVisitorvisitor) const
+
+overridevirtual
+
+ +

Calls the visit method of the given visitor with the dynamic type of the node.

+
Parameters
+ + +
[in]visitorA visitor implementation
+
+
+ +

Implements jmespath::ast::AbstractNode.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
bool jmespath::ast::AndExpressionNode::isProjection () const
+
+overridevirtual
+
+ +

Returns whather this expression requires the projection of subsequent expressions.

+
Returns
Returns true if projection is required, otherwise returns false.
+ +

Implements jmespath::ast::BinaryExpressionNode.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
bool jmespath::ast::AndExpressionNode::stopsProjection () const
+
+overridevirtual
+
+ +

Reports whether the node should stop an ongoing projection or not.

+
Returns
Returns true if the node should stop an ongoing projection, otherwise returns false.
+ +

Implements jmespath::ast::BinaryExpressionNode.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classjmespath_1_1ast_1_1_and_expression_node.png b/classjmespath_1_1ast_1_1_and_expression_node.png new file mode 100644 index 0000000000000000000000000000000000000000..7606fdcfa4ff4e0c602c6898152e5dcdfd23c19d GIT binary patch literal 1216 zcmeAS@N?(olHy`uVBq!ia0vp^w}7~VgBeI}Yh@J$QW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;Sf8F@!fB!gj zGdGSH>$@e^NiPc~M~OMHH-0*`N$2#8q=`!eO)siw&QhDD;(D2Pi;Cyn`22a6?zZRdW^X=sz5bWq`z$U$ zdy8QC4570&o|jhUE!rz|^W(Plwcgp$limbOl2;4WoH>!VE-TxpQRQVw`RZ#=vNvt9 zJL~v)`_e9rR~pRyRU|?_px!3^eB(Xk(yMpDnI1x z+UWUv9tFz1*>mcWO~}$eT)vameR<1#b8oh+$#&INHP5mN6XW&!TJ1}(`&p;FGd^ef z{rzIjnNBx7wlT{07WMzwEE_Z_>h9mhiA&-y)c2P03GC0BBoZj>J84noBF`X`wHc>3 z={R#exc`#TVA(O(YMZuHY4KcD>8ZI1TW%^cKFVCg=yKVGxno%;n}Dw{ufi-fDF+i@ zlZK3084MRqE;0a3K~eC4Ici#}WU$U8lSSa*b(y>*!|K8$mDuc3>+d%AmOQ^7dSUwI zv#GZ|W-m0m?*BgQt=g@*XLot4dam8(yR-G%DNFTz@1O1a{PW?@vcD(VlHYI6Ug;QD z#vRpqC(JN9V+<9}MV ztK1A^HA#%=h`Tzgrr7D+a=qH8uii)5-hH(rd#TR3h5JHuz3%@pjVeF;)}_ki{Vh2U z>%Eg5`OmW1#(m!xRh;R&JajeJBlFd5E53bYIh&UE&NH3+Rd2Sf-i33wJiarP=J3wC zJ*oV{rlm){CrQsc7<)#V{nHlbXLgTczHeB{S^6&Oo3X|0@XLyKf91A+>3!hVK4nQ* z{rAtxo@=cP?f0Kqzu>FWKbc#VPtLEu+54k8bn=poCh!#5wN2-=(GrG#bLAM4vtqU! zPmb7Dcrk2K;7vBS*|I_k^9aNMMikjCm=YuvtkM8X^pNP9?7o|G*RHwMx6FI57eBkU zpJClq?h7+^AKVwYb$3SY5B+qen9SQ#@)zt4J9qkh_3vLXYmaXGn{i{V`MPaN)jy1G zE_iD0z9}_tYu>hZebFb9?lp&&oY0>y{e0x%d5!)lSX)dnUd6lKKATYiARzC)!Ob*S*FURhnD# zLHW$bUEiZa>|+Z$ZFU32YmRw;+2)$E(9uUlp0d0S;XTQ`&K zvfK%lvI@3x!~1p*P w@Zdk|+nTvQLYXC8V9DCH-XPd3)8#MYu0!D$=WGj+0Twq5p00i_>zopr0Lqa?djJ3c literal 0 HcmV?d00001 diff --git a/classjmespath_1_1ast_1_1_array_item_node-members.html b/classjmespath_1_1ast_1_1_array_item_node-members.html new file mode 100644 index 0000000..d101ac0 --- /dev/null +++ b/classjmespath_1_1ast_1_1_array_item_node-members.html @@ -0,0 +1,116 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::ast::ArrayItemNode Member List
+
+
+ +

This is the complete list of members for jmespath::ast::ArrayItemNode, including all inherited members.

+ + + + + + + + + + +
AbstractNode()=defaultjmespath::ast::AbstractNode
AbstractNode(const AbstractNode &)=defaultjmespath::ast::AbstractNode
accept(interpreter::AbstractVisitor *visitor) const overridejmespath::ast::ArrayItemNodevirtual
ArrayItemNode()jmespath::ast::ArrayItemNode
ArrayItemNode(Index itemIndex)jmespath::ast::ArrayItemNode
indexjmespath::ast::ArrayItemNode
operator=(const AbstractNode &)=defaultjmespath::ast::AbstractNode
operator==(const ArrayItemNode &other) const jmespath::ast::ArrayItemNode
~AbstractNode()jmespath::ast::AbstractNodevirtual
+ + + + diff --git a/classjmespath_1_1ast_1_1_array_item_node.html b/classjmespath_1_1ast_1_1_array_item_node.html new file mode 100644 index 0000000..9bbb0d4 --- /dev/null +++ b/classjmespath_1_1ast_1_1_array_item_node.html @@ -0,0 +1,280 @@ + + + + + + +jmespath.cpp: jmespath::ast::ArrayItemNode Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast::ArrayItemNode Class Reference
+
+
+ +

The ArrayItemNode class represents a JMESPath array index expression. + More...

+ +

#include <arrayitemnode.h>

+
+Inheritance diagram for jmespath::ast::ArrayItemNode:
+
+
+ + +jmespath::ast::AbstractNode + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 ArrayItemNode ()
 Constructs an empty ArrayItemNode object. More...
 
 ArrayItemNode (Index itemIndex)
 Constructs an ArrayItemNode object with the given index as its value. More...
 
void accept (interpreter::AbstractVisitor *visitor) const override
 Calls the visit method of the given visitor with the dynamic type of the node. More...
 
bool operator== (const ArrayItemNode &other) const
 Equality compares this node to the other. More...
 
- Public Member Functions inherited from jmespath::ast::AbstractNode
 AbstractNode ()=default
 Constructs an AbstractNode object. More...
 
 AbstractNode (const AbstractNode &)=default
 Copy-constructs an AbstractNode object. More...
 
virtual ~AbstractNode ()
 Destroys the AbstractNode object. More...
 
AbstractNodeoperator= (const AbstractNode &)=default
 Copy-assigns the other object to this object. More...
 
+ + + + +

+Public Attributes

Index index
 The node's value. More...
 
+

Detailed Description

+

The ArrayItemNode class represents a JMESPath array index expression.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
jmespath::ast::ArrayItemNode::ArrayItemNode ()
+
+ +

Constructs an empty ArrayItemNode object.

+ +
+
+ +
+
+ + + + + + + + +
jmespath::ast::ArrayItemNode::ArrayItemNode (Index itemIndex)
+
+ +

Constructs an ArrayItemNode object with the given index as its value.

+
Parameters
+ + +
[in]itemIndexThe node's value.
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::ast::ArrayItemNode::accept (interpreter::AbstractVisitorvisitor) const
+
+overridevirtual
+
+ +

Calls the visit method of the given visitor with the dynamic type of the node.

+
Parameters
+ + +
[in]visitorA visitor implementation
+
+
+ +

Implements jmespath::ast::AbstractNode.

+ +
+
+ +
+
+ + + + + + + + +
bool jmespath::ast::ArrayItemNode::operator== (const ArrayItemNodeother) const
+
+ +

Equality compares this node to the other.

+
Parameters
+ + +
[in]otherThe node that should be compared.
+
+
+
Returns
Returns true if this object is equal to the other, otherwise false
+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
Index jmespath::ast::ArrayItemNode::index
+
+ +

The node's value.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classjmespath_1_1ast_1_1_array_item_node.png b/classjmespath_1_1ast_1_1_array_item_node.png new file mode 100644 index 0000000000000000000000000000000000000000..f66533e9e756457fbca36ead313bf28ee6053f30 GIT binary patch literal 758 zcmeAS@N?(olHy`uVBq!ia0vp^>wq|bgBeI}_u97=NJ#|vgt-3y{~ySF@#br3|Dg#$ z78oBmaDcV*jy#adQ4-`A%m7pb0#{Fk7%?y~wR*ZZhEy=Vo%?pvY6Tuw@!K=^{a3!f zs)nU$t?lyy>oXS;!#fpqnA`T}+}?Ip+01j6D|h%Lx6FrLmo!3mI8M6v`eoVM%=vS^ zPtC7S=!>xbcFz9fyVyGgWqFUP?w9XicW>e}Jn--T7O~s^rt=iW6!va6&HMag&SCeS z2GvNX{Qg!oN6#Xon`ngWqW7n`l^o_vexT1?eLrWDSXEy zpWPcJcU5n1zP%?+k!Mn_?mEfv_pkiFy-Q8?xS#ZRR#xD@0AHtEmFSA1#tuRI^*ocF zlz#p*Vadi>65sEg)bfnK?9Z3z`D>EcI+fl_ho&wGta_Apdz-IvgJ2cInZ-K`)>>D&=($#<)G7#?paU<3vXQ_rPCtP)FGxedIy#S^B8=^fC}jcEvs+QG0GRYCP1 zCyqopL58%8F!hq()xKVSd+V}YrR;k7XC_zqZ{173xwreb+B?>FiMv~?Sv&&2F->o? zUwgDHY~SSxr^||Zw};-5Ft+c#l`IiG=etaahP&xrvF{8gor6!8pL-CqR&#Gf)$~ch z<~z>3-s|HqJ@$A)dS2n5Q@5U|#bob4)cRo7{+P#d$7ApDRMuAQSi9QtX7-)3nwiTN ze%YaUqx((Sr;DfaUfw7?yDKFBuFI#J@6xvaURf%>GP!ui+3dOo=>yx!7T>?Qd-_zx zTH)Soo@l!(e0fD@#G)ntY>=MHc;NMV|Gn`?f4|?cpF8}NrGtNc_wUmg^W_dP#9x8= hxcVW#VoT%~{_uG!rz@r{&;%w@22WQ%mvv4FO#lHaaW4P> literal 0 HcmV?d00001 diff --git a/classjmespath_1_1ast_1_1_binary_expression_node-members.html b/classjmespath_1_1ast_1_1_binary_expression_node-members.html new file mode 100644 index 0000000..9e87ebd --- /dev/null +++ b/classjmespath_1_1ast_1_1_binary_expression_node-members.html @@ -0,0 +1,119 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::ast::BinaryExpressionNode Member List
+
+
+ +

This is the complete list of members for jmespath::ast::BinaryExpressionNode, including all inherited members.

+ + + + + + + + + + + + + +
AbstractNode()=defaultjmespath::ast::AbstractNode
AbstractNode(const AbstractNode &)=defaultjmespath::ast::AbstractNode
accept(interpreter::AbstractVisitor *visitor) const overridejmespath::ast::BinaryExpressionNodevirtual
BinaryExpressionNode()jmespath::ast::BinaryExpressionNode
BinaryExpressionNode(const ExpressionNode &left, const ExpressionNode &right)jmespath::ast::BinaryExpressionNode
isProjection() const =0jmespath::ast::BinaryExpressionNodepure virtual
leftExpressionjmespath::ast::BinaryExpressionNode
operator=(const AbstractNode &)=defaultjmespath::ast::AbstractNode
operator==(const BinaryExpressionNode &other) const jmespath::ast::BinaryExpressionNode
rightExpressionjmespath::ast::BinaryExpressionNode
stopsProjection() const =0jmespath::ast::BinaryExpressionNodepure virtual
~AbstractNode()jmespath::ast::AbstractNodevirtual
+ + + + diff --git a/classjmespath_1_1ast_1_1_binary_expression_node.html b/classjmespath_1_1ast_1_1_binary_expression_node.html new file mode 100644 index 0000000..e86dc7f --- /dev/null +++ b/classjmespath_1_1ast_1_1_binary_expression_node.html @@ -0,0 +1,379 @@ + + + + + + +jmespath.cpp: jmespath::ast::BinaryExpressionNode Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast::BinaryExpressionNode Class Referenceabstract
+
+
+ +

The BinaryExpressionNode class is the base class for all node types which consist of a left and a right hand side expression. + More...

+ +

#include <binaryexpressionnode.h>

+
+Inheritance diagram for jmespath::ast::BinaryExpressionNode:
+
+
+ + +jmespath::ast::AbstractNode +jmespath::ast::AndExpressionNode +jmespath::ast::ComparatorExpressionNode +jmespath::ast::HashWildcardNode +jmespath::ast::IndexExpressionNode +jmespath::ast::OrExpressionNode +jmespath::ast::PipeExpressionNode +jmespath::ast::SubexpressionNode + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 BinaryExpressionNode ()
 Constructs an empty BinaryExpressionNode object. More...
 
 BinaryExpressionNode (const ExpressionNode &left, const ExpressionNode &right)
 Constructs a BinaryExpressionNode object with the given leftExpressin and rightExpression as its children. More...
 
bool operator== (const BinaryExpressionNode &other) const
 Equality compares this node to the other. More...
 
void accept (interpreter::AbstractVisitor *visitor) const override
 Calls the accept method with the given visitor as the parameter on the node's child expressions. More...
 
virtual bool isProjection () const =0
 Reports whether the right hand side expression is projected onto the result of the operation or not. More...
 
virtual bool stopsProjection () const =0
 Reports whether the node should stop an ongoing projection or not. More...
 
- Public Member Functions inherited from jmespath::ast::AbstractNode
 AbstractNode ()=default
 Constructs an AbstractNode object. More...
 
 AbstractNode (const AbstractNode &)=default
 Copy-constructs an AbstractNode object. More...
 
virtual ~AbstractNode ()
 Destroys the AbstractNode object. More...
 
AbstractNodeoperator= (const AbstractNode &)=default
 Copy-assigns the other object to this object. More...
 
+ + + + + + + +

+Public Attributes

ExpressionNode leftExpression
 The left hand expression of the node. More...
 
ExpressionNode rightExpression
 The right hand expression of the node. More...
 
+

Detailed Description

+

The BinaryExpressionNode class is the base class for all node types which consist of a left and a right hand side expression.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
jmespath::ast::BinaryExpressionNode::BinaryExpressionNode ()
+
+ +

Constructs an empty BinaryExpressionNode object.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
jmespath::ast::BinaryExpressionNode::BinaryExpressionNode (const ExpressionNodeleft,
const ExpressionNoderight 
)
+
+ +

Constructs a BinaryExpressionNode object with the given leftExpressin and rightExpression as its children.

+
Parameters
+ + + +
[in]leftLeft hand expression of the node.
[in]righthand expression of the node.
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::ast::BinaryExpressionNode::accept (interpreter::AbstractVisitorvisitor) const
+
+overridevirtual
+
+ +

Calls the accept method with the given visitor as the parameter on the node's child expressions.

+
Parameters
+ + +
[in]visitorA visitor implementation.
+
+
+ +

Implements jmespath::ast::AbstractNode.

+ +

Reimplemented in jmespath::ast::ComparatorExpressionNode, jmespath::ast::IndexExpressionNode, jmespath::ast::HashWildcardNode, jmespath::ast::OrExpressionNode, and jmespath::ast::PipeExpressionNode.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
virtual bool jmespath::ast::BinaryExpressionNode::isProjection () const
+
+pure virtual
+
+ +

Reports whether the right hand side expression is projected onto the result of the operation or not.

+
Returns
Returns true if the right hand expression is projected, otherwise returns false.
+ +

Implemented in jmespath::ast::ComparatorExpressionNode, jmespath::ast::IndexExpressionNode, jmespath::ast::AndExpressionNode, jmespath::ast::HashWildcardNode, jmespath::ast::OrExpressionNode, jmespath::ast::PipeExpressionNode, and jmespath::ast::SubexpressionNode.

+ +
+
+ +
+
+ + + + + + + + +
bool jmespath::ast::BinaryExpressionNode::operator== (const BinaryExpressionNodeother) const
+
+ +

Equality compares this node to the other.

+
Parameters
+ + +
[in]otherThe node that should be compared.
+
+
+
Returns
Returns true if this object is equal to the other, otherwise false
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
virtual bool jmespath::ast::BinaryExpressionNode::stopsProjection () const
+
+pure virtual
+
+ +

Reports whether the node should stop an ongoing projection or not.

+
Returns
Returns true if the node should stop an ongoing projection, otherwise returns false.
+ +

Implemented in jmespath::ast::ComparatorExpressionNode, jmespath::ast::IndexExpressionNode, jmespath::ast::AndExpressionNode, jmespath::ast::HashWildcardNode, jmespath::ast::OrExpressionNode, jmespath::ast::PipeExpressionNode, and jmespath::ast::SubexpressionNode.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
ExpressionNode jmespath::ast::BinaryExpressionNode::leftExpression
+
+ +

The left hand expression of the node.

+ +
+
+ +
+
+ + + + +
ExpressionNode jmespath::ast::BinaryExpressionNode::rightExpression
+
+ +

The right hand expression of the node.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classjmespath_1_1ast_1_1_binary_expression_node.png b/classjmespath_1_1ast_1_1_binary_expression_node.png new file mode 100644 index 0000000000000000000000000000000000000000..af27ee220334ba4bb5800cadff77eecb3e3aee1d GIT binary patch literal 3366 zcmd5JYPBw#tnI32{L z1T~sa*~&u#LIFX@W0`?MP?i*t&Bs!f5HLZuEIcyrkzi-0({uXA{4w7-@4a8{{qDWr z{g&Uox$b@ZsE)RQHV%i=A-NqsiNk3kDE`X^4fH+tq(^~%wt0J;I-*cuaB_MfI=$g0 zidLVxy1Mn(2aM658!n$b?t?>>FzIeRbpVIkTuwUde2S_zGboHHwbx(Y(Gs&6R^0Lm zI8x=J0HVIt3%Pfo%F zIVN*$U@Ky(=7R}$>5flco)3t9ku6dL7xh$#5^0Unr{O(w&6i}JbmGHv#F2v{ zPPPsg9j~$?hH#7S=ofvwj^AGp-SraC3GVKmw{|N7FN&uO^HN_hH8uWSdCtvnU2jRd z-M6kmcu$wITb#7+?n&#!LeSq#xxpFgZiK7g_Pc(#$hX;)d!Z*>C>c5{3%X|Tb4cY) z`h+tGzEth}5Sav#gp!DFqk8a-qpoIU_~bt%dO;wlrSwSF4tyTG!27h{6fr4?)2ZQv zN$%&tLrc z{Gb;6FDn~i%T%Rmd=E~wf3)iUtQ{oB4Vb(tZtfDrG^v6z1kas8{XOHX^8T&gj^1th z7EDTlQyYgncCOB~fy&;6MStD8>66L{)MJEHk7Z@x$!meHCBtfEiPU-m2=I8VBjf^Psh2H4a z@)H5g;@mQ^Ke0w(?*?6hNU1l5!>xuw?zU{PxTDOLm;nzcE@$DMwZPKov!52`hvgLg z_rF}4DhaWhlz{fvilv4gYniyjr|f6Y`~IwEIdjFK@#&Ja-uZKFe2U%V*hFq+ z+?>>Vo4b-b4!y~TbE21Rcvbw&;Y)M#hS&P{mYdh^*?aKC%eeGI090~|xkjX%F5_mk0aa2y7VJ?vY=?ZojjgQ2wBrMO?9BrPt>5 zjy1cFJiHS0R-ABuB@mIy3nv3o1-4bM>TTbdb1~Prt#+67)~1AbyR{llWYOJSOjH#2 zetJs#V!`YgS;N*f%WR@{s+hy=SA_WMROJY(HI=cglW+e}$(xyLY5~pXMpj8ueen}j zAv|07fPP(7*ad4@BDqv6>r_f!IV)QkxwwujQv#-d!O|RK ztB+MsAGgvv9BH?FYjpLkzjM8t+Q}sSEP?uV5WH_0C;`Fo)xF(Rw<0H*CICPb+Kp-5 zrUO7)OG7@k@tf)&At2ayJH-ndjP|0mTE2S|Tj`dY^XL)M1ptFfSVa%x%gFH2m1XRp zv#NU>_dH}S1*UTJJi=y|Mdm!&L+HX;hWYecL_RZZ-&dSWe73xAllWQzY#^Jftk-Dg z#=bU8j8YWi>nh@h2t885$|LRY*t!ayBWv=UUQ3#7y-45-ls8NTLG!QTKa*t#l>w`# zYRq+Ga_{Dk)cZg4IBr_%7Fo%}r<@dZC3!*+(EGxolD`*O#q516V*d3b4L4>2Fr~Oj# z)xFk*SDkV4mr>39n?2)mS=s#4fami+()m@o;|aBGy&;Vk$cl$N@p$QDSW5Z0P12z0 zOY6)GzuY_eD9C*J`dF}EQc*tfwR9p|E4Jw{AbGMB)Miv|zHec|?p zfo?ONpt3g*Kfxu>#QjV3#k5gVq^6xn)Xhpr_FVu#gKnx^N%F)3AT;TLj55rl!( zJ4aoB=yUDn3JpQ!80!qTb?!i-%!X=#RB&yH<(-8fqsR-2s8oz#(NE8TWA#vVRJ=xHH6ux#;cngg1!f>zFVQIZSrYkR?BwP)!j|@YcSIj&CV>aNJ$z6EcRM>A;Wa{IlOA6RE;jps^=B zD(K8;ZasR8^tZlEkVSAe(mkQsk6hPN&q~=IkZ(Tsat5NExNJlH5UHrLC6-}sb;zU} zeyJF1bPP^8&lfGcw^`TNNFwkoAtGGOng?SEDXWKv`UC&tLGn{9qC^%udJdm}mqx!uD?Cb2IcTy?k+2If$#gL9 z+s9KJmPPDen0?`xMy(okq!|+K(G6c48uwzJMlW+|6^dz+_$WX%LCC=?!aJ8vU-P1T z{R}N~>)6C_w48?{G<>_o<#*BIjbf6!?j%P9Gg7;X!LT?1+#aQ@adOR1u&%=U10y%=(r6nr(QM<~g%@OEly!UFUA7xB@Pzt(pFs2S zjzC4CU`dOa1y0SJ)*lk(tx$4dEupwQ7w#WlQIMc?SX1GOT_}H&1wdd}s){HL@J?H~ zAb4< + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::ast::BracketSpecifierNode Member List
+
+
+ +

This is the complete list of members for jmespath::ast::BracketSpecifierNode, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + +
AbstractNode()=defaultjmespath::ast::AbstractNode
AbstractNode(const AbstractNode &)=defaultjmespath::ast::AbstractNode
accept(interpreter::AbstractVisitor *visitor) const overridejmespath::ast::VariantNode< boost::recursive_wrapper< ArrayItemNode >, boost::recursive_wrapper< FlattenOperatorNode >, boost::recursive_wrapper< SliceExpressionNode >, boost::recursive_wrapper< ListWildcardNode >, boost::recursive_wrapper< FilterExpressionNode > >inlinevirtual
anchor()jmespath::ast::BracketSpecifierNodeprivatevirtual
BracketSpecifierNode()jmespath::ast::BracketSpecifierNode
BracketSpecifierNode(const ValueType &expression)jmespath::ast::BracketSpecifierNode
isNull() constjmespath::ast::VariantNode< boost::recursive_wrapper< ArrayItemNode >, boost::recursive_wrapper< FlattenOperatorNode >, boost::recursive_wrapper< SliceExpressionNode >, boost::recursive_wrapper< ListWildcardNode >, boost::recursive_wrapper< FilterExpressionNode > >inline
isProjection() const jmespath::ast::BracketSpecifierNode
operator=(const VariantNode &other)jmespath::ast::VariantNode< boost::recursive_wrapper< ArrayItemNode >, boost::recursive_wrapper< FlattenOperatorNode >, boost::recursive_wrapper< SliceExpressionNode >, boost::recursive_wrapper< ListWildcardNode >, boost::recursive_wrapper< FilterExpressionNode > >inline
operator=(const T &other)jmespath::ast::VariantNode< boost::recursive_wrapper< ArrayItemNode >, boost::recursive_wrapper< FlattenOperatorNode >, boost::recursive_wrapper< SliceExpressionNode >, boost::recursive_wrapper< ListWildcardNode >, boost::recursive_wrapper< FilterExpressionNode > >inline
jmespath::ast::AbstractNode::operator=(const AbstractNode &)=defaultjmespath::ast::AbstractNode
operator==(const VariantNode &other) constjmespath::ast::VariantNode< boost::recursive_wrapper< ArrayItemNode >, boost::recursive_wrapper< FlattenOperatorNode >, boost::recursive_wrapper< SliceExpressionNode >, boost::recursive_wrapper< ListWildcardNode >, boost::recursive_wrapper< FilterExpressionNode > >inline
stopsProjection() const jmespath::ast::BracketSpecifierNode
valuejmespath::ast::VariantNode< boost::recursive_wrapper< ArrayItemNode >, boost::recursive_wrapper< FlattenOperatorNode >, boost::recursive_wrapper< SliceExpressionNode >, boost::recursive_wrapper< ListWildcardNode >, boost::recursive_wrapper< FilterExpressionNode > >
ValueType typedefjmespath::ast::VariantNode< boost::recursive_wrapper< ArrayItemNode >, boost::recursive_wrapper< FlattenOperatorNode >, boost::recursive_wrapper< SliceExpressionNode >, boost::recursive_wrapper< ListWildcardNode >, boost::recursive_wrapper< FilterExpressionNode > >
VariantNode()jmespath::ast::VariantNode< boost::recursive_wrapper< ArrayItemNode >, boost::recursive_wrapper< FlattenOperatorNode >, boost::recursive_wrapper< SliceExpressionNode >, boost::recursive_wrapper< ListWildcardNode >, boost::recursive_wrapper< FilterExpressionNode > >inline
VariantNode(const VariantNode &)=defaultjmespath::ast::VariantNode< boost::recursive_wrapper< ArrayItemNode >, boost::recursive_wrapper< FlattenOperatorNode >, boost::recursive_wrapper< SliceExpressionNode >, boost::recursive_wrapper< ListWildcardNode >, boost::recursive_wrapper< FilterExpressionNode > >
VariantNode(const T &other)jmespath::ast::VariantNode< boost::recursive_wrapper< ArrayItemNode >, boost::recursive_wrapper< FlattenOperatorNode >, boost::recursive_wrapper< SliceExpressionNode >, boost::recursive_wrapper< ListWildcardNode >, boost::recursive_wrapper< FilterExpressionNode > >inline
~AbstractNode()jmespath::ast::AbstractNodevirtual
+ + + + diff --git a/classjmespath_1_1ast_1_1_bracket_specifier_node.html b/classjmespath_1_1ast_1_1_bracket_specifier_node.html new file mode 100644 index 0000000..eb3ea06 --- /dev/null +++ b/classjmespath_1_1ast_1_1_bracket_specifier_node.html @@ -0,0 +1,304 @@ + + + + + + +jmespath.cpp: jmespath::ast::BracketSpecifierNode Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast::BracketSpecifierNode Class Reference
+
+
+ +

The BracketSpecifierNode class represents a JMESPath bracket specifier. + More...

+ +

#include <bracketspecifiernode.h>

+
+Inheritance diagram for jmespath::ast::BracketSpecifierNode:
+
+
+ + +jmespath::ast::VariantNode< boost::recursive_wrapper< ArrayItemNode >, boost::recursive_wrapper< FlattenOperatorNode >, boost::recursive_wrapper< SliceExpressionNode >, boost::recursive_wrapper< ListWildcardNode >, boost::recursive_wrapper< FilterExpressionNode > > +jmespath::ast::AbstractNode + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 BracketSpecifierNode ()
 Constructs an empty BracketSpecifierNode object. More...
 
 BracketSpecifierNode (const ValueType &expression)
 Constructs a BracketSpecifierNode object with the given expression as its value. More...
 
bool isProjection () const
 Returns whather this expression requires the projection of subsequent expressions. More...
 
bool stopsProjection () const
 Reports whether the node should stop an ongoing projection or not. More...
 
- Public Member Functions inherited from jmespath::ast::VariantNode< boost::recursive_wrapper< ArrayItemNode >, boost::recursive_wrapper< FlattenOperatorNode >, boost::recursive_wrapper< SliceExpressionNode >, boost::recursive_wrapper< ListWildcardNode >, boost::recursive_wrapper< FilterExpressionNode > >
 VariantNode ()
 Constructs an empty VariantNode object. More...
 
 VariantNode (const VariantNode &)=default
 Copy-constructs an VariantNode object. More...
 
 VariantNode (const T &other)
 Copy constructs a VariantNode object if T is VariantNode or constructs a VariantNode object with T as the represented node type with the value given in other. More...
 
VariantNode< VariantT...> & operator= (const VariantNode &other)
 Assigns the other object's value to this object. More...
 
VariantNode< VariantT...> & operator= (const T &other)
 Assigns the value of the other object to this object's internal variant making it the node that this object represents. More...
 
bool operator== (const VariantNode &other) const
 Equality compares this node to the other. More...
 
bool isNull () const
 Returns whether this object has been initialized. More...
 
void accept (interpreter::AbstractVisitor *visitor) const override
 Accepts the given visitor object. More...
 
- Public Member Functions inherited from jmespath::ast::AbstractNode
 AbstractNode ()=default
 Constructs an AbstractNode object. More...
 
 AbstractNode (const AbstractNode &)=default
 Copy-constructs an AbstractNode object. More...
 
virtual ~AbstractNode ()
 Destroys the AbstractNode object. More...
 
AbstractNodeoperator= (const AbstractNode &)=default
 Copy-assigns the other object to this object. More...
 
+ + + + +

+Private Member Functions

virtual void anchor ()
 A virtual function used to pin vtable to a transaltion unit. More...
 
+ + + + + + + + + +

+Additional Inherited Members

- Public Types inherited from jmespath::ast::VariantNode< boost::recursive_wrapper< ArrayItemNode >, boost::recursive_wrapper< FlattenOperatorNode >, boost::recursive_wrapper< SliceExpressionNode >, boost::recursive_wrapper< ListWildcardNode >, boost::recursive_wrapper< FilterExpressionNode > >
using ValueType = boost::variant< boost::blank, VariantT...>
 The internal variant type which stores the nodes defined in VariantT or boost::blank if it's empty. More...
 
- Public Attributes inherited from jmespath::ast::VariantNode< boost::recursive_wrapper< ArrayItemNode >, boost::recursive_wrapper< FlattenOperatorNode >, boost::recursive_wrapper< SliceExpressionNode >, boost::recursive_wrapper< ListWildcardNode >, boost::recursive_wrapper< FilterExpressionNode > >
ValueType value
 The variable which stores the node that this object represents. More...
 
+

Detailed Description

+

The BracketSpecifierNode class represents a JMESPath bracket specifier.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
jmespath::ast::BracketSpecifierNode::BracketSpecifierNode ()
+
+ +

Constructs an empty BracketSpecifierNode object.

+ +
+
+ +
+
+ + + + + + + + +
jmespath::ast::BracketSpecifierNode::BracketSpecifierNode (const ValueTypeexpression)
+
+ +

Constructs a BracketSpecifierNode object with the given expression as its value.

+
Parameters
+ + +
[in]expressionThe node's child expression.
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
void jmespath::ast::BracketSpecifierNode::anchor ()
+
+privatevirtual
+
+ +

A virtual function used to pin vtable to a transaltion unit.

+ +
+
+ +
+
+ + + + + + + +
bool jmespath::ast::BracketSpecifierNode::isProjection () const
+
+ +

Returns whather this expression requires the projection of subsequent expressions.

+
Returns
Returns true if projection is required, otherwise returns false.
+ +
+
+ +
+
+ + + + + + + +
bool jmespath::ast::BracketSpecifierNode::stopsProjection () const
+
+ +

Reports whether the node should stop an ongoing projection or not.

+
Returns
Returns true if the node should stop an ongoing projection, otherwise returns false.
+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classjmespath_1_1ast_1_1_bracket_specifier_node.png b/classjmespath_1_1ast_1_1_bracket_specifier_node.png new file mode 100644 index 0000000000000000000000000000000000000000..1e0e0b2b098c8e30bd74efb293b2a7ab1bc8cd88 GIT binary patch literal 3355 zcmdrPeO!{~)~%V&P4jMdqiK_AY}P8nl!yoj+!wTV@4CO;-~D&zJnwtX^PKZL@AI5< ze$P4YxvqI}bwcu*#EzU z!$JyV%%29QZ?+`rd9+O82)A7;Laf+B*$-gL*|R$VG7mN!%UfGq2tM1v!`W;O?^z&1 z)RsZ7LoA${N(EofZxrQ6wrSbHVzq>jhsom2G~l1Px##znGayv}rjwitti&5_)Dv_( zoJt}$V^Q_hTR_pVA4HVP57cv$(VzKVgj@oUPWPk$WGW7+l+WUuF3|%HC8=o1??4>Z z!JQa!gmKG`iD99rJ+{Cow6+*2 zN?}8FoP2NF7wHKLXE?UF1N=Q#BxM)HZyNToo0l!x)9OWLA^3?jn{%uuvSP*mA$+nj z@b>bbUK(=uu&}WDY0%$oK&021(;6&~&n_-ibDedPO3kH0i{v9?sP2G172BwJ!zbKHuX#kTP60zzoTeSa#{ zxkgYFgTYN>zEk`t9_Hi8Iu5hRJbJ@~zpcCV4@>O>dj9YjG#8op0t)>yO#0+2; z`cr7f0!V}&qpt1&Tj$hB9{5+r&(?<#sGK>S=w?dNplo&mgQ^E>*)z3DRm=(4 zuX^UKQ$9jsO$Je5PiT>hLo0v!hHKoN^3*WjAl^tqlRMf<>249rGD8Ky;_f>3>xEO) zt`W^w%*2@_HH@o5JA@$<`NLsQ#Rxk`GXd&JO*yyoLqrjqWKP5ad%S2Sy$N| zI)lx_FiTRigwRYajE!i{@R8*Q#3gY!H?E%LgftWKR`~x0KGTuaDtdHs>!7{>M;&K( zrQeW_>XTdZoBd)-KL*#QUec!nxEdL`qc)e2 z&0MO4rT5-63n$$M39M3`x915p!SdCCSYvt~aHA8mHBzz3iE#o}KM{{cm$kQ#xIaCt znTbnLVpXxKaqmM&s9^R9Gcv417mvshBw!4qSahSja&BYw5kuB;FYr4aucy7&eSKVQ zREF>`M$v|IFl^)ILEI0671#$^Q_-PE)HA$gv0HD3gN$y~KOD_yEQ#qy41dlp$Ly1@Ptg#V~psSpi?1}NT=?U|e|rjA#~bxf6#Ap?46 zKP})4BW`RR2xtOMr1O(Z4-OpH? zhTn0;@rAm!cv)82dWz@bAOBQna4h)rcI8WBZYfZ9YUXVv%HCdfEN|O(0NSqb&Bwo8 zV9za9rXTek7s?lk6p_AI)DU+aPo1{HKIgx!vce{@>tAExene4xReVIz!9NoHd3#%Z zb}CC)^i|b!2Oa+}3vFu*BTr0~vn@(f@u+6m?16Twx2SqJOE#OfIT|!OnsZuWb(!Dn zE!T7&9Uq`5p^17&-r55AGYw>Y1pzG{X&-;G@AtkC8_Y*>vq}RLy^4FSwck}W8I6od zL%)vLcD=1DC~2fA&I9N^TFwCbYWXJ}ZeqWWfEstJ$}!*guXQ;u^+BLm-eTJL^zb-) zfbfa$4Z3eQ5HwIPun*KPpMZ6%F6)$Hx^(wg@2Cdv!$PqR-)84xYcN})$Q_3(9m0X8 zg#20HwTJJlgPl)UdWT~~jkF!+)*5yeW(rN6s{;?jC%sj(2H#cj!9Z@uIu@W#SWv$s z$V#QEYvhj-H=vnL1y!evnT;;zLi{)~$w>{Ma_yn^xngo+So0eNA#<=d3gjN=IRoM- zmKeRPaq0u$NVaon&1TkWbhA=KCc*VlkI-N#O%gqCkV^(?$%0Fg&+#ak&m4`TQkwCh z`N28GAS}E`^`?_k%ub-6iutWiY|Jep$UIif@vZ(x-LvLx_BN~RuBKgToynfJZa`DG w(67-J)BfcJ{~d7=Mc0esBaZ)(jJjK1$v%-Rs`HAm{`A-(gF*xAc6@#MU(oJG#{d8T literal 0 HcmV?d00001 diff --git a/classjmespath_1_1ast_1_1_comparator_expression_node-members.html b/classjmespath_1_1ast_1_1_comparator_expression_node-members.html new file mode 100644 index 0000000..7d8af1d --- /dev/null +++ b/classjmespath_1_1ast_1_1_comparator_expression_node-members.html @@ -0,0 +1,124 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::ast::ComparatorExpressionNode Member List
+
+ + + + + diff --git a/classjmespath_1_1ast_1_1_comparator_expression_node.html b/classjmespath_1_1ast_1_1_comparator_expression_node.html new file mode 100644 index 0000000..c73f54c --- /dev/null +++ b/classjmespath_1_1ast_1_1_comparator_expression_node.html @@ -0,0 +1,434 @@ + + + + + + +jmespath.cpp: jmespath::ast::ComparatorExpressionNode Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast::ComparatorExpressionNode Class Reference
+
+
+ +

The ComparatorExpressionNode class represents a JMESPath comparator expression. + More...

+ +

#include <comparatorexpressionnode.h>

+
+Inheritance diagram for jmespath::ast::ComparatorExpressionNode:
+
+
+ + +jmespath::ast::BinaryExpressionNode +jmespath::ast::AbstractNode + +
+ + + + + +

+Public Types

enum  Comparator {
+  Comparator::Unknown, +Comparator::Less, +Comparator::LessOrEqual, +Comparator::Equal, +
+  Comparator::GreaterOrEqual, +Comparator::Greater, +Comparator::NotEqual +
+ }
 The Comparator enum defines the available comparison operators. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 ComparatorExpressionNode ()
 Constructs an empty ComparatorExpressionNode object. More...
 
 ComparatorExpressionNode (const ExpressionNode &left, Comparator valueComparator, const ExpressionNode &right)
 Constructs a ComparatorExpressionNode object with the given leftExpression, comparator and rightExpression. More...
 
bool operator== (const ComparatorExpressionNode &other) const
 Equality compares this node to the other. More...
 
bool isProjection () const override
 Returns whather this expression requires the projection of subsequent expressions. More...
 
bool stopsProjection () const override
 Reports whether the node should stop an ongoing projection or not. More...
 
void accept (interpreter::AbstractVisitor *visitor) const override
 Calls the visit method of the given visitor with the dynamic type of the node. More...
 
- Public Member Functions inherited from jmespath::ast::BinaryExpressionNode
 BinaryExpressionNode ()
 Constructs an empty BinaryExpressionNode object. More...
 
 BinaryExpressionNode (const ExpressionNode &left, const ExpressionNode &right)
 Constructs a BinaryExpressionNode object with the given leftExpressin and rightExpression as its children. More...
 
bool operator== (const BinaryExpressionNode &other) const
 Equality compares this node to the other. More...
 
- Public Member Functions inherited from jmespath::ast::AbstractNode
 AbstractNode ()=default
 Constructs an AbstractNode object. More...
 
 AbstractNode (const AbstractNode &)=default
 Copy-constructs an AbstractNode object. More...
 
virtual ~AbstractNode ()
 Destroys the AbstractNode object. More...
 
AbstractNodeoperator= (const AbstractNode &)=default
 Copy-assigns the other object to this object. More...
 
+ + + + + + + + + + + +

+Public Attributes

Comparator comparator
 The type of comparator associated with the expression. More...
 
- Public Attributes inherited from jmespath::ast::BinaryExpressionNode
ExpressionNode leftExpression
 The left hand expression of the node. More...
 
ExpressionNode rightExpression
 The right hand expression of the node. More...
 
+

Detailed Description

+

The ComparatorExpressionNode class represents a JMESPath comparator expression.

+

Member Enumeration Documentation

+ +
+
+ + + + + +
+ + + + +
enum jmespath::ast::ComparatorExpressionNode::Comparator
+
+strong
+
+ +

The Comparator enum defines the available comparison operators.

+ + + + + + + + +
Enumerator
Unknown  +
Less  +
LessOrEqual  +
Equal  +
GreaterOrEqual  +
Greater  +
NotEqual  +
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
jmespath::ast::ComparatorExpressionNode::ComparatorExpressionNode ()
+
+ +

Constructs an empty ComparatorExpressionNode object.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
jmespath::ast::ComparatorExpressionNode::ComparatorExpressionNode (const ExpressionNodeleft,
Comparator valueComparator,
const ExpressionNoderight 
)
+
+ +

Constructs a ComparatorExpressionNode object with the given leftExpression, comparator and rightExpression.

+
Parameters
+ + + + +
[in]leftThe node's left hand child expression.
[in]valueComparatorThe type of comparison operator to use for comparing the results of the left and right hand child expressions.
[in]rightThe node's right hand child expression.
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::ast::ComparatorExpressionNode::accept (interpreter::AbstractVisitorvisitor) const
+
+overridevirtual
+
+ +

Calls the visit method of the given visitor with the dynamic type of the node.

+
Parameters
+ + +
[in]visitorA visitor implementation
+
+
+ +

Reimplemented from jmespath::ast::BinaryExpressionNode.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
bool jmespath::ast::ComparatorExpressionNode::isProjection () const
+
+overridevirtual
+
+ +

Returns whather this expression requires the projection of subsequent expressions.

+
Returns
Returns true if projection is required, otherwise returns false.
+ +

Implements jmespath::ast::BinaryExpressionNode.

+ +
+
+ +
+
+ + + + + + + + +
bool jmespath::ast::ComparatorExpressionNode::operator== (const ComparatorExpressionNodeother) const
+
+ +

Equality compares this node to the other.

+
Parameters
+ + +
[in]otherThe node that should be compared.
+
+
+
Returns
Returns true if this object is equal to the other, otherwise false
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
bool jmespath::ast::ComparatorExpressionNode::stopsProjection () const
+
+overridevirtual
+
+ +

Reports whether the node should stop an ongoing projection or not.

+
Returns
Returns true if the node should stop an ongoing projection, otherwise returns false.
+ +

Implements jmespath::ast::BinaryExpressionNode.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
Comparator jmespath::ast::ComparatorExpressionNode::comparator
+
+ +

The type of comparator associated with the expression.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classjmespath_1_1ast_1_1_comparator_expression_node.png b/classjmespath_1_1ast_1_1_comparator_expression_node.png new file mode 100644 index 0000000000000000000000000000000000000000..6b0351a92f9f66034caf8b5d81ff4e6d718b2584 GIT binary patch literal 1265 zcmeAS@N?(olHy`uVBq!ia0vp^-+{P;gBeKjsP&ctDTx4|5ZC|z{{xvX-h3_XKQsZz z0^J znG_SUZ-1V9&vN16byCg=f*tjd(^5G##5}o{pVaj%G})=D*%$ZBZ_<~T)wg#puibp# zeBa|f)ui9Q9@VIrzKwtSTdVw*yk61wefy8?WlUXFa^}gu{ZXsm{+rJ0zW-I#oo#pC zeYJCw|ERF`;+e@Ru~(z-+}7d$_P0o7@mAH7W~x8aES981nf+L|_aw`tC9A9S@5}Z$ zZm_%i@2mQjM0ppZ=c=CDzKVP9T62EK`~ADlpB9rTtiGQ0wQ{|zx5j3syu~*&JuZdT z&dE1lS>_zx|106Q>9ltXZ?g37P<`q8_kx}Ly!VXTqt|!MQn_uj{pIy}f7Z`=f4OQN z_x$3s^A`n)`gY~2{NAaN`nTi9(JDR9z4!i1@VX=p^zzG{=U)D+*r)oEKcmPyNX9qM zvup9x>d0xT^BDFmm3DAoeY)>%QWN{rxQ)(D?oa1^l~I_aX6^t~*I+U04g)aI7$0R6 zF(0}3gso%oNnQc>$Ygqg&%NJ7f6u9AJ{96F*Ei>B`|sOd^`*V8ZOT3y zH}A6C7S5ghN!QlTIvs0VH_vsOT%T%Bp_%`rE3X*8i+!3AIPa_9l^c^%W=~?vy<=;C ztM>8_%XXEU*H}yvV>motebKlt>oafd=S*kwb^mI%-(7p^=Q_?(zPFC=ERR3q-_b67 z%X}CA+t}Z=dAs?SUoXDB;OW;FmuCBCKRsGwzVgfIJ3?lXmJhc@Jj>y`wmkOgy~mu} zRd~N%g2h7kj?GKc{U>G1T@Y>d|Nb-6_I&I4opQ<7R#{lwzj=PcySP}}^2gu5-VvYg z|9Yp&*I#dpwLSN;8U88pKLH8~Lla|K!w_?IJ8sEEQg>1CGuX)Zek(lT}j;{}=y)>6LC^5ENhQ(j&Z>4{) z%HCz(%TX16uxiftz!JuJt3Ti7U3=4hugzZVJGbw8PqZ~ZaQjyH8=>!PQ&#pZz4tFX zd+S?yyV)F%ql8n$6pr8M_1%!8U)y{2-65-#ulhOFA;tlc=V!bR`}}0*_PErxol|$8 zyRb7VduF-t&X-f=Z$})B`X2tV+G0^}{N9?5z1&?W zTyNR7NqJkaUqW=f<#V~do%yck-^Q*ld>&`o^gORGYrE22JNekE;wodAm=3{dy;S8TVJ21=rK#gAQynZ~ps2 tM(z9I6ZJOt85-fierj%z*T*mNbE1-uZQFYJC$M~C@O1TaS?83{1OQRKeyRWf literal 0 HcmV?d00001 diff --git a/classjmespath_1_1ast_1_1_current_node-members.html b/classjmespath_1_1ast_1_1_current_node-members.html new file mode 100644 index 0000000..ce574dd --- /dev/null +++ b/classjmespath_1_1ast_1_1_current_node-members.html @@ -0,0 +1,114 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::ast::CurrentNode Member List
+
+
+ +

This is the complete list of members for jmespath::ast::CurrentNode, including all inherited members.

+ + + + + + + + +
AbstractNode()=defaultjmespath::ast::AbstractNode
AbstractNode(const AbstractNode &)=defaultjmespath::ast::AbstractNode
accept(interpreter::AbstractVisitor *visitor) const overridejmespath::ast::CurrentNodevirtual
CurrentNode()jmespath::ast::CurrentNode
operator=(const AbstractNode &)=defaultjmespath::ast::AbstractNode
operator==(const CurrentNode &other) const jmespath::ast::CurrentNode
~AbstractNode()jmespath::ast::AbstractNodevirtual
+ + + + diff --git a/classjmespath_1_1ast_1_1_current_node.html b/classjmespath_1_1ast_1_1_current_node.html new file mode 100644 index 0000000..c15a0ef --- /dev/null +++ b/classjmespath_1_1ast_1_1_current_node.html @@ -0,0 +1,231 @@ + + + + + + +jmespath.cpp: jmespath::ast::CurrentNode Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast::CurrentNode Class Reference
+
+
+ +

The CurrentNode class represents a JMESPath current node expression. + More...

+ +

#include <currentnode.h>

+
+Inheritance diagram for jmespath::ast::CurrentNode:
+
+
+ + +jmespath::ast::AbstractNode + +
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 CurrentNode ()
 Constructs an CurrentNode object with an empty name. More...
 
void accept (interpreter::AbstractVisitor *visitor) const override
 Calls the visit method of the given visitor with the dynamic type of the node. More...
 
bool operator== (const CurrentNode &other) const
 Equality compares this node to the other. More...
 
- Public Member Functions inherited from jmespath::ast::AbstractNode
 AbstractNode ()=default
 Constructs an AbstractNode object. More...
 
 AbstractNode (const AbstractNode &)=default
 Copy-constructs an AbstractNode object. More...
 
virtual ~AbstractNode ()
 Destroys the AbstractNode object. More...
 
AbstractNodeoperator= (const AbstractNode &)=default
 Copy-assigns the other object to this object. More...
 
+

Detailed Description

+

The CurrentNode class represents a JMESPath current node expression.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
jmespath::ast::CurrentNode::CurrentNode ()
+
+ +

Constructs an CurrentNode object with an empty name.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::ast::CurrentNode::accept (interpreter::AbstractVisitorvisitor) const
+
+overridevirtual
+
+ +

Calls the visit method of the given visitor with the dynamic type of the node.

+
Parameters
+ + +
[in]visitorA visitor implementation
+
+
+ +

Implements jmespath::ast::AbstractNode.

+ +
+
+ +
+
+ + + + + + + + +
bool jmespath::ast::CurrentNode::operator== (const CurrentNodeother) const
+
+ +

Equality compares this node to the other.

+
Parameters
+ + +
[in]otherThe node that should be compared.
+
+
+
Returns
Returns true if this object is equal to the other, otherwise false
+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classjmespath_1_1ast_1_1_current_node.png b/classjmespath_1_1ast_1_1_current_node.png new file mode 100644 index 0000000000000000000000000000000000000000..aafccb31c258b18d866bfea77942e5c2c425d99c GIT binary patch literal 734 zcmeAS@N?(olHy`uVBq!ia0vp^%YZn5gBeIJnfuQXNJ#|vgt-3y{~ySF@#br3|Dg#$ z78oBmaDcV*jy#adQ4-`A%m7pb0#{Fk7%?y~<$Ag}hEy=Vo%>d3u>y}P|Mi*s{wuE! zwG(p4PQS7C+@*(Eor*Hd2lwlo-gGBkXHrSIuaBqH(oRj!#ZwHMRcf!jDtnVT|IPoo z`Sl5XFXVsU+kSITm*lr|u4k@&=O~_S@7QATp*D8y(Qo@yoMpme9>@1b+TMGfq3pIn z=)uB9-U-pqMsW*jv?&G7ZzrvcUz&phLt zl>7Fr#OJ@--Se(5Zjan8mOb~XkwLrBfvZMQJ)3jF4F9|m>%X+|@tmbEcZkeSl$#n* zez-J;H|=XxtB%LEt25H(+}|4h?OEc|}d+a`8Ty&n=EtCo5Pt?qul zPvx(zEzjp$;sKND7UkPdoAiYl?%OR%dcY8fV_5u^X~+I~jX$ewn?6g<(0(dxA>U-F zEt@b$P3?e&uTMkZtQic8O$-^`GLx8kE*)W!SlY>H;3X`aFa=q`7y0BifkS^?8FuW3 z2^-B2uMFRw?Eg7swSPnK(~NuD<$l(h=_lp=w>w_v{(8r}guKt{9W%P#?uzQpwLhG* zs3+TVLG)q?l~|t(61qR1cr3eq_zs)r9E~zhhflJ_z5?u$z7M zPMX^5$J3YIO`Mza%kTf&TemIKbQ*TpRr*%V*!o)ijLfl%TW4%z^WXGR=qhJS;g;;$ zIlj}cD4*FZ^eS&h-`a;S_RN#5-}j>Kdfffl?NjGvttmQd@NP{(Y4nY^eqH|iSC=$| zng8&!<@ literal 0 HcmV?d00001 diff --git a/classjmespath_1_1ast_1_1_expression_argument_node-members.html b/classjmespath_1_1ast_1_1_expression_argument_node-members.html new file mode 100644 index 0000000..284e8f7 --- /dev/null +++ b/classjmespath_1_1ast_1_1_expression_argument_node-members.html @@ -0,0 +1,116 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::ast::ExpressionArgumentNode Member List
+
+
+ +

This is the complete list of members for jmespath::ast::ExpressionArgumentNode, including all inherited members.

+ + + + + + + + + + +
AbstractNode()=defaultjmespath::ast::AbstractNode
AbstractNode(const AbstractNode &)=defaultjmespath::ast::AbstractNode
accept(interpreter::AbstractVisitor *visitor) const overridejmespath::ast::ExpressionArgumentNodevirtual
expressionjmespath::ast::ExpressionArgumentNode
ExpressionArgumentNode()jmespath::ast::ExpressionArgumentNode
ExpressionArgumentNode(const ExpressionNode &subexpression)jmespath::ast::ExpressionArgumentNode
operator=(const AbstractNode &)=defaultjmespath::ast::AbstractNode
operator==(const ExpressionArgumentNode &other) const jmespath::ast::ExpressionArgumentNode
~AbstractNode()jmespath::ast::AbstractNodevirtual
+ + + + diff --git a/classjmespath_1_1ast_1_1_expression_argument_node.html b/classjmespath_1_1ast_1_1_expression_argument_node.html new file mode 100644 index 0000000..30f7b2e --- /dev/null +++ b/classjmespath_1_1ast_1_1_expression_argument_node.html @@ -0,0 +1,280 @@ + + + + + + +jmespath.cpp: jmespath::ast::ExpressionArgumentNode Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast::ExpressionArgumentNode Class Reference
+
+
+ +

The ExpressionArgumentNode class represents a JMESPath expression argument. + More...

+ +

#include <expressionargumentnode.h>

+
+Inheritance diagram for jmespath::ast::ExpressionArgumentNode:
+
+
+ + +jmespath::ast::AbstractNode + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 ExpressionArgumentNode ()
 Constructs an emtpy ExpressionArgumentNode object. More...
 
 ExpressionArgumentNode (const ExpressionNode &subexpression)
 Constructs a ExpressionArgumentNode object with the given expression as its child expression. More...
 
void accept (interpreter::AbstractVisitor *visitor) const override
 Calls the visit method of the given visitor with the dynamic type of the node. More...
 
bool operator== (const ExpressionArgumentNode &other) const
 Equality compares this node to the other. More...
 
- Public Member Functions inherited from jmespath::ast::AbstractNode
 AbstractNode ()=default
 Constructs an AbstractNode object. More...
 
 AbstractNode (const AbstractNode &)=default
 Copy-constructs an AbstractNode object. More...
 
virtual ~AbstractNode ()
 Destroys the AbstractNode object. More...
 
AbstractNodeoperator= (const AbstractNode &)=default
 Copy-assigns the other object to this object. More...
 
+ + + + +

+Public Attributes

ExpressionNode expression
 The node's child expression. More...
 
+

Detailed Description

+

The ExpressionArgumentNode class represents a JMESPath expression argument.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
jmespath::ast::ExpressionArgumentNode::ExpressionArgumentNode ()
+
+ +

Constructs an emtpy ExpressionArgumentNode object.

+ +
+
+ +
+
+ + + + + + + + +
jmespath::ast::ExpressionArgumentNode::ExpressionArgumentNode (const ExpressionNodesubexpression)
+
+ +

Constructs a ExpressionArgumentNode object with the given expression as its child expression.

+
Parameters
+ + +
[in]subexpressionThe node's child expression.
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::ast::ExpressionArgumentNode::accept (interpreter::AbstractVisitorvisitor) const
+
+overridevirtual
+
+ +

Calls the visit method of the given visitor with the dynamic type of the node.

+
Parameters
+ + +
[in]visitorA visitor implementation
+
+
+ +

Implements jmespath::ast::AbstractNode.

+ +
+
+ +
+
+ + + + + + + + +
bool jmespath::ast::ExpressionArgumentNode::operator== (const ExpressionArgumentNodeother) const
+
+ +

Equality compares this node to the other.

+
Parameters
+ + +
[in]otherThe node that should be compared.
+
+
+
Returns
Returns true if this object is equal to the other, otherwise false
+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
ExpressionNode jmespath::ast::ExpressionArgumentNode::expression
+
+ +

The node's child expression.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classjmespath_1_1ast_1_1_expression_argument_node.png b/classjmespath_1_1ast_1_1_expression_argument_node.png new file mode 100644 index 0000000000000000000000000000000000000000..f1beffff53fa63a7646e0482754110dc3e259a1c GIT binary patch literal 851 zcmeAS@N?(olHy`uVBq!ia0vp^uYov#gBeJkzgZLrq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ09(lSrhEy=Vo%?^%W(6Ks{_8XM{a3Ev z_DPu~r_}mwUH6-Uw_ToR6b1gLMoxRGlr(XPcg7~KOBJ)$Ofs40w}H*GYVFmW`q$P=pNU1&nNXHOe%@UfB*1Z<=YLrOtmT;Hyz$Awf~n&{o6h7zCFCMXHMp? zoG0hfyfT$Pzxo#{FU3tFRZnKm&p5El>(cydDN~nx1PWx@tX*?@ zlg@R41K&%TcXa3-soEXO{>^EP_N&x{^+&9J8yx7EwT9tw<|d||b{MM>kB(v>@T1l1Ttg{n?!!9a6y?U~+xHB{K;G+1c zQxj_~Ztck2`)VgcnZOI4&D@Kef3{xeIc2bZGWUg(7msLc{M%h!n#=H}`|joRcGdaU zgLXt++gF!(HmaIsLvsCEYs2!$-81uM-`HFg%>UMMZEf9~$l&zqW3xW56o|fdNwxfS z)YLV?R{}zxu8hcL-|n&2wcOrzW%k#S{?hg4rTmHM>k><|pHu~(mOjv%zUJ%3yY~C2bn1zkUmw)DiJeTG{MF@qvsek|g literal 0 HcmV?d00001 diff --git a/classjmespath_1_1ast_1_1_expression_node-members.html b/classjmespath_1_1ast_1_1_expression_node-members.html new file mode 100644 index 0000000..63036ae --- /dev/null +++ b/classjmespath_1_1ast_1_1_expression_node-members.html @@ -0,0 +1,127 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::ast::ExpressionNode Member List
+
+
+ +

This is the complete list of members for jmespath::ast::ExpressionNode, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + +
AbstractNode()=defaultjmespath::ast::AbstractNode
AbstractNode(const AbstractNode &)=defaultjmespath::ast::AbstractNode
accept(interpreter::AbstractVisitor *visitor) const overridejmespath::ast::VariantNode< boost::recursive_wrapper< IdentifierNode >, boost::recursive_wrapper< RawStringNode >, boost::recursive_wrapper< LiteralNode >, boost::recursive_wrapper< SubexpressionNode >, boost::recursive_wrapper< IndexExpressionNode >, boost::recursive_wrapper< HashWildcardNode >, boost::recursive_wrapper< MultiselectListNode >, boost::recursive_wrapper< MultiselectHashNode >, boost::recursive_wrapper< NotExpressionNode >, boost::recursive_wrapper< ComparatorExpressionNode >, boost::recursive_wrapper< OrExpressionNode >, boost::recursive_wrapper< AndExpressionNode >, boost::recursive_wrapper< ParenExpressionNode >, boost::recursive_wrapper< PipeExpressionNode >, boost::recursive_wrapper< CurrentNode >, boost::recursive_wrapper< FunctionExpressionNode > >inlinevirtual
ExpressionNode()jmespath::ast::ExpressionNode
ExpressionNode(const ExpressionNode &)=defaultjmespath::ast::ExpressionNode
ExpressionNode(const ValueType &expression)jmespath::ast::ExpressionNode
isNull() constjmespath::ast::VariantNode< boost::recursive_wrapper< IdentifierNode >, boost::recursive_wrapper< RawStringNode >, boost::recursive_wrapper< LiteralNode >, boost::recursive_wrapper< SubexpressionNode >, boost::recursive_wrapper< IndexExpressionNode >, boost::recursive_wrapper< HashWildcardNode >, boost::recursive_wrapper< MultiselectListNode >, boost::recursive_wrapper< MultiselectHashNode >, boost::recursive_wrapper< NotExpressionNode >, boost::recursive_wrapper< ComparatorExpressionNode >, boost::recursive_wrapper< OrExpressionNode >, boost::recursive_wrapper< AndExpressionNode >, boost::recursive_wrapper< ParenExpressionNode >, boost::recursive_wrapper< PipeExpressionNode >, boost::recursive_wrapper< CurrentNode >, boost::recursive_wrapper< FunctionExpressionNode > >inline
operator=(const ExpressionNode &other)jmespath::ast::ExpressionNode
operator=(const ValueType &expression)jmespath::ast::ExpressionNode
VariantNode< boost::recursive_wrapper< IdentifierNode >, boost::recursive_wrapper< RawStringNode >, boost::recursive_wrapper< LiteralNode >, boost::recursive_wrapper< SubexpressionNode >, boost::recursive_wrapper< IndexExpressionNode >, boost::recursive_wrapper< HashWildcardNode >, boost::recursive_wrapper< MultiselectListNode >, boost::recursive_wrapper< MultiselectHashNode >, boost::recursive_wrapper< NotExpressionNode >, boost::recursive_wrapper< ComparatorExpressionNode >, boost::recursive_wrapper< OrExpressionNode >, boost::recursive_wrapper< AndExpressionNode >, boost::recursive_wrapper< ParenExpressionNode >, boost::recursive_wrapper< PipeExpressionNode >, boost::recursive_wrapper< CurrentNode >, boost::recursive_wrapper< FunctionExpressionNode > >::operator=(const VariantNode &other)jmespath::ast::VariantNode< boost::recursive_wrapper< IdentifierNode >, boost::recursive_wrapper< RawStringNode >, boost::recursive_wrapper< LiteralNode >, boost::recursive_wrapper< SubexpressionNode >, boost::recursive_wrapper< IndexExpressionNode >, boost::recursive_wrapper< HashWildcardNode >, boost::recursive_wrapper< MultiselectListNode >, boost::recursive_wrapper< MultiselectHashNode >, boost::recursive_wrapper< NotExpressionNode >, boost::recursive_wrapper< ComparatorExpressionNode >, boost::recursive_wrapper< OrExpressionNode >, boost::recursive_wrapper< AndExpressionNode >, boost::recursive_wrapper< ParenExpressionNode >, boost::recursive_wrapper< PipeExpressionNode >, boost::recursive_wrapper< CurrentNode >, boost::recursive_wrapper< FunctionExpressionNode > >inline
VariantNode< boost::recursive_wrapper< IdentifierNode >, boost::recursive_wrapper< RawStringNode >, boost::recursive_wrapper< LiteralNode >, boost::recursive_wrapper< SubexpressionNode >, boost::recursive_wrapper< IndexExpressionNode >, boost::recursive_wrapper< HashWildcardNode >, boost::recursive_wrapper< MultiselectListNode >, boost::recursive_wrapper< MultiselectHashNode >, boost::recursive_wrapper< NotExpressionNode >, boost::recursive_wrapper< ComparatorExpressionNode >, boost::recursive_wrapper< OrExpressionNode >, boost::recursive_wrapper< AndExpressionNode >, boost::recursive_wrapper< ParenExpressionNode >, boost::recursive_wrapper< PipeExpressionNode >, boost::recursive_wrapper< CurrentNode >, boost::recursive_wrapper< FunctionExpressionNode > >::operator=(const T &other)jmespath::ast::VariantNode< boost::recursive_wrapper< IdentifierNode >, boost::recursive_wrapper< RawStringNode >, boost::recursive_wrapper< LiteralNode >, boost::recursive_wrapper< SubexpressionNode >, boost::recursive_wrapper< IndexExpressionNode >, boost::recursive_wrapper< HashWildcardNode >, boost::recursive_wrapper< MultiselectListNode >, boost::recursive_wrapper< MultiselectHashNode >, boost::recursive_wrapper< NotExpressionNode >, boost::recursive_wrapper< ComparatorExpressionNode >, boost::recursive_wrapper< OrExpressionNode >, boost::recursive_wrapper< AndExpressionNode >, boost::recursive_wrapper< ParenExpressionNode >, boost::recursive_wrapper< PipeExpressionNode >, boost::recursive_wrapper< CurrentNode >, boost::recursive_wrapper< FunctionExpressionNode > >inline
jmespath::ast::AbstractNode::operator=(const AbstractNode &)=defaultjmespath::ast::AbstractNode
operator==(const VariantNode &other) constjmespath::ast::VariantNode< boost::recursive_wrapper< IdentifierNode >, boost::recursive_wrapper< RawStringNode >, boost::recursive_wrapper< LiteralNode >, boost::recursive_wrapper< SubexpressionNode >, boost::recursive_wrapper< IndexExpressionNode >, boost::recursive_wrapper< HashWildcardNode >, boost::recursive_wrapper< MultiselectListNode >, boost::recursive_wrapper< MultiselectHashNode >, boost::recursive_wrapper< NotExpressionNode >, boost::recursive_wrapper< ComparatorExpressionNode >, boost::recursive_wrapper< OrExpressionNode >, boost::recursive_wrapper< AndExpressionNode >, boost::recursive_wrapper< ParenExpressionNode >, boost::recursive_wrapper< PipeExpressionNode >, boost::recursive_wrapper< CurrentNode >, boost::recursive_wrapper< FunctionExpressionNode > >inline
valuejmespath::ast::VariantNode< boost::recursive_wrapper< IdentifierNode >, boost::recursive_wrapper< RawStringNode >, boost::recursive_wrapper< LiteralNode >, boost::recursive_wrapper< SubexpressionNode >, boost::recursive_wrapper< IndexExpressionNode >, boost::recursive_wrapper< HashWildcardNode >, boost::recursive_wrapper< MultiselectListNode >, boost::recursive_wrapper< MultiselectHashNode >, boost::recursive_wrapper< NotExpressionNode >, boost::recursive_wrapper< ComparatorExpressionNode >, boost::recursive_wrapper< OrExpressionNode >, boost::recursive_wrapper< AndExpressionNode >, boost::recursive_wrapper< ParenExpressionNode >, boost::recursive_wrapper< PipeExpressionNode >, boost::recursive_wrapper< CurrentNode >, boost::recursive_wrapper< FunctionExpressionNode > >
ValueType typedefjmespath::ast::VariantNode< boost::recursive_wrapper< IdentifierNode >, boost::recursive_wrapper< RawStringNode >, boost::recursive_wrapper< LiteralNode >, boost::recursive_wrapper< SubexpressionNode >, boost::recursive_wrapper< IndexExpressionNode >, boost::recursive_wrapper< HashWildcardNode >, boost::recursive_wrapper< MultiselectListNode >, boost::recursive_wrapper< MultiselectHashNode >, boost::recursive_wrapper< NotExpressionNode >, boost::recursive_wrapper< ComparatorExpressionNode >, boost::recursive_wrapper< OrExpressionNode >, boost::recursive_wrapper< AndExpressionNode >, boost::recursive_wrapper< ParenExpressionNode >, boost::recursive_wrapper< PipeExpressionNode >, boost::recursive_wrapper< CurrentNode >, boost::recursive_wrapper< FunctionExpressionNode > >
VariantNode()jmespath::ast::VariantNode< boost::recursive_wrapper< IdentifierNode >, boost::recursive_wrapper< RawStringNode >, boost::recursive_wrapper< LiteralNode >, boost::recursive_wrapper< SubexpressionNode >, boost::recursive_wrapper< IndexExpressionNode >, boost::recursive_wrapper< HashWildcardNode >, boost::recursive_wrapper< MultiselectListNode >, boost::recursive_wrapper< MultiselectHashNode >, boost::recursive_wrapper< NotExpressionNode >, boost::recursive_wrapper< ComparatorExpressionNode >, boost::recursive_wrapper< OrExpressionNode >, boost::recursive_wrapper< AndExpressionNode >, boost::recursive_wrapper< ParenExpressionNode >, boost::recursive_wrapper< PipeExpressionNode >, boost::recursive_wrapper< CurrentNode >, boost::recursive_wrapper< FunctionExpressionNode > >inline
VariantNode(const VariantNode &)=defaultjmespath::ast::VariantNode< boost::recursive_wrapper< IdentifierNode >, boost::recursive_wrapper< RawStringNode >, boost::recursive_wrapper< LiteralNode >, boost::recursive_wrapper< SubexpressionNode >, boost::recursive_wrapper< IndexExpressionNode >, boost::recursive_wrapper< HashWildcardNode >, boost::recursive_wrapper< MultiselectListNode >, boost::recursive_wrapper< MultiselectHashNode >, boost::recursive_wrapper< NotExpressionNode >, boost::recursive_wrapper< ComparatorExpressionNode >, boost::recursive_wrapper< OrExpressionNode >, boost::recursive_wrapper< AndExpressionNode >, boost::recursive_wrapper< ParenExpressionNode >, boost::recursive_wrapper< PipeExpressionNode >, boost::recursive_wrapper< CurrentNode >, boost::recursive_wrapper< FunctionExpressionNode > >
VariantNode(const T &other)jmespath::ast::VariantNode< boost::recursive_wrapper< IdentifierNode >, boost::recursive_wrapper< RawStringNode >, boost::recursive_wrapper< LiteralNode >, boost::recursive_wrapper< SubexpressionNode >, boost::recursive_wrapper< IndexExpressionNode >, boost::recursive_wrapper< HashWildcardNode >, boost::recursive_wrapper< MultiselectListNode >, boost::recursive_wrapper< MultiselectHashNode >, boost::recursive_wrapper< NotExpressionNode >, boost::recursive_wrapper< ComparatorExpressionNode >, boost::recursive_wrapper< OrExpressionNode >, boost::recursive_wrapper< AndExpressionNode >, boost::recursive_wrapper< ParenExpressionNode >, boost::recursive_wrapper< PipeExpressionNode >, boost::recursive_wrapper< CurrentNode >, boost::recursive_wrapper< FunctionExpressionNode > >inline
~AbstractNode()jmespath::ast::AbstractNodevirtual
~ExpressionNode()jmespath::ast::ExpressionNodevirtual
+ + + + diff --git a/classjmespath_1_1ast_1_1_expression_node.html b/classjmespath_1_1ast_1_1_expression_node.html new file mode 100644 index 0000000..086fc7d --- /dev/null +++ b/classjmespath_1_1ast_1_1_expression_node.html @@ -0,0 +1,343 @@ + + + + + + +jmespath.cpp: jmespath::ast::ExpressionNode Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast::ExpressionNode Class Reference
+
+
+ +

The ExpressionNode class represents a JMESPath expression. + More...

+ +

#include <expressionnode.h>

+
+Inheritance diagram for jmespath::ast::ExpressionNode:
+
+
+ + +jmespath::ast::VariantNode< boost::recursive_wrapper< IdentifierNode >, boost::recursive_wrapper< RawStringNode >, boost::recursive_wrapper< LiteralNode >, boost::recursive_wrapper< SubexpressionNode >, boost::recursive_wrapper< IndexExpressionNode >, boost::recursive_wrapper< HashWildcardNode >, boost::recursive_wrapper< MultiselectListNode >, boost::recursive_wrapper< MultiselectHashNode >, boost::recursive_wrapper< NotExpressionNode >, boost::recursive_wrapper< ComparatorExpressionNode >, boost::recursive_wrapper< OrExpressionNode >, boost::recursive_wrapper< AndExpressionNode >, boost::recursive_wrapper< ParenExpressionNode >, boost::recursive_wrapper< PipeExpressionNode >, boost::recursive_wrapper< CurrentNode >, boost::recursive_wrapper< FunctionExpressionNode > > +jmespath::ast::AbstractNode + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 ExpressionNode ()
 Constructs an empty ExpressionNode object. More...
 
 ExpressionNode (const ExpressionNode &)=default
 Copy-constructs an ExpressionNode object. More...
 
virtual ~ExpressionNode ()
 Destroys the ExpressionNode object. More...
 
 ExpressionNode (const ValueType &expression)
 Constructs an ExpressionNode object with its child expression initialized to expression. More...
 
ExpressionNodeoperator= (const ExpressionNode &other)
 Assigns the other object to this object. More...
 
ExpressionNodeoperator= (const ValueType &expression)
 Assigns the other Expression to this object's expression. More...
 
- Public Member Functions inherited from jmespath::ast::VariantNode< boost::recursive_wrapper< IdentifierNode >, boost::recursive_wrapper< RawStringNode >, boost::recursive_wrapper< LiteralNode >, boost::recursive_wrapper< SubexpressionNode >, boost::recursive_wrapper< IndexExpressionNode >, boost::recursive_wrapper< HashWildcardNode >, boost::recursive_wrapper< MultiselectListNode >, boost::recursive_wrapper< MultiselectHashNode >, boost::recursive_wrapper< NotExpressionNode >, boost::recursive_wrapper< ComparatorExpressionNode >, boost::recursive_wrapper< OrExpressionNode >, boost::recursive_wrapper< AndExpressionNode >, boost::recursive_wrapper< ParenExpressionNode >, boost::recursive_wrapper< PipeExpressionNode >, boost::recursive_wrapper< CurrentNode >, boost::recursive_wrapper< FunctionExpressionNode > >
 VariantNode ()
 Constructs an empty VariantNode object. More...
 
 VariantNode (const VariantNode &)=default
 Copy-constructs an VariantNode object. More...
 
 VariantNode (const T &other)
 Copy constructs a VariantNode object if T is VariantNode or constructs a VariantNode object with T as the represented node type with the value given in other. More...
 
VariantNode< VariantT...> & operator= (const VariantNode &other)
 Assigns the other object's value to this object. More...
 
VariantNode< VariantT...> & operator= (const T &other)
 Assigns the value of the other object to this object's internal variant making it the node that this object represents. More...
 
bool operator== (const VariantNode &other) const
 Equality compares this node to the other. More...
 
bool isNull () const
 Returns whether this object has been initialized. More...
 
void accept (interpreter::AbstractVisitor *visitor) const override
 Accepts the given visitor object. More...
 
- Public Member Functions inherited from jmespath::ast::AbstractNode
 AbstractNode ()=default
 Constructs an AbstractNode object. More...
 
 AbstractNode (const AbstractNode &)=default
 Copy-constructs an AbstractNode object. More...
 
virtual ~AbstractNode ()
 Destroys the AbstractNode object. More...
 
AbstractNodeoperator= (const AbstractNode &)=default
 Copy-assigns the other object to this object. More...
 
+ + + + + + + + + +

+Additional Inherited Members

- Public Types inherited from jmespath::ast::VariantNode< boost::recursive_wrapper< IdentifierNode >, boost::recursive_wrapper< RawStringNode >, boost::recursive_wrapper< LiteralNode >, boost::recursive_wrapper< SubexpressionNode >, boost::recursive_wrapper< IndexExpressionNode >, boost::recursive_wrapper< HashWildcardNode >, boost::recursive_wrapper< MultiselectListNode >, boost::recursive_wrapper< MultiselectHashNode >, boost::recursive_wrapper< NotExpressionNode >, boost::recursive_wrapper< ComparatorExpressionNode >, boost::recursive_wrapper< OrExpressionNode >, boost::recursive_wrapper< AndExpressionNode >, boost::recursive_wrapper< ParenExpressionNode >, boost::recursive_wrapper< PipeExpressionNode >, boost::recursive_wrapper< CurrentNode >, boost::recursive_wrapper< FunctionExpressionNode > >
using ValueType = boost::variant< boost::blank, VariantT...>
 The internal variant type which stores the nodes defined in VariantT or boost::blank if it's empty. More...
 
- Public Attributes inherited from jmespath::ast::VariantNode< boost::recursive_wrapper< IdentifierNode >, boost::recursive_wrapper< RawStringNode >, boost::recursive_wrapper< LiteralNode >, boost::recursive_wrapper< SubexpressionNode >, boost::recursive_wrapper< IndexExpressionNode >, boost::recursive_wrapper< HashWildcardNode >, boost::recursive_wrapper< MultiselectListNode >, boost::recursive_wrapper< MultiselectHashNode >, boost::recursive_wrapper< NotExpressionNode >, boost::recursive_wrapper< ComparatorExpressionNode >, boost::recursive_wrapper< OrExpressionNode >, boost::recursive_wrapper< AndExpressionNode >, boost::recursive_wrapper< ParenExpressionNode >, boost::recursive_wrapper< PipeExpressionNode >, boost::recursive_wrapper< CurrentNode >, boost::recursive_wrapper< FunctionExpressionNode > >
ValueType value
 The variable which stores the node that this object represents. More...
 
+

Detailed Description

+

The ExpressionNode class represents a JMESPath expression.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
jmespath::ast::ExpressionNode::ExpressionNode ()
+
+ +

Constructs an empty ExpressionNode object.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
jmespath::ast::ExpressionNode::ExpressionNode (const ExpressionNode)
+
+default
+
+ +

Copy-constructs an ExpressionNode object.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
jmespath::ast::ExpressionNode::~ExpressionNode ()
+
+virtual
+
+ +

Destroys the ExpressionNode object.

+ +
+
+ +
+
+ + + + + + + + +
jmespath::ast::ExpressionNode::ExpressionNode (const ValueTypeexpression)
+
+ +

Constructs an ExpressionNode object with its child expression initialized to expression.

+
Parameters
+ + +
[in]expressionThe node's child expression
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + + +
ExpressionNode & jmespath::ast::ExpressionNode::operator= (const ExpressionNodeother)
+
+ +

Assigns the other object to this object.

+
Parameters
+ + +
[in]otherAn ExpressionNode object.
+
+
+
Returns
Returns a reference to this object.
+ +
+
+ +
+
+ + + + + + + + +
ExpressionNode & jmespath::ast::ExpressionNode::operator= (const ValueTypeexpression)
+
+ +

Assigns the other Expression to this object's expression.

+
Parameters
+ + +
[in]expressionAn Expression object.
+
+
+
Returns
Returns a reference to this object.
+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classjmespath_1_1ast_1_1_expression_node.png b/classjmespath_1_1ast_1_1_expression_node.png new file mode 100644 index 0000000000000000000000000000000000000000..b5670cdfeb46eda147a497dbc2f14c1e3ac3ecec GIT binary patch literal 6336 zcmeHMdstIfw%2Pb9jQ&N6|^Eu>($y}gi=00MUqcj%=idck)}nGIPFzx5ke5iJ8AVY z)S|}6C~7R3%7`UM(ux{lNWw#)h$I6k#v1bA8Nx9MA>?)PI5#+h60x^azkC1d`gU^m zIbYUVzxCK>@3nGxdkS*?yw~Qio|RWZ31O=dB!F(DuLZR#9&KD%Jb}E-1#gz@y33A-#otH3IGF=~s2Yjs-v%h2;k# zW?lf0T(F_@G@x&P$fW6aUuAY}?b(TXJUF9k($nG|4_uoq$?J46@{=HM-B|v(cT~VB zJEEuXlQ}RB+kMVkJ-&4g0wihs_|f}imDxZAY5-PwE5_-?l}fRjIy zlW%bAsTvk16fw@Ij3@`xi|C#7U9RE5>s88QQgRMBWEP$X5b{*@D3eO6ufRQDo|+4Y z+sVXyMZd9_1#+in2Ds(ebQh-C3Ns7Yxhe1;++Ycomkx*WsMZT>p`X-0_D;2gd(Jqt%m z*Q7iStv}34LOOj=5&Ss3lQ?a41Jg5LCw&>Z2MHH%pB~A$bXH=Zs4~B(5o_cVqP`0h zH7&6wRU|zTmH;pLRXl+<02Qidd7xJV;icKW{3X@;3u~WgwE5pn{~~JY+cRkF?3;^c z5a|bnV&RK3XnnuI@VmJ)D12F*E!{Qq|6dSVm&#ZA*i&P(@d z1RrzCJcUF0Moc5o#<*^?-)=KPEza;TP`dNxsGywf*?&-JBdiKPXXnH~W)7DscSS4V z^ZrrxRWrW)1k`g7TE5qlUjo^}eXnQtpL&V0el5!m%3tUay)5=6QRx!jc=|+gXm_>( zztPf=ZSQoGyIdXHds`lKz(3JmmL`o@6Eb@6y{EBjs+AKf7nh<6Pr-YShE#}3sz%d- zl|g+Jggn{6l(sRMi={fyc}0y=coUVKR{ffEnETTQW|8O9_33!;y+aYpoKj;h+RILY z>Aq2o(*%&D2W!LI8~1Alnd=((i%X=~W}I6FCAM1kC~qN~UDEmHt$!Ik^)elzT3pB6 zrz5WG&q>Mm;i>|r^)|LZ6YActrnju|Mr}!lfgf9h%!+hxE2gj5YR!v^@5#Oi?>$@X z+k?vyfyPxKJY>`LRo-B#$5CPl=CQae5BdsQFDK;2-zvjcD7j;9v!GX5Z$?BfiN-*G z0BO!{7yC@PK*za^*hR_(E=}-@a%Gy_K75ItAmHnxF=En3|0O?AZyu@~Lq*EP8lrE* zx7rsyozF4DG$s9A`=A&rGiMA{#*ftRA*)lIk*$4MRcs%Am+NAzq>5RK_GB0x1QKSB zpn`0)lqQcD&r5@4#yQuvi`g=in*A58xsI5sLeqXMZ?@i_kkg0PzKRdBnoiT*lZnkH#hG>(5XPdt+{55Q19Q z-@YgYFm>fPCZ3A>tI6RMh}8*JtJ=9D%a;LNpO71T>Qtpacv6ZFYZ#96oMbE$caYE% zIe)~9SJTt%#`z?%GwcLzAt~Vq&!osv6BBOm*acLhTFpRoi_WQ8#@f#~tic3@WS>WV z7V5N#&Y0%r33w80m?mj1vDvdDmT{m2aX&KmzNcW!aawx+d>zhOsQx>v=s0u#xA52Q z(p$62H27HDAJ<85D5cn?5iF>)_1Z{1OZH|dP}*wn_TLLHu+Ed#*plcUn$;)4)1o}d zeErAP4g2Avdt$)dUfTG*90ypPCyp4tIME&sS#OtY1xjTe@A3)5*AR@yW)BS18=T$@ z$-Y731sq$n8jLR@5@@1!|8WH_L=sQX9FF$|{Mllo2W?=P>_Mm8v=50JJXdrj*+4W; zJ%0rL10=RWJ|TX1_;B6QyKRxW$Xk6CA@F&3%FbET%X}jiF*i|g2nxD#SUOMEQBk{H z{M>*syZ^?7+*}e}#hU9H3hCbZD*S>DV^Vd|UsfdRua`(Oh`9Vj%F;{54Q6Z~C&gU! z`v@rzDs%K@?uUQbi9DbkAPE@QgyCYqk|*YWw~8)lLxeg%{Sil`*DvjDTj-VZ*toVf z;nE*Fc599fAvHlYlGR}34*9$Eg(b>Onj?;ZPwT~M&MmKc8Fh&#i0CeYC#*n7RF38J zg=L~kPTnnVjKx zxdllW1dDYb;agQB?VdvA=-{79u$2#xA&KwrHK`RA`(9d}Knru&_fFNfBc^&oeh>X1g-q~%`} zbulJBU@pB@Y*k1?*eop3TpGPe;4&v>*1=&))ydLs+yjgJ`ANIn1d3pj&(t}hv=B_| z7-?QA_D!y;>$7RKt9Gmr7K}rT1zrMV-?5GWm+y?doeq&p zC)$*HAUiiofSqg2-ojsG{&>9h4*#g3=$%p-@|(I{L>#z;iV2$xaThj=mr?6Ut7FXc5t~V%SHqbLv)oQ}I|9fVpJd&GSZbOC~RUHqjbTo&!b5(tqpP+fDlm^+I9Ze%BY zZ&wv4j$UxtxFOx_EwzQnxUALj>CBuMF6Ca6?T5V3OI&6xv*8YOAZ@)2f73&4#@HYL zbX8Hz=1e{GO*wSN#l(*>dqzT!zT5Mr@;Qy=w(xd`Dv&pZ3 zkR-!XJc%Yk53^WG_!{js`n1E4!J2N<>N$d!d^xect1)f|e-e8{mLK<>i)l70RJkSx z#-*5XR|I(<(D#2|1!kAN-_z{hpWpa?RXY7G=)^fl-%klF;D7Du>51P5-2TdzLjdo2 zE;8(yj+*`hs`c@am}LHUO9>d6LU~Ftfn1-I^pvV+PPv3RqwLwOb3Fa=g5S!a>9yN$ zRoi5OlJqxu**xIp@Uvfln5f68J~boVvKfP?yZfJWSe=Ca=NT!ho2?W?&uAgMxLya^ zi)YmTUj$`pB~!hLu{M#;Az9?EALK_WS+MmwjF7VgUmKD0;#BLwH*1<~Pg*A86`D?Y zT3*^<&O~sfIRnt$H>Nau(89;)bSxr06~T~jGUZG}RQ&~-6g28r3c?er*TMK8+k=w-)F+3!?f0#F8Y1N-BJwBw98u(}CAC`A*ML&_Zv)T3rb zXdd0&G<6qY?vEFHyz9tm!z%{j-SH04;v#$wh*jhG#QHjv8JcqDB;EkFI66d=yDip! zq((l`d_XL^7=2WnDbDE=I{D+$DCUF%?iT*xk?jT^9`^|R0H(JxL5PRSS&T&_xUj~N zKX#*u{T2Q*F)+Y})lNlF7db7QegK52-rxC-Y)U8HCBkOZ6%xu!zT8OhOa0e_9?3rx z=$zb>0O)fY&27bHr|?KEi@8@5;$=9k&Y>ojoCRos`fFp|ceW~`m(>qSZg^I@(U%eO zM~0^c8h(&Pqs$H;XX0m1rGVtGfGTwA#zzXJ`5S{{$02I)qb#~KJ*6&-bnkL-Um!i& zU7t^7U-Zx~rs9;ax8EN7e44%~y>sV=Pmk+Vd>b0(OmqB{gZ%5VVd&XcJIM2mc4x + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::ast::FilterExpressionNode Member List
+
+
+ +

This is the complete list of members for jmespath::ast::FilterExpressionNode, including all inherited members.

+ + + + + + + + + + +
AbstractNode()=defaultjmespath::ast::AbstractNode
AbstractNode(const AbstractNode &)=defaultjmespath::ast::AbstractNode
accept(interpreter::AbstractVisitor *visitor) const overridejmespath::ast::FilterExpressionNodevirtual
expressionjmespath::ast::FilterExpressionNode
FilterExpressionNode()jmespath::ast::FilterExpressionNode
FilterExpressionNode(const ExpressionNode &subexpression)jmespath::ast::FilterExpressionNode
operator=(const AbstractNode &)=defaultjmespath::ast::AbstractNode
operator==(const FilterExpressionNode &other) const jmespath::ast::FilterExpressionNode
~AbstractNode()jmespath::ast::AbstractNodevirtual
+ + + + diff --git a/classjmespath_1_1ast_1_1_filter_expression_node.html b/classjmespath_1_1ast_1_1_filter_expression_node.html new file mode 100644 index 0000000..a85e047 --- /dev/null +++ b/classjmespath_1_1ast_1_1_filter_expression_node.html @@ -0,0 +1,280 @@ + + + + + + +jmespath.cpp: jmespath::ast::FilterExpressionNode Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast::FilterExpressionNode Class Reference
+
+
+ +

The FilterExpressionNode class represents a JMESPath filter expression. + More...

+ +

#include <filterexpressionnode.h>

+
+Inheritance diagram for jmespath::ast::FilterExpressionNode:
+
+
+ + +jmespath::ast::AbstractNode + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 FilterExpressionNode ()
 Constructs a FilterExpressionNode object. More...
 
 FilterExpressionNode (const ExpressionNode &subexpression)
 Constructs a FilterExpressionNode object with the given expression as its child expression. More...
 
void accept (interpreter::AbstractVisitor *visitor) const override
 Calls the visit method of the given visitor with the dynamic type of the node. More...
 
bool operator== (const FilterExpressionNode &other) const
 Equality compares this node to the other. More...
 
- Public Member Functions inherited from jmespath::ast::AbstractNode
 AbstractNode ()=default
 Constructs an AbstractNode object. More...
 
 AbstractNode (const AbstractNode &)=default
 Copy-constructs an AbstractNode object. More...
 
virtual ~AbstractNode ()
 Destroys the AbstractNode object. More...
 
AbstractNodeoperator= (const AbstractNode &)=default
 Copy-assigns the other object to this object. More...
 
+ + + + +

+Public Attributes

ExpressionNode expression
 The node's child expression. More...
 
+

Detailed Description

+

The FilterExpressionNode class represents a JMESPath filter expression.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
jmespath::ast::FilterExpressionNode::FilterExpressionNode ()
+
+ +

Constructs a FilterExpressionNode object.

+ +
+
+ +
+
+ + + + + + + + +
jmespath::ast::FilterExpressionNode::FilterExpressionNode (const ExpressionNodesubexpression)
+
+ +

Constructs a FilterExpressionNode object with the given expression as its child expression.

+
Parameters
+ + +
[in]subexpressionThe node's child expression.
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::ast::FilterExpressionNode::accept (interpreter::AbstractVisitorvisitor) const
+
+overridevirtual
+
+ +

Calls the visit method of the given visitor with the dynamic type of the node.

+
Parameters
+ + +
[in]visitorA visitor implementation
+
+
+ +

Implements jmespath::ast::AbstractNode.

+ +
+
+ +
+
+ + + + + + + + +
bool jmespath::ast::FilterExpressionNode::operator== (const FilterExpressionNodeother) const
+
+ +

Equality compares this node to the other.

+
Parameters
+ + +
[in]otherThe node that should be compared.
+
+
+
Returns
Returns true if this object is equal to the other, otherwise false
+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
ExpressionNode jmespath::ast::FilterExpressionNode::expression
+
+ +

The node's child expression.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classjmespath_1_1ast_1_1_filter_expression_node.png b/classjmespath_1_1ast_1_1_filter_expression_node.png new file mode 100644 index 0000000000000000000000000000000000000000..d7d05a20cd8b37cc93ef7b0992a08dcaa3cd36af GIT binary patch literal 813 zcmeAS@N?(olHy`uVBq!ia0vp^mw-5cgBeIh+uvRcq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0_ISEDhEy=Vo%^=vwE_?8^v5&z{8x^z zZxCcs&zoJwF`e)Dx>f-lj;H#kH|ZpIx=wPt$j z>DSz5KHri0eeTyi&!@aoYJL1zE$HoUz9qG5GY=~IZL$r|-j>^+((!mx_Mh!8MR$+O zlpf)jxOk?%XVxpWOZyr+O7}bxo3>5i<}!u*XM~m}L>c{9xb-BTLChy}U6*l8%9T6Wqn&?q_xnq!N4>uu-nq=G zMohfez-*H4iu8xwg7wQEc?PYWz5n2(FV}y)pRi8+-_GSKp7WP=s(9|rR`LvbA2o4W zYGj+xf%`8Q4W=D)uCi%Mmg3J;mFmrOSQ7b>;n#H+rWdiooD0f*RT_W+#!y92VBbms zCkbzshKVLH)#{ggH(h;u>+_q=sp?g`8CMEFSgN)EaKNm;*RT7%RJ*j9(cZf|**H(} zZSeA+kM-W2zd9?|{p$AWoS4t|W`BP+_xHDp$JE`e)yzLHyE)m^O78LI%FVO%`?vIW zMOfw*eXDSO`YQPB?xh>I8Gp6oOZ+cIYHBy_W zuI5aL{=3U9>s+SZ9>-7XN*{>|dKdI3H_yGhHaz#7>hn)ix|l!A4$<3p<2?70Q+q4x zN@I8TmW0a95?_+IdcvKsnEOkWx-ZXNFRb5?Tle{|>XfQm SMpyyUHiM_DpUXO@geCwRPKE;j literal 0 HcmV?d00001 diff --git a/classjmespath_1_1ast_1_1_flatten_operator_node-members.html b/classjmespath_1_1ast_1_1_flatten_operator_node-members.html new file mode 100644 index 0000000..294a939 --- /dev/null +++ b/classjmespath_1_1ast_1_1_flatten_operator_node-members.html @@ -0,0 +1,114 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::ast::FlattenOperatorNode Member List
+
+
+ +

This is the complete list of members for jmespath::ast::FlattenOperatorNode, including all inherited members.

+ + + + + + + + +
AbstractNode()=defaultjmespath::ast::AbstractNode
AbstractNode(const AbstractNode &)=defaultjmespath::ast::AbstractNode
accept(interpreter::AbstractVisitor *visitor) const overridejmespath::ast::FlattenOperatorNodevirtual
FlattenOperatorNode()jmespath::ast::FlattenOperatorNode
operator=(const AbstractNode &)=defaultjmespath::ast::AbstractNode
operator==(const FlattenOperatorNode &other) const jmespath::ast::FlattenOperatorNode
~AbstractNode()jmespath::ast::AbstractNodevirtual
+ + + + diff --git a/classjmespath_1_1ast_1_1_flatten_operator_node.html b/classjmespath_1_1ast_1_1_flatten_operator_node.html new file mode 100644 index 0000000..51117f2 --- /dev/null +++ b/classjmespath_1_1ast_1_1_flatten_operator_node.html @@ -0,0 +1,231 @@ + + + + + + +jmespath.cpp: jmespath::ast::FlattenOperatorNode Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast::FlattenOperatorNode Class Reference
+
+
+ +

The FlattenOperatorNode class represents a JMESPath flatten operator. + More...

+ +

#include <flattenoperatornode.h>

+
+Inheritance diagram for jmespath::ast::FlattenOperatorNode:
+
+
+ + +jmespath::ast::AbstractNode + +
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 FlattenOperatorNode ()
 Constructs a FlattenOperatorNode object. More...
 
void accept (interpreter::AbstractVisitor *visitor) const override
 Calls the visit method of the given visitor with the dynamic type of the node. More...
 
bool operator== (const FlattenOperatorNode &other) const
 Equality compares this node to the other. More...
 
- Public Member Functions inherited from jmespath::ast::AbstractNode
 AbstractNode ()=default
 Constructs an AbstractNode object. More...
 
 AbstractNode (const AbstractNode &)=default
 Copy-constructs an AbstractNode object. More...
 
virtual ~AbstractNode ()
 Destroys the AbstractNode object. More...
 
AbstractNodeoperator= (const AbstractNode &)=default
 Copy-assigns the other object to this object. More...
 
+

Detailed Description

+

The FlattenOperatorNode class represents a JMESPath flatten operator.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
jmespath::ast::FlattenOperatorNode::FlattenOperatorNode ()
+
+ +

Constructs a FlattenOperatorNode object.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::ast::FlattenOperatorNode::accept (interpreter::AbstractVisitorvisitor) const
+
+overridevirtual
+
+ +

Calls the visit method of the given visitor with the dynamic type of the node.

+
Parameters
+ + +
[in]visitorA visitor implementation
+
+
+ +

Implements jmespath::ast::AbstractNode.

+ +
+
+ +
+
+ + + + + + + + +
bool jmespath::ast::FlattenOperatorNode::operator== (const FlattenOperatorNodeother) const
+
+ +

Equality compares this node to the other.

+
Parameters
+ + +
[in]otherThe node that should be compared.
+
+
+
Returns
Returns true if this object is equal to the other, otherwise false
+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classjmespath_1_1ast_1_1_flatten_operator_node.png b/classjmespath_1_1ast_1_1_flatten_operator_node.png new file mode 100644 index 0000000000000000000000000000000000000000..2d4a8d68a46d83ca4379bad401b1b592999ddece GIT binary patch literal 819 zcmeAS@N?(olHy`uVBq!ia0vp^7l1f`gBeK1pW>beq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ04tcsbhEy=Vo%?puVg&(L{_Csu{8wHd zIB}VybJ}FhX{lY(?b~)g{BZGKYUH$3m5m;kEM_@Oy0Teqg38x5)e96n*KgewTYby? z_y3vswja*S*q=A!ynERSQH?iq-4{=RYB%wsRxk~^Ni&+^^&+}}i|@Z{GY=Ill5 zzZ;(FVRt%}Ry8T)a`uAUAIw?xGN-5CZc3TmRAVeWr782`1848ao+_TErf&iay^YOZ z2g|6|a~rMjQY$WLPKo|GVacj{3|0S@Dwoe|lbTTO8@4}K^Mg<7g*z8FT%NFG*1g+` z=23OqCb_@5vExio$)?=h%#)T#|9x^I^nC#930;>Yj!C(4CyqSb{(5uyi%qAFu6h`g z{M6RF>!!%;lVTS)-;kBuANW*dWyoXk@JV%%|HT6?KaZbeb?Gmk=Oz1PoGPBS*-V~6 z=c5{@rAD#|9a#T@(O{ArbCnI7vJ`K|Q_1cOiv^KS8Gc=3VR{iM%&{QdSD|5^X(K}w zL4mqO0!|X1EDePwFxBb-%GY0&y{+75`Kq^Y?eVv94B^1w%gg(+_j}n2!4(p#rM5@D zJO15a>ICiuxkoJCY%I793hce-Zl{{A%iQ_a_}JW!>8Em@Z>&Tft4?)Txhv+~g`=-37hKs`SnjSD z{kn)}_7>R}t29FN-HwJa>};(lZGYo6!&{hPdDqqWjcv;1kx!GZ7OZo>6%tf4_4Z?* zsi*rwm!7(5k!^Z?*TPebQ>xxuvwqlTXK`$U1MmF$2K|@P)+`21Y61@DXE`v~zW(`= eOR=T!3;T8+9l?JQVrjq>&fw|l=d#Wzp$Pz$o`ib< literal 0 HcmV?d00001 diff --git a/classjmespath_1_1ast_1_1_function_expression_node-members.html b/classjmespath_1_1ast_1_1_function_expression_node-members.html new file mode 100644 index 0000000..a0108a0 --- /dev/null +++ b/classjmespath_1_1ast_1_1_function_expression_node-members.html @@ -0,0 +1,118 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::ast::FunctionExpressionNode Member List
+
+
+ +

This is the complete list of members for jmespath::ast::FunctionExpressionNode, including all inherited members.

+ + + + + + + + + + + + +
AbstractNode()=defaultjmespath::ast::AbstractNode
AbstractNode(const AbstractNode &)=defaultjmespath::ast::AbstractNode
accept(interpreter::AbstractVisitor *visitor) const overridejmespath::ast::FunctionExpressionNodevirtual
argumentsjmespath::ast::FunctionExpressionNode
ArgumentType typedefjmespath::ast::FunctionExpressionNode
FunctionExpressionNode()jmespath::ast::FunctionExpressionNode
FunctionExpressionNode(const String &name, const std::initializer_list< ArgumentType > &argumentList={})jmespath::ast::FunctionExpressionNode
functionNamejmespath::ast::FunctionExpressionNode
operator=(const AbstractNode &)=defaultjmespath::ast::AbstractNode
operator==(const FunctionExpressionNode &other) const jmespath::ast::FunctionExpressionNode
~AbstractNode()jmespath::ast::AbstractNodevirtual
+ + + + diff --git a/classjmespath_1_1ast_1_1_function_expression_node.html b/classjmespath_1_1ast_1_1_function_expression_node.html new file mode 100644 index 0000000..ad54a72 --- /dev/null +++ b/classjmespath_1_1ast_1_1_function_expression_node.html @@ -0,0 +1,327 @@ + + + + + + +jmespath.cpp: jmespath::ast::FunctionExpressionNode Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast::FunctionExpressionNode Class Reference
+
+
+ +

The FunctionExpressionNode class represents a JMESPath function expression. + More...

+ +

#include <functionexpressionnode.h>

+
+Inheritance diagram for jmespath::ast::FunctionExpressionNode:
+
+
+ + +jmespath::ast::AbstractNode + +
+ + + + +

+Public Types

using ArgumentType = boost::variant< boost::blank, boost::recursive_wrapper< ExpressionNode >, boost::recursive_wrapper< ExpressionArgumentNode > >
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 FunctionExpressionNode ()
 Constructs an empty FunctionExpressionNode object. More...
 
 FunctionExpressionNode (const String &name, const std::initializer_list< ArgumentType > &argumentList={})
 Constructs a FunctionExpressionNode object with the given function name and list of arguments as its arguments. More...
 
void accept (interpreter::AbstractVisitor *visitor) const override
 Calls the visit method of the given visitor with the dynamic type of the node. More...
 
bool operator== (const FunctionExpressionNode &other) const
 Equality compares this node to the other. More...
 
- Public Member Functions inherited from jmespath::ast::AbstractNode
 AbstractNode ()=default
 Constructs an AbstractNode object. More...
 
 AbstractNode (const AbstractNode &)=default
 Copy-constructs an AbstractNode object. More...
 
virtual ~AbstractNode ()
 Destroys the AbstractNode object. More...
 
AbstractNodeoperator= (const AbstractNode &)=default
 Copy-assigns the other object to this object. More...
 
+ + + + + + + +

+Public Attributes

String functionName
 The function's name. More...
 
std::vector< ArgumentTypearguments
 The function expressions's arguments. More...
 
+

Detailed Description

+

The FunctionExpressionNode class represents a JMESPath function expression.

+

Member Typedef Documentation

+ +
+
+ + + + +
using jmespath::ast::FunctionExpressionNode::ArgumentType = boost::variant<boost::blank, boost::recursive_wrapper<ExpressionNode>, boost::recursive_wrapper<ExpressionArgumentNode> >
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
jmespath::ast::FunctionExpressionNode::FunctionExpressionNode ()
+
+ +

Constructs an empty FunctionExpressionNode object.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
jmespath::ast::FunctionExpressionNode::FunctionExpressionNode (const Stringname,
const std::initializer_list< ArgumentType > & argumentList = {} 
)
+
+ +

Constructs a FunctionExpressionNode object with the given function name and list of arguments as its arguments.

+
Parameters
+ + + +
[in]nameThe function's identifier
[in]argumentListThe function's arguments
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::ast::FunctionExpressionNode::accept (interpreter::AbstractVisitorvisitor) const
+
+overridevirtual
+
+ +

Calls the visit method of the given visitor with the dynamic type of the node.

+
Parameters
+ + +
[in]visitorA visitor implementation
+
+
+ +

Implements jmespath::ast::AbstractNode.

+ +
+
+ +
+
+ + + + + + + + +
bool jmespath::ast::FunctionExpressionNode::operator== (const FunctionExpressionNodeother) const
+
+ +

Equality compares this node to the other.

+
Parameters
+ + +
[in]otherThe node that should be compared.
+
+
+
Returns
Returns true if this object is equal to the other, otherwise false
+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
std::vector<ArgumentType> jmespath::ast::FunctionExpressionNode::arguments
+
+ +

The function expressions's arguments.

+ +
+
+ +
+
+ + + + +
String jmespath::ast::FunctionExpressionNode::functionName
+
+ +

The function's name.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classjmespath_1_1ast_1_1_function_expression_node.png b/classjmespath_1_1ast_1_1_function_expression_node.png new file mode 100644 index 0000000000000000000000000000000000000000..4ad53188505af39341acf47a9e12d6552a68794b GIT binary patch literal 827 zcmeAS@N?(olHy`uVBq!ia0vp^&wx09gBeI#ssDTkq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0PIy}Pzxky<|JC!O zJq+4RUY6XxYSpvj>=B6%jF0zh(m5>@uQN#`RycUlqKqW3Ad$Jpd?uBwnSFcT^0z1d zo9}zvc)KU}`^gHsl3D47!F86MH-Fc0eHQ%BHSyG;@AqeKz4gw1^}?Rj>z>{hyIlI* z^p_-e#N4xcJTEoI9jajo4fwn`r!?DpQm)shvn{%+m&2OnZ_PgAGO1+2b-&HscU^L7 zccpyUzS>dtOv)sC&uw4%J*_UiH+Wxfnz_A3DzWN%*4O1x?0LbG3De!ocs#8xtoOfs z^g>$t*A@C@G089EW+~UTX?i~Yl6Hyj{WFHkx&Ep^tK=^CWaqy%fA=hJX>9hC;@JJ1 z(Tv9I8R?r^YqWQy9(x}e<@xICEq0$t{~FbnExGkAF=_5HmB0IE&6p(O3JQf6Z99R1 z631}=8oxtLEc55*&xPh(Kd>h-uJNx0r9QJ->E&hiY{hS0@5{zk6UZyZMv!btcp5KXPfin{HoNzSw<6wQ5GiL$+;vmvj4jtL%@qS#P*D)h<)` z#xwWb-8D*?<=Stf7SG9^xlPPqcC%T^Y{s?B$My-s?my;fgIT}#(t{dc=e2L0FX w^(zg}{GFLRSIr>?7M3Odg_chVD*4NpV{NeRhpXRmU`l83boFyt=akR{0C69N`~Uy| literal 0 HcmV?d00001 diff --git a/classjmespath_1_1ast_1_1_hash_wildcard_node-members.html b/classjmespath_1_1ast_1_1_hash_wildcard_node-members.html new file mode 100644 index 0000000..5becd8a --- /dev/null +++ b/classjmespath_1_1ast_1_1_hash_wildcard_node-members.html @@ -0,0 +1,121 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::ast::HashWildcardNode Member List
+
+
+ +

This is the complete list of members for jmespath::ast::HashWildcardNode, including all inherited members.

+ + + + + + + + + + + + + + + +
AbstractNode()=defaultjmespath::ast::AbstractNode
AbstractNode(const AbstractNode &)=defaultjmespath::ast::AbstractNode
accept(interpreter::AbstractVisitor *visitor) const overridejmespath::ast::HashWildcardNodevirtual
BinaryExpressionNode()jmespath::ast::BinaryExpressionNode
BinaryExpressionNode(const ExpressionNode &left, const ExpressionNode &right)jmespath::ast::BinaryExpressionNode
HashWildcardNode()jmespath::ast::HashWildcardNode
HashWildcardNode(const ExpressionNode &leftExpression, const ExpressionNode &rightExpression)jmespath::ast::HashWildcardNode
isProjection() const overridejmespath::ast::HashWildcardNodevirtual
leftExpressionjmespath::ast::BinaryExpressionNode
operator=(const AbstractNode &)=defaultjmespath::ast::AbstractNode
operator==(const BinaryExpressionNode &other) const jmespath::ast::BinaryExpressionNode
rightExpressionjmespath::ast::BinaryExpressionNode
stopsProjection() const overridejmespath::ast::HashWildcardNodevirtual
~AbstractNode()jmespath::ast::AbstractNodevirtual
+ + + + diff --git a/classjmespath_1_1ast_1_1_hash_wildcard_node.html b/classjmespath_1_1ast_1_1_hash_wildcard_node.html new file mode 100644 index 0000000..344e83b --- /dev/null +++ b/classjmespath_1_1ast_1_1_hash_wildcard_node.html @@ -0,0 +1,324 @@ + + + + + + +jmespath.cpp: jmespath::ast::HashWildcardNode Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast::HashWildcardNode Class Reference
+
+
+ +

The HashWildcardNode class represents a JMESPath hash wildcard expression. + More...

+ +

#include <hashwildcardnode.h>

+
+Inheritance diagram for jmespath::ast::HashWildcardNode:
+
+
+ + +jmespath::ast::BinaryExpressionNode +jmespath::ast::AbstractNode + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 HashWildcardNode ()
 Constructs an empty HashWildcardNode object. More...
 
 HashWildcardNode (const ExpressionNode &leftExpression, const ExpressionNode &rightExpression)
 Constructs a HashWildcardNode object with the given leftExpression and rightExpression as its children. More...
 
bool isProjection () const override
 Returns whather this expression requires the projection of subsequent expressions. More...
 
bool stopsProjection () const override
 Reports whether the node should stop an ongoing projection or not. More...
 
void accept (interpreter::AbstractVisitor *visitor) const override
 Calls the visit method of the given visitor with the dynamic type of the node. More...
 
- Public Member Functions inherited from jmespath::ast::BinaryExpressionNode
 BinaryExpressionNode ()
 Constructs an empty BinaryExpressionNode object. More...
 
 BinaryExpressionNode (const ExpressionNode &left, const ExpressionNode &right)
 Constructs a BinaryExpressionNode object with the given leftExpressin and rightExpression as its children. More...
 
bool operator== (const BinaryExpressionNode &other) const
 Equality compares this node to the other. More...
 
- Public Member Functions inherited from jmespath::ast::AbstractNode
 AbstractNode ()=default
 Constructs an AbstractNode object. More...
 
 AbstractNode (const AbstractNode &)=default
 Copy-constructs an AbstractNode object. More...
 
virtual ~AbstractNode ()
 Destroys the AbstractNode object. More...
 
AbstractNodeoperator= (const AbstractNode &)=default
 Copy-assigns the other object to this object. More...
 
+ + + + + + + + +

+Additional Inherited Members

- Public Attributes inherited from jmespath::ast::BinaryExpressionNode
ExpressionNode leftExpression
 The left hand expression of the node. More...
 
ExpressionNode rightExpression
 The right hand expression of the node. More...
 
+

Detailed Description

+

The HashWildcardNode class represents a JMESPath hash wildcard expression.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
jmespath::ast::HashWildcardNode::HashWildcardNode ()
+
+ +

Constructs an empty HashWildcardNode object.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
jmespath::ast::HashWildcardNode::HashWildcardNode (const ExpressionNodeleftExpression,
const ExpressionNoderightExpression 
)
+
+ +

Constructs a HashWildcardNode object with the given leftExpression and rightExpression as its children.

+
Parameters
+ + + +
[in]leftExpressionLeft hand expression of the node.
[in]rightExpressionRight hand expression of the node.
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::ast::HashWildcardNode::accept (interpreter::AbstractVisitorvisitor) const
+
+overridevirtual
+
+ +

Calls the visit method of the given visitor with the dynamic type of the node.

+
Parameters
+ + +
[in]visitorA visitor implementation
+
+
+ +

Reimplemented from jmespath::ast::BinaryExpressionNode.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
bool jmespath::ast::HashWildcardNode::isProjection () const
+
+overridevirtual
+
+ +

Returns whather this expression requires the projection of subsequent expressions.

+
Returns
Returns true if projection is required, otherwise returns false.
+ +

Implements jmespath::ast::BinaryExpressionNode.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
bool jmespath::ast::HashWildcardNode::stopsProjection () const
+
+overridevirtual
+
+ +

Reports whether the node should stop an ongoing projection or not.

+
Returns
Returns true if the node should stop an ongoing projection, otherwise returns false.
+ +

Implements jmespath::ast::BinaryExpressionNode.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classjmespath_1_1ast_1_1_hash_wildcard_node.png b/classjmespath_1_1ast_1_1_hash_wildcard_node.png new file mode 100644 index 0000000000000000000000000000000000000000..f216fe4620c3a1e4b6b6443a9ad88198e21bced3 GIT binary patch literal 1211 zcmeAS@N?(olHy`uVBq!ia0vp^w}7~VgBeI}Yh@J$QW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;Li_TyE5{;RK- zZFY=No0pTe{K%w7N7z~diYLb3+?G2#IA@Z{VzF5&m6x3+tK{!$6jOP*wQTdo)SJco zq;LN_aC-6EeUj(d%ironS!kPIjJoZ=$Tr!pvEAb4$Nk%%ZF{V5dZh5C$-by9tA5W} z{8b`x)AmJbp3Zk&s@a4-o^y{0x-GV3lg0`?*A+n;URf*JxB0dzdrG}}x6bsVSl~3X zvyQ9tyAQsu(BdnbaO#qsO6HpPi)8oLD6HRn$$7PJarWNo$_GzZHLU6LmTXhu{d#O& z=;vFLr|T9il}V49)phgK`U@&Ar{1%haCi4L$JNtRF0-uEF^w`jckj^rUD=0uW`6QX zo%QMa)RwMZE!(M_KfI<~e0)C5!!xV&JF~Lq{ssS~a(N!qUspMa@c*rg+j4I&6FIQ| zGIN68+3s%@KBvv}Z~2*N-#(I|?acJ!vJ>-%Wvy%ve7SiK%odYsFxNF<$dAfkxVPm3 z!=B8Aj1_1K4zO>@y=}JqhDxTJu8HTTWvyzS_evJBdRDEyo0C)dwdL{mQ!g*Sc(!Hj z^34a$Zr>^|f2($D?$KS|s-A1lx$bQJ)?>*k7jC?+W|hp|-|<;HuG!6eX6tczo?q|j z;%P~pMW4T>J@XG-axJ4`r)E!gRPQ$#QFY(OxsJ29DNJ>BoO?-r-m0hXq<5cE@JKb} z<2Ik#eGeG$%Nn$#cYi&$WnXq##md*~p60IPd9ySt@YmV+#ih?}{8M_vW^ZHPBy+EG zL3^0h-d)xG+bowad$?{U?@IC0PBThn7fhWf{(Z@2ma>OY-QpRGO)l+qn7fT_ZPcXq z3zkk3)AtBnDY>e<^05P-amp#4(2I`Yii+)#dKT zEAOKINW^ZN_@u?FG4x%R)P&OvZ!ODbz0-2#2z5@*^1pc?xO_>b$DWP@1u98h3zSy^yb&C!mo{Mw4Qo5i#2#Dn>0ji=TG^*uJpnxRmnSB4Wr(# zd-`UE@YVSHTNB%SDwi4g{`~3XWab=qmwAg{n@)vP`TG=)hOqZ_jEr@T|3z;}9QePE m@yr5PQ1 + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::ast::IdentifierNode Member List
+
+
+ +

This is the complete list of members for jmespath::ast::IdentifierNode, including all inherited members.

+ + + + + + + + + + +
AbstractNode()=defaultjmespath::ast::AbstractNode
AbstractNode(const AbstractNode &)=defaultjmespath::ast::AbstractNode
accept(interpreter::AbstractVisitor *visitor) const overridejmespath::ast::IdentifierNodevirtual
identifierjmespath::ast::IdentifierNode
IdentifierNode()jmespath::ast::IdentifierNode
IdentifierNode(const String &name)jmespath::ast::IdentifierNode
operator=(const AbstractNode &)=defaultjmespath::ast::AbstractNode
operator==(const IdentifierNode &other) const jmespath::ast::IdentifierNode
~AbstractNode()jmespath::ast::AbstractNodevirtual
+ + + + diff --git a/classjmespath_1_1ast_1_1_identifier_node.html b/classjmespath_1_1ast_1_1_identifier_node.html new file mode 100644 index 0000000..799a974 --- /dev/null +++ b/classjmespath_1_1ast_1_1_identifier_node.html @@ -0,0 +1,280 @@ + + + + + + +jmespath.cpp: jmespath::ast::IdentifierNode Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast::IdentifierNode Class Reference
+
+
+ +

The IdentifierNode class represents a JMESPath identifier. + More...

+ +

#include <identifiernode.h>

+
+Inheritance diagram for jmespath::ast::IdentifierNode:
+
+
+ + +jmespath::ast::AbstractNode + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 IdentifierNode ()
 Constructs an IdentifierNode object with an empty name. More...
 
 IdentifierNode (const String &name)
 Constructs an IdentifierNode object with the given identifier parameter as its name. More...
 
void accept (interpreter::AbstractVisitor *visitor) const override
 Calls the visit method of the given visitor with the dynamic type of the node. More...
 
bool operator== (const IdentifierNode &other) const
 Equality compares this node to the other. More...
 
- Public Member Functions inherited from jmespath::ast::AbstractNode
 AbstractNode ()=default
 Constructs an AbstractNode object. More...
 
 AbstractNode (const AbstractNode &)=default
 Copy-constructs an AbstractNode object. More...
 
virtual ~AbstractNode ()
 Destroys the AbstractNode object. More...
 
AbstractNodeoperator= (const AbstractNode &)=default
 Copy-assigns the other object to this object. More...
 
+ + + + +

+Public Attributes

String identifier
 Name of the identifier. More...
 
+

Detailed Description

+

The IdentifierNode class represents a JMESPath identifier.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
jmespath::ast::IdentifierNode::IdentifierNode ()
+
+ +

Constructs an IdentifierNode object with an empty name.

+ +
+
+ +
+
+ + + + + + + + +
jmespath::ast::IdentifierNode::IdentifierNode (const Stringname)
+
+ +

Constructs an IdentifierNode object with the given identifier parameter as its name.

+
Parameters
+ + +
[in]nameThe identifier's name.
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::ast::IdentifierNode::accept (interpreter::AbstractVisitorvisitor) const
+
+overridevirtual
+
+ +

Calls the visit method of the given visitor with the dynamic type of the node.

+
Parameters
+ + +
[in]visitorA visitor implementation
+
+
+ +

Implements jmespath::ast::AbstractNode.

+ +
+
+ +
+
+ + + + + + + + +
bool jmespath::ast::IdentifierNode::operator== (const IdentifierNodeother) const
+
+ +

Equality compares this node to the other.

+
Parameters
+ + +
[in]otherThe node that should be compared.
+
+
+
Returns
Returns true if this object is equal to the other, otherwise false
+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
String jmespath::ast::IdentifierNode::identifier
+
+ +

Name of the identifier.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classjmespath_1_1ast_1_1_identifier_node.png b/classjmespath_1_1ast_1_1_identifier_node.png new file mode 100644 index 0000000000000000000000000000000000000000..cb235080d1a91ec0a801a8e8d7c2cf38e72630d4 GIT binary patch literal 740 zcmeAS@N?(olHy`uVBq!ia0vp^D}XqFgBeKf3OV-)NJ#|vgt-3y{~ySF@#br3|Dg#$ z78oBmaDcV*jy#adQ4-`A%m7pb0#{Fk7%?y~6??ikhEy=Vo%^=$u>y}Pzxky-|CRG^ zeMmGY3DR9HrfYo1%y65fsm0IJg)+yv9!*&C{yN*#B{Od=m}C;nYT|L}z17`g^U9v> zT37SC(K6ZguEqY?i@O&*+_jVQRqgQw{!J}{NiQCM-XeDUv9e@ROkwYI(+uOI>U-AWXj)+BlILR-~j&nqieMBiPLS$k*Nw&iP@-liD2 zYj~9XSRcNifB&YhmElzj)@Ex`AWTn53?A_>dPG!FRW1~dS}iotlRBV!thg8$|j z9Exicm=1i;hUw#}n*6;)y87A7z;hCBqkrsL+xzxzwdmjM3w6GJUv`7S@?%BL(hrxT za;|@VWAx;BK~eAY!rq8&rz?&wc@cA?qx|o6H|e(y^Irx{v-vdD*dm;xY{pN9vKi|w z!lhql#0Sn_S-6e+$K!_lTlI` zda*DwYDv&JN7wj}v&&vI_RWHYr9-`2{rz9p{-2YSEvtRC?U?B@-L*Gf{<^d7YGTps zqSdb%_w0LecB{;b-s`*vo_~3#E%HDa=Koh8IrtS@-d~pwC{pg{`6R0VOp*+qu6{1- HoD!M + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::ast::IndexExpressionNode Member List
+
+
+ +

This is the complete list of members for jmespath::ast::IndexExpressionNode, including all inherited members.

+ + + + + + + + + + + + + + + + + + +
AbstractNode()=defaultjmespath::ast::AbstractNode
AbstractNode(const AbstractNode &)=defaultjmespath::ast::AbstractNode
accept(interpreter::AbstractVisitor *visitor) const overridejmespath::ast::IndexExpressionNodevirtual
BinaryExpressionNode()jmespath::ast::BinaryExpressionNode
BinaryExpressionNode(const ExpressionNode &left, const ExpressionNode &right)jmespath::ast::BinaryExpressionNode
bracketSpecifierjmespath::ast::IndexExpressionNode
IndexExpressionNode()jmespath::ast::IndexExpressionNode
IndexExpressionNode(const BracketSpecifierNode &bracketNode)jmespath::ast::IndexExpressionNode
IndexExpressionNode(const ExpressionNode &left, const BracketSpecifierNode &bracketNode, const ExpressionNode &right={})jmespath::ast::IndexExpressionNode
isProjection() const overridejmespath::ast::IndexExpressionNodevirtual
leftExpressionjmespath::ast::BinaryExpressionNode
operator=(const AbstractNode &)=defaultjmespath::ast::AbstractNode
operator==(const IndexExpressionNode &other) const jmespath::ast::IndexExpressionNode
jmespath::ast::BinaryExpressionNode::operator==(const BinaryExpressionNode &other) const jmespath::ast::BinaryExpressionNode
rightExpressionjmespath::ast::BinaryExpressionNode
stopsProjection() const overridejmespath::ast::IndexExpressionNodevirtual
~AbstractNode()jmespath::ast::AbstractNodevirtual
+ + + + diff --git a/classjmespath_1_1ast_1_1_index_expression_node.html b/classjmespath_1_1ast_1_1_index_expression_node.html new file mode 100644 index 0000000..96ed257 --- /dev/null +++ b/classjmespath_1_1ast_1_1_index_expression_node.html @@ -0,0 +1,405 @@ + + + + + + +jmespath.cpp: jmespath::ast::IndexExpressionNode Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast::IndexExpressionNode Class Reference
+
+
+ +

The IndexExpressionNode class represents a JMESPath index expression. + More...

+ +

#include <indexexpressionnode.h>

+
+Inheritance diagram for jmespath::ast::IndexExpressionNode:
+
+
+ + +jmespath::ast::BinaryExpressionNode +jmespath::ast::AbstractNode + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 IndexExpressionNode ()
 Construct an empty IndexExpressionNode object. More...
 
 IndexExpressionNode (const BracketSpecifierNode &bracketNode)
 Constructs an IndexExpressionNode object with the given bracketSpecifier and empty left and right expressions. More...
 
 IndexExpressionNode (const ExpressionNode &left, const BracketSpecifierNode &bracketNode, const ExpressionNode &right={})
 Constructs an IndexExpressionNode with given expression as its left hand expression, subexpression as its right hand expression and with the given bracketSpecifier. More...
 
bool operator== (const IndexExpressionNode &other) const
 Equality compares this node to the other. More...
 
bool isProjection () const override
 Returns whather this expression requires the projection of subsequent expressions. More...
 
bool stopsProjection () const override
 Reports whether the node should stop an ongoing projection or not. More...
 
void accept (interpreter::AbstractVisitor *visitor) const override
 Calls the visit method of the given visitor with the dynamic type of the node. More...
 
- Public Member Functions inherited from jmespath::ast::BinaryExpressionNode
 BinaryExpressionNode ()
 Constructs an empty BinaryExpressionNode object. More...
 
 BinaryExpressionNode (const ExpressionNode &left, const ExpressionNode &right)
 Constructs a BinaryExpressionNode object with the given leftExpressin and rightExpression as its children. More...
 
bool operator== (const BinaryExpressionNode &other) const
 Equality compares this node to the other. More...
 
- Public Member Functions inherited from jmespath::ast::AbstractNode
 AbstractNode ()=default
 Constructs an AbstractNode object. More...
 
 AbstractNode (const AbstractNode &)=default
 Copy-constructs an AbstractNode object. More...
 
virtual ~AbstractNode ()
 Destroys the AbstractNode object. More...
 
AbstractNodeoperator= (const AbstractNode &)=default
 Copy-assigns the other object to this object. More...
 
+ + + + + + + + + + + +

+Public Attributes

BracketSpecifierNode bracketSpecifier
 The bracket specifier in an index expression. More...
 
- Public Attributes inherited from jmespath::ast::BinaryExpressionNode
ExpressionNode leftExpression
 The left hand expression of the node. More...
 
ExpressionNode rightExpression
 The right hand expression of the node. More...
 
+

Detailed Description

+

The IndexExpressionNode class represents a JMESPath index expression.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
jmespath::ast::IndexExpressionNode::IndexExpressionNode ()
+
+ +

Construct an empty IndexExpressionNode object.

+ +
+
+ +
+
+ + + + + + + + +
jmespath::ast::IndexExpressionNode::IndexExpressionNode (const BracketSpecifierNodebracketNode)
+
+ +

Constructs an IndexExpressionNode object with the given bracketSpecifier and empty left and right expressions.

+
Parameters
+ + +
[in]bracketNodeThe bracket specifier node.
+
+
+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
jmespath::ast::IndexExpressionNode::IndexExpressionNode (const ExpressionNodeleft,
const BracketSpecifierNodebracketNode,
const ExpressionNoderight = {} 
)
+
+ +

Constructs an IndexExpressionNode with given expression as its left hand expression, subexpression as its right hand expression and with the given bracketSpecifier.

+
Parameters
+ + + + +
[in]leftThe left hand expression of the node.
[in]bracketNodeThe index expression's bracket specifier.
[in]rightThe right hand expression of the node.
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::ast::IndexExpressionNode::accept (interpreter::AbstractVisitorvisitor) const
+
+overridevirtual
+
+ +

Calls the visit method of the given visitor with the dynamic type of the node.

+
Parameters
+ + +
[in]visitorA visitor implementation
+
+
+ +

Reimplemented from jmespath::ast::BinaryExpressionNode.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
bool jmespath::ast::IndexExpressionNode::isProjection () const
+
+overridevirtual
+
+ +

Returns whather this expression requires the projection of subsequent expressions.

+
Returns
Returns true if projection is required, otherwise returns false.
+ +

Implements jmespath::ast::BinaryExpressionNode.

+ +
+
+ +
+
+ + + + + + + + +
bool jmespath::ast::IndexExpressionNode::operator== (const IndexExpressionNodeother) const
+
+ +

Equality compares this node to the other.

+
Parameters
+ + +
[in]otherThe node that should be compared.
+
+
+
Returns
Returns true if this object is equal to the other, otherwise false
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
bool jmespath::ast::IndexExpressionNode::stopsProjection () const
+
+overridevirtual
+
+ +

Reports whether the node should stop an ongoing projection or not.

+
Returns
Returns true if the node should stop an ongoing projection, otherwise returns false.
+ +

Implements jmespath::ast::BinaryExpressionNode.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
BracketSpecifierNode jmespath::ast::IndexExpressionNode::bracketSpecifier
+
+ +

The bracket specifier in an index expression.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classjmespath_1_1ast_1_1_index_expression_node.png b/classjmespath_1_1ast_1_1_index_expression_node.png new file mode 100644 index 0000000000000000000000000000000000000000..d572203ccf77fd6ef1d56e5de12f3d6f58ca893b GIT binary patch literal 1210 zcmeAS@N?(olHy`uVBq!ia0vp^w}7~VgBeI}Yh@J$QW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;@{){Qjnh~X~>AmV7R#D0>h%rg^Vtj zotQh8wXzBLa`P(8LQ`P3Aoun*%cE+Z##swJgMeB+yOwe5dS0r2o0ok4wePQA)#6`X zmK5JKyOg-%?AOcXtILGno=dyCbkdTr{}Y+wHQ&d)y|zLx!;&U^h{`t_jZ zJ#PfJa8<5J+O}fG`uwZEEW2}TW!D=VyJ=Io<@uW8i*s&FEJ^jAB?I> zOXl7?xu89*Ic|Nm{MwycmL*s{&TGkSCJWESo~~ni{vpe1N%a1=6ZQ$-c`;$q zl~@1&{_zM}?RVz9{^#%uRf_fexiUXLXO}7eOS-C(sRs_JRyEIyTNVRD&{wm;emVPr zIkUvyew;BaH*U+^oUm=37sJ|FI+o)Id7M$hud#H>GZD@NH&{HTT+DNN2ab-nkJRVr z@;ulpwg2#ks#f{Xx5^m|_SZIQ-gg8?g!$K>_1nd6e{4?NerLzDAen=oy3?mDci#Hq z>y*j5imRS({#s)5IMjRga>iT5pJpEVSQs%^w^3H5>TtbsV4Ef5_1EDSS9Kg+9h(@j zRqg&B`*X|f7^kk@Y9jx9-}BvJr-Dwqy>89g^oK2~{AJCuR|@w^C-~pjWt_U^_SaqC z4Pzd>Vvzafv?-sR(C9i_5-0;2p ziNy9Zwa0eOyXY;vDnI2g mh6gPDK8-&=C1{rKf5w@=!=D)oNKOM5Gz^}uelF{r5}E*aO<79- literal 0 HcmV?d00001 diff --git a/classjmespath_1_1ast_1_1_list_wildcard_node-members.html b/classjmespath_1_1ast_1_1_list_wildcard_node-members.html new file mode 100644 index 0000000..1859b5c --- /dev/null +++ b/classjmespath_1_1ast_1_1_list_wildcard_node-members.html @@ -0,0 +1,114 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::ast::ListWildcardNode Member List
+
+
+ +

This is the complete list of members for jmespath::ast::ListWildcardNode, including all inherited members.

+ + + + + + + + +
AbstractNode()=defaultjmespath::ast::AbstractNode
AbstractNode(const AbstractNode &)=defaultjmespath::ast::AbstractNode
accept(interpreter::AbstractVisitor *visitor) const overridejmespath::ast::ListWildcardNodevirtual
ListWildcardNode()jmespath::ast::ListWildcardNode
operator=(const AbstractNode &)=defaultjmespath::ast::AbstractNode
operator==(const ListWildcardNode &other) const jmespath::ast::ListWildcardNode
~AbstractNode()jmespath::ast::AbstractNodevirtual
+ + + + diff --git a/classjmespath_1_1ast_1_1_list_wildcard_node.html b/classjmespath_1_1ast_1_1_list_wildcard_node.html new file mode 100644 index 0000000..9ff9ad0 --- /dev/null +++ b/classjmespath_1_1ast_1_1_list_wildcard_node.html @@ -0,0 +1,231 @@ + + + + + + +jmespath.cpp: jmespath::ast::ListWildcardNode Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast::ListWildcardNode Class Reference
+
+
+ +

The ListWildcardNode class represents a JMESPath list wildcard expression. + More...

+ +

#include <listwildcardnode.h>

+
+Inheritance diagram for jmespath::ast::ListWildcardNode:
+
+
+ + +jmespath::ast::AbstractNode + +
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 ListWildcardNode ()
 Constructs a ListWildcardNode object. More...
 
void accept (interpreter::AbstractVisitor *visitor) const override
 Calls the visit method of the given visitor with the dynamic type of the node. More...
 
bool operator== (const ListWildcardNode &other) const
 Equality compares this node to the other. More...
 
- Public Member Functions inherited from jmespath::ast::AbstractNode
 AbstractNode ()=default
 Constructs an AbstractNode object. More...
 
 AbstractNode (const AbstractNode &)=default
 Copy-constructs an AbstractNode object. More...
 
virtual ~AbstractNode ()
 Destroys the AbstractNode object. More...
 
AbstractNodeoperator= (const AbstractNode &)=default
 Copy-assigns the other object to this object. More...
 
+

Detailed Description

+

The ListWildcardNode class represents a JMESPath list wildcard expression.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
jmespath::ast::ListWildcardNode::ListWildcardNode ()
+
+ +

Constructs a ListWildcardNode object.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::ast::ListWildcardNode::accept (interpreter::AbstractVisitorvisitor) const
+
+overridevirtual
+
+ +

Calls the visit method of the given visitor with the dynamic type of the node.

+
Parameters
+ + +
[in]visitorA visitor implementation
+
+
+ +

Implements jmespath::ast::AbstractNode.

+ +
+
+ +
+
+ + + + + + + + +
bool jmespath::ast::ListWildcardNode::operator== (const ListWildcardNodeother) const
+
+ +

Equality compares this node to the other.

+
Parameters
+ + +
[in]otherThe node that should be compared.
+
+
+
Returns
Returns true if this object is equal to the other, otherwise false
+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classjmespath_1_1ast_1_1_list_wildcard_node.png b/classjmespath_1_1ast_1_1_list_wildcard_node.png new file mode 100644 index 0000000000000000000000000000000000000000..856edb005f6d902e8efd415d1677650c69dc628e GIT binary patch literal 780 zcmeAS@N?(olHy`uVBq!ia0vp^dw@8AgBeIp5qzHjq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0W_!9ghEy=Vo%?puZ3P}z{_Dn-|K0PF zJ}WYwoAhprj`fy1r94hD+=~B-WR7oKWucPkn_J;IYay?`r}33${z+f9&P)3~t?bFK zw>iIsH@n-{>^^0#WX~nPZo1=-Yu}82Ox9Z1`r_T!?>D1=#nlJ7&k6T=?9U(18=t*J zPC4&m+C7z-W$g8OqV^A}j%@g`PvPdW1-m3AG-ph+dbKildZEh6Ew@jYyR;p?W%4p0 zeeLgtKK03Uj+@rjdTe^@{p0%nNoJMq)gQKIzFb?rz~{`mGwC7Gd4?)8&4hlQ+I+r0 zDKPGh&GpNBcD$`%*Z1r_c6r(C&$2&WE#}UjkhA*XS(|#Pe|FFFSNmFBoSM0+?B|Zz z3DN%BW;|UaY+JYemPgR)gSWjW{p+ri{&QolzUStv-FsAY!T#RzP&Kn{-iPCbGTmGc z;yiR_tg0 zgV&Ls%^#k>5cu=be&JrP7e9CCc-;?;Uf);at8)3r<;_zgOP>TUFPtx-dzImHd(Ddo({*=`-4L{YroLrjepo^ETlf1jsZ06+e>)7LGf4h{%V)wJ~gX-k7%2E5eYicje3a#Dp$EIBFv!j=-?GJ{KUCsNg zH{=U_wypVkaqpb>2fi2W3z-$fVR!21?X1auC8@JsMcKV8%=W&u!>KYlmuI8B9`jYU z1y}j^HP*BKIk1)U!{#Z<{2OM$La8d&8W + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::ast::LiteralNode Member List
+
+
+ +

This is the complete list of members for jmespath::ast::LiteralNode, including all inherited members.

+ + + + + + + + + + +
AbstractNode()=defaultjmespath::ast::AbstractNode
AbstractNode(const AbstractNode &)=defaultjmespath::ast::AbstractNode
accept(interpreter::AbstractVisitor *visitor) const overridejmespath::ast::LiteralNodevirtual
literaljmespath::ast::LiteralNode
LiteralNode()jmespath::ast::LiteralNode
LiteralNode(const String &value)jmespath::ast::LiteralNode
operator=(const AbstractNode &)=defaultjmespath::ast::AbstractNode
operator==(const LiteralNode &other) const jmespath::ast::LiteralNode
~AbstractNode()jmespath::ast::AbstractNodevirtual
+ + + + diff --git a/classjmespath_1_1ast_1_1_literal_node.html b/classjmespath_1_1ast_1_1_literal_node.html new file mode 100644 index 0000000..1f0d7e3 --- /dev/null +++ b/classjmespath_1_1ast_1_1_literal_node.html @@ -0,0 +1,280 @@ + + + + + + +jmespath.cpp: jmespath::ast::LiteralNode Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast::LiteralNode Class Reference
+
+
+ +

The LiteralNode class represents a JMESPath literal string. + More...

+ +

#include <literalnode.h>

+
+Inheritance diagram for jmespath::ast::LiteralNode:
+
+
+ + +jmespath::ast::AbstractNode + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 LiteralNode ()
 Constructs a LiteralNode object with empty value. More...
 
 LiteralNode (const String &value)
 Constructs a LiteralNode object with the given value. More...
 
void accept (interpreter::AbstractVisitor *visitor) const override
 Calls the visit method of the given visitor with the dynamic type of the node. More...
 
bool operator== (const LiteralNode &other) const
 Equality compares this node to the other. More...
 
- Public Member Functions inherited from jmespath::ast::AbstractNode
 AbstractNode ()=default
 Constructs an AbstractNode object. More...
 
 AbstractNode (const AbstractNode &)=default
 Copy-constructs an AbstractNode object. More...
 
virtual ~AbstractNode ()
 Destroys the AbstractNode object. More...
 
AbstractNodeoperator= (const AbstractNode &)=default
 Copy-assigns the other object to this object. More...
 
+ + + + +

+Public Attributes

String literal
 literal The value of the literal More...
 
+

Detailed Description

+

The LiteralNode class represents a JMESPath literal string.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
jmespath::ast::LiteralNode::LiteralNode ()
+
+ +

Constructs a LiteralNode object with empty value.

+ +
+
+ +
+
+ + + + + + + + +
jmespath::ast::LiteralNode::LiteralNode (const Stringvalue)
+
+ +

Constructs a LiteralNode object with the given value.

+
Parameters
+ + +
[in]valueThe value of the literal string.
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::ast::LiteralNode::accept (interpreter::AbstractVisitorvisitor) const
+
+overridevirtual
+
+ +

Calls the visit method of the given visitor with the dynamic type of the node.

+
Parameters
+ + +
[in]visitorA visitor implementation
+
+
+ +

Implements jmespath::ast::AbstractNode.

+ +
+
+ +
+
+ + + + + + + + +
bool jmespath::ast::LiteralNode::operator== (const LiteralNodeother) const
+
+ +

Equality compares this node to the other.

+
Parameters
+ + +
[in]otherThe node that should be compared.
+
+
+
Returns
Returns true if this object is equal to the other, otherwise false
+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
String jmespath::ast::LiteralNode::literal
+
+ +

literal The value of the literal

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classjmespath_1_1ast_1_1_literal_node.png b/classjmespath_1_1ast_1_1_literal_node.png new file mode 100644 index 0000000000000000000000000000000000000000..c51a59e699f2ba7b396dd8bc1a847bf31fbf32d5 GIT binary patch literal 735 zcmeAS@N?(olHy`uVBq!ia0vp^%YZn5gBeIJnfuQXNJ#|vgt-3y{~ySF@#br3|Dg#$ z78oBmaDcV*jy#adQ4-`A%m7pb0#{Fk7%?y~<$1a|hEy=VoqK!JVg&(L@!PBZ{8#r6 z(L1Z#ynKf6TE(M%T)y8oNq?A{dwbjOZr@4o*0pMSZr);`nmJ8r+2kerU*}%izD40|DD?BPxtwo+ZV|*-!Q9R zPN&k?U-j9;D~soe|6f%(e{#;`;F~@XCufRTomyEsy)Yzob62iX)a+F=p1wL2AU*HQ zqryqKUzhgp{2z2N**0p%(#%)7n`f!Hg|qF@SbX%yl(UE2Z`$?H;h$=75}&-e?6rYwn!nlZ`5JO2zY2ySyHY>Q*~e%;t0e!Y8v z9rI`3pDgFv6V}b;Gw|mYPM9X9c0fnhrva#g0T@V(X_<*kXD%ILnX$B$)4&^9!LNS9 zxyA4P9b&u_3lkQd(R?O<^S)G>kLIzDEhg}9@2Q`5)_ca??f3V}C{H)+|G}7Kzpn3e z=Ja3Zir>8HXwNtJy4`GcVGu{fz4nCVi`YMZ;rz_-Va4;K`^)Yu<@QUu;X(m16=CWi?rv;7!@oO9e{R|V7LGP literal 0 HcmV?d00001 diff --git a/classjmespath_1_1ast_1_1_multiselect_hash_node-members.html b/classjmespath_1_1ast_1_1_multiselect_hash_node-members.html new file mode 100644 index 0000000..ae48006 --- /dev/null +++ b/classjmespath_1_1ast_1_1_multiselect_hash_node-members.html @@ -0,0 +1,118 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::ast::MultiselectHashNode Member List
+
+
+ +

This is the complete list of members for jmespath::ast::MultiselectHashNode, including all inherited members.

+ + + + + + + + + + + + +
AbstractNode()=defaultjmespath::ast::AbstractNode
AbstractNode(const AbstractNode &)=defaultjmespath::ast::AbstractNode
accept(interpreter::AbstractVisitor *visitor) const overridejmespath::ast::MultiselectHashNodevirtual
expressionsjmespath::ast::MultiselectHashNode
KeyValuePairType typedefjmespath::ast::MultiselectHashNode
MultiselectHashNode()jmespath::ast::MultiselectHashNode
MultiselectHashNode(const std::vector< KeyValuePairType > &subexpressions)jmespath::ast::MultiselectHashNode
MultiselectHashNode(const std::initializer_list< KeyValuePairType > &subexpressions)jmespath::ast::MultiselectHashNode
operator=(const AbstractNode &)=defaultjmespath::ast::AbstractNode
operator==(const MultiselectHashNode &other) const jmespath::ast::MultiselectHashNode
~AbstractNode()jmespath::ast::AbstractNodevirtual
+ + + + diff --git a/classjmespath_1_1ast_1_1_multiselect_hash_node.html b/classjmespath_1_1ast_1_1_multiselect_hash_node.html new file mode 100644 index 0000000..1d77d1d --- /dev/null +++ b/classjmespath_1_1ast_1_1_multiselect_hash_node.html @@ -0,0 +1,326 @@ + + + + + + +jmespath.cpp: jmespath::ast::MultiselectHashNode Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast::MultiselectHashNode Class Reference
+
+
+ +

The MultiselectHashNode class represents a JMESPath multiselect hash expression. + More...

+ +

#include <multiselecthashnode.h>

+
+Inheritance diagram for jmespath::ast::MultiselectHashNode:
+
+
+ + +jmespath::ast::AbstractNode + +
+ + + + +

+Public Types

using KeyValuePairType = std::pair< IdentifierNode, ExpressionNode >
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 MultiselectHashNode ()
 Constructs an empty MultiselectHashNode object. More...
 
 MultiselectHashNode (const std::vector< KeyValuePairType > &subexpressions)
 Constructs a MultiselectHashNode object with the given expressions as its subexpressions. More...
 
 MultiselectHashNode (const std::initializer_list< KeyValuePairType > &subexpressions)
 Constructs a MultiselectHashNode object with the given expressions as its subexpressions. More...
 
void accept (interpreter::AbstractVisitor *visitor) const override
 Calls the visit method of the given visitor with the dynamic type of the node. More...
 
bool operator== (const MultiselectHashNode &other) const
 Equality compares this node to the other. More...
 
- Public Member Functions inherited from jmespath::ast::AbstractNode
 AbstractNode ()=default
 Constructs an AbstractNode object. More...
 
 AbstractNode (const AbstractNode &)=default
 Copy-constructs an AbstractNode object. More...
 
virtual ~AbstractNode ()
 Destroys the AbstractNode object. More...
 
AbstractNodeoperator= (const AbstractNode &)=default
 Copy-assigns the other object to this object. More...
 
+ + + + +

+Public Attributes

std::vector< KeyValuePairTypeexpressions
 The node's child expressions. More...
 
+

Detailed Description

+

The MultiselectHashNode class represents a JMESPath multiselect hash expression.

+

Member Typedef Documentation

+ + +

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
jmespath::ast::MultiselectHashNode::MultiselectHashNode ()
+
+ +

Constructs an empty MultiselectHashNode object.

+ +
+
+ +
+
+ + + + + + + + +
jmespath::ast::MultiselectHashNode::MultiselectHashNode (const std::vector< KeyValuePairType > & subexpressions)
+
+ +

Constructs a MultiselectHashNode object with the given expressions as its subexpressions.

+
Parameters
+ + +
[in]subexpressionsThe node's subexpressions.
+
+
+ +
+
+ +
+
+ + + + + + + + +
jmespath::ast::MultiselectHashNode::MultiselectHashNode (const std::initializer_list< KeyValuePairType > & subexpressions)
+
+ +

Constructs a MultiselectHashNode object with the given expressions as its subexpressions.

+
Parameters
+ + +
[in]subexpressionsThe node's subexpressions.
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::ast::MultiselectHashNode::accept (interpreter::AbstractVisitorvisitor) const
+
+overridevirtual
+
+ +

Calls the visit method of the given visitor with the dynamic type of the node.

+
Parameters
+ + +
[in]visitorA visitor implementation
+
+
+ +

Implements jmespath::ast::AbstractNode.

+ +
+
+ +
+
+ + + + + + + + +
bool jmespath::ast::MultiselectHashNode::operator== (const MultiselectHashNodeother) const
+
+ +

Equality compares this node to the other.

+
Parameters
+ + +
[in]otherThe node that should be compared.
+
+
+
Returns
Returns true if this object is equal to the other, otherwise false
+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
std::vector<KeyValuePairType> jmespath::ast::MultiselectHashNode::expressions
+
+ +

The node's child expressions.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classjmespath_1_1ast_1_1_multiselect_hash_node.png b/classjmespath_1_1ast_1_1_multiselect_hash_node.png new file mode 100644 index 0000000000000000000000000000000000000000..0cde5a13f681560a318caaf4c8fa49bc6c30fddb GIT binary patch literal 808 zcmeAS@N?(olHy`uVBq!ia0vp^7l1f`gBeK1pW>beq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0wtKobhEy=VoqKW8Z3P}z{_Dm+|NE~K zP8MLYPT74o$g53STBoH?@RRoKZMnvszLTC^WSX>O;?@S0%#^##te#ct@4mTp$-o@}hSBY1xMn*jX)3#+*fTi?EC-m7GLn76R=`G31v$LG~QcbGHX_i--g6FK?p zD{{(C-_oikUAa`f;QA-QS38be5AS0=X~z09jcH0#=JSU6QT&qbldc3E=L-#-bz_b1 zRIh&`A_2VqYNgF7(X|toEVE;%`d4&nX-)=Xv(2)^Gdg=Z2fYRZ|Buh zcTS1zOnxq^9J>6*HfsgXT^GZH)>XDiIlOaCX;ZlQtntjAPbIbQC3meUO21mLEd8mk z>d~C8uPNObT4fg>&tFkADP;BMZf#HdHUGI+y#B23$^5deUFD_xWq1g@bpVEnFy{mJ zFAOt0H#6GGO%^=Mw&n8~R};&ZPP|$5qI&+@0QG>F8_bNZzhz#OzGbS~Y4z9k z^iRuL`LoIHbIlv0E>}b|$?C;T?%Ue4{l@oq=QX4QUBr(%U;gZ{KGLki;?*&x8*U5o zGQVm!|61p9`m{#Y?>no@SHvBWoV~ofvWS1m++SP!82b6^-dZ)}etjyXQFSJ>@J$x? ziP^vYe4XfW`i<`0s|=+gz28%q_uXEY)EGADiEyOK$!LZBiu<~LPRVw;cxPc+UmdKI;Vst E05X4ar~m)} literal 0 HcmV?d00001 diff --git a/classjmespath_1_1ast_1_1_multiselect_list_node-members.html b/classjmespath_1_1ast_1_1_multiselect_list_node-members.html new file mode 100644 index 0000000..1628fae --- /dev/null +++ b/classjmespath_1_1ast_1_1_multiselect_list_node-members.html @@ -0,0 +1,117 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::ast::MultiselectListNode Member List
+
+
+ +

This is the complete list of members for jmespath::ast::MultiselectListNode, including all inherited members.

+ + + + + + + + + + + +
AbstractNode()=defaultjmespath::ast::AbstractNode
AbstractNode(const AbstractNode &)=defaultjmespath::ast::AbstractNode
accept(interpreter::AbstractVisitor *visitor) const overridejmespath::ast::MultiselectListNodevirtual
expressionsjmespath::ast::MultiselectListNode
MultiselectListNode()jmespath::ast::MultiselectListNode
MultiselectListNode(const std::vector< ExpressionNode > &subexpressions)jmespath::ast::MultiselectListNode
MultiselectListNode(const std::initializer_list< ExpressionNode > &subexpressions)jmespath::ast::MultiselectListNode
operator=(const AbstractNode &)=defaultjmespath::ast::AbstractNode
operator==(const MultiselectListNode &other) const jmespath::ast::MultiselectListNode
~AbstractNode()jmespath::ast::AbstractNodevirtual
+ + + + diff --git a/classjmespath_1_1ast_1_1_multiselect_list_node.html b/classjmespath_1_1ast_1_1_multiselect_list_node.html new file mode 100644 index 0000000..af26c65 --- /dev/null +++ b/classjmespath_1_1ast_1_1_multiselect_list_node.html @@ -0,0 +1,307 @@ + + + + + + +jmespath.cpp: jmespath::ast::MultiselectListNode Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast::MultiselectListNode Class Reference
+
+
+ +

The MultiselectListNode class represents a JMESPath list wildcard expression. + More...

+ +

#include <multiselectlistnode.h>

+
+Inheritance diagram for jmespath::ast::MultiselectListNode:
+
+
+ + +jmespath::ast::AbstractNode + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 MultiselectListNode ()
 Constructs an empty MultiselectListNode object. More...
 
 MultiselectListNode (const std::vector< ExpressionNode > &subexpressions)
 Constructs a MultiselectListNode object with the given expressions as its subexpressions. More...
 
 MultiselectListNode (const std::initializer_list< ExpressionNode > &subexpressions)
 Constructs a MultiselectListNode object with the given expressions as its subexpressions. More...
 
void accept (interpreter::AbstractVisitor *visitor) const override
 Calls the visit method of the given visitor with the dynamic type of the node. More...
 
bool operator== (const MultiselectListNode &other) const
 Equality compares this node to the other. More...
 
- Public Member Functions inherited from jmespath::ast::AbstractNode
 AbstractNode ()=default
 Constructs an AbstractNode object. More...
 
 AbstractNode (const AbstractNode &)=default
 Copy-constructs an AbstractNode object. More...
 
virtual ~AbstractNode ()
 Destroys the AbstractNode object. More...
 
AbstractNodeoperator= (const AbstractNode &)=default
 Copy-assigns the other object to this object. More...
 
+ + + + +

+Public Attributes

std::vector< ExpressionNodeexpressions
 The node's child expressions. More...
 
+

Detailed Description

+

The MultiselectListNode class represents a JMESPath list wildcard expression.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
jmespath::ast::MultiselectListNode::MultiselectListNode ()
+
+ +

Constructs an empty MultiselectListNode object.

+ +
+
+ +
+
+ + + + + + + + +
jmespath::ast::MultiselectListNode::MultiselectListNode (const std::vector< ExpressionNode > & subexpressions)
+
+ +

Constructs a MultiselectListNode object with the given expressions as its subexpressions.

+
Parameters
+ + +
[in]subexpressionsThe node's subexpressoins
+
+
+ +
+
+ +
+
+ + + + + + + + +
jmespath::ast::MultiselectListNode::MultiselectListNode (const std::initializer_list< ExpressionNode > & subexpressions)
+
+ +

Constructs a MultiselectListNode object with the given expressions as its subexpressions.

+
Parameters
+ + +
[in]subexpressionsThe node's subexpressoins
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::ast::MultiselectListNode::accept (interpreter::AbstractVisitorvisitor) const
+
+overridevirtual
+
+ +

Calls the visit method of the given visitor with the dynamic type of the node.

+
Parameters
+ + +
[in]visitorA visitor implementation
+
+
+ +

Implements jmespath::ast::AbstractNode.

+ +
+
+ +
+
+ + + + + + + + +
bool jmespath::ast::MultiselectListNode::operator== (const MultiselectListNodeother) const
+
+ +

Equality compares this node to the other.

+
Parameters
+ + +
[in]otherThe node that should be compared.
+
+
+
Returns
Returns true if this object is equal to the other, otherwise false
+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
std::vector<ExpressionNode> jmespath::ast::MultiselectListNode::expressions
+
+ +

The node's child expressions.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classjmespath_1_1ast_1_1_multiselect_list_node.png b/classjmespath_1_1ast_1_1_multiselect_list_node.png new file mode 100644 index 0000000000000000000000000000000000000000..f9bd82af418c50184c8858daaaf92f87504995e5 GIT binary patch literal 798 zcmeAS@N?(olHy`uVBq!ia0vp^$ACD1gBeJcR{b&rQW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;s=i0aB62E_5Qgkl)^Yi~a-QxN6nM&)lmu-wr-f{f6 z+}h(6A0D0UQ91ciDEYq0A{qOSp;wC?H~Bj5o0;r+aEr;q>Dz*jO;oXrbzf{b+j8R8 z%t=Sn%UdsfOqpctv2CmUq$j3rAAf3lPJMj$@P}oo*W8!toLR>+!JE07$FoSPukH5Y zbMuk{*~(%~FY~Mth)wheiofr(>fPNJ2^N2fJ}KOMW_V`TuWNsf-L+U7vXaf>a)@zp zqXFZFc{z$_ShcJE?DbOhT+6nc-4)Fc=!Eg-xj}jO%_njdt=zJDmEb` z`1c)wWA79ye~LUR>G_^B(^_kb72>NzPtA*T>*zO>5wsUwfHLRh|Kj;7adA_{>Al~&)R)gKPwKA}?LC#N&wD2C?AtwuENXx5<$S$Zy7!&v z`@GsoXGPl%n+Lv$StfsnH(tN(-LcH2UZw|TE}J!j+huM~>htwlR|8Xvrb#ZpzaoTT zZQjSJ^%BPpESF3Odz!&;C!Cu(0hrPnB1P=Y6{cPvb#gVrKAk^>bP0 Hl+XkKL?m|9 literal 0 HcmV?d00001 diff --git a/classjmespath_1_1ast_1_1_not_expression_node-members.html b/classjmespath_1_1ast_1_1_not_expression_node-members.html new file mode 100644 index 0000000..946220d --- /dev/null +++ b/classjmespath_1_1ast_1_1_not_expression_node-members.html @@ -0,0 +1,116 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::ast::NotExpressionNode Member List
+
+
+ +

This is the complete list of members for jmespath::ast::NotExpressionNode, including all inherited members.

+ + + + + + + + + + +
AbstractNode()=defaultjmespath::ast::AbstractNode
AbstractNode(const AbstractNode &)=defaultjmespath::ast::AbstractNode
accept(interpreter::AbstractVisitor *visitor) const overridejmespath::ast::NotExpressionNodevirtual
expressionjmespath::ast::NotExpressionNode
NotExpressionNode()jmespath::ast::NotExpressionNode
NotExpressionNode(const ExpressionNode &subexpression)jmespath::ast::NotExpressionNode
operator=(const AbstractNode &)=defaultjmespath::ast::AbstractNode
operator==(const NotExpressionNode &other) const jmespath::ast::NotExpressionNode
~AbstractNode()jmespath::ast::AbstractNodevirtual
+ + + + diff --git a/classjmespath_1_1ast_1_1_not_expression_node.html b/classjmespath_1_1ast_1_1_not_expression_node.html new file mode 100644 index 0000000..caf2c19 --- /dev/null +++ b/classjmespath_1_1ast_1_1_not_expression_node.html @@ -0,0 +1,280 @@ + + + + + + +jmespath.cpp: jmespath::ast::NotExpressionNode Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast::NotExpressionNode Class Reference
+
+
+ +

The NotExpressionNode class represents a JMESPath not expression. + More...

+ +

#include <notexpressionnode.h>

+
+Inheritance diagram for jmespath::ast::NotExpressionNode:
+
+
+ + +jmespath::ast::AbstractNode + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 NotExpressionNode ()
 Constructs an emtpy NotExpressionNode object. More...
 
 NotExpressionNode (const ExpressionNode &subexpression)
 Constructs a NotExpressionNode object with the given expression as its child expression. More...
 
void accept (interpreter::AbstractVisitor *visitor) const override
 Calls the visit method of the given visitor with the dynamic type of the node. More...
 
bool operator== (const NotExpressionNode &other) const
 Equality compares this node to the other. More...
 
- Public Member Functions inherited from jmespath::ast::AbstractNode
 AbstractNode ()=default
 Constructs an AbstractNode object. More...
 
 AbstractNode (const AbstractNode &)=default
 Copy-constructs an AbstractNode object. More...
 
virtual ~AbstractNode ()
 Destroys the AbstractNode object. More...
 
AbstractNodeoperator= (const AbstractNode &)=default
 Copy-assigns the other object to this object. More...
 
+ + + + +

+Public Attributes

ExpressionNode expression
 The node's child expression. More...
 
+

Detailed Description

+

The NotExpressionNode class represents a JMESPath not expression.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
jmespath::ast::NotExpressionNode::NotExpressionNode ()
+
+ +

Constructs an emtpy NotExpressionNode object.

+ +
+
+ +
+
+ + + + + + + + +
jmespath::ast::NotExpressionNode::NotExpressionNode (const ExpressionNodesubexpression)
+
+ +

Constructs a NotExpressionNode object with the given expression as its child expression.

+
Parameters
+ + +
[in]subexpressionThe node's child expression.
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::ast::NotExpressionNode::accept (interpreter::AbstractVisitorvisitor) const
+
+overridevirtual
+
+ +

Calls the visit method of the given visitor with the dynamic type of the node.

+
Parameters
+ + +
[in]visitorA visitor implementation
+
+
+ +

Implements jmespath::ast::AbstractNode.

+ +
+
+ +
+
+ + + + + + + + +
bool jmespath::ast::NotExpressionNode::operator== (const NotExpressionNodeother) const
+
+ +

Equality compares this node to the other.

+
Parameters
+ + +
[in]otherThe node that should be compared.
+
+
+
Returns
Returns true if this object is equal to the other, otherwise false
+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
ExpressionNode jmespath::ast::NotExpressionNode::expression
+
+ +

The node's child expression.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classjmespath_1_1ast_1_1_not_expression_node.png b/classjmespath_1_1ast_1_1_not_expression_node.png new file mode 100644 index 0000000000000000000000000000000000000000..a20ecfb788f532675b736590c81ba7495a891a49 GIT binary patch literal 809 zcmeAS@N?(olHy`uVBq!ia0vp^CxAGBgBeI>Z$8xoq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0c6hothEy=VoqKW9Y6Tuw@!K>1{a3#q z7U0yh_W7M}Jf$x-tUe|X!SYD^^d_Bffo_%B{c0U5y-PTiJe6NcsCZt=zI(UN_U-JN z`#-)}zZ1NDUH{qV`;wO2lRh2xobcjz^@P&4+a|%Be}C+cUj6ptc1f@OucGpz1-@JL z3o1`rc|GHq=cGOJn%5i_n^B{A`s%GoDYGZl7zW5yC=l3J~>y&JLz=8nN_R?)6_T)c+65@P|j>(=vl(aWH5=4 zKtY)1(h}B*4Ey4RSrSxy1sW!9X`b_B=Wf~Rcln=uOKZNITFUxhYtwxG8`Zxe-Ta!? zlqty*lmn*4W6$QQ@Sz{HZ94{mI-4byvTCe($(VSuRm%$FuY|O!IC;wTEV}W;?gFW$n^KbJqQJ zy~nmNYv;wJtFPE<; + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::ast::OrExpressionNode Member List
+
+
+ +

This is the complete list of members for jmespath::ast::OrExpressionNode, including all inherited members.

+ + + + + + + + + + + + + + + +
AbstractNode()=defaultjmespath::ast::AbstractNode
AbstractNode(const AbstractNode &)=defaultjmespath::ast::AbstractNode
accept(interpreter::AbstractVisitor *visitor) const overridejmespath::ast::OrExpressionNodevirtual
BinaryExpressionNode()jmespath::ast::BinaryExpressionNode
BinaryExpressionNode(const ExpressionNode &left, const ExpressionNode &right)jmespath::ast::BinaryExpressionNode
isProjection() const overridejmespath::ast::OrExpressionNodevirtual
leftExpressionjmespath::ast::BinaryExpressionNode
operator=(const AbstractNode &)=defaultjmespath::ast::AbstractNode
operator==(const BinaryExpressionNode &other) const jmespath::ast::BinaryExpressionNode
OrExpressionNode()jmespath::ast::OrExpressionNode
OrExpressionNode(const ExpressionNode &leftExpression, const ExpressionNode &rightExpression)jmespath::ast::OrExpressionNode
rightExpressionjmespath::ast::BinaryExpressionNode
stopsProjection() const overridejmespath::ast::OrExpressionNodevirtual
~AbstractNode()jmespath::ast::AbstractNodevirtual
+ + + + diff --git a/classjmespath_1_1ast_1_1_or_expression_node.html b/classjmespath_1_1ast_1_1_or_expression_node.html new file mode 100644 index 0000000..d8ddaa7 --- /dev/null +++ b/classjmespath_1_1ast_1_1_or_expression_node.html @@ -0,0 +1,324 @@ + + + + + + +jmespath.cpp: jmespath::ast::OrExpressionNode Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast::OrExpressionNode Class Reference
+
+
+ +

The OrExpressionNode class represents a JMESPath or expression. + More...

+ +

#include <orexpressionnode.h>

+
+Inheritance diagram for jmespath::ast::OrExpressionNode:
+
+
+ + +jmespath::ast::BinaryExpressionNode +jmespath::ast::AbstractNode + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 OrExpressionNode ()
 Constructs an empty OrExpressionNode object. More...
 
 OrExpressionNode (const ExpressionNode &leftExpression, const ExpressionNode &rightExpression)
 Constructs a OrExpressionNode object with the given leftExpression and rightExpression. More...
 
bool isProjection () const override
 Returns whather this expression requires the projection of subsequent expressions. More...
 
bool stopsProjection () const override
 Reports whether the node should stop an ongoing projection or not. More...
 
void accept (interpreter::AbstractVisitor *visitor) const override
 Calls the visit method of the given visitor with the dynamic type of the node. More...
 
- Public Member Functions inherited from jmespath::ast::BinaryExpressionNode
 BinaryExpressionNode ()
 Constructs an empty BinaryExpressionNode object. More...
 
 BinaryExpressionNode (const ExpressionNode &left, const ExpressionNode &right)
 Constructs a BinaryExpressionNode object with the given leftExpressin and rightExpression as its children. More...
 
bool operator== (const BinaryExpressionNode &other) const
 Equality compares this node to the other. More...
 
- Public Member Functions inherited from jmespath::ast::AbstractNode
 AbstractNode ()=default
 Constructs an AbstractNode object. More...
 
 AbstractNode (const AbstractNode &)=default
 Copy-constructs an AbstractNode object. More...
 
virtual ~AbstractNode ()
 Destroys the AbstractNode object. More...
 
AbstractNodeoperator= (const AbstractNode &)=default
 Copy-assigns the other object to this object. More...
 
+ + + + + + + + +

+Additional Inherited Members

- Public Attributes inherited from jmespath::ast::BinaryExpressionNode
ExpressionNode leftExpression
 The left hand expression of the node. More...
 
ExpressionNode rightExpression
 The right hand expression of the node. More...
 
+

Detailed Description

+

The OrExpressionNode class represents a JMESPath or expression.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
jmespath::ast::OrExpressionNode::OrExpressionNode ()
+
+ +

Constructs an empty OrExpressionNode object.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
jmespath::ast::OrExpressionNode::OrExpressionNode (const ExpressionNodeleftExpression,
const ExpressionNoderightExpression 
)
+
+ +

Constructs a OrExpressionNode object with the given leftExpression and rightExpression.

+
Parameters
+ + + +
[in]leftExpressionThe node's left hand child expression.
[in]rightExpressionThe node's right hand child expression.
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::ast::OrExpressionNode::accept (interpreter::AbstractVisitorvisitor) const
+
+overridevirtual
+
+ +

Calls the visit method of the given visitor with the dynamic type of the node.

+
Parameters
+ + +
[in]visitorA visitor implementation
+
+
+ +

Reimplemented from jmespath::ast::BinaryExpressionNode.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
bool jmespath::ast::OrExpressionNode::isProjection () const
+
+overridevirtual
+
+ +

Returns whather this expression requires the projection of subsequent expressions.

+
Returns
Returns true if projection is required, otherwise returns false.
+ +

Implements jmespath::ast::BinaryExpressionNode.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
bool jmespath::ast::OrExpressionNode::stopsProjection () const
+
+overridevirtual
+
+ +

Reports whether the node should stop an ongoing projection or not.

+
Returns
Returns true if the node should stop an ongoing projection, otherwise returns false.
+ +

Implements jmespath::ast::BinaryExpressionNode.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classjmespath_1_1ast_1_1_or_expression_node.png b/classjmespath_1_1ast_1_1_or_expression_node.png new file mode 100644 index 0000000000000000000000000000000000000000..24aaac5eaf6a90e312050f28ace5555e97ecc590 GIT binary patch literal 1211 zcmeAS@N?(olHy`uVBq!ia0vp^w}7~VgBeI}Yh@J$QW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;SZyxmj|73Gt zrwzO_)0WMRJs4Ct`;o-qgAev?(m8FkEJ7vI#n;61m9Mbxq^irjTU0#PZ`~DJearlJ z{`1>%6>eYF=dXL-9J#xD+P8DQTW)=yoN;^B=R=nbZ+@=cDt7y`wsc?N(XT&VUOe== zw$JJjWALJx^HgGAsomN(fjPfkCi+#b=O$mzjWd^eo!pYs;ha60Q^j-ouGw3&_NGm} zw%jV?<2H*uZYsqaCZ|OIovAxJW z9oqBniD>_&jgRLneYGQ`u2s!*{g=ngH}_=oZrPv;U+z0FVtUCS?P}Oe%Cf&kSt;NH&2cs zIV)z%@#KhYg%`s%1>R(Hn=LA|z~0xS;hxDwhN{ah%rAU}c^8-y5_rHIH7!*#SZ9*S zBDGm6Uzc^NdG3Ab;yvk0)au(?pZ`>|wO`+q=V!irt@2y8{BL{Tr@d9XHTUc;Z&lB& z-+XtrZd+@q|L4Zpy@JUj~n+C zn(gh_)@!A9mixB&+Z<4+_g<5mx7+OZIeiP2lV;)B3ECVEiO`1^J;GPp6t3E zS1Yf3MKv|=4>9$+{l_$__}pI?H()dYy zwMdog{+66`clD|XiT`#v9djyJ?Bo@+_WQp&m6c)2&z>*;sh+WR!v6L$*`J?_&6NKo zT~o=_p=p$OX)ZN%Ws(SlMc@^u-JH9DX?~V@^u|wLB_6bC?Z5lr?DT{8PTca{^7i`8 z+V?$gW`AP4we8uS56S)8-(QW&`7PgmwxLjWrscfj1-I}1ey(pGJWn4O4Yf6f_G_21 z&nRo%cGT*_x8r%d+gP?u%-AA)_Q}m&eSeS8Vqwws5=;kP8f9OtI=}Y2UEQAIwVTu4 zMR|5lmwor#KOy=rLr!()wV0E2O37zl+;SB!vdmqKTcBASu?I{zb^c^!MD#o0Vmp^fuYvya80$Vj>*A;)( z&)gjrdcq($R`K!F|AnnAE56>FFXV9HIP<^#8P`95op0K}2v6DP?axjLk_xP6Sl=DK VJOT7R9 literal 0 HcmV?d00001 diff --git a/classjmespath_1_1ast_1_1_paren_expression_node-members.html b/classjmespath_1_1ast_1_1_paren_expression_node-members.html new file mode 100644 index 0000000..f35cbcd --- /dev/null +++ b/classjmespath_1_1ast_1_1_paren_expression_node-members.html @@ -0,0 +1,116 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::ast::ParenExpressionNode Member List
+
+
+ +

This is the complete list of members for jmespath::ast::ParenExpressionNode, including all inherited members.

+ + + + + + + + + + +
AbstractNode()=defaultjmespath::ast::AbstractNode
AbstractNode(const AbstractNode &)=defaultjmespath::ast::AbstractNode
accept(interpreter::AbstractVisitor *visitor) const overridejmespath::ast::ParenExpressionNodevirtual
expressionjmespath::ast::ParenExpressionNode
operator=(const AbstractNode &)=defaultjmespath::ast::AbstractNode
operator==(const ParenExpressionNode &other) const jmespath::ast::ParenExpressionNode
ParenExpressionNode()jmespath::ast::ParenExpressionNode
ParenExpressionNode(const ExpressionNode &subexpression)jmespath::ast::ParenExpressionNode
~AbstractNode()jmespath::ast::AbstractNodevirtual
+ + + + diff --git a/classjmespath_1_1ast_1_1_paren_expression_node.html b/classjmespath_1_1ast_1_1_paren_expression_node.html new file mode 100644 index 0000000..240f0f7 --- /dev/null +++ b/classjmespath_1_1ast_1_1_paren_expression_node.html @@ -0,0 +1,280 @@ + + + + + + +jmespath.cpp: jmespath::ast::ParenExpressionNode Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast::ParenExpressionNode Class Reference
+
+
+ +

The ParenExpressionNode class represents a JMESPath paren expression. + More...

+ +

#include <parenexpressionnode.h>

+
+Inheritance diagram for jmespath::ast::ParenExpressionNode:
+
+
+ + +jmespath::ast::AbstractNode + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 ParenExpressionNode ()
 Constructs an emtpy ParenExpressionNode object. More...
 
 ParenExpressionNode (const ExpressionNode &subexpression)
 Constructs a ParenExpressionNode object with the given expression as its child expression. More...
 
void accept (interpreter::AbstractVisitor *visitor) const override
 Calls the visit method of the given visitor with the dynamic type of the node. More...
 
bool operator== (const ParenExpressionNode &other) const
 Equality compares this node to the other. More...
 
- Public Member Functions inherited from jmespath::ast::AbstractNode
 AbstractNode ()=default
 Constructs an AbstractNode object. More...
 
 AbstractNode (const AbstractNode &)=default
 Copy-constructs an AbstractNode object. More...
 
virtual ~AbstractNode ()
 Destroys the AbstractNode object. More...
 
AbstractNodeoperator= (const AbstractNode &)=default
 Copy-assigns the other object to this object. More...
 
+ + + + +

+Public Attributes

ExpressionNode expression
 The node's child expression. More...
 
+

Detailed Description

+

The ParenExpressionNode class represents a JMESPath paren expression.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
jmespath::ast::ParenExpressionNode::ParenExpressionNode ()
+
+ +

Constructs an emtpy ParenExpressionNode object.

+ +
+
+ +
+
+ + + + + + + + +
jmespath::ast::ParenExpressionNode::ParenExpressionNode (const ExpressionNodesubexpression)
+
+ +

Constructs a ParenExpressionNode object with the given expression as its child expression.

+
Parameters
+ + +
[in]subexpressionThe node's child expression.
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::ast::ParenExpressionNode::accept (interpreter::AbstractVisitorvisitor) const
+
+overridevirtual
+
+ +

Calls the visit method of the given visitor with the dynamic type of the node.

+
Parameters
+ + +
[in]visitorA visitor implementation
+
+
+ +

Implements jmespath::ast::AbstractNode.

+ +
+
+ +
+
+ + + + + + + + +
bool jmespath::ast::ParenExpressionNode::operator== (const ParenExpressionNodeother) const
+
+ +

Equality compares this node to the other.

+
Parameters
+ + +
[in]otherThe node that should be compared.
+
+
+
Returns
Returns true if this object is equal to the other, otherwise false
+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
ExpressionNode jmespath::ast::ParenExpressionNode::expression
+
+ +

The node's child expression.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classjmespath_1_1ast_1_1_paren_expression_node.png b/classjmespath_1_1ast_1_1_paren_expression_node.png new file mode 100644 index 0000000000000000000000000000000000000000..823b63f39ce0ea9b95bdd5fa6d5a4cf9bc1d3ee0 GIT binary patch literal 813 zcmeAS@N?(olHy`uVBq!ia0vp^*MT^IgBeKf6%%+4q$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0_ISEDhEy=VoqMt9u>y}P|8?V^|NYkq zOA9b1rQd$Xrz4ve#I5*RAt3JNw%pkPIg?E0icMGPU3^s4^YM#G+8&p-mTlj+e6Hm` z{hHg{!AFXIrPQEGAj%bz=IZ+`pJ(N-K=X8T`v=bbMf z`>Y;$PFg%u-SgE;vFqC1li&WZGT*#~^&}tb&%{qtnj|kin0`%7*ke-FuJH9*k&_pF zU3qT$enr-3F(m* zwN|CF!AjC6x81%XcD`f(4Sv;?*UriddH!Pm6~FV>P5wB2PpN=z?@7llKAN37h_G`Bj_Bb=Oyc z0(;Flu>*Wey@~0Mg~au&m;T%?`1aMCr_Nhmg{n$_F0xC#$bJ1)o$5BD$uA~x2mPLT ze%9jLy7O0So)-$(PA^}}c(!VPy04zJq3`y6S;hCxZyAUvKGkCiCxvX + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::ast::PipeExpressionNode Member List
+
+
+ +

This is the complete list of members for jmespath::ast::PipeExpressionNode, including all inherited members.

+ + + + + + + + + + + + + + + +
AbstractNode()=defaultjmespath::ast::AbstractNode
AbstractNode(const AbstractNode &)=defaultjmespath::ast::AbstractNode
accept(interpreter::AbstractVisitor *visitor) const overridejmespath::ast::PipeExpressionNodevirtual
BinaryExpressionNode()jmespath::ast::BinaryExpressionNode
BinaryExpressionNode(const ExpressionNode &left, const ExpressionNode &right)jmespath::ast::BinaryExpressionNode
isProjection() const overridejmespath::ast::PipeExpressionNodevirtual
leftExpressionjmespath::ast::BinaryExpressionNode
operator=(const AbstractNode &)=defaultjmespath::ast::AbstractNode
operator==(const BinaryExpressionNode &other) const jmespath::ast::BinaryExpressionNode
PipeExpressionNode()jmespath::ast::PipeExpressionNode
PipeExpressionNode(const ExpressionNode &leftExpression, const ExpressionNode &rightExpression)jmespath::ast::PipeExpressionNode
rightExpressionjmespath::ast::BinaryExpressionNode
stopsProjection() const overridejmespath::ast::PipeExpressionNodevirtual
~AbstractNode()jmespath::ast::AbstractNodevirtual
+ + + + diff --git a/classjmespath_1_1ast_1_1_pipe_expression_node.html b/classjmespath_1_1ast_1_1_pipe_expression_node.html new file mode 100644 index 0000000..84a6cd2 --- /dev/null +++ b/classjmespath_1_1ast_1_1_pipe_expression_node.html @@ -0,0 +1,324 @@ + + + + + + +jmespath.cpp: jmespath::ast::PipeExpressionNode Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast::PipeExpressionNode Class Reference
+
+
+ +

The PipeExpressionNode class represents a JMESPath pipe expression. + More...

+ +

#include <pipeexpressionnode.h>

+
+Inheritance diagram for jmespath::ast::PipeExpressionNode:
+
+
+ + +jmespath::ast::BinaryExpressionNode +jmespath::ast::AbstractNode + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 PipeExpressionNode ()
 Constructs an empty PipeExpressionNode object. More...
 
 PipeExpressionNode (const ExpressionNode &leftExpression, const ExpressionNode &rightExpression)
 Constructs a PipeExpressionNode object with the given leftExpression and rightExpression. More...
 
bool isProjection () const override
 Returns whather this expression requires the projection of subsequent expressions. More...
 
bool stopsProjection () const override
 Reports whether the node should stop an ongoing projection or not. More...
 
void accept (interpreter::AbstractVisitor *visitor) const override
 Calls the visit method of the given visitor with the dynamic type of the node. More...
 
- Public Member Functions inherited from jmespath::ast::BinaryExpressionNode
 BinaryExpressionNode ()
 Constructs an empty BinaryExpressionNode object. More...
 
 BinaryExpressionNode (const ExpressionNode &left, const ExpressionNode &right)
 Constructs a BinaryExpressionNode object with the given leftExpressin and rightExpression as its children. More...
 
bool operator== (const BinaryExpressionNode &other) const
 Equality compares this node to the other. More...
 
- Public Member Functions inherited from jmespath::ast::AbstractNode
 AbstractNode ()=default
 Constructs an AbstractNode object. More...
 
 AbstractNode (const AbstractNode &)=default
 Copy-constructs an AbstractNode object. More...
 
virtual ~AbstractNode ()
 Destroys the AbstractNode object. More...
 
AbstractNodeoperator= (const AbstractNode &)=default
 Copy-assigns the other object to this object. More...
 
+ + + + + + + + +

+Additional Inherited Members

- Public Attributes inherited from jmespath::ast::BinaryExpressionNode
ExpressionNode leftExpression
 The left hand expression of the node. More...
 
ExpressionNode rightExpression
 The right hand expression of the node. More...
 
+

Detailed Description

+

The PipeExpressionNode class represents a JMESPath pipe expression.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
jmespath::ast::PipeExpressionNode::PipeExpressionNode ()
+
+ +

Constructs an empty PipeExpressionNode object.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
jmespath::ast::PipeExpressionNode::PipeExpressionNode (const ExpressionNodeleftExpression,
const ExpressionNoderightExpression 
)
+
+ +

Constructs a PipeExpressionNode object with the given leftExpression and rightExpression.

+
Parameters
+ + + +
[in]leftExpressionThe node's left hand child expression.
[in]rightExpressionThe node's right hand child expression.
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::ast::PipeExpressionNode::accept (interpreter::AbstractVisitorvisitor) const
+
+overridevirtual
+
+ +

Calls the visit method of the given visitor with the dynamic type of the node.

+
Parameters
+ + +
[in]visitorA visitor implementation
+
+
+ +

Reimplemented from jmespath::ast::BinaryExpressionNode.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
bool jmespath::ast::PipeExpressionNode::isProjection () const
+
+overridevirtual
+
+ +

Returns whather this expression requires the projection of subsequent expressions.

+
Returns
Returns true if projection is required, otherwise returns false.
+ +

Implements jmespath::ast::BinaryExpressionNode.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
bool jmespath::ast::PipeExpressionNode::stopsProjection () const
+
+overridevirtual
+
+ +

Reports whether the node should stop an ongoing projection or not.

+
Returns
Returns true if the node should stop an ongoing projection, otherwise returns false.
+ +

Implements jmespath::ast::BinaryExpressionNode.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classjmespath_1_1ast_1_1_pipe_expression_node.png b/classjmespath_1_1ast_1_1_pipe_expression_node.png new file mode 100644 index 0000000000000000000000000000000000000000..a1d87449d97f9f5d32c3deb1a7ef9c629744e180 GIT binary patch literal 1210 zcmeAS@N?(olHy`uVBq!ia0vp^w}7~VgBeI}Yh@J$QW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;ekiFhSK8@>qCou3ZMn09b0(QA7MrEwdf936l8jvq(^Ot=eV6upT3O2f zyEppO<>YQZ?EY9|kR5*U(!V0XwcG!y+%kS9RB@`?cHjHGTi<^SwfeLtYgYZXjJ%5Y z#ouQnt}_3u=DB=V$2T68$8Y=hEX|FdloLEDUoAv)W|-BVEBj7cOj;5gdp1gZedncH zCG2PKPh-n}a8l-t%FS!`DlcQ+FS51!>L8b%+Vaddd;R&ixfMH%CcN8m!$9R_$o&(u zqPN>tUR|{BMy0R+_e)DYX`6UfEzOrd@i10;!A{+kCZ3zlE}mKWR`<`^-DOdV-g66= zEv=JxJ)v@{Y7^@ZjVU)DzYp{9d{z3D-)+*r#(&vciW`1JPF~Uxl`%=gm)m#JqL+Q! za&Mb0W%xHQkD)j#Zp-c5sBM)O-=%EcKVGL?jB#C_E*UD<=M7&>ExVyHn)ny;&XJ2(P`CZkNrfmK_WdrNmV_(JeFPuAd;sX=!FDsMn zs_z#}ohPU7xvr9}+)!WU#AU9?S3SmO^Rfk{?rcp;FDP5R&S}@z-&`-b54Lh?dhV_J z_FdU?FPokH{xkND(mVgyZYe%LKfd_INAb;Sp2e99J%fOO>Djf+`W7%wrZD}e-o;IZBLYR>0y-=9cTZ-8XkWHQY3P zWn-pZ0>k>N=jBTJ=hW(Fi(fn^&iZ5BH{VL>x01!2Ht%!p{rvPvqV`|?hAR{%X0h z^;l=&?ZRO>*i-x8j$Z@$!LID36<;biV?J-b zd$i`W!@RH)LFscc;}(f6RI~JLy~FPxu6TD=ZR?lm|Ic!9UU;2e?;7v-e_?jR!hh0R rK8HR^=S>iUCEhPT_WNiqmHf(X`Z@fL!RoW1f`-A<)z4*}Q$iB}Duhv} literal 0 HcmV?d00001 diff --git a/classjmespath_1_1ast_1_1_raw_string_node-members.html b/classjmespath_1_1ast_1_1_raw_string_node-members.html new file mode 100644 index 0000000..79d6957 --- /dev/null +++ b/classjmespath_1_1ast_1_1_raw_string_node-members.html @@ -0,0 +1,116 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::ast::RawStringNode Member List
+
+
+ +

This is the complete list of members for jmespath::ast::RawStringNode, including all inherited members.

+ + + + + + + + + + +
AbstractNode()=defaultjmespath::ast::AbstractNode
AbstractNode(const AbstractNode &)=defaultjmespath::ast::AbstractNode
accept(interpreter::AbstractVisitor *visitor) const overridejmespath::ast::RawStringNodevirtual
operator=(const AbstractNode &)=defaultjmespath::ast::AbstractNode
operator==(const RawStringNode &other) const jmespath::ast::RawStringNode
rawStringjmespath::ast::RawStringNode
RawStringNode()jmespath::ast::RawStringNode
RawStringNode(const String &string)jmespath::ast::RawStringNode
~AbstractNode()jmespath::ast::AbstractNodevirtual
+ + + + diff --git a/classjmespath_1_1ast_1_1_raw_string_node.html b/classjmespath_1_1ast_1_1_raw_string_node.html new file mode 100644 index 0000000..007febc --- /dev/null +++ b/classjmespath_1_1ast_1_1_raw_string_node.html @@ -0,0 +1,280 @@ + + + + + + +jmespath.cpp: jmespath::ast::RawStringNode Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast::RawStringNode Class Reference
+
+
+ +

The RawStringNode class represents a JMESPath raw string literal. + More...

+ +

#include <rawstringnode.h>

+
+Inheritance diagram for jmespath::ast::RawStringNode:
+
+
+ + +jmespath::ast::AbstractNode + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 RawStringNode ()
 Constructs an empty RawStringNode object. More...
 
 RawStringNode (const String &string)
 Constructs a RawStringNode object with its value initialized to string. More...
 
void accept (interpreter::AbstractVisitor *visitor) const override
 Calls the visit method of the given visitor with the dynamic type of the node. More...
 
bool operator== (const RawStringNode &other) const
 Equality compares this node to the other. More...
 
- Public Member Functions inherited from jmespath::ast::AbstractNode
 AbstractNode ()=default
 Constructs an AbstractNode object. More...
 
 AbstractNode (const AbstractNode &)=default
 Copy-constructs an AbstractNode object. More...
 
virtual ~AbstractNode ()
 Destroys the AbstractNode object. More...
 
AbstractNodeoperator= (const AbstractNode &)=default
 Copy-assigns the other object to this object. More...
 
+ + + + +

+Public Attributes

String rawString
 The raw string value. More...
 
+

Detailed Description

+

The RawStringNode class represents a JMESPath raw string literal.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
jmespath::ast::RawStringNode::RawStringNode ()
+
+ +

Constructs an empty RawStringNode object.

+ +
+
+ +
+
+ + + + + + + + +
jmespath::ast::RawStringNode::RawStringNode (const Stringstring)
+
+ +

Constructs a RawStringNode object with its value initialized to string.

+
Parameters
+ + +
[in]stringThe raw string value.
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::ast::RawStringNode::accept (interpreter::AbstractVisitorvisitor) const
+
+overridevirtual
+
+ +

Calls the visit method of the given visitor with the dynamic type of the node.

+
Parameters
+ + +
[in]visitorA visitor implementation
+
+
+ +

Implements jmespath::ast::AbstractNode.

+ +
+
+ +
+
+ + + + + + + + +
bool jmespath::ast::RawStringNode::operator== (const RawStringNodeother) const
+
+ +

Equality compares this node to the other.

+
Parameters
+ + +
[in]otherThe node that should be compared.
+
+
+
Returns
Returns true if this object is equal to the other, otherwise false
+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
String jmespath::ast::RawStringNode::rawString
+
+ +

The raw string value.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classjmespath_1_1ast_1_1_raw_string_node.png b/classjmespath_1_1ast_1_1_raw_string_node.png new file mode 100644 index 0000000000000000000000000000000000000000..f2eaa5bb756d7d989f308781e2d099add57a7d2d GIT binary patch literal 775 zcmeAS@N?(olHy`uVBq!ia0vp^8-O@~gBeKn>GHn=QW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;z@qLn;{G&b^(dt;pjlUcKbsfA#q) zhmStHG|9_^y)&assK=1IzcGB>>s@6+(^cLsX4di4E^ScFTxwG=Vafcj1=7{G=KbFP z`7Qq$!P@fUKf@*GvGSEC3+?#&SMrDJqyi_NkALbSy5Ihs%2OCq*jsN~aJBaQMYo;~ z)mfRnjqwkazx)-R{yx`nQ-9N|;|v}LZB7R8=lZH$Fqh2JICJOP^2)2FqE;{bRDz=% zH~IfIX8!YM%A^zdtJ!0Ai)GJ!X=KoD^y2F3trEqO>lXbikGJtU+*dqp*~3f!WH+e% zJ~PE-dz6W#;CG84>c#2r9PeIw`@~lEiVE2m2ZQ}+AGXIcCE`+X4JVTe!%Y*?~m8n#*gkc z$nU8Z%xACh<80V!b$|gFGK^ub7?{^wVPuO~$;`7Mh+QIKDWAasFWH2Ksi+G4<_kF8 z@MLMIErIF@VVn1)Zbz?e@%g=T8MR!iUuD;3> zra9B9jIUhODKL(GxCI!rr$Wvh->>%k)|CzMu2tE2ll~pLJ>Rh4mb6|))n2(BWna6u zH2>jhJFwK~tiR_0gTti-)0_BaNk8{inwA}`mCw*`7Q5ZRdK=r0s0{WqDYXo9x~_)3 zP2uJD@7$uTeSOR9Pt!`5x6HjD5)eA?XyLyp3>ja`%^zOz`OjTY{DtAmlm_*6`VFO0 ucb+o%y^lM~Ab%AWTIW|Qv + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::ast::SliceExpressionNode Member List
+
+
+ +

This is the complete list of members for jmespath::ast::SliceExpressionNode, including all inherited members.

+ + + + + + + + + + + + +
AbstractNode()=defaultjmespath::ast::AbstractNode
AbstractNode(const AbstractNode &)=defaultjmespath::ast::AbstractNode
accept(interpreter::AbstractVisitor *visitor) const overridejmespath::ast::SliceExpressionNodevirtual
IndexType typedefjmespath::ast::SliceExpressionNode
operator=(const AbstractNode &)=defaultjmespath::ast::AbstractNode
operator==(const SliceExpressionNode &other) const jmespath::ast::SliceExpressionNode
SliceExpressionNode(const IndexType &startIndex=boost::none, const IndexType &stopIndex=boost::none, const IndexType &stepIndex=boost::none)jmespath::ast::SliceExpressionNode
startjmespath::ast::SliceExpressionNode
stepjmespath::ast::SliceExpressionNode
stopjmespath::ast::SliceExpressionNode
~AbstractNode()jmespath::ast::AbstractNodevirtual
+ + + + diff --git a/classjmespath_1_1ast_1_1_slice_expression_node.html b/classjmespath_1_1ast_1_1_slice_expression_node.html new file mode 100644 index 0000000..9adc63b --- /dev/null +++ b/classjmespath_1_1ast_1_1_slice_expression_node.html @@ -0,0 +1,331 @@ + + + + + + +jmespath.cpp: jmespath::ast::SliceExpressionNode Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast::SliceExpressionNode Class Reference
+
+
+ +

The SliceExpressionNode class represents a JMESPath slice expression. + More...

+ +

#include <sliceexpressionnode.h>

+
+Inheritance diagram for jmespath::ast::SliceExpressionNode:
+
+
+ + +jmespath::ast::AbstractNode + +
+ + + + +

+Public Types

using IndexType = boost::optional< Index >
 
+ + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 SliceExpressionNode (const IndexType &startIndex=boost::none, const IndexType &stopIndex=boost::none, const IndexType &stepIndex=boost::none)
 Constructs a SliceExpressionNode object with the given index values. More...
 
void accept (interpreter::AbstractVisitor *visitor) const override
 Calls the visit method of the given visitor with the dynamic type of the node. More...
 
bool operator== (const SliceExpressionNode &other) const
 Equality compares this node to the other. More...
 
- Public Member Functions inherited from jmespath::ast::AbstractNode
 AbstractNode ()=default
 Constructs an AbstractNode object. More...
 
 AbstractNode (const AbstractNode &)=default
 Copy-constructs an AbstractNode object. More...
 
virtual ~AbstractNode ()
 Destroys the AbstractNode object. More...
 
AbstractNodeoperator= (const AbstractNode &)=default
 Copy-assigns the other object to this object. More...
 
+ + + + + + + + + + +

+Public Attributes

IndexType start
 Inclusive start index. More...
 
IndexType stop
 Exclusive end index. More...
 
IndexType step
 Step index. More...
 
+

Detailed Description

+

The SliceExpressionNode class represents a JMESPath slice expression.

+

Member Typedef Documentation

+ +
+
+ + + + +
using jmespath::ast::SliceExpressionNode::IndexType = boost::optional<Index>
+
+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
jmespath::ast::SliceExpressionNode::SliceExpressionNode (const IndexTypestartIndex = boost::none,
const IndexTypestopIndex = boost::none,
const IndexTypestepIndex = boost::none 
)
+
+ +

Constructs a SliceExpressionNode object with the given index values.

+
Parameters
+ + + + +
[in]startIndexInclusive start index of slice.
[in]stopIndexExclusive end index of slice.
[in]stepIndexStep index of slice.
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::ast::SliceExpressionNode::accept (interpreter::AbstractVisitorvisitor) const
+
+overridevirtual
+
+ +

Calls the visit method of the given visitor with the dynamic type of the node.

+
Parameters
+ + +
visitorA visitor implementation
+
+
+ +

Implements jmespath::ast::AbstractNode.

+ +
+
+ +
+
+ + + + + + + + +
bool jmespath::ast::SliceExpressionNode::operator== (const SliceExpressionNodeother) const
+
+ +

Equality compares this node to the other.

+
Parameters
+ + +
otherThe node that should be compared.
+
+
+
Returns
Returns true if this object is equal to the other, otherwise false
+ +
+
+

Member Data Documentation

+ +
+
+ + + + +
IndexType jmespath::ast::SliceExpressionNode::start
+
+ +

Inclusive start index.

+ +
+
+ +
+
+ + + + +
IndexType jmespath::ast::SliceExpressionNode::step
+
+ +

Step index.

+ +
+
+ +
+
+ + + + +
IndexType jmespath::ast::SliceExpressionNode::stop
+
+ +

Exclusive end index.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classjmespath_1_1ast_1_1_slice_expression_node.png b/classjmespath_1_1ast_1_1_slice_expression_node.png new file mode 100644 index 0000000000000000000000000000000000000000..f1e4f2212b9e3cef2cc23ae79e041a534ec434e3 GIT binary patch literal 816 zcmeAS@N?(olHy`uVBq!ia0vp^7lAl{gBeI};7C{iq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0_ItWGhEy=VoqMt9u>y}P|8?WP|NZaX zIOgVIQF!|eU*gMxY-R3)jtll|(m8E3B|;@r!B@%iRrF+!Nx!ZYFH-Sb|FvNEw=MDC zzMtA|`=KYIe&6PK+n>D93%q4*-nr<#bjP-(a<6?W`@a4^9F_BW|KSP8MX&#f65e_K zw~S#@n#M&R|4Fl|e7BsPzw(>=y#u$Vsob9OWOn4jDL&Rbbr~iz9VT75(ks)NI_qfU z{DN73d{?ZHnt0}=@1)$1ik`W(%^82Sm%p-!O&HCM&;?w^-am(;KQ-}9pCuKa9e&tE18?>A>ePD@o`{3Be; z$g}ie$G&}T&Qg6Z7)>NDRk&=v#`tBOC(DKHYJv{;XSp!cW(zTXSxZRZkB{b3lPMky z%$YFNev4)&@NdsP|0#8~W$yc!2@G-CeR(r#-&b4ia^JEyX2-vGK5wcEyEA70k8rtn zWY2l`^uN2NR_{J~Y-`Tm$~;A%mRCMg5`N!FyOsRO=uJh)v#VKE^D?AM*F4I39&Nx9 zemJ4y%unOW)lE~?mt0sC>1<+b@=QbTpyllKy^}N6K9ifd=1u2`-SZmSa@Jg{i^;tl zyy)4S-y1)>+`HN=waD1%Y|PmJp&ak-dY9srX45TK={Mb8yo)X5_DgN&xr+;q+e}@Z zvAuJhmhQ-LaLs*Oa=yELdl`X07(s_kppmzX=Ov z&7Ey_&8mKT{uQf+75D$vG1y%Gy|~}IMD}NLF^fS9JUIWhdTTCi{KEcCNyqxn&cK(z PgTe~DWM4fpp%J8 literal 0 HcmV?d00001 diff --git a/classjmespath_1_1ast_1_1_subexpression_node-members.html b/classjmespath_1_1ast_1_1_subexpression_node-members.html new file mode 100644 index 0000000..fa42cc8 --- /dev/null +++ b/classjmespath_1_1ast_1_1_subexpression_node-members.html @@ -0,0 +1,121 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::ast::SubexpressionNode Member List
+
+
+ +

This is the complete list of members for jmespath::ast::SubexpressionNode, including all inherited members.

+ + + + + + + + + + + + + + + +
AbstractNode()=defaultjmespath::ast::AbstractNode
AbstractNode(const AbstractNode &)=defaultjmespath::ast::AbstractNode
accept(interpreter::AbstractVisitor *visitor) const overridejmespath::ast::BinaryExpressionNodevirtual
BinaryExpressionNode()jmespath::ast::BinaryExpressionNode
BinaryExpressionNode(const ExpressionNode &left, const ExpressionNode &right)jmespath::ast::BinaryExpressionNode
isProjection() const overridejmespath::ast::SubexpressionNodevirtual
leftExpressionjmespath::ast::BinaryExpressionNode
operator=(const AbstractNode &)=defaultjmespath::ast::AbstractNode
operator==(const BinaryExpressionNode &other) const jmespath::ast::BinaryExpressionNode
rightExpressionjmespath::ast::BinaryExpressionNode
stopsProjection() const overridejmespath::ast::SubexpressionNodevirtual
SubexpressionNode()jmespath::ast::SubexpressionNode
SubexpressionNode(const ExpressionNode &expression, const ExpressionNode &subexpression={})jmespath::ast::SubexpressionNode
~AbstractNode()jmespath::ast::AbstractNodevirtual
+ + + + diff --git a/classjmespath_1_1ast_1_1_subexpression_node.html b/classjmespath_1_1ast_1_1_subexpression_node.html new file mode 100644 index 0000000..02b108a --- /dev/null +++ b/classjmespath_1_1ast_1_1_subexpression_node.html @@ -0,0 +1,290 @@ + + + + + + +jmespath.cpp: jmespath::ast::SubexpressionNode Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast::SubexpressionNode Class Reference
+
+
+ +

The SubexpressionNode class represents a JMESPath subexpression. + More...

+ +

#include <subexpressionnode.h>

+
+Inheritance diagram for jmespath::ast::SubexpressionNode:
+
+
+ + +jmespath::ast::BinaryExpressionNode +jmespath::ast::AbstractNode + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 SubexpressionNode ()
 Constructs an empty SubexpressionNode object. More...
 
 SubexpressionNode (const ExpressionNode &expression, const ExpressionNode &subexpression={})
 Constructs an SubexpressionNode object with the given left hand side expression and a right hand side subexpression. More...
 
bool isProjection () const override
 Returns whather this expression requires the projection of subsequent expressions. More...
 
bool stopsProjection () const override
 Reports whether the node should stop an ongoing projection or not. More...
 
- Public Member Functions inherited from jmespath::ast::BinaryExpressionNode
 BinaryExpressionNode ()
 Constructs an empty BinaryExpressionNode object. More...
 
 BinaryExpressionNode (const ExpressionNode &left, const ExpressionNode &right)
 Constructs a BinaryExpressionNode object with the given leftExpressin and rightExpression as its children. More...
 
bool operator== (const BinaryExpressionNode &other) const
 Equality compares this node to the other. More...
 
void accept (interpreter::AbstractVisitor *visitor) const override
 Calls the accept method with the given visitor as the parameter on the node's child expressions. More...
 
- Public Member Functions inherited from jmespath::ast::AbstractNode
 AbstractNode ()=default
 Constructs an AbstractNode object. More...
 
 AbstractNode (const AbstractNode &)=default
 Copy-constructs an AbstractNode object. More...
 
virtual ~AbstractNode ()
 Destroys the AbstractNode object. More...
 
AbstractNodeoperator= (const AbstractNode &)=default
 Copy-assigns the other object to this object. More...
 
+ + + + + + + + +

+Additional Inherited Members

- Public Attributes inherited from jmespath::ast::BinaryExpressionNode
ExpressionNode leftExpression
 The left hand expression of the node. More...
 
ExpressionNode rightExpression
 The right hand expression of the node. More...
 
+

Detailed Description

+

The SubexpressionNode class represents a JMESPath subexpression.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
jmespath::ast::SubexpressionNode::SubexpressionNode ()
+
+ +

Constructs an empty SubexpressionNode object.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
jmespath::ast::SubexpressionNode::SubexpressionNode (const ExpressionNodeexpression,
const ExpressionNodesubexpression = {} 
)
+
+ +

Constructs an SubexpressionNode object with the given left hand side expression and a right hand side subexpression.

+
Parameters
+ + + +
[in]expressionThe node's left hand side child expression
[in]subexpressionThe node's right hand side child expression
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
bool jmespath::ast::SubexpressionNode::isProjection () const
+
+overridevirtual
+
+ +

Returns whather this expression requires the projection of subsequent expressions.

+
Returns
Returns true if projection is required, otherwise returns false.
+ +

Implements jmespath::ast::BinaryExpressionNode.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
bool jmespath::ast::SubexpressionNode::stopsProjection () const
+
+overridevirtual
+
+ +

Reports whether the node should stop an ongoing projection or not.

+
Returns
Returns true if the node should stop an ongoing projection, otherwise returns false.
+ +

Implements jmespath::ast::BinaryExpressionNode.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classjmespath_1_1ast_1_1_subexpression_node.png b/classjmespath_1_1ast_1_1_subexpression_node.png new file mode 100644 index 0000000000000000000000000000000000000000..f8c8955c939f2bd6ec142fae016fd399942b667a GIT binary patch literal 1209 zcmeAS@N?(olHy`uVBq!ia0vp^w}7~VgBeI}Yh@J$QW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;PbG;pNT7gYBf(m(~Byav%q1{wN2-= z(GrG#bL1G3vtqU!Pmb7Dcrk2K;7vBS*|I_k^VFmqOnglmGG=8kTr|1Juqbm8qswI% z=8k2ZYy!T*yb80>6zp4&8ad7IsFJ60)*{a!pjOYWWx~3im$KL9U7z=S_Lo1^q9w(< zcIHTDnqPVL>*d{5cU^XGjx1lPvhwOa&FvSq%_)9#JWtMgzWluW>-9Ga-qn`rnw~iQ z&T;jG-&$$iT|fVXt)0L5#I?g8d6MUxo$P))O}6{lk#9@1qbI!y2ulC5{JDGd-&5x; zRZjM4E#Q3Y^kvnxC$oi%>`Gs1hu2?!^)l>vtafT4-`AyCfxn*3zql*=o%*H4mDj&H z+&;u&Ve#r{^&0r@enKQg^t)mx$;aQqrD z^efqQqoeky?0hJB=jfh71%2z3cgE+wazxJxc)l*xzIk)CsqCe-_scx)bL5qHcxHY5 zUstEHGF1K9_vt^iGxko{-(DvB^LKWc^1r03Dw#Uqkm^+PytrkN?&(cDnho~L*$>Q+ z5`X(qVp?v@mZ>=*+Zr#XwX<|A#}V>4qefq2>6Bw4oCz+lc)YUUu1f6Pb+)HxuMONQ z{rh-HnRD*DvQlYM0*(;~~y~8|Ppz`OO zoSBhpXRU32Jg>mee(kfDqPN7JM%4blvG&}w1AIbtDL?*fd!B9c+wsqnM^Bv@(!Q*| z_9Xh!>Y7(4r)HNn%*x>^XPT2UAuUXQr~idMy@2Nv`h#W9?lwD8_P;u@Ut;OCpQY~~ z8$GiQ-R*UL;Z$~O{rI0|yVbgGuekP@Rmx%QZ1zu&7MWz^dGp-57ys%_QGN!03X`=> z^X?h)GAB;+&HUX{Y&&hE?~1Hs`*M%%akmx!9{s<-nQ6268!C}26m;OXk;vd$@?2>{MFPqhF5 literal 0 HcmV?d00001 diff --git a/classjmespath_1_1ast_1_1_variant_node-members.html b/classjmespath_1_1ast_1_1_variant_node-members.html new file mode 100644 index 0000000..f255c0a --- /dev/null +++ b/classjmespath_1_1ast_1_1_variant_node-members.html @@ -0,0 +1,121 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::ast::VariantNode< VariantT > Member List
+
+ + + + + diff --git a/classjmespath_1_1ast_1_1_variant_node.html b/classjmespath_1_1ast_1_1_variant_node.html new file mode 100644 index 0000000..4457fee --- /dev/null +++ b/classjmespath_1_1ast_1_1_variant_node.html @@ -0,0 +1,478 @@ + + + + + + +jmespath.cpp: jmespath::ast::VariantNode< VariantT > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast::VariantNode< VariantT > Class Template Reference
+
+
+ +

The VariantNode class serves as a container node which can represent either one of the node types specified in the classes template argument list. + More...

+ +

#include <variantnode.h>

+
+Inheritance diagram for jmespath::ast::VariantNode< VariantT >:
+
+
+ + +jmespath::ast::AbstractNode + +
+ + + + + +

+Public Types

using ValueType = boost::variant< boost::blank, VariantT...>
 The internal variant type which stores the nodes defined in VariantT or boost::blank if it's empty. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 VariantNode ()
 Constructs an empty VariantNode object. More...
 
 VariantNode (const VariantNode &)=default
 Copy-constructs an VariantNode object. More...
 
template<typename T >
 VariantNode (const T &other)
 Copy constructs a VariantNode object if T is VariantNode or constructs a VariantNode object with T as the represented node type with the value given in other. More...
 
VariantNode< VariantT...> & operator= (const VariantNode &other)
 Assigns the other object's value to this object. More...
 
template<typename T >
VariantNode< VariantT...> & operator= (const T &other)
 Assigns the value of the other object to this object's internal variant making it the node that this object represents. More...
 
bool operator== (const VariantNode &other) const
 Equality compares this node to the other. More...
 
bool isNull () const
 Returns whether this object has been initialized. More...
 
void accept (interpreter::AbstractVisitor *visitor) const override
 Accepts the given visitor object. More...
 
- Public Member Functions inherited from jmespath::ast::AbstractNode
 AbstractNode ()=default
 Constructs an AbstractNode object. More...
 
 AbstractNode (const AbstractNode &)=default
 Copy-constructs an AbstractNode object. More...
 
virtual ~AbstractNode ()
 Destroys the AbstractNode object. More...
 
AbstractNodeoperator= (const AbstractNode &)=default
 Copy-assigns the other object to this object. More...
 
+ + + + +

+Public Attributes

ValueType value
 The variable which stores the node that this object represents. More...
 
+

Detailed Description

+

template<typename... VariantT>
+class jmespath::ast::VariantNode< VariantT >

+ +

The VariantNode class serves as a container node which can represent either one of the node types specified in the classes template argument list.

+
Template Parameters
+ + +
VariantTThe list of types that the VariantNode can represent
+
+
+

Member Typedef Documentation

+ +
+
+
+template<typename... VariantT>
+ + + + +
using jmespath::ast::VariantNode< VariantT >::ValueType = boost::variant<boost::blank, VariantT...>
+
+ +

The internal variant type which stores the nodes defined in VariantT or boost::blank if it's empty.

+ +
+
+

Constructor & Destructor Documentation

+ +
+
+
+template<typename... VariantT>
+ + + + + +
+ + + + + + + +
jmespath::ast::VariantNode< VariantT >::VariantNode ()
+
+inline
+
+ +

Constructs an empty VariantNode object.

+ +
+
+ +
+
+
+template<typename... VariantT>
+ + + + + +
+ + + + + + + + +
jmespath::ast::VariantNode< VariantT >::VariantNode (const VariantNode< VariantT > & )
+
+default
+
+ +

Copy-constructs an VariantNode object.

+ +
+
+ +
+
+
+template<typename... VariantT>
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
jmespath::ast::VariantNode< VariantT >::VariantNode (const T & other)
+
+inline
+
+ +

Copy constructs a VariantNode object if T is VariantNode or constructs a VariantNode object with T as the represented node type with the value given in other.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename... VariantT>
+ + + + + +
+ + + + + + + + +
void jmespath::ast::VariantNode< VariantT >::accept (interpreter::AbstractVisitorvisitor) const
+
+inlineoverridevirtual
+
+ +

Accepts the given visitor object.

+

Subclasses should implement this function by calling the visit method of the visitor with a pointer to the node object itself and the accept method of the node's member nodes with the visitor as the parameter.

+
Parameters
+ + +
[in]visitorAn interpreter::AbstractVisitor object
+
+
+ +

Implements jmespath::ast::AbstractNode.

+ +
+
+ +
+
+
+template<typename... VariantT>
+ + + + + +
+ + + + + + + +
bool jmespath::ast::VariantNode< VariantT >::isNull () const
+
+inline
+
+ +

Returns whether this object has been initialized.

+
Returns
Returns true if some node's value has been assigned to this object, or false if this object doesn't yet represents any node.
+ +
+
+ +
+
+
+template<typename... VariantT>
+ + + + + +
+ + + + + + + + +
VariantNode<VariantT...>& jmespath::ast::VariantNode< VariantT >::operator= (const VariantNode< VariantT > & other)
+
+inline
+
+ +

Assigns the other object's value to this object.

+
Parameters
+ + +
[in]otherThe object whos value should be assigned to this object.
+
+
+
Returns
Returns a reference to this object.
+ +
+
+ +
+
+
+template<typename... VariantT>
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
VariantNode<VariantT...>& jmespath::ast::VariantNode< VariantT >::operator= (const T & other)
+
+inline
+
+ +

Assigns the value of the other object to this object's internal variant making it the node that this object represents.

+ +
+
+ +
+
+
+template<typename... VariantT>
+ + + + + +
+ + + + + + + + +
bool jmespath::ast::VariantNode< VariantT >::operator== (const VariantNode< VariantT > & other) const
+
+inline
+
+ +

Equality compares this node to the other.

+
Parameters
+ + +
[in]otherThe node that should be compared.
+
+
+
Returns
Returns true if this object is equal to the other, otherwise false
+ +
+
+

Member Data Documentation

+ +
+
+
+template<typename... VariantT>
+ + + + +
ValueType jmespath::ast::VariantNode< VariantT >::value
+
+ +

The variable which stores the node that this object represents.

+ +
+
+
The documentation for this class was generated from the following file:
    +
  • /home/travis/build/robertmrk/jmespath.cpp/src/ast/variantnode.h
  • +
+
+ + + + diff --git a/classjmespath_1_1ast_1_1_variant_node.png b/classjmespath_1_1ast_1_1_variant_node.png new file mode 100644 index 0000000000000000000000000000000000000000..e8c640766dbd9099a7d5075b8adfd913a67ecf82 GIT binary patch literal 816 zcmeAS@N?(olHy`uVBq!ia0vp^FMv3JgBeJwygLaJkO=SzasB`QKS=J)*V6t&6M!r* zK5*awYv&z#AeW;g$S;@ys0akEo(eHyU|`zs>Eakt!T5IW?MaUncwG43uKM}kKTiFb zlAhlOpVYE&HCJ^*v0Of;pHp*hZ?o?3o%AQW(QA^rZh+^fC6yNxJl}6^pX+|h`uKmX zG8+TyYunYIf8N-0uBq*DlF*j^zcMc-D2uZr(*} zw=Iv-)~URlyROl0xoBel{2g~n<0s?<2i!h$WNAXwtBm$>(Y|CU8U{mB@DN80us3=f;;`t+K+4{||yn@zu>zjD~;*MG{X;oR@W8KA*zQ`j&K(^%ewzq6dKT2yE z?>Lq-{{6L!^JT0<`MK%|_t;88V;SP37BI});=pK=*~nCJiHY^Y5>~DUp4=h_CW~n_ z00WW1A5FoJDNY;@`IH!bT!$%^ESXf!Z{2^UywBb@!CbHUYWcB$o2RWj#uU1H)vmncOy@CuHwG%`c}2rgZWq9I-D=ulPYpxGc4S0IXZJZ cWc$VJJj3AA&6S=jfytY})78&qol`;+0Hxh^S^xk5 literal 0 HcmV?d00001 diff --git a/classjmespath_1_1ast_1_1_variant_visitor_adaptor-members.html b/classjmespath_1_1ast_1_1_variant_visitor_adaptor-members.html new file mode 100644 index 0000000..7e34ecb --- /dev/null +++ b/classjmespath_1_1ast_1_1_variant_visitor_adaptor-members.html @@ -0,0 +1,111 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::ast::VariantVisitorAdaptor Member List
+
+
+ +

This is the complete list of members for jmespath::ast::VariantVisitorAdaptor, including all inherited members.

+ + + + + +
m_visitorjmespath::ast::VariantVisitorAdaptorprivate
operator()(const T &variant) const jmespath::ast::VariantVisitorAdaptorinline
operator()(const boost::blank &) const jmespath::ast::VariantVisitorAdaptorinline
VariantVisitorAdaptor(interpreter::AbstractVisitor *visitor)jmespath::ast::VariantVisitorAdaptor
+ + + + diff --git a/classjmespath_1_1ast_1_1_variant_visitor_adaptor.html b/classjmespath_1_1ast_1_1_variant_visitor_adaptor.html new file mode 100644 index 0000000..bc8d7d2 --- /dev/null +++ b/classjmespath_1_1ast_1_1_variant_visitor_adaptor.html @@ -0,0 +1,256 @@ + + + + + + +jmespath.cpp: jmespath::ast::VariantVisitorAdaptor Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast::VariantVisitorAdaptor Class Reference
+
+
+ +

The VariantVisitorAdaptor class adapts an AbstractVisitor implementation to the boost::static_visitor interface, so it can be used to visit boost::variant objects. + More...

+ +

#include <variantvisitoradaptor.h>

+
+Inheritance diagram for jmespath::ast::VariantVisitorAdaptor:
+
+
+ + + +
+ + + + + + + + + + + + +

+Public Member Functions

 VariantVisitorAdaptor (interpreter::AbstractVisitor *visitor)
 Constructs a VariantVisitorAdaptor object with the given visitor. More...
 
template<typename T >
void operator() (const T &variant) const
 Calls the appropriate visit method of the visitor object with the address of the variant object. More...
 
void operator() (const boost::blank &) const
 Does nothing, defined to ignore empty variants and to avoid calling the visitor object with a blank value. More...
 
+ + + + +

+Private Attributes

interpreter::AbstractVisitorm_visitor
 The visitor object to which the visit calls will be forwarded. More...
 
+

Detailed Description

+

The VariantVisitorAdaptor class adapts an AbstractVisitor implementation to the boost::static_visitor interface, so it can be used to visit boost::variant objects.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + + +
jmespath::ast::VariantVisitorAdaptor::VariantVisitorAdaptor (interpreter::AbstractVisitorvisitor)
+
+ +

Constructs a VariantVisitorAdaptor object with the given visitor.

+
Parameters
+ + +
[in]visitorThe visitor object to which the visit calls will be forwarded.
+
+
+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void jmespath::ast::VariantVisitorAdaptor::operator() (const T & variant) const
+
+inline
+
+ +

Calls the appropriate visit method of the visitor object with the address of the variant object.

+
Parameters
+ + +
[in]variantThe object that the visitor should visit.
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::ast::VariantVisitorAdaptor::operator() (const boost::blank & ) const
+
+inline
+
+ +

Does nothing, defined to ignore empty variants and to avoid calling the visitor object with a blank value.

+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
interpreter::AbstractVisitor* jmespath::ast::VariantVisitorAdaptor::m_visitor
+
+private
+
+ +

The visitor object to which the visit calls will be forwarded.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classjmespath_1_1ast_1_1_variant_visitor_adaptor.png b/classjmespath_1_1ast_1_1_variant_visitor_adaptor.png new file mode 100644 index 0000000000000000000000000000000000000000..5d3799b6f4883382a80dddf328907447e46b7597 GIT binary patch literal 755 zcmeAS@N?(olHy`uVBq!ia0vp^mw`BdgBeI}`MY5*kdg@S332`Z|38rV;?396{zDUh zEHFNB-~emq9eE&^qa?^Lm;tB=1g@S6F=Aj~YVve(45?szJNIJIYXu&c{HeGLdt~=rHk>hVn|J`nzbC9p#&Dqt}pJ&f`BdqdL_HNoO=8uY= z*Yb>(hP|2V`Fxte;q5@pRqEffe2(7qSRc8^)c)cvV^*dA+Md(D2ripoS7+?J%XCKH zmrs+6m+1uNANwJ=Ecin2oz+I3&u+!P3I1*qdTDLpJf}O8o}Rs3`_^Xbt9#${SEp=z za`jbQlGo1Xuji@kUA^09lF6=pXSam*CLLCJxj5=K&rplLBRWtl=785=IRLB6-!Pv9@D2u^9LINMQojIc>%w{kZ zrcm1`)}?yZR^7)Z{slm-1nho;>)cL5vi*` zuAhHb>Fe90_3t~bM;qA69rl{JJbB^Y((fCrOO6%l{Ip7A{WeWFKgMA1nM+RY-Tuq_ zCa-*N)%tqP>Nd80m1l~cY4)Vl+*%&I;NRrwdR3NBa%&<^?mATx_4voXTJ@t5&6&Tg zYnM*YwhYdU`oVj6>EtQT^xnD6Fr3piIos!{SV*jh^rUcp`K*1SxoQU2y8>2k&NnJO z7u>q?k67xXZ8Nn@WS9M`d}V0*I!;5W_2tH<)drd$H?I<&vt)%)g?z5m8J<0pXM8#L z + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::interpreter::AbstractVisitor Member List
+
+
+ +

This is the complete list of members for jmespath::interpreter::AbstractVisitor, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
visit(const ast::AbstractNode *node)=0jmespath::interpreter::AbstractVisitorpure virtual
visit(const ast::ExpressionNode *node)=0jmespath::interpreter::AbstractVisitorpure virtual
visit(const ast::IdentifierNode *node)=0jmespath::interpreter::AbstractVisitorpure virtual
visit(const ast::RawStringNode *node)=0jmespath::interpreter::AbstractVisitorpure virtual
visit(const ast::LiteralNode *node)=0jmespath::interpreter::AbstractVisitorpure virtual
visit(const ast::SubexpressionNode *node)=0jmespath::interpreter::AbstractVisitorpure virtual
visit(const ast::IndexExpressionNode *node)=0jmespath::interpreter::AbstractVisitorpure virtual
visit(const ast::ArrayItemNode *node)=0jmespath::interpreter::AbstractVisitorpure virtual
visit(const ast::FlattenOperatorNode *node)=0jmespath::interpreter::AbstractVisitorpure virtual
visit(const ast::BracketSpecifierNode *node)=0jmespath::interpreter::AbstractVisitorpure virtual
visit(const ast::SliceExpressionNode *node)=0jmespath::interpreter::AbstractVisitorpure virtual
visit(const ast::ListWildcardNode *node)=0jmespath::interpreter::AbstractVisitorpure virtual
visit(const ast::HashWildcardNode *node)=0jmespath::interpreter::AbstractVisitorpure virtual
visit(const ast::MultiselectListNode *node)=0jmespath::interpreter::AbstractVisitorpure virtual
visit(const ast::MultiselectHashNode *node)=0jmespath::interpreter::AbstractVisitorpure virtual
visit(const ast::NotExpressionNode *node)=0jmespath::interpreter::AbstractVisitorpure virtual
visit(const ast::ComparatorExpressionNode *node)=0jmespath::interpreter::AbstractVisitorpure virtual
visit(const ast::OrExpressionNode *node)=0jmespath::interpreter::AbstractVisitorpure virtual
visit(const ast::AndExpressionNode *node)=0jmespath::interpreter::AbstractVisitorpure virtual
visit(const ast::ParenExpressionNode *node)=0jmespath::interpreter::AbstractVisitorpure virtual
visit(const ast::PipeExpressionNode *node)=0jmespath::interpreter::AbstractVisitorpure virtual
visit(const ast::CurrentNode *node)=0jmespath::interpreter::AbstractVisitorpure virtual
visit(const ast::FilterExpressionNode *node)=0jmespath::interpreter::AbstractVisitorpure virtual
visit(const ast::FunctionExpressionNode *node)=0jmespath::interpreter::AbstractVisitorpure virtual
visit(const ast::ExpressionArgumentNode *node)=0jmespath::interpreter::AbstractVisitorpure virtual
~AbstractVisitor()jmespath::interpreter::AbstractVisitorvirtual
+ + + + diff --git a/classjmespath_1_1interpreter_1_1_abstract_visitor.html b/classjmespath_1_1interpreter_1_1_abstract_visitor.html new file mode 100644 index 0000000..9151b45 --- /dev/null +++ b/classjmespath_1_1interpreter_1_1_abstract_visitor.html @@ -0,0 +1,1087 @@ + + + + + + +jmespath.cpp: jmespath::interpreter::AbstractVisitor Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::interpreter::AbstractVisitor Class Referenceabstract
+
+
+ +

The AbstractVisitor class is an interface which defines the member functions required to visit every type of AST node. + More...

+ +

#include <abstractvisitor.h>

+
+Inheritance diagram for jmespath::interpreter::AbstractVisitor:
+
+
+ + +jmespath::interpreter::Interpreter + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

virtual ~AbstractVisitor ()
 Destroys the AbstractVisitor object. More...
 
virtual void visit (const ast::AbstractNode *node)=0
 Visits the given node. More...
 
virtual void visit (const ast::ExpressionNode *node)=0
 Visits the given node. More...
 
virtual void visit (const ast::IdentifierNode *node)=0
 Visits the given node. More...
 
virtual void visit (const ast::RawStringNode *node)=0
 Visits the given node. More...
 
virtual void visit (const ast::LiteralNode *node)=0
 Visits the given node. More...
 
virtual void visit (const ast::SubexpressionNode *node)=0
 Visits the given node. More...
 
virtual void visit (const ast::IndexExpressionNode *node)=0
 Visits the given node. More...
 
virtual void visit (const ast::ArrayItemNode *node)=0
 Visits the given node. More...
 
virtual void visit (const ast::FlattenOperatorNode *node)=0
 Visits the given node. More...
 
virtual void visit (const ast::BracketSpecifierNode *node)=0
 Visits the given node. More...
 
virtual void visit (const ast::SliceExpressionNode *node)=0
 Visits the given node. More...
 
virtual void visit (const ast::ListWildcardNode *node)=0
 Visits the given node. More...
 
virtual void visit (const ast::HashWildcardNode *node)=0
 Visits the given node. More...
 
virtual void visit (const ast::MultiselectListNode *node)=0
 Visits the given node. More...
 
virtual void visit (const ast::MultiselectHashNode *node)=0
 Visits the given node. More...
 
virtual void visit (const ast::NotExpressionNode *node)=0
 Visits the given node. More...
 
virtual void visit (const ast::ComparatorExpressionNode *node)=0
 Visits the given node. More...
 
virtual void visit (const ast::OrExpressionNode *node)=0
 Visits the given node. More...
 
virtual void visit (const ast::AndExpressionNode *node)=0
 Visits the given node. More...
 
virtual void visit (const ast::ParenExpressionNode *node)=0
 Visits the given node. More...
 
virtual void visit (const ast::PipeExpressionNode *node)=0
 Visits the given node. More...
 
virtual void visit (const ast::CurrentNode *node)=0
 Visits the given node. More...
 
virtual void visit (const ast::FilterExpressionNode *node)=0
 Visits the given node. More...
 
virtual void visit (const ast::FunctionExpressionNode *node)=0
 Visits the given node. More...
 
virtual void visit (const ast::ExpressionArgumentNode *node)=0
 Visits the given node. More...
 
+

Detailed Description

+

The AbstractVisitor class is an interface which defines the member functions required to visit every type of AST node.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
jmespath::interpreter::AbstractVisitor::~AbstractVisitor ()
+
+virtual
+
+ +

Destroys the AbstractVisitor object.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
virtual void jmespath::interpreter::AbstractVisitor::visit (const ast::AbstractNodenode)
+
+pure virtual
+
+ +

Visits the given node.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implemented in jmespath::interpreter::Interpreter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void jmespath::interpreter::AbstractVisitor::visit (const ast::ExpressionNodenode)
+
+pure virtual
+
+ +

Visits the given node.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implemented in jmespath::interpreter::Interpreter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void jmespath::interpreter::AbstractVisitor::visit (const ast::IdentifierNodenode)
+
+pure virtual
+
+ +

Visits the given node.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implemented in jmespath::interpreter::Interpreter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void jmespath::interpreter::AbstractVisitor::visit (const ast::RawStringNodenode)
+
+pure virtual
+
+ +

Visits the given node.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implemented in jmespath::interpreter::Interpreter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void jmespath::interpreter::AbstractVisitor::visit (const ast::LiteralNodenode)
+
+pure virtual
+
+ +

Visits the given node.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implemented in jmespath::interpreter::Interpreter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void jmespath::interpreter::AbstractVisitor::visit (const ast::SubexpressionNodenode)
+
+pure virtual
+
+ +

Visits the given node.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implemented in jmespath::interpreter::Interpreter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void jmespath::interpreter::AbstractVisitor::visit (const ast::IndexExpressionNodenode)
+
+pure virtual
+
+ +

Visits the given node.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implemented in jmespath::interpreter::Interpreter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void jmespath::interpreter::AbstractVisitor::visit (const ast::ArrayItemNodenode)
+
+pure virtual
+
+ +

Visits the given node.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implemented in jmespath::interpreter::Interpreter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void jmespath::interpreter::AbstractVisitor::visit (const ast::FlattenOperatorNodenode)
+
+pure virtual
+
+ +

Visits the given node.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implemented in jmespath::interpreter::Interpreter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void jmespath::interpreter::AbstractVisitor::visit (const ast::BracketSpecifierNodenode)
+
+pure virtual
+
+ +

Visits the given node.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implemented in jmespath::interpreter::Interpreter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void jmespath::interpreter::AbstractVisitor::visit (const ast::SliceExpressionNodenode)
+
+pure virtual
+
+ +

Visits the given node.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implemented in jmespath::interpreter::Interpreter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void jmespath::interpreter::AbstractVisitor::visit (const ast::ListWildcardNodenode)
+
+pure virtual
+
+ +

Visits the given node.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implemented in jmespath::interpreter::Interpreter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void jmespath::interpreter::AbstractVisitor::visit (const ast::HashWildcardNodenode)
+
+pure virtual
+
+ +

Visits the given node.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implemented in jmespath::interpreter::Interpreter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void jmespath::interpreter::AbstractVisitor::visit (const ast::MultiselectListNodenode)
+
+pure virtual
+
+ +

Visits the given node.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implemented in jmespath::interpreter::Interpreter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void jmespath::interpreter::AbstractVisitor::visit (const ast::MultiselectHashNodenode)
+
+pure virtual
+
+ +

Visits the given node.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implemented in jmespath::interpreter::Interpreter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void jmespath::interpreter::AbstractVisitor::visit (const ast::NotExpressionNodenode)
+
+pure virtual
+
+ +

Visits the given node.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implemented in jmespath::interpreter::Interpreter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void jmespath::interpreter::AbstractVisitor::visit (const ast::ComparatorExpressionNodenode)
+
+pure virtual
+
+ +

Visits the given node.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implemented in jmespath::interpreter::Interpreter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void jmespath::interpreter::AbstractVisitor::visit (const ast::OrExpressionNodenode)
+
+pure virtual
+
+ +

Visits the given node.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implemented in jmespath::interpreter::Interpreter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void jmespath::interpreter::AbstractVisitor::visit (const ast::AndExpressionNodenode)
+
+pure virtual
+
+ +

Visits the given node.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implemented in jmespath::interpreter::Interpreter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void jmespath::interpreter::AbstractVisitor::visit (const ast::ParenExpressionNodenode)
+
+pure virtual
+
+ +

Visits the given node.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implemented in jmespath::interpreter::Interpreter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void jmespath::interpreter::AbstractVisitor::visit (const ast::PipeExpressionNodenode)
+
+pure virtual
+
+ +

Visits the given node.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implemented in jmespath::interpreter::Interpreter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void jmespath::interpreter::AbstractVisitor::visit (const ast::CurrentNodenode)
+
+pure virtual
+
+ +

Visits the given node.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implemented in jmespath::interpreter::Interpreter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void jmespath::interpreter::AbstractVisitor::visit (const ast::FilterExpressionNodenode)
+
+pure virtual
+
+ +

Visits the given node.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implemented in jmespath::interpreter::Interpreter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void jmespath::interpreter::AbstractVisitor::visit (const ast::FunctionExpressionNodenode)
+
+pure virtual
+
+ +

Visits the given node.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implemented in jmespath::interpreter::Interpreter.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
virtual void jmespath::interpreter::AbstractVisitor::visit (const ast::ExpressionArgumentNodenode)
+
+pure virtual
+
+ +

Visits the given node.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implemented in jmespath::interpreter::Interpreter.

+ +
+
+
The documentation for this class was generated from the following files: +
+ + + + diff --git a/classjmespath_1_1interpreter_1_1_abstract_visitor.png b/classjmespath_1_1interpreter_1_1_abstract_visitor.png new file mode 100644 index 0000000000000000000000000000000000000000..c5de5899512a2cd20028d21c669badb2ecf3ddd7 GIT binary patch literal 778 zcmeAS@N?(olHy`uVBq!ia0vp^*MT^IgBeKf6%%+4q$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0W_r3fhEy=VotwC6i2_fHz0=h@|4+PL z;lQ+G@nX~H#F_5)qSn5*68?B|DDrSH9VnQwkKs?kFQyO8Z(c9i+nP4x>7&gD1e0gm zPk5`hZu1J`U+dy(r$+DlCZhN2*MVzaqt0(Po%V0PoSECq+jcy+Texn&f3oAP{`}Rm zyDt9F>dw0&lgUyhuN_pkcEiW5Uej;XKG~eMsCe%6)0S7Ns(PMOCnjn6-TdW#rLW-r_21#I=FD^XI>CBhP)x7TY6;JUd`6nj zPW+KudEGG3|M#ldL-VX%Y*h=GV%8JA5UAW5&eKUcR2KQ~%vEST)^6f0cDHUvO8MeAL6@`%km)Z{MBB z;Ga+ue>~G-z4!qKc(8oGZqOpo#(ZG?2PO%D=3iBNkC~XQSby}|gkx@BO@AvksQbh- z)EU$={y6xB^#S{3@dkN90tbALNIdTU&}Dc`zEMNTNM@P7prHMXeJ(D47QEK(=%_j7 zWPGORW8{L + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::interpreter::ContextValueVisitorAdaptor< VisitorT, ForceMove > Member List
+
+ + + + + diff --git a/classjmespath_1_1interpreter_1_1_context_value_visitor_adaptor.html b/classjmespath_1_1interpreter_1_1_context_value_visitor_adaptor.html new file mode 100644 index 0000000..08e3f00 --- /dev/null +++ b/classjmespath_1_1interpreter_1_1_context_value_visitor_adaptor.html @@ -0,0 +1,220 @@ + + + + + + +jmespath.cpp: jmespath::interpreter::ContextValueVisitorAdaptor< VisitorT, ForceMove > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::interpreter::ContextValueVisitorAdaptor< VisitorT, ForceMove > Class Template Reference
+
+
+ +

The ContextValueVisitorAdaptor class adapts a visitor object, which is callable with const lvalue reference of Json and with rvalue reference of Json objects, to ContextValue objects. + More...

+ +

#include <contextvaluevisitoradaptor.h>

+
+Inheritance diagram for jmespath::interpreter::ContextValueVisitorAdaptor< VisitorT, ForceMove >:
+
+
+ + + +
+ + + + + +

+Public Member Functions

 ContextValueVisitorAdaptor (VisitorT &&visitor)
 Constructs a ContextValueVisitorAdaptor object, adapting the visitor object to be able to consume ContextValue objects. More...
 
+ + + +

+Public Attributes

 m_visitor
 
+

Detailed Description

+

template<typename VisitorT, bool ForceMove = false>
+class jmespath::interpreter::ContextValueVisitorAdaptor< VisitorT, ForceMove >

+ +

The ContextValueVisitorAdaptor class adapts a visitor object, which is callable with const lvalue reference of Json and with rvalue reference of Json objects, to ContextValue objects.

+

Constructor & Destructor Documentation

+ +
+
+
+template<typename VisitorT , bool ForceMove = false>
+ + + + + +
+ + + + + + + + +
jmespath::interpreter::ContextValueVisitorAdaptor< VisitorT, ForceMove >::ContextValueVisitorAdaptor (VisitorT && visitor)
+
+inline
+
+ +

Constructs a ContextValueVisitorAdaptor object, adapting the visitor object to be able to consume ContextValue objects.

+
Parameters
+ + +
[in]visitorA visitor which is callable with const lvalue reference of Json and with rvalue reference of Json objects.
+
+
+ +
+
+

Member Data Documentation

+ +
+
+
+template<typename VisitorT , bool ForceMove = false>
+ + + + +
jmespath::interpreter::ContextValueVisitorAdaptor< VisitorT, ForceMove >::m_visitor
+
+Initial value:
{std::move(visitor)}
+
{
+
}
+
+
+
template <typename T>
+
std::enable_if_t<std::is_same<T, JsonRef>::value && ForceMove, void>
+
operator()(const T& value)
+
{
+
m_visitor(Json(value.get()));
+
}
+
+
+
template <typename T>
+
std::enable_if_t<std::is_same<T, JsonRef>::value && !ForceMove, void>
+
operator()(const T& value)
+
{
+
m_visitor(value.get());
+
}
+
+
+
void operator()(Json& value)
+
{
+
m_visitor(std::move(value));
+
}
+
+
private:
+
+
VisitorT m_visitor
+
+
+
+
The documentation for this class was generated from the following file: +
+ + + + diff --git a/classjmespath_1_1interpreter_1_1_context_value_visitor_adaptor.png b/classjmespath_1_1interpreter_1_1_context_value_visitor_adaptor.png new file mode 100644 index 0000000000000000000000000000000000000000..b660c67d60f919e050a712e90951ee7c8eea0349 GIT binary patch literal 1141 zcmeAS@N?(olHy`uVBq!ia0y~yU|a`e2XHV0$+9Dfr9es|z$e7@|Ns9$=8HF9OZyK^ z0J6aNz<~p-op#WAFU@$KB(WlOAhSiSXc{{Mgc zvUtuD=?jz3SZTO-n)7bc$q}6tZ)og2bEd0+ny04cuKhyORayfdOJyYbzh7N{MAb7LsN&0Jqnp{4*Zy9){cL00Jm+%{&ZeDS z5&r%1`*%-l9Vg|jpZ&P%_zm~yO{J4F^J9X3o!g zTPPawFMQIwbHJ?#CTCt~5jmiaOhJ9ee`KVt7!IMdQ_v(Gf2X=VCKxFXU;HjJTQO7t-vba*vYNXwQt`f zaR&iay#|e{3tn*yhEsMhFli<-wgf(6;#hoyRlp6Xs7FZLK?0}*7;p@UKm~_13aO#s zV*b(8v}s1h-3mMktOfNL791^|co6x+3~~^I@J1e)lf3#^lKs$2>KSEt~f!N+R zud546*LeRdT9nULcg-U~!%90Q)^gW_KRUZ*^tQL(o5+2$;KbTZ*-npx%Fa%^UU&3v zXX%XCx6S-FBG{ss4Xz(s;b;GB@f)B9;h29f=09ZmRyHa2c>49NNfyU4qj<7;#2T|N zuVTI}=Wsbf?g218wiQ3V^D{K&veCUMulvufOVHY7MmC@yUyTk?VJ!Ov~C{9P=Ubn)G`n=ZOP80OmO zH3Xh!Y}op*Na{fSg88v;_usC5^y}x2n by} + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::interpreter::Interpreter Member List
+
+
+ +

This is the complete list of members for jmespath::interpreter::Interpreter, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
abs(FunctionArgumentList &arguments)jmespath::interpreter::Interpreterprivate
adjustSliceEndpoint(size_t length, Index endpoint, Index step) const jmespath::interpreter::Interpreterprivate
ArgumentArityValidator typedefjmespath::interpreter::Interpreterprivate
avg(FunctionArgumentList &arguments)jmespath::interpreter::Interpreterprivate
ceil(FunctionArgumentList &arguments)jmespath::interpreter::Interpreterprivate
contains(FunctionArgumentList &arguments)jmespath::interpreter::Interpreterprivate
currentContext() const jmespath::interpreter::Interpreterinline
currentContextValue()jmespath::interpreter::Interpreterinline
endsWith(FunctionArgumentList &arguments)jmespath::interpreter::Interpreterprivate
evaluateArguments(const FunctionExpressionArgumentList &arguments, const std::shared_ptr< ContextValue > &contextValue)jmespath::interpreter::Interpreterprivate
evaluateLogicOperator(const ast::BinaryExpressionNode *node, bool shortCircuitValue)jmespath::interpreter::Interpreterprivate
evaluateProjection(const ast::ExpressionNode *expression)jmespath::interpreter::Interpretervirtual
evaluateProjection(const ast::ExpressionNode *expression, JsonT &&context)jmespath::interpreter::Interpreterprivate
floor(FunctionArgumentList &arguments)jmespath::interpreter::Interpreterprivate
Function typedefjmespath::interpreter::Interpreterprivate
FunctionArgument typedefjmespath::interpreter::Interpreterprivate
FunctionArgumentList typedefjmespath::interpreter::Interpreterprivate
FunctionDescriptor typedefjmespath::interpreter::Interpreterprivate
FunctionExpressionArgumentList typedefjmespath::interpreter::Interpreterprivate
getArgument(FunctionArgument &argument) const jmespath::interpreter::Interpreterprivate
getJsonArgument(FunctionArgument &argument) const jmespath::interpreter::Interpreterprivate
Interpreter()jmespath::interpreter::Interpreter
isComparableArray(const Json &array) const jmespath::interpreter::Interpreterprivate
join(FunctionArgumentList &arguments)jmespath::interpreter::Interpreterprivate
JsonComparator typedefjmespath::interpreter::Interpreterprivate
keys(FunctionArgumentList &arguments)jmespath::interpreter::Interpreterprivate
length(FunctionArgumentList &arguments)jmespath::interpreter::Interpreterprivate
m_contextjmespath::interpreter::Interpreterprivate
m_functionMapjmespath::interpreter::Interpreterprivate
map(FunctionArgumentList &arguments)jmespath::interpreter::Interpreterprivate
map(const ast::ExpressionNode *node, JsonT &&array)jmespath::interpreter::Interpreterprivate
max(FunctionArgumentList &arguments, const JsonComparator &comparator)jmespath::interpreter::Interpreterprivate
max(const JsonComparator *comparator, JsonT &&array)jmespath::interpreter::Interpreterprivate
maxBy(FunctionArgumentList &arguments, const JsonComparator &comparator=std::less< Json >{})jmespath::interpreter::Interpreterprivate
maxBy(const ast::ExpressionNode *expression, const JsonComparator *comparator, JsonT &&array)jmespath::interpreter::Interpreterprivate
merge(FunctionArgumentList &arguments)jmespath::interpreter::Interpreterprivate
mergeObject(Json *object, JsonT &&sourceObject)jmespath::interpreter::Interpreterprivate
notNull(FunctionArgumentList &arguments)jmespath::interpreter::Interpreterprivate
reverse(FunctionArgumentList &arguments)jmespath::interpreter::Interpreterprivate
reverse(Json &&subject)jmespath::interpreter::Interpreterprivate
setContext(JsonT &&value)jmespath::interpreter::Interpreterinline
sort(FunctionArgumentList &arguments)jmespath::interpreter::Interpreterprivate
sort(Json &&array)jmespath::interpreter::Interpreterprivate
sortBy(FunctionArgumentList &arguments)jmespath::interpreter::Interpreterprivate
sortBy(const ast::ExpressionNode *expression, Json &&array)jmespath::interpreter::Interpreterprivate
startsWith(FunctionArgumentList &arguments)jmespath::interpreter::Interpreterprivate
sum(FunctionArgumentList &arguments)jmespath::interpreter::Interpreterprivate
toArray(FunctionArgumentList &arguments)jmespath::interpreter::Interpreterprivate
toArray(JsonT &&value)jmespath::interpreter::Interpreterprivate
toBoolean(const Json &json) const jmespath::interpreter::Interpreterprivate
toNumber(FunctionArgumentList &arguments)jmespath::interpreter::Interpreterprivate
toNumber(JsonT &&value)jmespath::interpreter::Interpreterprivate
toString(FunctionArgumentList &arguments)jmespath::interpreter::Interpreterprivate
toString(JsonT &&value)jmespath::interpreter::Interpreterprivate
type(FunctionArgumentList &arguments)jmespath::interpreter::Interpreterprivate
values(FunctionArgumentList &arguments)jmespath::interpreter::Interpreterprivate
values(JsonT &&object)jmespath::interpreter::Interpreterprivate
visit(const ast::AbstractNode *node) overridejmespath::interpreter::Interpretervirtual
visit(const ast::ExpressionNode *node) overridejmespath::interpreter::Interpretervirtual
visit(const ast::IdentifierNode *node) overridejmespath::interpreter::Interpretervirtual
visit(const ast::RawStringNode *node) overridejmespath::interpreter::Interpretervirtual
visit(const ast::LiteralNode *node) overridejmespath::interpreter::Interpretervirtual
visit(const ast::SubexpressionNode *node) overridejmespath::interpreter::Interpretervirtual
visit(const ast::IndexExpressionNode *node) overridejmespath::interpreter::Interpretervirtual
visit(const ast::ArrayItemNode *node) overridejmespath::interpreter::Interpretervirtual
visit(const ast::FlattenOperatorNode *) overridejmespath::interpreter::Interpretervirtual
visit(const ast::BracketSpecifierNode *node) overridejmespath::interpreter::Interpretervirtual
visit(const ast::SliceExpressionNode *node) overridejmespath::interpreter::Interpretervirtual
visit(const ast::ListWildcardNode *) overridejmespath::interpreter::Interpretervirtual
visit(const ast::HashWildcardNode *node) overridejmespath::interpreter::Interpretervirtual
visit(const ast::MultiselectListNode *node) overridejmespath::interpreter::Interpretervirtual
visit(const ast::MultiselectHashNode *node) overridejmespath::interpreter::Interpretervirtual
visit(const ast::NotExpressionNode *node) overridejmespath::interpreter::Interpretervirtual
visit(const ast::ComparatorExpressionNode *node) overridejmespath::interpreter::Interpretervirtual
visit(const ast::OrExpressionNode *node) overridejmespath::interpreter::Interpretervirtual
visit(const ast::AndExpressionNode *node) overridejmespath::interpreter::Interpretervirtual
visit(const ast::ParenExpressionNode *node) overridejmespath::interpreter::Interpretervirtual
visit(const ast::PipeExpressionNode *node) overridejmespath::interpreter::Interpretervirtual
visit(const ast::CurrentNode *) overridejmespath::interpreter::Interpretervirtual
visit(const ast::FilterExpressionNode *node) overridejmespath::interpreter::Interpretervirtual
visit(const ast::FunctionExpressionNode *node) overridejmespath::interpreter::Interpretervirtual
visit(const ast::ExpressionArgumentNode *) overridejmespath::interpreter::Interpretervirtual
visit(const ast::IdentifierNode *node, JsonT &&context)jmespath::interpreter::Interpreterprivate
visit(const ast::ArrayItemNode *node, JsonT &&context)jmespath::interpreter::Interpreterprivate
visit(const ast::FlattenOperatorNode *node, JsonT &&context)jmespath::interpreter::Interpreterprivate
visit(const ast::SliceExpressionNode *node, JsonT &&context)jmespath::interpreter::Interpreterprivate
visit(const ast::HashWildcardNode *node, JsonT &&context)jmespath::interpreter::Interpreterprivate
visit(const ast::FilterExpressionNode *node, JsonT &&context)jmespath::interpreter::Interpreterprivate
~AbstractVisitor()jmespath::interpreter::AbstractVisitorvirtual
+ + + + diff --git a/classjmespath_1_1interpreter_1_1_interpreter.html b/classjmespath_1_1interpreter_1_1_interpreter.html new file mode 100644 index 0000000..01465e2 --- /dev/null +++ b/classjmespath_1_1interpreter_1_1_interpreter.html @@ -0,0 +1,3724 @@ + + + + + + +jmespath.cpp: jmespath::interpreter::Interpreter Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::interpreter::Interpreter Class Reference
+
+
+ +

The Interpreter class evaluates the AST structure on a Json context. + More...

+ +

#include <interpreter.h>

+
+Inheritance diagram for jmespath::interpreter::Interpreter:
+
+
+ + +jmespath::interpreter::AbstractVisitor + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Interpreter ()
 Constructs an Interpreter object. More...
 
template<typename JsonT >
std::enable_if_t< std::is_same
+< std::decay_t< JsonT >, Json >
+::value, void > 
setContext (JsonT &&value)
 Sets the context of the evaluation. More...
 
const JsoncurrentContext () const
 Returns the current evaluation context. More...
 
ContextValuecurrentContextValue ()
 Returns the current evaluation context which can either hold a value or a const reference. More...
 
virtual void evaluateProjection (const ast::ExpressionNode *expression)
 Evaluates the projection of the given expression on the current context. More...
 
void visit (const ast::AbstractNode *node) override
 Evaluate the given node on the current context value. More...
 
void visit (const ast::ExpressionNode *node) override
 Evaluate the given node on the current context value. More...
 
void visit (const ast::IdentifierNode *node) override
 Evaluate the given node on the current context value. More...
 
void visit (const ast::RawStringNode *node) override
 Evaluate the given node on the current context value. More...
 
void visit (const ast::LiteralNode *node) override
 Evaluate the given node on the current context value. More...
 
void visit (const ast::SubexpressionNode *node) override
 Evaluate the given node on the current context value. More...
 
void visit (const ast::IndexExpressionNode *node) override
 Evaluate the given node on the current context value. More...
 
void visit (const ast::ArrayItemNode *node) override
 Evaluate the given node on the current context value. More...
 
void visit (const ast::FlattenOperatorNode *) override
 Evaluate the given node on the current context value. More...
 
void visit (const ast::BracketSpecifierNode *node) override
 Evaluate the given node on the current context value. More...
 
void visit (const ast::SliceExpressionNode *node) override
 Evaluate the given node on the current context value. More...
 
void visit (const ast::ListWildcardNode *) override
 Evaluate the given node on the current context value. More...
 
void visit (const ast::HashWildcardNode *node) override
 Evaluate the given node on the current context value. More...
 
void visit (const ast::MultiselectListNode *node) override
 Evaluate the given node on the current context value. More...
 
void visit (const ast::MultiselectHashNode *node) override
 Evaluate the given node on the current context value. More...
 
void visit (const ast::NotExpressionNode *node) override
 Evaluate the given node on the current context value. More...
 
void visit (const ast::ComparatorExpressionNode *node) override
 Evaluate the given node on the current context value. More...
 
void visit (const ast::OrExpressionNode *node) override
 Evaluate the given node on the current context value. More...
 
void visit (const ast::AndExpressionNode *node) override
 Evaluate the given node on the current context value. More...
 
void visit (const ast::ParenExpressionNode *node) override
 Evaluate the given node on the current context value. More...
 
void visit (const ast::PipeExpressionNode *node) override
 Evaluate the given node on the current context value. More...
 
void visit (const ast::CurrentNode *) override
 Evaluate the given node on the current context value. More...
 
void visit (const ast::FilterExpressionNode *node) override
 Evaluate the given node on the current context value. More...
 
void visit (const ast::FunctionExpressionNode *node) override
 Evaluate the given node on the current context value. More...
 
void visit (const ast::ExpressionArgumentNode *) override
 Evaluate the given node on the current context value. More...
 
- Public Member Functions inherited from jmespath::interpreter::AbstractVisitor
virtual ~AbstractVisitor ()
 Destroys the AbstractVisitor object. More...
 
+ + + + + + + + + + + + + + + + + + + + + + +

+Private Types

using FunctionArgument = boost::variant< boost::blank, ContextValue, ast::ExpressionNode >
 Type of the arguments in FunctionArgumentList. More...
 
using FunctionArgumentList = std::vector< FunctionArgument >
 List of FunctionArgument objects. More...
 
using Function = std::function< void(FunctionArgumentList &)>
 Function wrapper type to which JMESPath built in function implementations should conform to. More...
 
using JsonComparator = std::function< bool(const Json &, const Json &)>
 The type of comparator functions used for comparing Json values. More...
 
using ArgumentArityValidator = std::function< bool(const size_t &)>
 Function argument arity validator predicate. More...
 
using FunctionDescriptor = std::tuple< ArgumentArityValidator, bool, Function >
 Describes a built in function implementation. More...
 
using FunctionExpressionArgumentList = std::vector< ast::FunctionExpressionNode::ArgumentType >
 List of unevaluated function arguments. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Private Member Functions

Index adjustSliceEndpoint (size_t length, Index endpoint, Index step) const
 Adjust the value of the slice endpoint to make sure it's within the array's bounds and points to the correct item. More...
 
bool toBoolean (const Json &json) const
 Converts the json value to a boolean. More...
 
template<typename JsonT >
void evaluateProjection (const ast::ExpressionNode *expression, JsonT &&context)
 Evaluates the projection of the given expression with the evaluation context. More...
 
void evaluateLogicOperator (const ast::BinaryExpressionNode *node, bool shortCircuitValue)
 Evaluates a binary logic operator to the result of the left side expression if it's binary value equals to shortCircuitValue otherwise evaluates it to the result of the result of the right side expression. More...
 
FunctionArgumentList evaluateArguments (const FunctionExpressionArgumentList &arguments, const std::shared_ptr< ContextValue > &contextValue)
 Evaluate the given function expression arguments. More...
 
template<typename T >
T & getArgument (FunctionArgument &argument) const
 Converts the given function argument to the requsted type. More...
 
const JsongetJsonArgument (FunctionArgument &argument) const
 Creates a reference to the Json value held by the argument. More...
 
void abs (FunctionArgumentList &arguments)
 Calculates the absolute value of the first item in the given list of arguments. The first item must be a number Json value. More...
 
void avg (FunctionArgumentList &arguments)
 Calculates the average value of the items in the first item of the given arguments. The first item must be an Json array and every item in the array must be a number Json value. More...
 
void contains (FunctionArgumentList &arguments)
 Checks whether the first item in the given arguments contains the second item. The first item should be either an array or string the second item can be any Json type. More...
 
void ceil (FunctionArgumentList &arguments)
 Rounds up the first item of the given arguments to the next highest integer value. The first item should be a Json number. More...
 
void endsWith (FunctionArgumentList &arguments)
 Checks whether the first item of the given arguments ends with the second item. The first and second item of arguments must be a Json string. More...
 
void floor (FunctionArgumentList &arguments)
 Rounds down the first item of the given arguments to the next lowest integer value. The first item should be a Json number. More...
 
void join (FunctionArgumentList &arguments)
 Joins every item in the array provided as the second item of the given arguments with the first item as a separator. The first item must be a string and the second item must be an array of strings. More...
 
void keys (FunctionArgumentList &arguments)
 Extracts the keys from the object provided as the first item of the given arguments. More...
 
void length (FunctionArgumentList &arguments)
 Returns the length of the first item in the given arguments. The first item must be either an array a string or an object. More...
 
void map (FunctionArgumentList &arguments)
 Applies the expression provided as the first item in the given arguments to every item in the array provided as the second item in arguments. More...
 
template<typename JsonT >
void map (const ast::ExpressionNode *node, JsonT &&array)
 Applies the expression provided in node to every item in the array. More...
 
void merge (FunctionArgumentList &arguments)
 Accepts zero or more objects in the given arguments, and returns a single object with subsequent objects merged. Each subsequent object’s key/value pairs are added to the preceding object. More...
 
template<typename JsonT >
void mergeObject (Json *object, JsonT &&sourceObject)
 Merges the items of the sourceObject into object. More...
 
void notNull (FunctionArgumentList &arguments)
 Accepts one or more items in arguments, and will evaluate them in order until a non null argument is encounted. More...
 
void reverse (FunctionArgumentList &arguments)
 Reverses the order of the first item in arguments. It must either be an array or a string. More...
 
void reverse (Json &&subject)
 Reverses the order of the subject. It must either be an array or a string. More...
 
void sort (FunctionArgumentList &arguments)
 Sorts the first item in the given arguments, which must either be an array of numbers or an array of strings. More...
 
void sort (Json &&array)
 Sorts the array, which must either be an array of numbers or an array of strings. More...
 
void sortBy (FunctionArgumentList &arguments)
 Sorts the first item in the given arguments, which must either be an array of numbers or an array of strings. It uses the expression provided as the second item in arguments as the sort key. More...
 
void sortBy (const ast::ExpressionNode *expression, Json &&array)
 Sorts the array, which must either be an array of numbers or an array of strings. It uses the expression as the sort key. More...
 
void startsWith (FunctionArgumentList &arguments)
 Checks wheather the string provided as the first item in arguments starts with the string provided as the second item in arguments. More...
 
void sum (FunctionArgumentList &arguments)
 Calculates the sum of the numbers in the array provided as the first item of arguments. More...
 
void toArray (FunctionArgumentList &arguments)
 Converts the first item of the given arguments to a one element array if it's not already an array. More...
 
template<typename JsonT >
void toArray (JsonT &&value)
 Converts the given value to a one element array if it's not already an array. More...
 
void toString (FunctionArgumentList &arguments)
 Converts the first item of the given arguments to the Json encoded value if it's not already a string. More...
 
template<typename JsonT >
void toString (JsonT &&value)
 Converts the given value to the Json encoded value if it's not already a string. More...
 
void toNumber (FunctionArgumentList &arguments)
 Converts the string provided as the first item in the given arguments to a number. If it's already a number then the original value is returned, all other Json types are converted to null. More...
 
template<typename JsonT >
void toNumber (JsonT &&value)
 Converts the value to a number if it's not already a number, all other Json types are converted to null. More...
 
void type (FunctionArgumentList &arguments)
 Returns the type of the Json value provided as the first item in arguments. More...
 
void values (FunctionArgumentList &arguments)
 Extracts the values from the object provided as the first item of the given arguments. More...
 
template<typename JsonT >
void values (JsonT &&object)
 Extracts the values from the object. More...
 
void max (FunctionArgumentList &arguments, const JsonComparator &comparator)
 Finds the largest item in the array provided as the first item in the arguments, it must either be an array of numbers or an array of strings. More...
 
template<typename JsonT >
void max (const JsonComparator *comparator, JsonT &&array)
 Finds the largest item in the array, it must either be an array of numbers or an array of strings. More...
 
void maxBy (FunctionArgumentList &arguments, const JsonComparator &comparator=std::less< Json >{})
 Finds the largest item in the array provided as the first item in the arguments, which must either be an array of numbers or an array of strings, using the expression provided as the second item in arguments as a key for comparison. More...
 
template<typename JsonT >
void maxBy (const ast::ExpressionNode *expression, const JsonComparator *comparator, JsonT &&array)
 Finds the largest item in the array, which must either be an array of numbers or an array of strings, using the expression as a key for comparison. More...
 
bool isComparableArray (const Json &array) const
 Checks whether array is a homogeneous array which contains comparable types like strings and numbers. More...
 
template<typename JsonT >
void visit (const ast::IdentifierNode *node, JsonT &&context)
 Evaluates the given node on the evaluation context. More...
 
template<typename JsonT >
void visit (const ast::ArrayItemNode *node, JsonT &&context)
 Evaluates the given node on the evaluation context. More...
 
template<typename JsonT >
void visit (const ast::FlattenOperatorNode *node, JsonT &&context)
 Evaluates the given node on the evaluation context. More...
 
template<typename JsonT >
void visit (const ast::SliceExpressionNode *node, JsonT &&context)
 Evaluates the given node on the evaluation context. More...
 
template<typename JsonT >
void visit (const ast::HashWildcardNode *node, JsonT &&context)
 Evaluates the given node on the evaluation context. More...
 
template<typename JsonT >
void visit (const ast::FilterExpressionNode *node, JsonT &&context)
 Evaluates the given node on the evaluation context. More...
 
+ + + + + + + +

+Private Attributes

ContextValue m_context
 Stores the evaluation context. More...
 
std::unordered_map< String,
+FunctionDescriptor
m_functionMap
 Maps the JMESPath built in function names to their implementations. More...
 
+

Detailed Description

+

The Interpreter class evaluates the AST structure on a Json context.

+
See Also
setContext currentContext
+

Member Typedef Documentation

+ +
+
+ + + + + +
+ + + + +
using jmespath::interpreter::Interpreter::ArgumentArityValidator = std::function<bool(const size_t&)>
+
+private
+
+ +

Function argument arity validator predicate.

+ +
+
+ +
+
+ + + + + +
+ + + + +
using jmespath::interpreter::Interpreter::Function = std::function<void(FunctionArgumentList&)>
+
+private
+
+ +

Function wrapper type to which JMESPath built in function implementations should conform to.

+ +
+
+ +
+
+ + + + + +
+ + + + +
using jmespath::interpreter::Interpreter::FunctionArgument = boost::variant<boost::blank, ContextValue, ast::ExpressionNode>
+
+private
+
+ +

Type of the arguments in FunctionArgumentList.

+ +
+
+ +
+
+ + + + + +
+ + + + +
using jmespath::interpreter::Interpreter::FunctionArgumentList = std::vector<FunctionArgument>
+
+private
+
+ +

List of FunctionArgument objects.

+ +
+
+ +
+
+ + + + + +
+ + + + +
using jmespath::interpreter::Interpreter::FunctionDescriptor = std::tuple<ArgumentArityValidator, bool, Function>
+
+private
+
+ +

Describes a built in function implementation.

+

The tuple's first item is the comparator function used for comparing the actual number of arguments with the expected argument count, the second item marks whether the funciton needs a single ContextValue or more, while the third item stores the callable functions wrapper.

+ +
+
+ +
+
+ +

List of unevaluated function arguments.

+ +
+
+ +
+
+ + + + + +
+ + + + +
using jmespath::interpreter::Interpreter::JsonComparator = std::function<bool(const Json&, const Json&)>
+
+private
+
+ +

The type of comparator functions used for comparing Json values.

+ +
+
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
jmespath::interpreter::Interpreter::Interpreter ()
+
+ +

Constructs an Interpreter object.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::abs (FunctionArgumentListarguments)
+
+private
+
+ +

Calculates the absolute value of the first item in the given list of arguments. The first item must be a number Json value.

+
Parameters
+ + +
[in]argumentsThe list of the function's arguments.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
Index jmespath::interpreter::Interpreter::adjustSliceEndpoint (size_t length,
Index endpoint,
Index step 
) const
+
+private
+
+ +

Adjust the value of the slice endpoint to make sure it's within the array's bounds and points to the correct item.

+
Parameters
+ + + + +
[in]lengthThe length of the array that should be sliced.
[in]endpointThe current value of the endpoint.
[in]stepThe slice's step variable value.
+
+
+
Returns
Returns the endpoint's new value.
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::avg (FunctionArgumentListarguments)
+
+private
+
+ +

Calculates the average value of the items in the first item of the given arguments. The first item must be an Json array and every item in the array must be a number Json value.

+
Parameters
+ + +
[in]argumentsThe list of the function's arguments.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::ceil (FunctionArgumentListarguments)
+
+private
+
+ +

Rounds up the first item of the given arguments to the next highest integer value. The first item should be a Json number.

+
Parameters
+ + +
[in]argumentsThe list of the function's arguments.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::contains (FunctionArgumentListarguments)
+
+private
+
+ +

Checks whether the first item in the given arguments contains the second item. The first item should be either an array or string the second item can be any Json type.

+
Parameters
+ + +
[in]argumentsThe list of the function's arguments.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
const Json& jmespath::interpreter::Interpreter::currentContext () const
+
+inline
+
+ +

Returns the current evaluation context.

+
Returns
Json document used as the context.
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
ContextValue& jmespath::interpreter::Interpreter::currentContextValue ()
+
+inline
+
+ +

Returns the current evaluation context which can either hold a value or a const reference.

+
Returns
ContextValue used as the context.
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::endsWith (FunctionArgumentListarguments)
+
+private
+
+ +

Checks whether the first item of the given arguments ends with the second item. The first and second item of arguments must be a Json string.

+
Parameters
+ + +
[in]argumentsThe list of the function's arguments.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Interpreter::FunctionArgumentList jmespath::interpreter::Interpreter::evaluateArguments (const FunctionExpressionArgumentListarguments,
const std::shared_ptr< ContextValue > & contextValue 
)
+
+private
+
+ +

Evaluate the given function expression arguments.

+

Evalutate an ast::ExpressionNode on the current context to a Json value and evaluate ast::ExpressionArgumentNode to its child ast::ExpressionNode.

+
Parameters
+ + + +
[in]argumentsList of arguments.
[in]contextValueA context used for evaluating the arguments.
+
+
+
Returns
List of evaluated function arguments, suitable for passing to built in functions.
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void jmespath::interpreter::Interpreter::evaluateLogicOperator (const ast::BinaryExpressionNodenode,
bool shortCircuitValue 
)
+
+private
+
+ +

Evaluates a binary logic operator to the result of the left side expression if it's binary value equals to shortCircuitValue otherwise evaluates it to the result of the result of the right side expression.

+
Parameters
+ + + +
[in]nodePointer to the node.
[in]shortCircuitValueSpecifies what should be the boolean value of the left side expression's result to do short circuit evaluation.
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::evaluateProjection (const ast::ExpressionNodeexpression)
+
+virtual
+
+ +

Evaluates the projection of the given expression on the current context.

+
Parameters
+ + +
[in]expressionThe expression that gets projected.
+
+
+ +
+
+ +
+
+
+template<typename JsonT >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void jmespath::interpreter::Interpreter::evaluateProjection (const ast::ExpressionNodeexpression,
JsonT && context 
)
+
+private
+
+ +

Evaluates the projection of the given expression with the evaluation context.

+
Parameters
+ + + +
[in]expressionThe expression that gets projected.
[in]contextAn const lvalue reference or an rvalue reference to the evaluation context.
+
+
+
Template Parameters
+ + +
JsonTThe type of the context.
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::floor (FunctionArgumentListarguments)
+
+private
+
+ +

Rounds down the first item of the given arguments to the next lowest integer value. The first item should be a Json number.

+
Parameters
+ + +
[in]argumentsThe list of the function's arguments.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
T & jmespath::interpreter::Interpreter::getArgument (FunctionArgumentargument) const
+
+private
+
+ +

Converts the given function argument to the requsted type.

+
Parameters
+ + +
[in]argumentA funciton argument value.
+
+
+
Template Parameters
+ + +
TThe to which the argument should be converted.
+
+
+
Returns
The value held by the funciton argument.
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
const Json & jmespath::interpreter::Interpreter::getJsonArgument (FunctionArgumentargument) const
+
+private
+
+ +

Creates a reference to the Json value held by the argument.

+
Parameters
+ + +
argumentA funciton argument value.
+
+
+
Returns
Rreference to the Json value held by the argument.
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
bool jmespath::interpreter::Interpreter::isComparableArray (const Jsonarray) const
+
+private
+
+ +

Checks whether array is a homogeneous array which contains comparable types like strings and numbers.

+
Parameters
+ + +
[in]arrayThe Json value that should be tested.
+
+
+
Returns
Returns true if array is a comparable array, otherwise returns false.
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::join (FunctionArgumentListarguments)
+
+private
+
+ +

Joins every item in the array provided as the second item of the given arguments with the first item as a separator. The first item must be a string and the second item must be an array of strings.

+
Parameters
+ + +
[in]argumentsThe list of the function's arguments.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::keys (FunctionArgumentListarguments)
+
+private
+
+ +

Extracts the keys from the object provided as the first item of the given arguments.

+
Parameters
+ + +
[in]argumentsThe list of the function's arguments.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::length (FunctionArgumentListarguments)
+
+private
+
+ +

Returns the length of the first item in the given arguments. The first item must be either an array a string or an object.

+
Parameters
+ + +
[in]argumentsThe list of the function's arguments.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::map (FunctionArgumentListarguments)
+
+private
+
+ +

Applies the expression provided as the first item in the given arguments to every item in the array provided as the second item in arguments.

+
Parameters
+ + +
[in]argumentsThe list of the function's arguments.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+
+template<typename JsonT >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void jmespath::interpreter::Interpreter::map (const ast::ExpressionNodenode,
JsonT && array 
)
+
+private
+
+ +

Applies the expression provided in node to every item in the array.

+
Parameters
+ + + +
[in]nodePointer to the expresson node.
[in]arrayEither an lvalue or rvalue reference to a Json array.
+
+
+
Template Parameters
+ + +
JsonTThe type of the array.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void jmespath::interpreter::Interpreter::max (FunctionArgumentListarguments,
const JsonComparatorcomparator 
)
+
+private
+
+ +

Finds the largest item in the array provided as the first item in the arguments, it must either be an array of numbers or an array of strings.

+
Parameters
+ + + +
[in]argumentsThe list of the function's arguments.
[in]comparatorThe comparator function used for comparing Json values. It should return true if its first argument is less then its second argument.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+
+template<typename JsonT >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void jmespath::interpreter::Interpreter::max (const JsonComparatorcomparator,
JsonT && array 
)
+
+private
+
+ +

Finds the largest item in the array, it must either be an array of numbers or an array of strings.

+
Parameters
+ + + +
[in]comparatorThe comparator function used for comparing Json values. It should return true if its first argument is less then its second argument.
[in]arrayA Json array.
+
+
+
Template Parameters
+ + +
JsonTThe type of array.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void jmespath::interpreter::Interpreter::maxBy (FunctionArgumentListarguments,
const JsonComparatorcomparator = std::less<Json>{} 
)
+
+private
+
+ +

Finds the largest item in the array provided as the first item in the arguments, which must either be an array of numbers or an array of strings, using the expression provided as the second item in arguments as a key for comparison.

+
Parameters
+ + + +
[in]argumentsThe list of the function's arguments.
[in]comparatorThe comparator function used for comparing Json values. It should return true if its first argument is less then its second argument.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+
+template<typename JsonT >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void jmespath::interpreter::Interpreter::maxBy (const ast::ExpressionNodeexpression,
const JsonComparatorcomparator,
JsonT && array 
)
+
+private
+
+ +

Finds the largest item in the array, which must either be an array of numbers or an array of strings, using the expression as a key for comparison.

+
Parameters
+ + + + +
[in]expressionThe expression which evaluates to the key that should be used for comparisons.
[in]comparatorThe comparator function used for comparing Json values. It should return true if its first argument is less then its second argument.
[in]arrayA Json array.
+
+
+
Template Parameters
+ + +
JsonTThe type of the array.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::merge (FunctionArgumentListarguments)
+
+private
+
+ +

Accepts zero or more objects in the given arguments, and returns a single object with subsequent objects merged. Each subsequent object’s key/value pairs are added to the preceding object.

+
Parameters
+ + +
[in]argumentsThe list of the function's arguments.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+
+template<typename JsonT >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void jmespath::interpreter::Interpreter::mergeObject (Jsonobject,
JsonT && sourceObject 
)
+
+private
+
+ +

Merges the items of the sourceObject into object.

+
Parameters
+ + + +
[in,out]objectThe object into which the items of the sourceObject should be added.
[in]sourceObjectither an lvalue or rvalue reference to a Json object.
+
+
+
Template Parameters
+ + +
JsonTJsonT The type of the sourceObject.
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::notNull (FunctionArgumentListarguments)
+
+private
+
+ +

Accepts one or more items in arguments, and will evaluate them in order until a non null argument is encounted.

+
Parameters
+ + +
[in]argumentsThe list of the function's arguments.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::reverse (FunctionArgumentListarguments)
+
+private
+
+ +

Reverses the order of the first item in arguments. It must either be an array or a string.

+
Parameters
+ + +
[in]argumentsThe list of the function's arguments.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::reverse (Json && subject)
+
+private
+
+ +

Reverses the order of the subject. It must either be an array or a string.

+
Parameters
+ + +
[in]subjectA Json array or string.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+
+template<typename JsonT >
+ + + + + +
+ + + + + + + + +
std::enable_if_t<std::is_same<std::decay_t<JsonT>, Json>::value, void> jmespath::interpreter::Interpreter::setContext (JsonT && value)
+
+inline
+
+ +

Sets the context of the evaluation.

+
Parameters
+ + +
[in]valueJson document to be used as the context.
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::sort (FunctionArgumentListarguments)
+
+private
+
+ +

Sorts the first item in the given arguments, which must either be an array of numbers or an array of strings.

+
Parameters
+ + +
[in]argumentsThe list of the function's arguments.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::sort (Json && array)
+
+private
+
+ +

Sorts the array, which must either be an array of numbers or an array of strings.

+
Parameters
+ + +
[in]arrayA Json array of number or strings.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::sortBy (FunctionArgumentListarguments)
+
+private
+
+ +

Sorts the first item in the given arguments, which must either be an array of numbers or an array of strings. It uses the expression provided as the second item in arguments as the sort key.

+
Parameters
+ + +
[in]argumentsThe list of the function's arguments.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void jmespath::interpreter::Interpreter::sortBy (const ast::ExpressionNodeexpression,
Json && array 
)
+
+private
+
+ +

Sorts the array, which must either be an array of numbers or an array of strings. It uses the expression as the sort key.

+
Parameters
+ + + +
[in]expressionThe expression which evaluates to the key that should be used for comparisons during sorting.
[in]arrayA Json array of numbers or strings.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::startsWith (FunctionArgumentListarguments)
+
+private
+
+ +

Checks wheather the string provided as the first item in arguments starts with the string provided as the second item in arguments.

+
Parameters
+ + +
[in]argumentsThe list of the function's arguments.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::sum (FunctionArgumentListarguments)
+
+private
+
+ +

Calculates the sum of the numbers in the array provided as the first item of arguments.

+
Parameters
+ + +
[in]argumentsThe list of the function's arguments.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::toArray (FunctionArgumentListarguments)
+
+private
+
+ +

Converts the first item of the given arguments to a one element array if it's not already an array.

+
Parameters
+ + +
[in]argumentsThe list of the function's arguments.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+
+template<typename JsonT >
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::toArray (JsonT && value)
+
+private
+
+ +

Converts the given value to a one element array if it's not already an array.

+
Parameters
+ + +
[in]valueA Json value.
+
+
+
Template Parameters
+ + +
JsonTThe type of the value.
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
bool jmespath::interpreter::Interpreter::toBoolean (const Jsonjson) const
+
+private
+
+ +

Converts the json value to a boolean.

+
Parameters
+ + +
[in]jsonThe Json value that needs to be converted.
+
+
+
Returns
Returns false if json is a false like value (false, 0, empty list, empty object, empty string, null), otherwise returns true.
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::toNumber (FunctionArgumentListarguments)
+
+private
+
+ +

Converts the string provided as the first item in the given arguments to a number. If it's already a number then the original value is returned, all other Json types are converted to null.

+
Parameters
+ + +
[in]argumentsThe list of the function's arguments.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+
+template<typename JsonT >
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::toNumber (JsonT && value)
+
+private
+
+ +

Converts the value to a number if it's not already a number, all other Json types are converted to null.

+
Parameters
+ + +
[in]valueA Json value.
+
+
+
Template Parameters
+ + +
JsonTThe type of the value.
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::toString (FunctionArgumentListarguments)
+
+private
+
+ +

Converts the first item of the given arguments to the Json encoded value if it's not already a string.

+
Parameters
+ + +
[in]argumentsThe list of the function's arguments.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+
+template<typename JsonT >
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::toString (JsonT && value)
+
+private
+
+ +

Converts the given value to the Json encoded value if it's not already a string.

+
Parameters
+ + +
[in]valueA Json value.
+
+
+
Template Parameters
+ + +
JsonTThe type of the value.
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::type (FunctionArgumentListarguments)
+
+private
+
+ +

Returns the type of the Json value provided as the first item in arguments.

+
Parameters
+ + +
[in]argumentsThe list of the function's arguments.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::values (FunctionArgumentListarguments)
+
+private
+
+ +

Extracts the values from the object provided as the first item of the given arguments.

+
Parameters
+ + +
[in]argumentsThe list of the function's arguments.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+
+template<typename JsonT >
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::values (JsonT && object)
+
+private
+
+ +

Extracts the values from the object.

+
Parameters
+ + +
[in]objectA Json object.
+
+
+
Template Parameters
+ + +
JsonTThe type of object.
+
+
+
Exceptions
+ + +
InvalidFunctionArgumentType
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::AbstractNodenode)
+
+overridevirtual
+
+ +

Evaluate the given node on the current context value.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implements jmespath::interpreter::AbstractVisitor.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::ExpressionNodenode)
+
+overridevirtual
+
+ +

Evaluate the given node on the current context value.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implements jmespath::interpreter::AbstractVisitor.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::IdentifierNodenode)
+
+overridevirtual
+
+ +

Evaluate the given node on the current context value.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implements jmespath::interpreter::AbstractVisitor.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::RawStringNodenode)
+
+overridevirtual
+
+ +

Evaluate the given node on the current context value.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implements jmespath::interpreter::AbstractVisitor.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::LiteralNodenode)
+
+overridevirtual
+
+ +

Evaluate the given node on the current context value.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implements jmespath::interpreter::AbstractVisitor.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::SubexpressionNodenode)
+
+overridevirtual
+
+ +

Evaluate the given node on the current context value.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implements jmespath::interpreter::AbstractVisitor.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::IndexExpressionNodenode)
+
+overridevirtual
+
+ +

Evaluate the given node on the current context value.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implements jmespath::interpreter::AbstractVisitor.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::ArrayItemNodenode)
+
+overridevirtual
+
+ +

Evaluate the given node on the current context value.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implements jmespath::interpreter::AbstractVisitor.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::FlattenOperatorNodenode)
+
+overridevirtual
+
+ +

Evaluate the given node on the current context value.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implements jmespath::interpreter::AbstractVisitor.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::BracketSpecifierNodenode)
+
+overridevirtual
+
+ +

Evaluate the given node on the current context value.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implements jmespath::interpreter::AbstractVisitor.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::SliceExpressionNodenode)
+
+overridevirtual
+
+ +

Evaluate the given node on the current context value.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implements jmespath::interpreter::AbstractVisitor.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::ListWildcardNode)
+
+overridevirtual
+
+ +

Evaluate the given node on the current context value.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implements jmespath::interpreter::AbstractVisitor.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::HashWildcardNodenode)
+
+overridevirtual
+
+ +

Evaluate the given node on the current context value.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implements jmespath::interpreter::AbstractVisitor.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::MultiselectListNodenode)
+
+overridevirtual
+
+ +

Evaluate the given node on the current context value.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implements jmespath::interpreter::AbstractVisitor.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::MultiselectHashNodenode)
+
+overridevirtual
+
+ +

Evaluate the given node on the current context value.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implements jmespath::interpreter::AbstractVisitor.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::NotExpressionNodenode)
+
+overridevirtual
+
+ +

Evaluate the given node on the current context value.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implements jmespath::interpreter::AbstractVisitor.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::ComparatorExpressionNodenode)
+
+overridevirtual
+
+ +

Evaluate the given node on the current context value.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implements jmespath::interpreter::AbstractVisitor.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::OrExpressionNodenode)
+
+overridevirtual
+
+ +

Evaluate the given node on the current context value.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implements jmespath::interpreter::AbstractVisitor.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::AndExpressionNodenode)
+
+overridevirtual
+
+ +

Evaluate the given node on the current context value.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implements jmespath::interpreter::AbstractVisitor.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::ParenExpressionNodenode)
+
+overridevirtual
+
+ +

Evaluate the given node on the current context value.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implements jmespath::interpreter::AbstractVisitor.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::PipeExpressionNodenode)
+
+overridevirtual
+
+ +

Evaluate the given node on the current context value.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implements jmespath::interpreter::AbstractVisitor.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::CurrentNode)
+
+overridevirtual
+
+ +

Evaluate the given node on the current context value.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implements jmespath::interpreter::AbstractVisitor.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::FilterExpressionNodenode)
+
+overridevirtual
+
+ +

Evaluate the given node on the current context value.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implements jmespath::interpreter::AbstractVisitor.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::FunctionExpressionNodenode)
+
+overridevirtual
+
+ +

Evaluate the given node on the current context value.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implements jmespath::interpreter::AbstractVisitor.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::ExpressionArgumentNode)
+
+overridevirtual
+
+ +

Evaluate the given node on the current context value.

+
Parameters
+ + +
[in]nodePointer to the node
+
+
+ +

Implements jmespath::interpreter::AbstractVisitor.

+ +
+
+ +
+
+
+template<typename JsonT >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::IdentifierNodenode,
JsonT && context 
)
+
+private
+
+ +

Evaluates the given node on the evaluation context.

+
Parameters
+ + + +
[in]nodePointer to the node.
[in]contextAn const lvalue reference or an rvalue reference to the evaluation context.
+
+
+
Template Parameters
+ + +
JsonTThe type of the context.
+
+
+ +
+
+ +
+
+
+template<typename JsonT >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::ArrayItemNodenode,
JsonT && context 
)
+
+private
+
+ +

Evaluates the given node on the evaluation context.

+
Parameters
+ + + +
[in]nodePointer to the node.
[in]contextAn const lvalue reference or an rvalue reference to the evaluation context.
+
+
+
Template Parameters
+ + +
JsonTThe type of the context.
+
+
+ +
+
+ +
+
+
+template<typename JsonT >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::FlattenOperatorNodenode,
JsonT && context 
)
+
+private
+
+ +

Evaluates the given node on the evaluation context.

+
Parameters
+ + + +
[in]nodePointer to the node.
[in]contextAn const lvalue reference or an rvalue reference to the evaluation context.
+
+
+
Template Parameters
+ + +
JsonTThe type of the context.
+
+
+ +
+
+ +
+
+
+template<typename JsonT >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::SliceExpressionNodenode,
JsonT && context 
)
+
+private
+
+ +

Evaluates the given node on the evaluation context.

+
Parameters
+ + + +
[in]nodePointer to the node.
[in]contextAn const lvalue reference or an rvalue reference to the evaluation context.
+
+
+
Template Parameters
+ + +
JsonTThe type of the context.
+
+
+ +
+
+ +
+
+
+template<typename JsonT >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::HashWildcardNodenode,
JsonT && context 
)
+
+private
+
+ +

Evaluates the given node on the evaluation context.

+
Parameters
+ + + +
[in]nodePointer to the node.
[in]contextAn const lvalue reference or an rvalue reference to the evaluation context.
+
+
+
Template Parameters
+ + +
JsonTThe type of the context.
+
+
+ +
+
+ +
+
+
+template<typename JsonT >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void jmespath::interpreter::Interpreter::visit (const ast::FilterExpressionNodenode,
JsonT && context 
)
+
+private
+
+ +

Evaluates the given node on the evaluation context.

+
Parameters
+ + + +
[in]nodePointer to the node.
[in]contextAn const lvalue reference or an rvalue reference to the evaluation context.
+
+
+
Template Parameters
+ + +
JsonTThe type of the context.
+
+
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
ContextValue jmespath::interpreter::Interpreter::m_context
+
+private
+
+ +

Stores the evaluation context.

+ +
+
+ +
+
+ + + + + +
+ + + + +
std::unordered_map<String, FunctionDescriptor> jmespath::interpreter::Interpreter::m_functionMap
+
+private
+
+ +

Maps the JMESPath built in function names to their implementations.

+ +
+
+
The documentation for this class was generated from the following files:
    +
  • /home/travis/build/robertmrk/jmespath.cpp/src/interpreter/interpreter.h
  • +
  • /home/travis/build/robertmrk/jmespath.cpp/src/interpreter/interpreter.cpp
  • +
+
+ + + + diff --git a/classjmespath_1_1interpreter_1_1_interpreter.png b/classjmespath_1_1interpreter_1_1_interpreter.png new file mode 100644 index 0000000000000000000000000000000000000000..2fd2a0bd7f39e04fcfd723b692c512dd42515b98 GIT binary patch literal 774 zcmeAS@N?(olHy`uVBq!ia0vp^*MT^IgBeKf6%%+4q$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0rh2+KhEy=Vo%?#zVg-Q~`&+9%|Lfn= z$#F&@?@B~9*R+;C!RlF=?Wg0XrAD%`bgS^Tzx1B;>);nv&%X-4xh8#))Ss0+ZT5L4 z_nsT|3b$qMqy?sztdGl`y1u6M$Ad-d`E#Pzmo`|q-Oww%aq0U%Pg%8`>Pe3ung2KE z=S_aTnn!A-yRapHz8yMuT`M+e`?UXWt)#wJ?wRAfHof|_%HB!ccP=h{5WR8N z>gnoJXXU5pCoXqW_VqltIBACG6Hn3QK7W<7oOir^{a3TpFMmL+k92oa%<0Odz9(Cz{w+PeLabBv%DXd`XEc6QzGyu^_p~~H zj_10&Jd>BG8|+&D*u-l6bQRtfcjnO0`VDmkwTxeyUve*y_laltoA8V21^Z=j2m2ZO7=Qtds^o!pi@>1< z1qPmWnDPZLUoW{Te%A2x+4M%W$JvePuR?$C`jk|6^!luVQ@?7()=WR4SNm~72Xe?i zR%{gB7q;?j^qwR4R_Qlne^XoZW!md`AJ;NGxK+5frXWRi>D(=Ir(a#*aAR?jjY`4M z>%W7aC004_D_XlHD5h5^TY{f6W=(kVmEf$8&K;i2 zBwi!?u01nZ@j=wL`DWU}Vc)LHKK5ojur>Snr?Z>i{S&N=eo+6Zbj_v8y$n{zVV?Y8 f_tA+X(c%xI;%=S$YgTe~DWM4fmy~vj literal 0 HcmV?d00001 diff --git a/classjmespath_1_1parser_1_1_append_escape_sequence_action-members.html b/classjmespath_1_1parser_1_1_append_escape_sequence_action-members.html new file mode 100644 index 0000000..65ac16e --- /dev/null +++ b/classjmespath_1_1parser_1_1_append_escape_sequence_action-members.html @@ -0,0 +1,110 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::parser::AppendEscapeSequenceAction Member List
+
+
+ +

This is the complete list of members for jmespath::parser::AppendEscapeSequenceAction, including all inherited members.

+ + + + +
escape_type typedefjmespath::parser::AppendEscapeSequenceAction
operator()(String &utf8String, escape_type escapeSequence) const jmespath::parser::AppendEscapeSequenceActioninline
result_type typedefjmespath::parser::AppendEscapeSequenceAction
+ + + + diff --git a/classjmespath_1_1parser_1_1_append_escape_sequence_action.html b/classjmespath_1_1parser_1_1_append_escape_sequence_action.html new file mode 100644 index 0000000..037783c --- /dev/null +++ b/classjmespath_1_1parser_1_1_append_escape_sequence_action.html @@ -0,0 +1,208 @@ + + + + + + +jmespath.cpp: jmespath::parser::AppendEscapeSequenceAction Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::parser::AppendEscapeSequenceAction Class Reference
+
+
+ +

The AppendEscapeSequenceAction class is a functor for appending UTF-32 an escape sequence, consisting from a pair of UTF-32 characters, to a UTF-8 encoded strings. + More...

+ +

#include <appendescapesequenceaction.h>

+ + + + + + + + +

+Public Types

using result_type = void
 The action's result type. More...
 
using escape_type = std::pair< UnicodeChar, UnicodeChar >
 The type of the escape sequence. More...
 
+ + + + +

+Public Member Functions

result_type operator() (String &utf8String, escape_type escapeSequence) const
 Append the characters of the escapeSequence to the utf8String encoded in UTF-8. More...
 
+

Detailed Description

+

The AppendEscapeSequenceAction class is a functor for appending UTF-32 an escape sequence, consisting from a pair of UTF-32 characters, to a UTF-8 encoded strings.

+

Member Typedef Documentation

+ +
+
+ +

The type of the escape sequence.

+ +
+
+ +
+
+ +

The action's result type.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
result_type jmespath::parser::AppendEscapeSequenceAction::operator() (Stringutf8String,
escape_type escapeSequence 
) const
+
+inline
+
+ +

Append the characters of the escapeSequence to the utf8String encoded in UTF-8.

+

Treat everything as regular characters if the escaped character is not a single quote.

+
Parameters
+ + + +
[out]utf8StringThe string where the encoded value of the utf32Char will be appended.
[in]escapeSequenceThe character of the escape sequence encoded in UTF-32
+
+
+ +
+
+
The documentation for this class was generated from the following file: +
+ + + + diff --git a/classjmespath_1_1parser_1_1_append_utf8_action-members.html b/classjmespath_1_1parser_1_1_append_utf8_action-members.html new file mode 100644 index 0000000..cca746d --- /dev/null +++ b/classjmespath_1_1parser_1_1_append_utf8_action-members.html @@ -0,0 +1,109 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::parser::AppendUtf8Action Member List
+
+
+ +

This is the complete list of members for jmespath::parser::AppendUtf8Action, including all inherited members.

+ + + +
operator()(String &utf8String, UnicodeChar utf32Char) const jmespath::parser::AppendUtf8Actioninline
result_type typedefjmespath::parser::AppendUtf8Action
+ + + + diff --git a/classjmespath_1_1parser_1_1_append_utf8_action.html b/classjmespath_1_1parser_1_1_append_utf8_action.html new file mode 100644 index 0000000..cfae96f --- /dev/null +++ b/classjmespath_1_1parser_1_1_append_utf8_action.html @@ -0,0 +1,190 @@ + + + + + + +jmespath.cpp: jmespath::parser::AppendUtf8Action Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::parser::AppendUtf8Action Class Reference
+
+
+ +

The AppendUtf8Action class is a functor for appending UTF-32 characters to UTF-8 encoded strings. + More...

+ +

#include <appendutf8action.h>

+ + + + + +

+Public Types

using result_type = void
 The action's result type. More...
 
+ + + + +

+Public Member Functions

result_type operator() (String &utf8String, UnicodeChar utf32Char) const
 Appends the utf32Char character to the utf8String encoded in UTF-8. More...
 
+

Detailed Description

+

The AppendUtf8Action class is a functor for appending UTF-32 characters to UTF-8 encoded strings.

+

Member Typedef Documentation

+ +
+
+ +

The action's result type.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
result_type jmespath::parser::AppendUtf8Action::operator() (Stringutf8String,
UnicodeChar utf32Char 
) const
+
+inline
+
+ +

Appends the utf32Char character to the utf8String encoded in UTF-8.

+
Parameters
+ + + +
[out]utf8StringThe string where the encoded value of the utf32Char will be appended.
[in]utf32CharThe input character encoded in UTF-32
+
+
+ +
+
+
The documentation for this class was generated from the following file: +
+ + + + diff --git a/classjmespath_1_1parser_1_1_encode_surrogate_pair_action-members.html b/classjmespath_1_1parser_1_1_encode_surrogate_pair_action-members.html new file mode 100644 index 0000000..f10cfbd --- /dev/null +++ b/classjmespath_1_1parser_1_1_encode_surrogate_pair_action-members.html @@ -0,0 +1,109 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::parser::EncodeSurrogatePairAction Member List
+
+
+ +

This is the complete list of members for jmespath::parser::EncodeSurrogatePairAction, including all inherited members.

+ + + +
operator()(UnicodeChar const &highSurrogate, UnicodeChar const &lowSurrogate) const jmespath::parser::EncodeSurrogatePairActioninline
result_type typedefjmespath::parser::EncodeSurrogatePairAction
+ + + + diff --git a/classjmespath_1_1parser_1_1_encode_surrogate_pair_action.html b/classjmespath_1_1parser_1_1_encode_surrogate_pair_action.html new file mode 100644 index 0000000..d21de05 --- /dev/null +++ b/classjmespath_1_1parser_1_1_encode_surrogate_pair_action.html @@ -0,0 +1,191 @@ + + + + + + +jmespath.cpp: jmespath::parser::EncodeSurrogatePairAction Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::parser::EncodeSurrogatePairAction Class Reference
+
+
+ +

The EncodeSurrogatePairAction class is a functor for encoding surrogate pair characters in UTF-32. + More...

+ +

#include <encodesurrogatepairaction.h>

+ + + + + +

+Public Types

using result_type = UnicodeChar
 The action's result type. More...
 
+ + + + +

+Public Member Functions

result_type operator() (UnicodeChar const &highSurrogate, UnicodeChar const &lowSurrogate) const
 Encodes a surrogate pair character. More...
 
+

Detailed Description

+

The EncodeSurrogatePairAction class is a functor for encoding surrogate pair characters in UTF-32.

+

Member Typedef Documentation

+ +
+
+ +

The action's result type.

+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
result_type jmespath::parser::EncodeSurrogatePairAction::operator() (UnicodeChar const & highSurrogate,
UnicodeChar const & lowSurrogate 
) const
+
+inline
+
+ +

Encodes a surrogate pair character.

+
Parameters
+ + + +
[in]highSurrogateHigh surrogate
[in]lowSurrogateLow surrogate
+
+
+
Returns
The result of highSurrogate and lowSurrogate combined into a single codepoint
+ +
+
+
The documentation for this class was generated from the following file: +
+ + + + diff --git a/classjmespath_1_1parser_1_1_grammar-members.html b/classjmespath_1_1parser_1_1_grammar-members.html new file mode 100644 index 0000000..1bd15f5 --- /dev/null +++ b/classjmespath_1_1parser_1_1_grammar-members.html @@ -0,0 +1,152 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::parser::Grammar< Iterator, Skipper > Member List
+
+
+ +

This is the complete list of members for jmespath::parser::Grammar< Iterator, Skipper >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Grammar()jmespath::parser::Grammar< Iterator, Skipper >inline
m_andExpressionRulejmespath::parser::Grammar< Iterator, Skipper >private
m_arrayItemRulejmespath::parser::Grammar< Iterator, Skipper >private
m_bracketSpecifierRulejmespath::parser::Grammar< Iterator, Skipper >private
m_comparatorExpressionRulejmespath::parser::Grammar< Iterator, Skipper >private
m_comparatorSymbolsjmespath::parser::Grammar< Iterator, Skipper >private
m_controlCharacterSymbolsjmespath::parser::Grammar< Iterator, Skipper >private
m_currentNodeRulejmespath::parser::Grammar< Iterator, Skipper >private
m_escapedCharRulejmespath::parser::Grammar< Iterator, Skipper >private
m_escapeRulejmespath::parser::Grammar< Iterator, Skipper >private
m_expressionArgumentRulejmespath::parser::Grammar< Iterator, Skipper >private
m_expressionRulejmespath::parser::Grammar< Iterator, Skipper >private
m_filterExpressionRulejmespath::parser::Grammar< Iterator, Skipper >private
m_flattenOperatorRulejmespath::parser::Grammar< Iterator, Skipper >private
m_functionArgumentListRulejmespath::parser::Grammar< Iterator, Skipper >private
m_functionArgumentRulejmespath::parser::Grammar< Iterator, Skipper >private
m_functionExpressionRulejmespath::parser::Grammar< Iterator, Skipper >private
m_hashWildcardRulejmespath::parser::Grammar< Iterator, Skipper >private
m_hashWildcardSubexpressionRulejmespath::parser::Grammar< Iterator, Skipper >private
m_identifierRulejmespath::parser::Grammar< Iterator, Skipper >private
m_indexExpressionRulejmespath::parser::Grammar< Iterator, Skipper >private
m_indexRulejmespath::parser::Grammar< Iterator, Skipper >private
m_keyValuePairRulejmespath::parser::Grammar< Iterator, Skipper >private
m_listWildcardRulejmespath::parser::Grammar< Iterator, Skipper >private
m_literalCharRulejmespath::parser::Grammar< Iterator, Skipper >private
m_literalEscapeRulejmespath::parser::Grammar< Iterator, Skipper >private
m_literalRulejmespath::parser::Grammar< Iterator, Skipper >private
m_multiselectHashRulejmespath::parser::Grammar< Iterator, Skipper >private
m_multiselectListRulejmespath::parser::Grammar< Iterator, Skipper >private
m_notExpressionRulejmespath::parser::Grammar< Iterator, Skipper >private
m_orExpressionRulejmespath::parser::Grammar< Iterator, Skipper >private
m_parenExpressionRulejmespath::parser::Grammar< Iterator, Skipper >private
m_pipeExpressionRulejmespath::parser::Grammar< Iterator, Skipper >private
m_quotedStringRulejmespath::parser::Grammar< Iterator, Skipper >private
m_quoteRulejmespath::parser::Grammar< Iterator, Skipper >private
m_rawStringCharRulejmespath::parser::Grammar< Iterator, Skipper >private
m_rawStringEscapeRulejmespath::parser::Grammar< Iterator, Skipper >private
m_rawStringRulejmespath::parser::Grammar< Iterator, Skipper >private
m_sliceExpressionRulejmespath::parser::Grammar< Iterator, Skipper >private
m_subexpressionRulejmespath::parser::Grammar< Iterator, Skipper >private
m_surrogatePairCharacterRulejmespath::parser::Grammar< Iterator, Skipper >private
m_topLevelExpressionRulejmespath::parser::Grammar< Iterator, Skipper >private
m_unescapedCharRulejmespath::parser::Grammar< Iterator, Skipper >private
m_unicodeCharRulejmespath::parser::Grammar< Iterator, Skipper >private
m_unquotedStringRulejmespath::parser::Grammar< Iterator, Skipper >private
+ + + + diff --git a/classjmespath_1_1parser_1_1_grammar.html b/classjmespath_1_1parser_1_1_grammar.html new file mode 100644 index 0000000..c0c8089 --- /dev/null +++ b/classjmespath_1_1parser_1_1_grammar.html @@ -0,0 +1,1291 @@ + + + + + + +jmespath.cpp: jmespath::parser::Grammar< Iterator, Skipper > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::parser::Grammar< Iterator, Skipper > Class Template Reference
+
+
+ +

The Grammar class contains the PEG rule definition based on the EBNF specifications of JMESPath. + More...

+ +

#include <grammar.h>

+
+Inheritance diagram for jmespath::parser::Grammar< Iterator, Skipper >:
+
+
+ + + +
+ + + + + +

+Public Member Functions

 Grammar ()
 Constructs a Grammar object. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Private Attributes

qi::rule< Iterator,
+ast::ExpressionNode(), Skipper > 
m_topLevelExpressionRule
 
qi::rule< Iterator,
+ast::ExpressionNode(),
+qi::locals
+< ast::ExpressionNode >
+, Skipper > 
m_expressionRule
 
qi::rule< Iterator,
+ast::SubexpressionNode(ast::ExpressionNode
+&), Skipper > 
m_subexpressionRule
 
qi::rule< Iterator,
+ast::IndexExpressionNode(ast::ExpressionNode
+&), Skipper > 
m_indexExpressionRule
 
qi::rule< Iterator,
+ast::HashWildcardNode(ast::ExpressionNode
+&), Skipper > 
m_hashWildcardRule
 
qi::rule< Iterator,
+ast::HashWildcardNode(ast::ExpressionNode
+&), Skipper > 
m_hashWildcardSubexpressionRule
 
qi::rule< Iterator,
+ast::BracketSpecifierNode(),
+Skipper > 
m_bracketSpecifierRule
 
qi::rule< Iterator,
+ast::ArrayItemNode(), Skipper > 
m_arrayItemRule
 
qi::rule< Iterator,
+ast::FlattenOperatorNode(),
+Skipper > 
m_flattenOperatorRule
 
qi::rule< Iterator,
+ast::FilterExpressionNode(),
+Skipper > 
m_filterExpressionRule
 
qi::rule< Iterator,
+ast::SliceExpressionNode(),
+Skipper > 
m_sliceExpressionRule
 
qi::rule< Iterator,
+ast::ListWildcardNode(),
+Skipper > 
m_listWildcardRule
 
qi::rule< Iterator,
+ast::MultiselectListNode(),
+Skipper > 
m_multiselectListRule
 
qi::rule< Iterator,
+ast::MultiselectHashNode(),
+Skipper > 
m_multiselectHashRule
 
qi::rule< Iterator,
+ast::MultiselectHashNode::KeyValuePairType(),
+Skipper > 
m_keyValuePairRule
 
qi::rule< Iterator,
+ast::NotExpressionNode(ast::ExpressionNode
+&), Skipper > 
m_notExpressionRule
 
qi::rule< Iterator,
+ast::PipeExpressionNode(ast::ExpressionNode
+&), Skipper > 
m_pipeExpressionRule
 
qi::rule< Iterator,
+ast::ComparatorExpressionNode(ast::ExpressionNode
+&), Skipper > 
m_comparatorExpressionRule
 
qi::symbols< UnicodeChar,
+ast::ComparatorExpressionNode::Comparator
m_comparatorSymbols
 
qi::rule< Iterator,
+ast::OrExpressionNode(ast::ExpressionNode
+&), Skipper > 
m_orExpressionRule
 
qi::rule< Iterator,
+ast::AndExpressionNode(ast::ExpressionNode
+&), Skipper > 
m_andExpressionRule
 
qi::rule< Iterator,
+ast::ParenExpressionNode(),
+Skipper > 
m_parenExpressionRule
 
qi::rule< Iterator,
+ast::FunctionExpressionNode(),
+Skipper > 
m_functionExpressionRule
 
qi::rule< Iterator,
+std::vector
+< ast::FunctionExpressionNode::ArgumentType >
+), Skipper > 
m_functionArgumentListRule
 
qi::rule< Iterator,
+ast::FunctionExpressionNode::ArgumentType(),
+Skipper > 
m_functionArgumentRule
 
qi::rule< Iterator,
+ast::ExpressionArgumentNode(),
+Skipper > 
m_expressionArgumentRule
 
qi::rule< Iterator,
+ast::IdentifierNode(), Skipper > 
m_identifierRule
 
qi::rule< Iterator,
+ast::RawStringNode(), Skipper > 
m_rawStringRule
 
qi::rule< Iterator,
+ast::LiteralNode(), Skipper > 
m_literalRule
 
qi::rule< Iterator,
+ast::CurrentNode()> 
m_currentNodeRule
 
qi::rule< Iterator, UnicodeChar()> m_literalCharRule
 
qi::rule< Iterator, UnicodeChar()> m_literalEscapeRule
 
qi::rule< Iterator, UnicodeChar()> m_rawStringCharRule
 
qi::rule< Iterator, std::pair
+< UnicodeChar, UnicodeChar >)> 
m_rawStringEscapeRule
 
qi::rule< Iterator, String()> m_quotedStringRule
 
qi::rule< Iterator, String()> m_unquotedStringRule
 
qi::rule< Iterator, UnicodeChar()> m_unescapedCharRule
 
qi::rule< Iterator, UnicodeChar()> m_escapedCharRule
 
qi::rule< Iterator, UnicodeChar()> m_unicodeCharRule
 
qi::rule< Iterator, UnicodeChar()> m_surrogatePairCharacterRule
 
qi::rule< Iterator > m_quoteRule
 
qi::rule< Iterator > m_escapeRule
 
qi::symbols< UnicodeChar,
+UnicodeChar
m_controlCharacterSymbols
 
qi::rule< Iterator, Index()> m_indexRule
 
+

Detailed Description

+

template<typename Iterator, typename Skipper = encoding::space_type>
+class jmespath::parser::Grammar< Iterator, Skipper >

+ +

The Grammar class contains the PEG rule definition based on the EBNF specifications of JMESPath.

+

The actual grammar is slightly modified compared to the specifications to eliminate left recursion.

+
Template Parameters
+ + + +
IteratorString iterator type
SkipperCharacter skipper parser type
+
+
+
See Also
http://jmespath.org/specification.html#grammar
+

Constructor & Destructor Documentation

+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + + + + +
jmespath::parser::Grammar< Iterator, Skipper >::Grammar ()
+
+inline
+
+ +

Constructs a Grammar object.

+ +
+
+

Member Data Documentation

+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, ast::AndExpressionNode(ast::ExpressionNode&), Skipper> jmespath::parser::Grammar< Iterator, Skipper >::m_andExpressionRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, ast::ArrayItemNode(), Skipper> jmespath::parser::Grammar< Iterator, Skipper >::m_arrayItemRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, ast::BracketSpecifierNode(), Skipper> jmespath::parser::Grammar< Iterator, Skipper >::m_bracketSpecifierRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, ast::ComparatorExpressionNode(ast::ExpressionNode&), Skipper> jmespath::parser::Grammar< Iterator, Skipper >::m_comparatorExpressionRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::symbols<UnicodeChar, ast::ComparatorExpressionNode::Comparator> jmespath::parser::Grammar< Iterator, Skipper >::m_comparatorSymbols
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::symbols<UnicodeChar, UnicodeChar> jmespath::parser::Grammar< Iterator, Skipper >::m_controlCharacterSymbols
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, ast::CurrentNode()> jmespath::parser::Grammar< Iterator, Skipper >::m_currentNodeRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, UnicodeChar()> jmespath::parser::Grammar< Iterator, Skipper >::m_escapedCharRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator> jmespath::parser::Grammar< Iterator, Skipper >::m_escapeRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, ast::ExpressionArgumentNode(), Skipper> jmespath::parser::Grammar< Iterator, Skipper >::m_expressionArgumentRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, ast::ExpressionNode(), qi::locals<ast::ExpressionNode>, Skipper > jmespath::parser::Grammar< Iterator, Skipper >::m_expressionRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, ast::FilterExpressionNode(), Skipper> jmespath::parser::Grammar< Iterator, Skipper >::m_filterExpressionRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, ast::FlattenOperatorNode(), Skipper> jmespath::parser::Grammar< Iterator, Skipper >::m_flattenOperatorRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, std::vector<ast::FunctionExpressionNode::ArgumentType>), Skipper> jmespath::parser::Grammar< Iterator, Skipper >::m_functionArgumentListRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, ast::FunctionExpressionNode::ArgumentType(), Skipper> jmespath::parser::Grammar< Iterator, Skipper >::m_functionArgumentRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, ast::FunctionExpressionNode(), Skipper> jmespath::parser::Grammar< Iterator, Skipper >::m_functionExpressionRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, ast::HashWildcardNode(ast::ExpressionNode&), Skipper> jmespath::parser::Grammar< Iterator, Skipper >::m_hashWildcardRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, ast::HashWildcardNode(ast::ExpressionNode&), Skipper> jmespath::parser::Grammar< Iterator, Skipper >::m_hashWildcardSubexpressionRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, ast::IdentifierNode(), Skipper> jmespath::parser::Grammar< Iterator, Skipper >::m_identifierRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, ast::IndexExpressionNode(ast::ExpressionNode&), Skipper> jmespath::parser::Grammar< Iterator, Skipper >::m_indexExpressionRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, Index()> jmespath::parser::Grammar< Iterator, Skipper >::m_indexRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, ast::MultiselectHashNode::KeyValuePairType(), Skipper> jmespath::parser::Grammar< Iterator, Skipper >::m_keyValuePairRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, ast::ListWildcardNode(), Skipper> jmespath::parser::Grammar< Iterator, Skipper >::m_listWildcardRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, UnicodeChar()> jmespath::parser::Grammar< Iterator, Skipper >::m_literalCharRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, UnicodeChar()> jmespath::parser::Grammar< Iterator, Skipper >::m_literalEscapeRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, ast::LiteralNode(), Skipper> jmespath::parser::Grammar< Iterator, Skipper >::m_literalRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, ast::MultiselectHashNode(), Skipper> jmespath::parser::Grammar< Iterator, Skipper >::m_multiselectHashRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, ast::MultiselectListNode(), Skipper> jmespath::parser::Grammar< Iterator, Skipper >::m_multiselectListRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, ast::NotExpressionNode(ast::ExpressionNode&), Skipper> jmespath::parser::Grammar< Iterator, Skipper >::m_notExpressionRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, ast::OrExpressionNode(ast::ExpressionNode&), Skipper> jmespath::parser::Grammar< Iterator, Skipper >::m_orExpressionRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, ast::ParenExpressionNode(), Skipper> jmespath::parser::Grammar< Iterator, Skipper >::m_parenExpressionRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, ast::PipeExpressionNode(ast::ExpressionNode&), Skipper> jmespath::parser::Grammar< Iterator, Skipper >::m_pipeExpressionRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, String()> jmespath::parser::Grammar< Iterator, Skipper >::m_quotedStringRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator> jmespath::parser::Grammar< Iterator, Skipper >::m_quoteRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, UnicodeChar()> jmespath::parser::Grammar< Iterator, Skipper >::m_rawStringCharRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, std::pair<UnicodeChar, UnicodeChar>)> jmespath::parser::Grammar< Iterator, Skipper >::m_rawStringEscapeRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, ast::RawStringNode(), Skipper> jmespath::parser::Grammar< Iterator, Skipper >::m_rawStringRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, ast::SliceExpressionNode(), Skipper> jmespath::parser::Grammar< Iterator, Skipper >::m_sliceExpressionRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, ast::SubexpressionNode(ast::ExpressionNode&), Skipper> jmespath::parser::Grammar< Iterator, Skipper >::m_subexpressionRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, UnicodeChar()> jmespath::parser::Grammar< Iterator, Skipper >::m_surrogatePairCharacterRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, ast::ExpressionNode(), Skipper> jmespath::parser::Grammar< Iterator, Skipper >::m_topLevelExpressionRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, UnicodeChar()> jmespath::parser::Grammar< Iterator, Skipper >::m_unescapedCharRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, UnicodeChar()> jmespath::parser::Grammar< Iterator, Skipper >::m_unicodeCharRule
+
+private
+
+ +
+
+ +
+
+
+template<typename Iterator , typename Skipper = encoding::space_type>
+ + + + + +
+ + + + +
qi::rule<Iterator, String()> jmespath::parser::Grammar< Iterator, Skipper >::m_unquotedStringRule
+
+private
+
+ +
+
+
The documentation for this class was generated from the following file:
    +
  • /home/travis/build/robertmrk/jmespath.cpp/src/parser/grammar.h
  • +
+
+ + + + diff --git a/classjmespath_1_1parser_1_1_grammar.png b/classjmespath_1_1parser_1_1_grammar.png new file mode 100644 index 0000000000000000000000000000000000000000..1c61de3585a44fee8e6b811965060f29c558b00b GIT binary patch literal 1297 zcmeAS@N?(olHy`uVBq!ia0y~yVC(?012~w0q)EHbBOoOa;1lBd|Nnm=^TnI5rTvE{ z09jys;J^Xa&O7ozE=Ng_UoZnu5eQs86=KA|z_P&8#WAFU@$KBZRgblJT&L%y?f)-5 z-^489k7ec~vsXW_B>Ly@IAt`JbkB@Db>_|HLn@l8p7TSRCM;p_5|||7!09xJNyE`2 zh#^!!-R9YRulH}aOBe9oy7;dA%yq}I|C5)foAlhax|R3;TJ*i^vwSBn5#G!9=+g=B zPj9sZCVkno%|YMsi`}$~`Z}*1-gKAQf8F?NYyTbj_v`BpT;Kn!RC-(gExEtWu~|3X z|84$XRpRs9r}o?PoZ@Y!;mxt%ujFldyUu!5i<`jK|M&K6y&4uRP+IgmIq3c!kIBEn zlxleN4xf5%%XR!h*6H|f$L1e9V(`49$us%$v#8^#v$mv7PIkDZQL5q<^y-Yxow9%C zD>K=W_B?w#;aP}G`-%QJvQx}_N+*0@6aREc`5DpV-h%5Dk81wb*9wV0lw8$vKI3wx zZ_#RLYu3Vw`%9KhcgXo@urhnyfv@Z}-tz7I_l~f*$bX#Y!GExS{rq(MLx zj*cQxRn4|_WzR4Es}pHaS*r5VOO?ZuYXOU*C*u?a70m{r78TYDye;4qvzY0}=U?m- zn0~AgVma{q>-+dg3_o^&n5B;=s4&>AWnmO>>SR=C5Mps)P~~UDo#lRBK z#K5rtsK9}fi5d$2i7T8r6O@)VUz82#o+aouzNi)OKewN^x>j}fU&cL4o}Tia{JZG( z_js!n`^%K?F&57Maqi9gMvc>dv)1i+;&!Ju=Uu*fxqZOXr>|eX-G3=iEHCYjFOO~P zfp3AkzrH=aqhkBg^;2J&q$j<2%a~iX{V%Wdu3tRy%#YqB@%m(b&3qxTZ`*w}Th(-# zZ?9(EebidkYG-Qw^6SczN00s7HRH3}tv!F-w*0o5^g3_P-Gfh7SLfc(>OXxeVe_?! z+;?%p`!3&ObG7_Y7ya2%e8CP07tP{(H`nH~9uhxRngTe~DWM4fsh3c8 literal 0 HcmV?d00001 diff --git a/classjmespath_1_1parser_1_1_insert_node_action-members.html b/classjmespath_1_1parser_1_1_insert_node_action-members.html new file mode 100644 index 0000000..e899a9c --- /dev/null +++ b/classjmespath_1_1parser_1_1_insert_node_action-members.html @@ -0,0 +1,111 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::parser::InsertNodeAction< NodeInserterT, NodeInsertConditionT > Member List
+
+ + + + + diff --git a/classjmespath_1_1parser_1_1_insert_node_action.html b/classjmespath_1_1parser_1_1_insert_node_action.html new file mode 100644 index 0000000..05ad8ab --- /dev/null +++ b/classjmespath_1_1parser_1_1_insert_node_action.html @@ -0,0 +1,267 @@ + + + + + + +jmespath.cpp: jmespath::parser::InsertNodeAction< NodeInserterT, NodeInsertConditionT > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::parser::InsertNodeAction< NodeInserterT, NodeInsertConditionT > Class Template Reference
+
+
+ +

The InsertNodeAction class is a functor for inserting the given node into the AST whose root node is specified with targetNode. + More...

+ +

#include <insertnodeaction.h>

+ + + + + +

+Public Types

using result_type = void
 The action's result type. More...
 
+ + + + + +

+Public Member Functions

template<typename T >
void operator() (ast::ExpressionNode &targetNode, T &node) const
 Inserts the given node into the AST whose root node is specified with targetNode. More...
 
+ + + + + + + +

+Private Attributes

NodeInserterT m_nodeInserter
 Functor for inserting the a node at the position of the target node into the AST. More...
 
NodeInsertConditionT m_insertCondition
 Functor for checking whether the passed node can be inserted at the position of the target node. More...
 
+

Detailed Description

+

template<typename NodeInserterT, typename NodeInsertConditionT>
+class jmespath::parser::InsertNodeAction< NodeInserterT, NodeInsertConditionT >

+ +

The InsertNodeAction class is a functor for inserting the given node into the AST whose root node is specified with targetNode.

+

The functor iterates over the left edge of the AST and if NodeInsertConditionT returns true for the given combination of targetNode and node the node will be inserted using NodeInserterT. If NodeInsertConditionT returns false it will try to insert node at the next location on the left edge of the AST.

+
Template Parameters
+ + + +
NodeInserterTPolicy type for inserting the a node at the position of the target node into the AST. The functor should have an overloaded function call operator with a signature of void(ast::ExpressionNode* targetNode, T* node) const.
NodeInsertConditionTPolicy type for checking whether the passed node can be inserted at the position of the target node. The functor should have an overloaded function call operator with a signature of bool(ast::ExpressionNode* targetNode, T* node) const.
+
+
+

Member Typedef Documentation

+ +
+
+
+template<typename NodeInserterT , typename NodeInsertConditionT >
+ + + + +
using jmespath::parser::InsertNodeAction< NodeInserterT, NodeInsertConditionT >::result_type = void
+
+ +

The action's result type.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename NodeInserterT , typename NodeInsertConditionT >
+
+template<typename T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void jmespath::parser::InsertNodeAction< NodeInserterT, NodeInsertConditionT >::operator() (ast::ExpressionNodetargetNode,
T & node 
) const
+
+inline
+
+ +

Inserts the given node into the AST whose root node is specified with targetNode.

+
Parameters
+ + + +
[in]targetNodeThe root node of the AST.
[in]nodeThe node which should be inserted.
+
+
+ +
+
+

Member Data Documentation

+ +
+
+
+template<typename NodeInserterT , typename NodeInsertConditionT >
+ + + + + +
+ + + + +
NodeInsertConditionT jmespath::parser::InsertNodeAction< NodeInserterT, NodeInsertConditionT >::m_insertCondition
+
+private
+
+ +

Functor for checking whether the passed node can be inserted at the position of the target node.

+ +
+
+ +
+
+
+template<typename NodeInserterT , typename NodeInsertConditionT >
+ + + + + +
+ + + + +
NodeInserterT jmespath::parser::InsertNodeAction< NodeInserterT, NodeInsertConditionT >::m_nodeInserter
+
+private
+
+ +

Functor for inserting the a node at the position of the target node into the AST.

+ +
+
+
The documentation for this class was generated from the following file: +
+ + + + diff --git a/classjmespath_1_1parser_1_1_left_child_extractor-members.html b/classjmespath_1_1parser_1_1_left_child_extractor-members.html new file mode 100644 index 0000000..ac2acba --- /dev/null +++ b/classjmespath_1_1parser_1_1_left_child_extractor-members.html @@ -0,0 +1,112 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::parser::LeftChildExtractor Member List
+
+
+ +

This is the complete list of members for jmespath::parser::LeftChildExtractor, including all inherited members.

+ + + + + + +
childNode(T *) const jmespath::parser::LeftChildExtractorinline
childNode(T *node) const jmespath::parser::LeftChildExtractorinline
childNode(T *node) const jmespath::parser::LeftChildExtractorinline
operator()(ast::ExpressionNode *node) const jmespath::parser::LeftChildExtractorinline
operator()(T &node) const jmespath::parser::LeftChildExtractorinline
+ + + + diff --git a/classjmespath_1_1parser_1_1_left_child_extractor.html b/classjmespath_1_1parser_1_1_left_child_extractor.html new file mode 100644 index 0000000..982b377 --- /dev/null +++ b/classjmespath_1_1parser_1_1_left_child_extractor.html @@ -0,0 +1,317 @@ + + + + + + +jmespath.cpp: jmespath::parser::LeftChildExtractor Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::parser::LeftChildExtractor Class Reference
+
+
+ +

The LeftChildExtractor class is a functor that extracts the child expression node from the given node which should be evaluated before the given node itself. + More...

+ +

#include <leftchildextractor.h>

+
+Inheritance diagram for jmespath::parser::LeftChildExtractor:
+
+
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

ast::ExpressionNodeoperator() (ast::ExpressionNode *node) const
 Returns a pointer to the child expression node of the given node or nullptr if the node doesn't has a suitable child node. More...
 
template<typename T >
ast::ExpressionNodeoperator() (T &node) const
 Returns a pointer to the child expression node of the given node or nullptr if the node doesn't has a suitable child node. More...
 
template<typename T , typename std::enable_if< !std::is_base_of< ast::BinaryExpressionNode, T >::value &&!std::is_same< ast::NotExpressionNode, T >::value, int >::type = 0>
ast::ExpressionNodechildNode (T *) const
 Returns a pointer to the child expression node of the given node or nullptr if the node doesn't has a suitable child node. More...
 
template<typename T , typename std::enable_if< !std::is_base_of< ast::BinaryExpressionNode, T >::value &&std::is_same< ast::NotExpressionNode, T >::value, int >::type = 0>
ast::ExpressionNodechildNode (T *node) const
 Returns a pointer to the child expression node of the given node or nullptr if the node doesn't has a suitable child node. More...
 
template<typename T , typename std::enable_if< std::is_base_of< ast::BinaryExpressionNode, T >::value, int >::type = 0>
ast::ExpressionNodechildNode (T *node) const
 Returns a pointer to the child expression node of the given node or nullptr if the node doesn't has a suitable child node. More...
 
+

Detailed Description

+

The LeftChildExtractor class is a functor that extracts the child expression node from the given node which should be evaluated before the given node itself.

+

Member Function Documentation

+ +
+
+
+template<typename T , typename std::enable_if< !std::is_base_of< ast::BinaryExpressionNode, T >::value &&!std::is_same< ast::NotExpressionNode, T >::value, int >::type = 0>
+ + + + + +
+ + + + + + + + +
ast::ExpressionNode* jmespath::parser::LeftChildExtractor::childNode (T * ) const
+
+inline
+
+ +

Returns a pointer to the child expression node of the given node or nullptr if the node doesn't has a suitable child node.

+
Parameters
+ + +
[in]nodeThe node whose child node should be extracted.
+
+
+ +
+
+ +
+
+
+template<typename T , typename std::enable_if< !std::is_base_of< ast::BinaryExpressionNode, T >::value &&std::is_same< ast::NotExpressionNode, T >::value, int >::type = 0>
+ + + + + +
+ + + + + + + + +
ast::ExpressionNode* jmespath::parser::LeftChildExtractor::childNode (T * node) const
+
+inline
+
+ +

Returns a pointer to the child expression node of the given node or nullptr if the node doesn't has a suitable child node.

+
Parameters
+ + +
[in]nodeThe node whose child node should be extracted.
+
+
+ +
+
+ +
+
+
+template<typename T , typename std::enable_if< std::is_base_of< ast::BinaryExpressionNode, T >::value, int >::type = 0>
+ + + + + +
+ + + + + + + + +
ast::ExpressionNode* jmespath::parser::LeftChildExtractor::childNode (T * node) const
+
+inline
+
+ +

Returns a pointer to the child expression node of the given node or nullptr if the node doesn't has a suitable child node.

+
Parameters
+ + +
[in]nodeThe node whose child node should be extracted.
+
+
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
ast::ExpressionNode* jmespath::parser::LeftChildExtractor::operator() (ast::ExpressionNodenode) const
+
+inline
+
+ +

Returns a pointer to the child expression node of the given node or nullptr if the node doesn't has a suitable child node.

+
Parameters
+ + +
[in]nodeThe node whose child node should be extracted.
+
+
+ +
+
+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
ast::ExpressionNode* jmespath::parser::LeftChildExtractor::operator() (T & node) const
+
+inline
+
+ +

Returns a pointer to the child expression node of the given node or nullptr if the node doesn't has a suitable child node.

+
Parameters
+ + +
[in]nodeThe node whose child node should be extracted.
+
+
+ +
+
+
The documentation for this class was generated from the following file: +
+ + + + diff --git a/classjmespath_1_1parser_1_1_left_child_extractor.png b/classjmespath_1_1parser_1_1_left_child_extractor.png new file mode 100644 index 0000000000000000000000000000000000000000..155303075bf2873e82fdbd9495b7bcd871e29098 GIT binary patch literal 955 zcmeAS@N?(olHy`uVBq!ia0y~yVB`U^12~w0i(^Oy>aTxVnyW|0k!8XfI9GQ28#ErFQdMCK{+{Y9*@hcy_%q(3|1o`}q0d zEz;Ls>;Lj7GCL;IuW~owMYwj&*JYDcvj2;=sn}kAZJ_e<^ePGc#3_&cC(YsMF+2I? zmFxG-|9|Hc?XC#f60Y0Nc$M4p@U+)A{#yQ#OZNT0??B{jE3@Tyo@}1&Eym{dm+7}| z(9PLhZN3+SmSi;h*T;U9b6-9U+_o2MbXoKF_6d)Kja}XNo1;lP@9UYZNiiw zuU8ceb&YlmL7dD5-#$(>5n?;AguQ#oL<5EGfk+p?@4}pxpA9(?&)*#rR%GXT5gvPG%s0KnAhL=X6b#kEV(Pw z8lUnkFxy|Qp~t%6Vy;BH^K$FERhl6!VfVMKkbIaB_k88Tgfk|yB>$e+A#z~pJNLHv zd;7T9Z-ty$`)v9Dr-$n~lRq7N+A}ZIMlSf1H)GBhtDdR+>2ua4-Y~gwY}b*DgfE@* z4sS?IHu9POK-b_|&CZ@vNA2_{-8VA&b6~l_vdbTyo!D_slJD5Li?fd(xvR$7c9ye* zHF>+p0XO}_H}0vWw{6{oDer_yUB;AqQIQS;OXk;vd$@? F2>|;ywuArx literal 0 HcmV?d00001 diff --git a/classjmespath_1_1parser_1_1_left_edge_iterator-members.html b/classjmespath_1_1parser_1_1_left_edge_iterator-members.html new file mode 100644 index 0000000..e745945 --- /dev/null +++ b/classjmespath_1_1parser_1_1_left_edge_iterator-members.html @@ -0,0 +1,116 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::parser::LeftEdgeIterator Member List
+
+ + + + + diff --git a/classjmespath_1_1parser_1_1_left_edge_iterator.html b/classjmespath_1_1parser_1_1_left_edge_iterator.html new file mode 100644 index 0000000..2fcafda --- /dev/null +++ b/classjmespath_1_1parser_1_1_left_edge_iterator.html @@ -0,0 +1,402 @@ + + + + + + +jmespath.cpp: jmespath::parser::LeftEdgeIterator Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::parser::LeftEdgeIterator Class Reference
+
+
+ +

The LeftEdgeIterator class is a forward iterator which can be used to iterate over the ExpressionNode objects along the left edge of the AST. + More...

+ +

#include <leftedgeiterator.h>

+
+Inheritance diagram for jmespath::parser::LeftEdgeIterator:
+
+
+ + + +
+ + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 LeftEdgeIterator ()
 Constructs an empty LeftEdgeIterator object which can be used as an end iterator. More...
 
 LeftEdgeIterator (ast::ExpressionNode &node)
 Constructs a LeftEdgeIterator which points to the given node. More...
 
reference operator* () const
 Returns a reference to the current node. More...
 
pointer operator-> () const
 Returns a pointer to the current node. More...
 
bool operator!= (const LeftEdgeIterator &other) const
 Checks whether this iterator doesn't equals to the other. More...
 
LeftEdgeIteratoroperator++ ()
 Advances the iterator to the next node on the left edge of the AST. More...
 
LeftEdgeIterator operator++ (int)
 Advances the iterator to the next node on the left edge of the AST. More...
 
+ + + + + + + +

+Private Attributes

ast::ExpressionNodem_node
 Pointer to the current node object. More...
 
LeftChildExtractor m_childExtractor
 Functor used for extracting the left child of the given node. More...
 
+

Detailed Description

+

The LeftEdgeIterator class is a forward iterator which can be used to iterate over the ExpressionNode objects along the left edge of the AST.

+

Constructor & Destructor Documentation

+ +
+
+ + + + + +
+ + + + + + + +
jmespath::parser::LeftEdgeIterator::LeftEdgeIterator ()
+
+inline
+
+ +

Constructs an empty LeftEdgeIterator object which can be used as an end iterator.

+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
jmespath::parser::LeftEdgeIterator::LeftEdgeIterator (ast::ExpressionNodenode)
+
+inline
+
+ +

Constructs a LeftEdgeIterator which points to the given node.

+
Parameters
+ + +
[in]nodeThe node object where the iterator should point.
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
bool jmespath::parser::LeftEdgeIterator::operator!= (const LeftEdgeIteratorother) const
+
+inline
+
+ +

Checks whether this iterator doesn't equals to the other.

+
Parameters
+ + +
[in]otherAn iterator object.
+
+
+
Returns
Returns true if other points to a different node than this iterator, otherwise returns false.
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
reference jmespath::parser::LeftEdgeIterator::operator* () const
+
+inline
+
+ +

Returns a reference to the current node.

+
Returns
Returns a reference to the current node.
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
LeftEdgeIterator& jmespath::parser::LeftEdgeIterator::operator++ ()
+
+inline
+
+ +

Advances the iterator to the next node on the left edge of the AST.

+
Returns
Returns an iterator to the next node.
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
LeftEdgeIterator jmespath::parser::LeftEdgeIterator::operator++ (int )
+
+inline
+
+ +

Advances the iterator to the next node on the left edge of the AST.

+
Returns
Returns an iterator to the previous node.
+ +
+
+ +
+
+ + + + + +
+ + + + + + + +
pointer jmespath::parser::LeftEdgeIterator::operator-> () const
+
+inline
+
+ +

Returns a pointer to the current node.

+
Returns
Returns a pointer to the current node.
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
LeftChildExtractor jmespath::parser::LeftEdgeIterator::m_childExtractor
+
+private
+
+ +

Functor used for extracting the left child of the given node.

+ +
+
+ +
+
+ + + + + +
+ + + + +
ast::ExpressionNode* jmespath::parser::LeftEdgeIterator::m_node
+
+private
+
+ +

Pointer to the current node object.

+ +
+
+
The documentation for this class was generated from the following file: +
+ + + + diff --git a/classjmespath_1_1parser_1_1_left_edge_iterator.png b/classjmespath_1_1parser_1_1_left_edge_iterator.png new file mode 100644 index 0000000000000000000000000000000000000000..50b81b49612852763dce7b5fe8d640db0b4fb834 GIT binary patch literal 1130 zcmeAS@N?(olHy`uVBq!ia0y~yU`zwD12~w0r0g1f1t296;1lBd|Nnm=^TnI5rTvE{ z09jys;J^Xa&O7ozE=Ng_UoZnu5eQs86=KA|!2HwG#WAFU@$KBeq{mhquKf0Uf8YP; zoqSTv!|$b)F8=#6#i?moe*K0ArHnh~ZQFRf=Xdbxi05}gKTmydPO8Z2%-?j4 zmh&GC&-4|Y-}?8JdHOrU>(VL5b1oIm6j}G|QNrW3$-xFMccjTXyD8qTbu0N&`eEU5 zpS(jR(=Q4v^Y2f5#Pv;8cJZR_oxXiD?rwSNb$)H#&TRj{<3W#4cOOhHZ4=*j@%-M( zJ5h@Jj~0pDPuS;rVPEE)#CJcxym{pH*Uj>CNmFIPz9WA^3&a=hpFgYZv1H}(JI6j2 zTD~)zeR$)o?Y|0GezCFyJA7R*%ioqY_kZf8CEW+beUq(@#s*rQ>0Y+&&dl?P(@J8B zO=p+H@XtE-(#ya4vuC`4C->a%&%9^Ie|z>+(4yT)GiG9X#uNW9&$gL=yL@kc(qEB0 z_sr8-8_xMAe-rsr(O!K|?sMydySv!Sax2p7Rkr4S=-auy!_fb_$*j_>JI5b9^t@Ej z>+3w}p4;l=fJx`3bU*yxQK`Lo`R7^f`oEW`*k0J*9yzIQ8MpjO1Mf?-SD-{9C^lcW z-8{1R$dduS3-xAgDBtUAeO=a)Zt6Mvv4J}5q1 zd&BShv%hYr{r9qMUf=AEp&45&%-R>PU2y!7U7l@;boGz2`b!llN&AemS8R`NewNF2 z{OP@4<=ox+j~7O&!u&3NuQKk-Llex3Q5-C&dc{<#o4S3 t^&yd0c>=V~FziPOHt95QK3?>Xx%JAKw|)QZeSif6gQu&X%Q~loCID+@DhL1o literal 0 HcmV?d00001 diff --git a/classjmespath_1_1parser_1_1_node_insert_condition-members.html b/classjmespath_1_1parser_1_1_node_insert_condition-members.html new file mode 100644 index 0000000..6c3ecfe --- /dev/null +++ b/classjmespath_1_1parser_1_1_node_insert_condition-members.html @@ -0,0 +1,110 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::parser::NodeInsertCondition Member List
+
+
+ +

This is the complete list of members for jmespath::parser::NodeInsertCondition, including all inherited members.

+ + + + +
operator()(const ast::ExpressionNode &targetNode, const T &node) const jmespath::parser::NodeInsertConditioninline
operator()(const ast::ExpressionNode &targetNode, const T &node) const jmespath::parser::NodeInsertConditioninline
result_type typedefjmespath::parser::NodeInsertCondition
+ + + + diff --git a/classjmespath_1_1parser_1_1_node_insert_condition.html b/classjmespath_1_1parser_1_1_node_insert_condition.html new file mode 100644 index 0000000..a740745 --- /dev/null +++ b/classjmespath_1_1parser_1_1_node_insert_condition.html @@ -0,0 +1,242 @@ + + + + + + +jmespath.cpp: jmespath::parser::NodeInsertCondition Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::parser::NodeInsertCondition Class Reference
+
+
+ +

The NodeInsertCondition class is a functor that will either yield a true or false result based on whether the given node should be inserted at the location of the targetNode. + More...

+ +

#include <nodeinsertcondition.h>

+ + + + + +

+Public Types

using result_type = bool
 The result type of the functor. More...
 
+ + + + + + + + + + +

+Public Member Functions

template<typename T , typename std::enable_if< std::is_base_of< ast::BinaryExpressionNode, T >::value, int >::type = 0>
bool operator() (const ast::ExpressionNode &targetNode, const T &node) const
 Returns true or false based on whether the given node should be inserted at the location of the targetNode. More...
 
template<typename T , typename std::enable_if< !std::is_base_of< ast::BinaryExpressionNode, T >::value, int >::type = 0>
bool operator() (const ast::ExpressionNode &targetNode, const T &node) const
 Returns true or false based on whether the given node should be inserted at the location of the targetNode. More...
 
+

Detailed Description

+

The NodeInsertCondition class is a functor that will either yield a true or false result based on whether the given node should be inserted at the location of the targetNode.

+

Member Typedef Documentation

+ +
+
+ +

The result type of the functor.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T , typename std::enable_if< std::is_base_of< ast::BinaryExpressionNode, T >::value, int >::type = 0>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool jmespath::parser::NodeInsertCondition::operator() (const ast::ExpressionNodetargetNode,
const T & node 
) const
+
+inline
+
+ +

Returns true or false based on whether the given node should be inserted at the location of the targetNode.

+
Parameters
+ + + +
[in]targetNodeThe node located where the given node might be insertable.
[in]nodeThe node to test for insertability.
+
+
+ +
+
+ +
+
+
+template<typename T , typename std::enable_if< !std::is_base_of< ast::BinaryExpressionNode, T >::value, int >::type = 0>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool jmespath::parser::NodeInsertCondition::operator() (const ast::ExpressionNodetargetNode,
const T & node 
) const
+
+inline
+
+ +

Returns true or false based on whether the given node should be inserted at the location of the targetNode.

+
Parameters
+ + + +
[in]targetNodeThe node located where the given node might be insertable.
[in]nodeThe node to test for insertability.
+
+
+ +
+
+
The documentation for this class was generated from the following file: +
+ + + + diff --git a/classjmespath_1_1parser_1_1_node_insert_policy-members.html b/classjmespath_1_1parser_1_1_node_insert_policy-members.html new file mode 100644 index 0000000..b1a2827 --- /dev/null +++ b/classjmespath_1_1parser_1_1_node_insert_policy-members.html @@ -0,0 +1,111 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::parser::NodeInsertPolicy Member List
+
+
+ +

This is the complete list of members for jmespath::parser::NodeInsertPolicy, including all inherited members.

+ + + + + +
operator()(ast::ExpressionNode &targetNode, T &node) const jmespath::parser::NodeInsertPolicyinline
operator()(ast::ExpressionNode &targetNode, T &node) const jmespath::parser::NodeInsertPolicyinline
operator()(ast::ExpressionNode &targetNode, T &node) const jmespath::parser::NodeInsertPolicyinline
result_type typedefjmespath::parser::NodeInsertPolicy
+ + + + diff --git a/classjmespath_1_1parser_1_1_node_insert_policy.html b/classjmespath_1_1parser_1_1_node_insert_policy.html new file mode 100644 index 0000000..dd9cc0e --- /dev/null +++ b/classjmespath_1_1parser_1_1_node_insert_policy.html @@ -0,0 +1,291 @@ + + + + + + +jmespath.cpp: jmespath::parser::NodeInsertPolicy Class Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::parser::NodeInsertPolicy Class Reference
+
+
+ +

The NodeInsertPolicy class is a functor for inserting a given node into the AST. + More...

+ +

#include <nodeinsertpolicy.h>

+ + + + + +

+Public Types

using result_type = void
 The result type of the functor. More...
 
+ + + + + + + + + + + + + + +

+Public Member Functions

template<typename T , typename std::enable_if< std::is_base_of< ast::BinaryExpressionNode, T >::value &&!std::is_same< ast::SubexpressionNode, T >::value, int >::type = 0>
void operator() (ast::ExpressionNode &targetNode, T &node) const
 Inserts the given node into the AST at the location of the targetNode. More...
 
template<typename T , typename std::enable_if< std::is_same< ast::NotExpressionNode, T >::value, int >::type = 0>
void operator() (ast::ExpressionNode &targetNode, T &node) const
 Inserts the given node into the AST at the location of the targetNode. More...
 
template<typename T , typename std::enable_if< (!std::is_base_of< ast::BinaryExpressionNode, T >::value &&!std::is_same< ast::NotExpressionNode, T >::value &&std::is_assignable< ast::ExpressionNode, T >::value)||std::is_same< ast::SubexpressionNode, T >::value, int >::type = 0>
void operator() (ast::ExpressionNode &targetNode, T &node) const
 Inserts the given node into the AST at the location of the targetNode. More...
 
+

Detailed Description

+

The NodeInsertPolicy class is a functor for inserting a given node into the AST.

+

Member Typedef Documentation

+ +
+
+ +

The result type of the functor.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<typename T , typename std::enable_if< std::is_base_of< ast::BinaryExpressionNode, T >::value &&!std::is_same< ast::SubexpressionNode, T >::value, int >::type = 0>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void jmespath::parser::NodeInsertPolicy::operator() (ast::ExpressionNodetargetNode,
T & node 
) const
+
+inline
+
+ +

Inserts the given node into the AST at the location of the targetNode.

+
Parameters
+ + + +
[in]targetNodeThe node located where node should be inserted.
[in]nodeThe node that will be inserted.
+
+
+ +
+
+ +
+
+
+template<typename T , typename std::enable_if< std::is_same< ast::NotExpressionNode, T >::value, int >::type = 0>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void jmespath::parser::NodeInsertPolicy::operator() (ast::ExpressionNodetargetNode,
T & node 
) const
+
+inline
+
+ +

Inserts the given node into the AST at the location of the targetNode.

+
Parameters
+ + + +
[in]targetNodeThe node located where node should be inserted.
[in]nodeThe node that will be inserted.
+
+
+ +
+
+ +
+
+
+template<typename T , typename std::enable_if< (!std::is_base_of< ast::BinaryExpressionNode, T >::value &&!std::is_same< ast::NotExpressionNode, T >::value &&std::is_assignable< ast::ExpressionNode, T >::value)||std::is_same< ast::SubexpressionNode, T >::value, int >::type = 0>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void jmespath::parser::NodeInsertPolicy::operator() (ast::ExpressionNodetargetNode,
T & node 
) const
+
+inline
+
+ +

Inserts the given node into the AST at the location of the targetNode.

+
Parameters
+ + + +
[in]targetNodeThe node located where node should be inserted.
[in]nodeThe node that will be inserted.
+
+
+ +
+
+
The documentation for this class was generated from the following file: +
+ + + + diff --git a/classjmespath_1_1parser_1_1_parser-members.html b/classjmespath_1_1parser_1_1_parser-members.html new file mode 100644 index 0000000..b5c8a6a --- /dev/null +++ b/classjmespath_1_1parser_1_1_parser-members.html @@ -0,0 +1,112 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::parser::Parser< T > Member List
+
+
+ +

This is the complete list of members for jmespath::parser::Parser< T >, including all inherited members.

+ + + + + + +
GrammarType typedefjmespath::parser::Parser< T >
IteratorType typedefjmespath::parser::Parser< T >
m_grammarjmespath::parser::Parser< T >private
parse(const String &expression)jmespath::parser::Parser< T >inline
ResultType typedefjmespath::parser::Parser< T >
+ + + + diff --git a/classjmespath_1_1parser_1_1_parser.html b/classjmespath_1_1parser_1_1_parser.html new file mode 100644 index 0000000..a067af1 --- /dev/null +++ b/classjmespath_1_1parser_1_1_parser.html @@ -0,0 +1,269 @@ + + + + + + +jmespath.cpp: jmespath::parser::Parser< T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::parser::Parser< T > Class Template Reference
+
+
+ +

The Parser class parses expressions with the specified grammar. + More...

+ +

#include <parser.h>

+ + + + + + + + + + + +

+Public Types

using IteratorType = UnicodeIteratorAdaptor
 Iterator type which will be used to instantiate the grammar. More...
 
using GrammarType = T< IteratorType, encoding::space_type >
 The type of the grammar that will be instantiated. More...
 
using ResultType = typename GrammarType::start_type::attr_type
 The type of the result of parsing. More...
 
+ + + + +

+Public Member Functions

ResultType parse (const String &expression)
 Parses the given expression. More...
 
+ + + + +

+Private Attributes

GrammarType m_grammar
 Grammar object used for parsing. More...
 
+

Detailed Description

+

template<template< typename, typename > class T>
+class jmespath::parser::Parser< T >

+ +

The Parser class parses expressions with the specified grammar.

+
Template Parameters
+ + +
TGrammar type to use for parsing
+
+
+

Member Typedef Documentation

+ +
+
+
+template<template< typename, typename > class T>
+ + + + +
using jmespath::parser::Parser< T >::GrammarType = T<IteratorType, encoding::space_type>
+
+ +

The type of the grammar that will be instantiated.

+ +
+
+ +
+
+
+template<template< typename, typename > class T>
+ + + + +
using jmespath::parser::Parser< T >::IteratorType = UnicodeIteratorAdaptor
+
+ +

Iterator type which will be used to instantiate the grammar.

+ +
+
+ +
+
+
+template<template< typename, typename > class T>
+ + + + +
using jmespath::parser::Parser< T >::ResultType = typename GrammarType::start_type::attr_type
+
+ +

The type of the result of parsing.

+ +
+
+

Member Function Documentation

+ +
+
+
+template<template< typename, typename > class T>
+ + + + + +
+ + + + + + + + +
ResultType jmespath::parser::Parser< T >::parse (const Stringexpression)
+
+inline
+
+ +

Parses the given expression.

+
Parameters
+ + +
[in]expressionJMESPath search expression encoded in UTF-8
+
+
+
Returns
The result of parsing the expression. The result's type is the same as the attribute type of the start rule in the specified grammar.
+
Exceptions
+ + +
SyntaxError
+
+
+ +
+
+

Member Data Documentation

+ +
+
+
+template<template< typename, typename > class T>
+ + + + + +
+ + + + +
GrammarType jmespath::parser::Parser< T >::m_grammar
+
+private
+
+ +

Grammar object used for parsing.

+ +
+
+
The documentation for this class was generated from the following file:
    +
  • /home/travis/build/robertmrk/jmespath.cpp/src/parser/parser.h
  • +
+
+ + + + diff --git a/closed.png b/closed.png new file mode 100644 index 0000000000000000000000000000000000000000..98cc2c909da37a6df914fbf67780eebd99c597f5 GIT binary patch literal 132 zcmeAS@N?(olHy`uVBq!ia0vp^oFL4>1|%O$WD@{V-kvUwAr*{o@8{^CZMh(5KoB^r_<4^zF@3)Cp&&t3hdujKf f*?bjBoY!V+E))@{xMcbjXe@)LtDnm{r-UW|*e5JT literal 0 HcmV?d00001 diff --git a/comparatorexpressionnode_8cpp.html b/comparatorexpressionnode_8cpp.html new file mode 100644 index 0000000..37bc456 --- /dev/null +++ b/comparatorexpressionnode_8cpp.html @@ -0,0 +1,116 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/comparatorexpressionnode.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
comparatorexpressionnode.cpp File Reference
+
+
+ + + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/comparatorexpressionnode_8h.html b/comparatorexpressionnode_8h.html new file mode 100644 index 0000000..59348da --- /dev/null +++ b/comparatorexpressionnode_8h.html @@ -0,0 +1,124 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/comparatorexpressionnode.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
comparatorexpressionnode.h File Reference
+
+
+
#include "src/ast/binaryexpressionnode.h"
+#include <boost/fusion/include/adapt_struct.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::ast::ComparatorExpressionNode
 The ComparatorExpressionNode class represents a JMESPath comparator expression. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/comparatorexpressionnode_8h_source.html b/comparatorexpressionnode_8h_source.html new file mode 100644 index 0000000..c420bb1 --- /dev/null +++ b/comparatorexpressionnode_8h_source.html @@ -0,0 +1,186 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/comparatorexpressionnode.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
comparatorexpressionnode.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef COMPARATOREXPRESSIONNODE_H
+
29 #define COMPARATOREXPRESSIONNODE_H
+ +
31 #include <boost/fusion/include/adapt_struct.hpp>
+
32 
+
33 namespace jmespath { namespace ast {
+
34 
+ +
40 {
+
41 public:
+
45  enum class Comparator
+
46  {
+
47  Unknown,
+
48  Less,
+ +
50  Equal,
+ +
52  Greater,
+
53  NotEqual
+
54  };
+ + +
68  Comparator valueComparator,
+
69  const ExpressionNode& right);
+
76  bool operator ==(const ComparatorExpressionNode& other) const;
+
82  bool isProjection() const override;
+
89  bool stopsProjection() const override;
+
95  void accept(interpreter::AbstractVisitor* visitor) const override;
+ +
100 };
+
101 }} // namespace jmespath::ast
+
102 
+
103 BOOST_FUSION_ADAPT_STRUCT(
+ +
105  (jmespath::ast::ExpressionNode, leftExpression)
+ +
107  (jmespath::ast::ExpressionNode, rightExpression)
+
108 )
+
109 #endif // COMPARATOREXPRESSIONNODE_H
+
bool isProjection() const override
Returns whather this expression requires the projection of subsequent expressions.
Definition: comparatorexpressionnode.cpp:59
+ +
bool stopsProjection() const override
Reports whether the node should stop an ongoing projection or not.
Definition: comparatorexpressionnode.cpp:64
+
The ComparatorExpressionNode class represents a JMESPath comparator expression.
Definition: comparatorexpressionnode.h:39
+ +
Comparator comparator
The type of comparator associated with the expression.
Definition: comparatorexpressionnode.h:99
+ +
The BinaryExpressionNode class is the base class for all node types which consist of a left and a rig...
Definition: binaryexpressionnode.h:39
+
ComparatorExpressionNode()
Constructs an empty ComparatorExpressionNode object.
Definition: comparatorexpressionnode.cpp:34
+
Comparator
The Comparator enum defines the available comparison operators.
Definition: comparatorexpressionnode.h:45
+
The AbstractVisitor class is an interface which defines the member functions required to visit every ...
Definition: abstractvisitor.h:71
+ +
void accept(interpreter::AbstractVisitor *visitor) const override
Calls the visit method of the given visitor with the dynamic type of the node.
Definition: comparatorexpressionnode.cpp:69
+ +
The ExpressionNode class represents a JMESPath expression.
Definition: expressionnode.h:56
+ +
bool operator==(const ComparatorExpressionNode &other) const
Equality compares this node to the other.
Definition: comparatorexpressionnode.cpp:48
+ + +
+ + + + diff --git a/contextvaluevisitoradaptor_8h.html b/contextvaluevisitoradaptor_8h.html new file mode 100644 index 0000000..37a3d45 --- /dev/null +++ b/contextvaluevisitoradaptor_8h.html @@ -0,0 +1,136 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/interpreter/contextvaluevisitoradaptor.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
contextvaluevisitoradaptor.h File Reference
+
+
+
#include "src/interpreter/interpreter.h"
+#include "jmespath/exceptions.h"
+#include <boost/variant.hpp>
+#include <boost/hana.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::interpreter::ContextValueVisitorAdaptor< VisitorT, ForceMove >
 The ContextValueVisitorAdaptor class adapts a visitor object, which is callable with const lvalue reference of Json and with rvalue reference of Json objects, to ContextValue objects. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::interpreter
 Classes for interpreting the AST of the JMESPath expression.
 
+ + + + + + + +

+Functions

decltype(auto) jmespath::interpreter::makeVisitor (std::function< void(const Json &)> &&lvalueFunc, std::function< void(Json &&)> &&rvalueFunc)
 Create visitor object which accepts ContextValue objects, and calls lvalueFunc callable with a const lvalue ref of the Json reference held by the ContextValue or calls the rvalueFunc callable with an rvalue ref of the Json object held by ContextValue. More...
 
decltype(auto) jmespath::interpreter::makeMoveOnlyVisitor (std::function< void(Json &&)> rvalueFunc)
 Create visitor object which accepts ContextValue objects, and calls the rvalueFunc callable with an rvalue ref of the Json object held by the ContextValue or calls it with the rvalue ref of the copy of the object to which the Json reference points in the ContextValue object. More...
 
+
+ + + + diff --git a/contextvaluevisitoradaptor_8h_source.html b/contextvaluevisitoradaptor_8h_source.html new file mode 100644 index 0000000..8d8eb89 --- /dev/null +++ b/contextvaluevisitoradaptor_8h_source.html @@ -0,0 +1,201 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/interpreter/contextvaluevisitoradaptor.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
contextvaluevisitoradaptor.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef CONTEXTVALUEVISITORADAPTOR_H
+
29 #define CONTEXTVALUEVISITORADAPTOR_H
+ +
31 #include "jmespath/exceptions.h"
+
32 #include <boost/variant.hpp>
+
33 #include <boost/hana.hpp>
+
34 
+
35 namespace jmespath{ namespace interpreter {
+
36 
+
42 template <typename VisitorT, bool ForceMove = false>
+
43 class ContextValueVisitorAdaptor : public boost::static_visitor<>
+
44 {
+
45 public:
+
52  ContextValueVisitorAdaptor(VisitorT&& visitor)
+
53  : boost::static_visitor<>{},
+
54  m_visitor{std::move(visitor)}
+
55  {
+
56  }
+
57 
+
63  template <typename T>
+
64  std::enable_if_t<std::is_same<T, JsonRef>::value && ForceMove, void>
+
65  operator()(const T& value)
+
66  {
+
67  m_visitor(Json(value.get()));
+
68  }
+
69 
+
75  template <typename T>
+
76  std::enable_if_t<std::is_same<T, JsonRef>::value && !ForceMove, void>
+
77  operator()(const T& value)
+
78  {
+
79  m_visitor(value.get());
+
80  }
+
81 
+
86  void operator()(Json& value)
+
87  {
+
88  m_visitor(std::move(value));
+
89  }
+
90 
+
91 private:
+
95  VisitorT m_visitor;
+
96 };
+
97 
+
108 inline decltype(auto) makeVisitor(
+
109  std::function<void(const Json&)> &&lvalueFunc,
+
110  std::function<void(Json&&)> &&rvalueFunc)
+
111 {
+
112  auto functions = boost::hana::overload_linearly(
+
113  std::move(rvalueFunc),
+
114  std::move(lvalueFunc)
+
115  );
+ +
117  std::move(functions)
+
118  };
+
119 }
+
120 
+
130 inline decltype(auto) makeMoveOnlyVisitor(
+
131  std::function<void(Json&&)> rvalueFunc)
+
132 {
+ +
134  std::move(rvalueFunc)
+
135  };
+
136  return result;
+
137 }
+
138 }} // namespace jmespath::interpreter
+
139 #endif // CONTEXTVALUEVISITORADAPTOR_H
+
The ContextValueVisitorAdaptor class adapts a visitor object, which is callable with const lvalue ref...
Definition: contextvaluevisitoradaptor.h:43
+ +
nlohmann::json Json
JSON data type.
Definition: types.h:66
+ +
decltype(auto) makeVisitor(std::function< void(const Json &)> &&lvalueFunc, std::function< void(Json &&)> &&rvalueFunc)
Create visitor object which accepts ContextValue objects, and calls lvalueFunc callable with a const ...
Definition: contextvaluevisitoradaptor.h:108
+
ContextValueVisitorAdaptor(VisitorT &&visitor)
Constructs a ContextValueVisitorAdaptor object, adapting the visitor object to be able to consume Con...
Definition: contextvaluevisitoradaptor.h:52
+
m_visitor
Definition: contextvaluevisitoradaptor.h:54
+
decltype(auto) makeMoveOnlyVisitor(std::function< void(Json &&)> rvalueFunc)
Create visitor object which accepts ContextValue objects, and calls the rvalueFunc callable with an r...
Definition: contextvaluevisitoradaptor.h:130
+
+ + + + diff --git a/currentnode_8cpp.html b/currentnode_8cpp.html new file mode 100644 index 0000000..2a8d45f --- /dev/null +++ b/currentnode_8cpp.html @@ -0,0 +1,115 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/currentnode.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
currentnode.cpp File Reference
+
+
+ + + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/currentnode_8h.html b/currentnode_8h.html new file mode 100644 index 0000000..3272f21 --- /dev/null +++ b/currentnode_8h.html @@ -0,0 +1,124 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/currentnode.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
currentnode.h File Reference
+
+
+
#include "src/ast/abstractnode.h"
+#include <boost/fusion/include/adapt_struct.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::ast::CurrentNode
 The CurrentNode class represents a JMESPath current node expression. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/currentnode_8h_source.html b/currentnode_8h_source.html new file mode 100644 index 0000000..bc6bc9e --- /dev/null +++ b/currentnode_8h_source.html @@ -0,0 +1,151 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/currentnode.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
currentnode.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef CURRENTNODE_H
+
29 #define CURRENTNODE_H
+
30 #include "src/ast/abstractnode.h"
+
31 #include <boost/fusion/include/adapt_struct.hpp>
+
32 
+
33 namespace jmespath { namespace ast {
+
34 
+
38 class CurrentNode : public AbstractNode
+
39 {
+
40 public:
+
44  CurrentNode();
+
50  void accept(interpreter::AbstractVisitor* visitor) const override;
+
57  bool operator==(const CurrentNode& other) const;
+
58 };
+
59 }} // namespace jmespath::ast
+
60 #endif // CURRENTNODE_H
+
The CurrentNode class represents a JMESPath current node expression.
Definition: currentnode.h:38
+ +
CurrentNode()
Constructs an CurrentNode object with an empty name.
Definition: currentnode.cpp:33
+
The AbstractVisitor class is an interface which defines the member functions required to visit every ...
Definition: abstractvisitor.h:71
+
bool operator==(const CurrentNode &other) const
Equality compares this node to the other.
Definition: currentnode.cpp:43
+
void accept(interpreter::AbstractVisitor *visitor) const override
Calls the visit method of the given visitor with the dynamic type of the node.
Definition: currentnode.cpp:38
+
The AbstractNode class is the common interface class for all AST node types.
Definition: abstractnode.h:45
+
+ + + + diff --git a/dir_203e5988f1ed315d29383d699972de6f.html b/dir_203e5988f1ed315d29383d699972de6f.html new file mode 100644 index 0000000..9becb89 --- /dev/null +++ b/dir_203e5988f1ed315d29383d699972de6f.html @@ -0,0 +1,212 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast Directory Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
ast Directory Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  abstractnode.cpp
 
file  abstractnode.h [code]
 
file  allnodes.h [code]
 
file  andexpressionnode.cpp
 
file  andexpressionnode.h [code]
 
file  arrayitemnode.cpp
 
file  arrayitemnode.h [code]
 
file  binaryexpressionnode.cpp
 
file  binaryexpressionnode.h [code]
 
file  bracketspecifiernode.cpp
 
file  bracketspecifiernode.h [code]
 
file  comparatorexpressionnode.cpp
 
file  comparatorexpressionnode.h [code]
 
file  currentnode.cpp
 
file  currentnode.h [code]
 
file  expressionargumentnode.cpp
 
file  expressionargumentnode.h [code]
 
file  expressionnode.cpp
 
file  expressionnode.h [code]
 
file  filterexpressionnode.cpp
 
file  filterexpressionnode.h [code]
 
file  flattenoperatornode.cpp
 
file  flattenoperatornode.h [code]
 
file  functionexpressionnode.cpp
 
file  functionexpressionnode.h [code]
 
file  hashwildcardnode.cpp
 
file  hashwildcardnode.h [code]
 
file  identifiernode.cpp
 
file  identifiernode.h [code]
 
file  indexexpressionnode.cpp
 
file  indexexpressionnode.h [code]
 
file  listwildcardnode.cpp
 
file  listwildcardnode.h [code]
 
file  literalnode.cpp
 
file  literalnode.h [code]
 
file  multiselecthashnode.cpp
 
file  multiselecthashnode.h [code]
 
file  multiselectlistnode.cpp
 
file  multiselectlistnode.h [code]
 
file  notexpressionnode.cpp
 
file  notexpressionnode.h [code]
 
file  orexpressionnode.cpp
 
file  orexpressionnode.h [code]
 
file  parenexpressionnode.cpp
 
file  parenexpressionnode.h [code]
 
file  pipeexpressionnode.cpp
 
file  pipeexpressionnode.h [code]
 
file  rawstringnode.cpp
 
file  rawstringnode.h [code]
 
file  sliceexpressionnode.cpp
 
file  sliceexpressionnode.h [code]
 
file  subexpressionnode.cpp
 
file  subexpressionnode.h [code]
 
file  variantnode.h [code]
 
file  variantvisitoradaptor.cpp
 
file  variantvisitoradaptor.h [code]
 
+
+ + + + diff --git a/dir_4904b5727094acb85f1fb3ce4b540d24.html b/dir_4904b5727094acb85f1fb3ce4b540d24.html new file mode 100644 index 0000000..77bee00 --- /dev/null +++ b/dir_4904b5727094acb85f1fb3ce4b540d24.html @@ -0,0 +1,110 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/interpreter Directory Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
interpreter Directory Reference
+
+
+ + + + + + + + + + + + +

+Files

file  abstractvisitor.cpp
 
file  abstractvisitor.h [code]
 
file  contextvaluevisitoradaptor.h [code]
 
file  interpreter.cpp
 
file  interpreter.h [code]
 
+
+ + + + diff --git a/dir_68267d1309a1af8e8297ef4c3efbcdba.html b/dir_68267d1309a1af8e8297ef4c3efbcdba.html new file mode 100644 index 0000000..29743e5 --- /dev/null +++ b/dir_68267d1309a1af8e8297ef4c3efbcdba.html @@ -0,0 +1,115 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src Directory Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
src Directory Reference
+
+
+ + + + + + + + +

+Directories

directory  ast
 
directory  interpreter
 
directory  parser
 
+ + + + + + + +

+Files

file  exceptions.cpp
 
file  expression.cpp
 
file  jmespath.cpp
 
+
+ + + + diff --git a/dir_6cd8491d143eb218b70983dbdb3c58bc.html b/dir_6cd8491d143eb218b70983dbdb3c58bc.html new file mode 100644 index 0000000..aaa189d --- /dev/null +++ b/dir_6cd8491d143eb218b70983dbdb3c58bc.html @@ -0,0 +1,122 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/parser Directory Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
parser Directory Reference
+
+ + + + + diff --git a/dir_c838f371594cdb581c6cc4a342ea0f4c.html b/dir_c838f371594cdb581c6cc4a342ea0f4c.html new file mode 100644 index 0000000..c4c6031 --- /dev/null +++ b/dir_c838f371594cdb581c6cc4a342ea0f4c.html @@ -0,0 +1,108 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/include/jmespath Directory Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
jmespath Directory Reference
+
+
+ + + + + + + + + + +

+Files

file  exceptions.h [code]
 
file  expression.h [code]
 
file  jmespath.h [code]
 
file  types.h [code]
 
+
+ + + + diff --git a/dir_d44c64559bbebec7f509842c48db8b23.html b/dir_d44c64559bbebec7f509842c48db8b23.html new file mode 100644 index 0000000..391677d --- /dev/null +++ b/dir_d44c64559bbebec7f509842c48db8b23.html @@ -0,0 +1,102 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/include Directory Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + +
+ +
+ + +
+
+
+
include Directory Reference
+
+
+ + + + +

+Directories

directory  jmespath
 
+
+ + + + diff --git a/doxygen.css b/doxygen.css new file mode 100644 index 0000000..f0f36f8 --- /dev/null +++ b/doxygen.css @@ -0,0 +1,1366 @@ +/* The standard CSS for doxygen 1.8.6 */ + +body, table, div, p, dl { + font: 400 14px/22px Roboto,sans-serif; +} + +/* @group Heading Levels */ + +h1.groupheader { + font-size: 150%; +} + +.title { + font: 400 14px/28px Roboto,sans-serif; + font-size: 150%; + font-weight: bold; + margin: 10px 2px; +} + +h2.groupheader { + border-bottom: 1px solid #879ECB; + color: #354C7B; + font-size: 150%; + font-weight: normal; + margin-top: 1.75em; + padding-top: 8px; + padding-bottom: 4px; + width: 100%; +} + +h3.groupheader { + font-size: 100%; +} + +h1, h2, h3, h4, h5, h6 { + -webkit-transition: text-shadow 0.5s linear; + -moz-transition: text-shadow 0.5s linear; + -ms-transition: text-shadow 0.5s linear; + -o-transition: text-shadow 0.5s linear; + transition: text-shadow 0.5s linear; + margin-right: 15px; +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px cyan; +} + +dt { + font-weight: bold; +} + +div.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; +} + +p.startli, p.startdd { + margin-top: 2px; +} + +p.starttd { + margin-top: 0px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.qindex, div.navtab{ + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; +} + +div.qindex, div.navpath { + width: 100%; + line-height: 140%; +} + +div.navtab { + margin-right: 15px; +} + +/* @group Link Styling */ + +a { + color: #3D578C; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #4665A2; +} + +a:hover { + text-decoration: underline; +} + +a.qindex { + font-weight: bold; +} + +a.qindexHL { + font-weight: bold; + background-color: #9CAFD4; + color: #ffffff; + border: 1px double #869DCA; +} + +.contents a.qindexHL:visited { + color: #ffffff; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code, a.code:visited, a.line, a.line:visited { + color: #4665A2; +} + +a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +pre.fragment { + border: 1px solid #C4CFE5; + background-color: #FBFCFD; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; + font-family: monospace, fixed; + font-size: 105%; +} + +div.fragment { + padding: 4px 6px; + margin: 4px 8px 4px 2px; + background-color: #FBFCFD; + border: 1px solid #C4CFE5; +} + +div.line { + font-family: monospace, fixed; + font-size: 13px; + min-height: 13px; + line-height: 1.0; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; /* Moz */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: pre-wrap; /* CSS3 */ + word-wrap: break-word; /* IE 5.5+ */ + text-indent: -53px; + padding-left: 53px; + padding-bottom: 0px; + margin: 0px; + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +div.line.glow { + background-color: cyan; + box-shadow: 0 0 10px cyan; +} + + +span.lineno { + padding-right: 4px; + text-align: right; + border-right: 2px solid #0F0; + background-color: #E8E8E8; + white-space: pre; +} +span.lineno a { + background-color: #D8D8D8; +} + +span.lineno a:hover { + background-color: #C8C8C8; +} + +div.ah { + background-color: black; + font-weight: bold; + color: #ffffff; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000); +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background-color: white; + color: black; + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 12px; + margin-right: 8px; +} + +td.indexkey { + background-color: #EBEFF6; + font-weight: bold; + border: 1px solid #C4CFE5; + margin: 2px 0px 2px 0; + padding: 2px 10px; + white-space: nowrap; + vertical-align: top; +} + +td.indexvalue { + background-color: #EBEFF6; + border: 1px solid #C4CFE5; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #EEF1F7; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +blockquote { + background-color: #F7F8FB; + border-left: 2px solid #9CAFD4; + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A3B4D7; +} + +th.dirtab { + background: #EBEFF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #4A6AAA; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.memberdecls td, .fieldtable tr { + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +.memberdecls td.glow, .fieldtable tr.glow { + background-color: cyan; + box-shadow: 0 0 15px cyan; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #F9FAFC; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memSeparator { + border-bottom: 1px solid #DEE4F0; + line-height: 1px; + margin: 0px; + padding: 0px; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight { + width: 100%; +} + +.memTemplParams { + color: #4665A2; + white-space: nowrap; + font-size: 80%; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtemplate { + font-size: 80%; + color: #4665A2; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; + -webkit-transition: box-shadow 0.5s linear; + -moz-transition: box-shadow 0.5s linear; + -ms-transition: box-shadow 0.5s linear; + -o-transition: box-shadow 0.5s linear; + transition: box-shadow 0.5s linear; + display: table !important; + width: 100%; +} + +.memitem.glow { + box-shadow: 0 0 15px cyan; +} + +.memname { + font-weight: bold; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, dl.reflist dt { + border-top: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 0px 6px 0px; + color: #253555; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 4px; + border-top-left-radius: 4px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 4px; + -moz-border-radius-topleft: 4px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 4px; + -webkit-border-top-left-radius: 4px; + +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 10px 2px 10px; + background-color: #FBFCFD; + border-top-width: 0; + background-image:url('nav_g.png'); + background-repeat:repeat-x; + background-color: #FFFFFF; + /* opera specific markup */ + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-bottomright: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} +.paramname code { + line-height: 14px; +} + +.params, .retval, .exception, .tparams { + margin-left: 0px; + padding-left: 0px; +} + +.params .paramname, .retval .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir { + font-family: "courier new",courier,monospace; + vertical-align: top; +} + +table.mlabels { + border-spacing: 0px; +} + +td.mlabels-left { + width: 100%; + padding: 0px; +} + +td.mlabels-right { + vertical-align: bottom; + padding: 0px; + white-space: nowrap; +} + +span.mlabels { + margin-left: 8px; +} + +span.mlabel { + background-color: #728DC1; + border-top:1px solid #5373B4; + border-left:1px solid #5373B4; + border-right:1px solid #C4CFE5; + border-bottom:1px solid #C4CFE5; + text-shadow: none; + color: white; + margin-right: 4px; + padding: 2px 3px; + border-radius: 3px; + font-size: 7pt; + white-space: nowrap; + vertical-align: middle; +} + + + +/* @end */ + +/* these are for tree view when not used as main index */ + +div.directory { + margin: 10px 0px; + border-top: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + width: 100%; +} + +.directory table { + border-collapse:collapse; +} + +.directory td { + margin: 0px; + padding: 0px; + vertical-align: top; +} + +.directory td.entry { + white-space: nowrap; + padding-right: 6px; + padding-top: 3px; +} + +.directory td.entry a { + outline:none; +} + +.directory td.entry a img { + border: none; +} + +.directory td.desc { + width: 100%; + padding-left: 6px; + padding-right: 6px; + padding-top: 3px; + border-left: 1px solid rgba(0,0,0,0.05); +} + +.directory tr.even { + padding-left: 6px; + background-color: #F7F8FB; +} + +.directory img { + vertical-align: -30%; +} + +.directory .levels { + white-space: nowrap; + width: 100%; + text-align: right; + font-size: 9pt; +} + +.directory .levels span { + cursor: pointer; + padding-left: 2px; + padding-right: 2px; + color: #3D578C; +} + +div.dynheader { + margin-top: 8px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +address { + font-style: normal; + color: #2A3D61; +} + +table.doxtable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #374F7F; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + /*width: 100%;*/ + margin-bottom: 10px; + border: 1px solid #A8B8D9; + border-spacing: 0px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + border-radius: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, .fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + vertical-align: top; +} + +.fieldtable td.fieldname { + padding-top: 3px; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #A8B8D9; + /*width: 100%;*/ +} + +.fieldtable td.fielddoc p:first-child { + margin-top: 0px; +} + +.fieldtable td.fielddoc p:last-child { + margin-bottom: 2px; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + font-size: 90%; + color: #253555; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid #A8B8D9; +} + + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image:url('tab_b.png'); + background-repeat:repeat-x; + background-position: 0 -5px; + height:30px; + line-height:30px; + color:#8AA0CC; + border:solid 1px #C2CDE4; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:url('bc_s.png'); + background-repeat:no-repeat; + background-position:right; + color:#364D7C; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; + color: #283A5D; + font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; +} + +.navpath li.navelem a:hover +{ + color:#6884BD; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#364D7C; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +div.ingroups +{ + font-size: 8pt; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + margin: 0px; + border-bottom: 1px solid #C4CFE5; +} + +div.headertitle +{ + padding: 5px 5px 5px 10px; +} + +dl +{ + padding: 0 0 0 10px; +} + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug */ +dl.section +{ + margin-left: 0px; + padding-left: 0px; +} + +dl.note +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #D0C000; +} + +dl.warning, dl.attention +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00D000; +} + +dl.deprecated +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #505050; +} + +dl.todo +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #00C0E0; +} + +dl.test +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #3030E0; +} + +dl.bug +{ + margin-left:-7px; + padding-left: 3px; + border-left:4px solid; + border-color: #C08050; +} + +dl.section dd { + margin-bottom: 6px; +} + + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectname +{ + font: 300% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 2px 0px; +} + +#projectbrief +{ + font: 120% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font: 50% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid #5373B4; +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.diagraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +div.zoom +{ + border: 1px solid #90A5CE; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:#334975; + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; +} + +dl.citelist dd { + margin:2px 0; + padding:5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: #F4F6FA; + border: 1px solid #D8DFEE; + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 20px 10px 10px; + width: 200px; +} + +div.toc li { + background: url("bdwn.png") no-repeat scroll 0 5px transparent; + font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; + margin-top: 5px; + padding-left: 10px; + padding-top: 2px; +} + +div.toc h3 { + font: bold 12px/1.2 Arial,FreeSans,sans-serif; + color: #4665A2; + border-bottom: 0 none; + margin: 0; +} + +div.toc ul { + list-style: none outside none; + border: medium none; + padding: 0px; +} + +div.toc li.level1 { + margin-left: 0px; +} + +div.toc li.level2 { + margin-left: 15px; +} + +div.toc li.level3 { + margin-left: 30px; +} + +div.toc li.level4 { + margin-left: 45px; +} + +.inherit_header { + font-weight: bold; + color: gray; + cursor: pointer; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.inherit_header td { + padding: 6px 0px 2px 5px; +} + +.inherit { + display: none; +} + +tr.heading h2 { + margin-top: 12px; + margin-bottom: 4px; +} + +/* tooltip related style info */ + +.ttc { + position: absolute; + display: none; +} + +#powerTip { + cursor: default; + white-space: nowrap; + background-color: white; + border: 1px solid gray; + border-radius: 4px 4px 4px 4px; + box-shadow: 1px 1px 7px gray; + display: none; + font-size: smaller; + max-width: 80%; + opacity: 0.9; + padding: 1ex 1em 1em; + position: absolute; + z-index: 2147483647; +} + +#powerTip div.ttdoc { + color: grey; + font-style: italic; +} + +#powerTip div.ttname a { + font-weight: bold; +} + +#powerTip div.ttname { + font-weight: bold; +} + +#powerTip div.ttdeci { + color: #006318; +} + +#powerTip div { + margin: 0px; + padding: 0px; + font: 12px/16px Roboto,sans-serif; +} + +#powerTip:before, #powerTip:after { + content: ""; + position: absolute; + margin: 0px; +} + +#powerTip.n:after, #powerTip.n:before, +#powerTip.s:after, #powerTip.s:before, +#powerTip.w:after, #powerTip.w:before, +#powerTip.e:after, #powerTip.e:before, +#powerTip.ne:after, #powerTip.ne:before, +#powerTip.se:after, #powerTip.se:before, +#powerTip.nw:after, #powerTip.nw:before, +#powerTip.sw:after, #powerTip.sw:before { + border: solid transparent; + content: " "; + height: 0; + width: 0; + position: absolute; +} + +#powerTip.n:after, #powerTip.s:after, +#powerTip.w:after, #powerTip.e:after, +#powerTip.nw:after, #powerTip.ne:after, +#powerTip.sw:after, #powerTip.se:after { + border-color: rgba(255, 255, 255, 0); +} + +#powerTip.n:before, #powerTip.s:before, +#powerTip.w:before, #powerTip.e:before, +#powerTip.nw:before, #powerTip.ne:before, +#powerTip.sw:before, #powerTip.se:before { + border-color: rgba(128, 128, 128, 0); +} + +#powerTip.n:after, #powerTip.n:before, +#powerTip.ne:after, #powerTip.ne:before, +#powerTip.nw:after, #powerTip.nw:before { + top: 100%; +} + +#powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after { + border-top-color: #ffffff; + border-width: 10px; + margin: 0px -10px; +} +#powerTip.n:before { + border-top-color: #808080; + border-width: 11px; + margin: 0px -11px; +} +#powerTip.n:after, #powerTip.n:before { + left: 50%; +} + +#powerTip.nw:after, #powerTip.nw:before { + right: 14px; +} + +#powerTip.ne:after, #powerTip.ne:before { + left: 14px; +} + +#powerTip.s:after, #powerTip.s:before, +#powerTip.se:after, #powerTip.se:before, +#powerTip.sw:after, #powerTip.sw:before { + bottom: 100%; +} + +#powerTip.s:after, #powerTip.se:after, #powerTip.sw:after { + border-bottom-color: #ffffff; + border-width: 10px; + margin: 0px -10px; +} + +#powerTip.s:before, #powerTip.se:before, #powerTip.sw:before { + border-bottom-color: #808080; + border-width: 11px; + margin: 0px -11px; +} + +#powerTip.s:after, #powerTip.s:before { + left: 50%; +} + +#powerTip.sw:after, #powerTip.sw:before { + right: 14px; +} + +#powerTip.se:after, #powerTip.se:before { + left: 14px; +} + +#powerTip.e:after, #powerTip.e:before { + left: 100%; +} +#powerTip.e:after { + border-left-color: #ffffff; + border-width: 10px; + top: 50%; + margin-top: -10px; +} +#powerTip.e:before { + border-left-color: #808080; + border-width: 11px; + top: 50%; + margin-top: -11px; +} + +#powerTip.w:after, #powerTip.w:before { + right: 100%; +} +#powerTip.w:after { + border-right-color: #ffffff; + border-width: 10px; + top: 50%; + margin-top: -10px; +} +#powerTip.w:before { + border-right-color: #808080; + border-width: 11px; + top: 50%; + margin-top: -11px; +} + +@media print +{ + #top { display: none; } + #side-nav { display: none; } + #nav-path { display: none; } + body { overflow:visible; } + h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } + .summary { display: none; } + .memitem { page-break-inside: avoid; } + #doc-content + { + margin-left:0 !important; + height:auto !important; + width:auto !important; + overflow:inherit; + display:inline; + } +} + diff --git a/doxygen.png b/doxygen.png new file mode 100644 index 0000000000000000000000000000000000000000..3ff17d807fd8aa003bed8bb2a69e8f0909592fd1 GIT binary patch literal 3779 zcmV;!4m|ORP)tMIv#Q0*~7*`IBSO7_x;@a8#Zk6_PeKR_s92J&)(m+);m9Iz3blw)z#Gi zP!9lj4$%+*>Hz@HCmM9L9|8c+0u=!H$O3?R0Kgx|#WP<6fKfC8fM-CQZT|_r@`>VO zX^Hgb|9cJqpdJA5$MCEK`F_2@2Y@s>^+;pF`~jdI0Pvr|vl4`=C)EH@1IFe7pdJ8F zH(qGi004~QnF)Ggga~8v08kGAs2hKTATxr7pwfNk|4#_AaT>w8P6TV+R2kbS$v==} zAjf`s0g#V8lB+b3)5oEI*q+{Yt$MZDruD2^;$+(_%Qn+%v0X-bJO=;@kiJ^ygLBnC z?1OVv_%aex1M@jKU|Z~$eI?PoF4Vj>fDzyo zAiLfpXY*a^Sj-S5D0S3@#V$sRW)g)_1e#$%8xdM>Jm7?!h zu0P2X=xoN>^!4DoPRgph2(2va07yfpXF+WH7EOg1GY%Zn z7~1A<(z7Q$ktEXhW_?GMpHp9l_UL18F3KOsxu81pqoBiNbFSGsof-W z6~eloMoz=4?OOnl2J268x5rOY`dCk0us(uS#Ud4yqOr@?=Q57a}tit|BhY>}~frH1sP`ScHS_d)oqH^lYy zZ%VP`#10MlE~P?cE(%(#(AUSv_T{+;t@$U}El}(1ig`vZo`Rm;+5&(AYzJ^Ae=h2X z@Re%vHwZU>|f0NI&%$*4eJweC5OROQrpPMA@*w|o z()A==l}(@bv^&>H1Ob3C=<^|hob?0+xJ?QQ3-ueQC}zy&JQNib!OqSO@-=>XzxlSF zAZ^U*1l6EEmg3r};_HY>&Jo_{dOPEFTWPmt=U&F#+0(O59^UIlHbNX+eF8UzyDR*T z(=5X$VF3!gm@RooS-&iiUYGG^`hMR(07zr_xP`d!^BH?uD>Phl8Rdifx3Af^Zr`Ku ztL+~HkVeL#bJ)7;`=>;{KNRvjmc}1}c58Sr#Treq=4{xo!ATy|c>iRSp4`dzMMVd@ zL8?uwXDY}Wqgh4mH`|$BTXpUIu6A1-cSq%hJw;@^Zr8TP=GMh*p(m(tN7@!^D~sl$ zz^tf4II4|};+irE$Fnm4NTc5%p{PRA`%}Zk`CE5?#h3|xcyQsS#iONZ z6H(@^i9td!$z~bZiJLTax$o>r(p}3o@< zyD7%(>ZYvy=6$U3e!F{Z`uSaYy`xQyl?b{}eg|G3&fz*`QH@mDUn)1%#5u`0m$%D} z?;tZ0u(mWeMV0QtzjgN!lT*pNRj;6510Wwx?Yi_=tYw|J#7@(Xe7ifDzXuK;JB;QO z#bg~K$cgm$@{QiL_3yr}y&~wuv=P=#O&Tj=Sr)aCUlYmZMcw?)T?c%0rUe1cS+o!qs_ zQ6Gp)-{)V!;=q}llyK3|^WeLKyjf%y;xHku;9(vM!j|~<7w1c*Mk-;P{T&yG) z@C-8E?QPynNQ<8f01D`2qexcVEIOU?y}MG)TAE6&VT5`rK8s(4PE;uQ92LTXUQ<>^ ztyQ@=@kRdh@ebUG^Z6NWWIL;_IGJ2ST>$t!$m$qvtj0Qmw8moN6GUV^!QKNK zHBXCtUH8)RY9++gH_TUV4^=-j$t}dD3qsN7GclJ^Zc&(j6&a_!$jCf}%c5ey`pm~1)@{yI3 zTdWyB+*X{JFw#z;PwRr5evb2!ueWF;v`B0HoUu4-(~aL=z;OXUUEtG`_$)Oxw6FKg zEzY`CyKaSBK3xt#8gA|r_|Kehn_HYVBMpEwbn9-fI*!u*eTA1ef8Mkl1=!jV4oYwWYM}i`A>_F4nhmlCIC6WLa zY%;4&@AlnaG11ejl61Jev21|r*m+?Kru3;1tFDl}#!OzUp6c>go4{C|^erwpG*&h6bspUPJag}oOkN2912Y3I?(eRc@U9>z#HPBHC?nps7H5!zP``90!Q1n80jo+B3TWXp!8Pe zwuKuLLI6l3Gv@+QH*Y}2wPLPQ1^EZhT#+Ed8q8Wo z1pTmIBxv14-{l&QVKxAyQF#8Q@NeJwWdKk>?cpiJLkJr+aZ!Me+Cfp!?FWSRf^j2k z73BRR{WSKaMkJ>1Nbx5dan5hg^_}O{Tj6u%iV%#QGz0Q@j{R^Ik)Z*+(YvY2ziBG)?AmJa|JV%4UT$k`hcOg5r9R?5>?o~JzK zJCrj&{i#hG>N7!B4kNX(%igb%kDj0fOQThC-8mtfap82PNRXr1D>lbgg)dYTQ(kbx z`Ee5kXG~Bh+BHQBf|kJEy6(ga%WfhvdQNDuOfQoe377l#ht&DrMGeIsI5C<&ai zWG$|hop2@@q5YDa)_-A?B02W;#fH!%k`daQLEItaJJ8Yf1L%8x;kg?)k)00P-lH+w z)5$QNV6r2$YtnV(4o=0^3{kmaXn*Dm0F*fU(@o)yVVjk|ln8ea6BMy%vZAhW9|wvA z8RoDkVoMEz1d>|5(k0Nw>22ZT){V<3$^C-cN+|~hKt2)){+l-?3m@-$c?-dlzQ)q- zZ)j%n^gerV{|+t}9m1_&&Ly!9$rtG4XX|WQ8`xYzGC~U@nYh~g(z9)bdAl#xH)xd5a=@|qql z|FzEil{P5(@gy!4ek05i$>`E^G~{;pnf6ftpLh$h#W?^#4UkPfa;;?bsIe&kz!+40 zI|6`F2n020)-r`pFaZ38F!S-lJM-o&inOw|66=GMeP@xQU5ghQH{~5Uh~TMTd;I9` z>YhVB`e^EVj*S7JF39ZgNf}A-0DwOcTT63ydN$I3b?yBQtUI*_fae~kPvzoD$zjX3 zoqBe#>12im4WzZ=f^4+u=!lA|#r%1`WB0-6*3BL#at`47#ebPpR|D1b)3BjT34nYY z%Ds%d?5$|{LgOIaRO{{oC&RK`O91$fqwM0(C_TALcozu*fWHb%%q&p-q{_8*2Zsi^ zh1ZCnr^UYa;4vQEtHk{~zi>wwMC5o{S=$P0X681y`SXwFH?Ewn{x-MOZynmc)JT5v zuHLwh;tLfxRrr%|k370}GofLl7thg>ACWWY&msqaVu&ry+`7+Ss>NL^%T1|z{IGMA zW-SKl=V-^{(f!Kf^#3(|T2W47d(%JVCI4JgRrT1pNz>+ietmFToNv^`gzC@&O-)+i zPQ~RwK8%C_vf%;%e>NyTp~dM5;!C|N0Q^6|CEb7Bw=Vz~$1#FA;Z*?mKSC)Hl-20s t8QyHj(g6VK0RYbl8UjE)0O0w=e*@m04r>stuEhWV002ovPDHLkV1hl;dM*F} literal 0 HcmV?d00001 diff --git a/dynsections.js b/dynsections.js new file mode 100644 index 0000000..ed092c7 --- /dev/null +++ b/dynsections.js @@ -0,0 +1,97 @@ +function toggleVisibility(linkObj) +{ + var base = $(linkObj).attr('id'); + var summary = $('#'+base+'-summary'); + var content = $('#'+base+'-content'); + var trigger = $('#'+base+'-trigger'); + var src=$(trigger).attr('src'); + if (content.is(':visible')===true) { + content.hide(); + summary.show(); + $(linkObj).addClass('closed').removeClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); + } else { + content.show(); + summary.hide(); + $(linkObj).removeClass('closed').addClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); + } + return false; +} + +function updateStripes() +{ + $('table.directory tr'). + removeClass('even').filter(':visible:even').addClass('even'); +} +function toggleLevel(level) +{ + $('table.directory tr').each(function(){ + var l = this.id.split('_').length-1; + var i = $('#img'+this.id.substring(3)); + var a = $('#arr'+this.id.substring(3)); + if (l + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/parser/encodesurrogatepairaction.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
encodesurrogatepairaction.h File Reference
+
+
+
#include "jmespath/types.h"
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::parser::EncodeSurrogatePairAction
 The EncodeSurrogatePairAction class is a functor for encoding surrogate pair characters in UTF-32. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::parser
 Classes required for parsing JMESPath expressions.
 
+
+ + + + diff --git a/encodesurrogatepairaction_8h_source.html b/encodesurrogatepairaction_8h_source.html new file mode 100644 index 0000000..9462d52 --- /dev/null +++ b/encodesurrogatepairaction_8h_source.html @@ -0,0 +1,154 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/parser/encodesurrogatepairaction.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
encodesurrogatepairaction.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef ENCODESURROGATEPAIRACTION_H
+
29 #define ENCODESURROGATEPAIRACTION_H
+
30 #include "jmespath/types.h"
+
31 
+
32 namespace jmespath { namespace parser {
+
33 
+ +
39 {
+
40 public:
+ +
52  result_type operator()(UnicodeChar const& highSurrogate,
+
53  UnicodeChar const& lowSurrogate) const
+
54  {
+
55  UnicodeChar unicodeChar = 0x10000;
+
56  unicodeChar += (highSurrogate & 0x03FF) << 10;
+
57  unicodeChar += (lowSurrogate & 0x03FF);
+
58  return unicodeChar;
+
59  }
+
60 };
+
61 }} // namespace jmespath::parser
+
62 #endif // ENCODESURROGATEPAIRACTION_H
+ +
result_type operator()(UnicodeChar const &highSurrogate, UnicodeChar const &lowSurrogate) const
Encodes a surrogate pair character.
Definition: encodesurrogatepairaction.h:52
+
UnicodeChar result_type
The action's result type.
Definition: encodesurrogatepairaction.h:44
+
The EncodeSurrogatePairAction class is a functor for encoding surrogate pair characters in UTF-32...
Definition: encodesurrogatepairaction.h:38
+
char32_t UnicodeChar
32 bit character type
Definition: types.h:48
+
+ + + + diff --git a/exceptions_8cpp.html b/exceptions_8cpp.html new file mode 100644 index 0000000..dbb2be6 --- /dev/null +++ b/exceptions_8cpp.html @@ -0,0 +1,111 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/exceptions.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
exceptions.cpp File Reference
+
+
+ + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
+
+ + + + diff --git a/exceptions_8h.html b/exceptions_8h.html new file mode 100644 index 0000000..b2dee66 --- /dev/null +++ b/exceptions_8h.html @@ -0,0 +1,152 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/include/jmespath/exceptions.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
exceptions.h File Reference
+
+
+
#include <stdexcept>
+#include <boost/exception/all.hpp>
+
+

Go to the source code of this file.

+ + + + + + + + + + + + + + + + + + + + + + + +

+Classes

struct  jmespath::Exception
 The Exception struct is the common base class for for all the exceptions thrown by the library. More...
 
struct  jmespath::SyntaxError
 The SyntaxError struct represents a syntax error in the evaluated expression. More...
 
struct  jmespath::InvalidAgrument
 The InvalidAgrument struct signals a function call with illegal arguments. More...
 
struct  jmespath::InvalidValue
 The InvalidValue struct represents an invalid value in the JMESPath expression. More...
 
struct  jmespath::UnknownFunction
 The UnknownFunction struct represents a call to a JMESPath built in function which doesn't exists. More...
 
struct  jmespath::InvalidFunctionArgumentArity
 The InvalidFunctionArgumentArity struct signals the a JMESPath built in function was called with an unexpected number of arguments. More...
 
struct  jmespath::InvalidFunctionArgumentType
 The InvalidFunctionArgumentType struct represents a call to a JMESPath built in function with an unexpected type of argument. More...
 
+ + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
+ + + + + + + + + + +

+Typedefs

using jmespath::InfoSearchExpression = boost::error_info< struct tag_search_expression, std::string >
 InfoSearchExpression contains the JMESPath expression being evaluated. More...
 
using jmespath::InfoSyntaxErrorLocation = boost::error_info< struct tag_syntax_error_location, long >
 InfoSyntaxErrorLocation contains the location of the syntax error in the JMESPath expression. More...
 
using jmespath::InfoFunctionName = boost::error_info< struct tag_function_name, std::string >
 InfoFunctionName contains the name of the built in JMESpath function. More...
 
+
+ + + + diff --git a/exceptions_8h_source.html b/exceptions_8h_source.html new file mode 100644 index 0000000..a86b346 --- /dev/null +++ b/exceptions_8h_source.html @@ -0,0 +1,195 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/include/jmespath/exceptions.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
exceptions.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef EXCEPTIONS_H
+
29 #define EXCEPTIONS_H
+
30 #include <stdexcept>
+
31 #include <boost/exception/all.hpp>
+
32 
+
33 namespace jmespath {
+ +
43  = boost::error_info<struct tag_search_expression, std::string>;
+ +
50  = boost::error_info<struct tag_syntax_error_location, long>;
+
55 using InfoFunctionName
+
56  = boost::error_info<struct tag_function_name, std::string>;
+
57 
+
67 struct Exception : virtual boost::exception, virtual std::exception
+
68 {
+
69 private:
+
73  virtual void anchor();
+
74 };
+
80 struct SyntaxError : virtual Exception
+
81 {
+
82 private:
+
86  virtual void anchor();
+
87 };
+
93 struct InvalidAgrument : virtual Exception
+
94 {
+
95 private:
+
99  virtual void anchor();
+
100 };
+
106 struct InvalidValue : virtual Exception
+
107 {
+
108 private:
+
112  virtual void anchor();
+
113 };
+
119 struct UnknownFunction : virtual Exception
+
120 {
+
121 private:
+
125  virtual void anchor();
+
126 };
+ +
133 {
+
134 private:
+
138  virtual void anchor();
+
139 };
+ +
146 {
+
147 private:
+
151  virtual void anchor();
+
152 };
+
153 } // namespace jmespath
+
154 #endif // EXCEPTIONS_H
+
boost::error_info< struct tag_function_name, std::string > InfoFunctionName
InfoFunctionName contains the name of the built in JMESpath function.
Definition: exceptions.h:56
+
virtual void anchor()
A virtual function used to pin vtable to a transaltion unit.
Definition: exceptions.cpp:48
+
virtual void anchor()
A virtual function used to pin vtable to a transaltion unit.
Definition: exceptions.cpp:32
+
virtual void anchor()
A virtual function used to pin vtable to a transaltion unit.
Definition: exceptions.cpp:44
+
The UnknownFunction struct represents a call to a JMESPath built in function which doesn't exists...
Definition: exceptions.h:119
+
boost::error_info< struct tag_syntax_error_location, long > InfoSyntaxErrorLocation
InfoSyntaxErrorLocation contains the location of the syntax error in the JMESPath expression...
Definition: exceptions.h:50
+
The InvalidFunctionArgumentArity struct signals the a JMESPath built in function was called with an u...
Definition: exceptions.h:132
+
virtual void anchor()
A virtual function used to pin vtable to a transaltion unit.
Definition: exceptions.cpp:52
+
virtual void anchor()
A virtual function used to pin vtable to a transaltion unit.
Definition: exceptions.cpp:40
+
The InvalidFunctionArgumentType struct represents a call to a JMESPath built in function with an unex...
Definition: exceptions.h:145
+
The InvalidValue struct represents an invalid value in the JMESPath expression.
Definition: exceptions.h:106
+
boost::error_info< struct tag_search_expression, std::string > InfoSearchExpression
InfoSearchExpression contains the JMESPath expression being evaluated.
Definition: exceptions.h:43
+
virtual void anchor()
A virtual function used to pin vtable to a transaltion unit.
Definition: exceptions.cpp:56
+
The SyntaxError struct represents a syntax error in the evaluated expression.
Definition: exceptions.h:80
+
virtual void anchor()
A virtual function used to pin vtable to a transaltion unit.
Definition: exceptions.cpp:36
+
The Exception struct is the common base class for for all the exceptions thrown by the library...
Definition: exceptions.h:67
+
The InvalidAgrument struct signals a function call with illegal arguments.
Definition: exceptions.h:93
+
+ + + + diff --git a/expression_8cpp.html b/expression_8cpp.html new file mode 100644 index 0000000..263f9d1 --- /dev/null +++ b/expression_8cpp.html @@ -0,0 +1,113 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/expression.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
expression.cpp File Reference
+
+
+ + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
+
+ + + + diff --git a/expression_8h.html b/expression_8h.html new file mode 100644 index 0000000..8d660a6 --- /dev/null +++ b/expression_8h.html @@ -0,0 +1,138 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/include/jmespath/expression.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
expression.h File Reference
+
+
+
#include <memory>
+#include <jmespath/types.h>
+#include <jmespath/exceptions.h>
+
+

Go to the source code of this file.

+ + + + + + + + +

+Classes

class  jmespath::Expression
 The Expression class represents a JMESPath expression. More...
 
struct  jmespath::Expression::ExpressionDeleter
 The ExpressionDeleter struct is a custom destruction policy for deleting ast::ExpressionNode objects. More...
 
+ + + + + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
 jmespath::literals
 User defined literals.
 
+ + + + +

+Functions

Expression jmespath::literals::operator""_jmespath (const char *expression, std::size_t)
 User defined string literal for JMESPath expressions. More...
 
+
+ + + + diff --git a/expression_8h_source.html b/expression_8h_source.html new file mode 100644 index 0000000..462cd3d --- /dev/null +++ b/expression_8h_source.html @@ -0,0 +1,196 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/include/jmespath/expression.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
expression.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef EXPRESSION_H
+
29 #define EXPRESSION_H
+
30 #include <memory>
+
31 #include <jmespath/types.h>
+
32 #include <jmespath/exceptions.h>
+
33 
+
34 namespace jmespath {
+
35 
+
36 namespace ast {
+
37 class ExpressionNode;
+
38 }
+ +
48 {
+
49 public:
+
53  Expression();
+
58  Expression(const Expression& other);
+
64  Expression(Expression&& other);
+
76  template <typename U, typename
+
77  std::enable_if<
+
78  std::is_convertible<U, String>::value>::type* = nullptr>
+
79  Expression(U&& expression)
+
80  : m_expressionString(std::forward<U>(expression))
+
81  {
+ +
83  }
+
90  Expression& operator= (const Expression& other);
+ +
104  bool operator== (const Expression& other) const;
+
110  String toString() const;
+
117  bool isEmpty() const;
+
124  const ast::ExpressionNode* astRoot() const;
+
125 
+
126 private:
+ +
135  {
+
140  void operator()(ast::ExpressionNode* node) const;
+
141  };
+ +
149  std::unique_ptr<ast::ExpressionNode, ExpressionDeleter> m_astRoot;
+
157  void parseExpression(const String &expressionString);
+
158 };
+
159 
+
163 namespace literals {
+
164 
+
174 inline Expression operator""_jmespath(const char* expression, std::size_t)
+
175 {
+
176  return {expression};
+
177 }
+
178 } // namespace jmespath::literals
+
179 } // namespace jmespath
+
180 #endif // EXPRESSION_H
+
Expression(U &&expression)
Constructs an Expression object by forwarding argument.
Definition: expression.h:79
+ +
Expression & operator=(const Expression &other)
Assigns other to this expression and returns a reference to this expression.
Definition: expression.cpp:50
+
The Expression class represents a JMESPath expression.
Definition: expression.h:47
+
bool operator==(const Expression &other) const
Equality compares this expression to the other.
Definition: expression.cpp:98
+
String m_expressionString
The string representation of the JMESPath expression.
Definition: expression.h:145
+
String toString() const
Converts the expression to the string representation of the JMESPath expression.
Definition: expression.cpp:70
+
const ast::ExpressionNode * astRoot() const
Returns a pointer to the root expression in the abstract syntax tree.
Definition: expression.cpp:80
+
std::basic_string< Char > String
UTF-8 encoded string type.
Definition: types.h:44
+
void parseExpression(const String &expressionString)
Parses the expressionString and updates the AST.
Definition: expression.cpp:85
+
Expression()
Constructs an empty Expression object.
Definition: expression.cpp:34
+ +
void operator()(ast::ExpressionNode *node) const
operator () Destroys the given node object.
Definition: expression.cpp:108
+
The ExpressionNode class represents a JMESPath expression.
Definition: expressionnode.h:56
+
The ExpressionDeleter struct is a custom destruction policy for deleting ast::ExpressionNode objects...
Definition: expression.h:134
+
bool isEmpty() const
Checks whether this object has been initialized. expression.
Definition: expression.cpp:75
+
std::unique_ptr< ast::ExpressionNode, ExpressionDeleter > m_astRoot
The root node of the ast.
Definition: expression.h:149
+
+ + + + diff --git a/expressionargumentnode_8cpp.html b/expressionargumentnode_8cpp.html new file mode 100644 index 0000000..5076559 --- /dev/null +++ b/expressionargumentnode_8cpp.html @@ -0,0 +1,114 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/expressionargumentnode.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
expressionargumentnode.cpp File Reference
+
+
+
#include "src/ast/allnodes.h"
+
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/expressionargumentnode_8h.html b/expressionargumentnode_8h.html new file mode 100644 index 0000000..8d678e4 --- /dev/null +++ b/expressionargumentnode_8h.html @@ -0,0 +1,125 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/expressionargumentnode.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
expressionargumentnode.h File Reference
+
+
+
#include "src/ast/abstractnode.h"
+#include "src/ast/expressionnode.h"
+#include <boost/fusion/include/adapt_struct.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::ast::ExpressionArgumentNode
 The ExpressionArgumentNode class represents a JMESPath expression argument. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/expressionargumentnode_8h_source.html b/expressionargumentnode_8h_source.html new file mode 100644 index 0000000..59d6785 --- /dev/null +++ b/expressionargumentnode_8h_source.html @@ -0,0 +1,162 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/expressionargumentnode.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
expressionargumentnode.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef EXPRESSIONARGUMENTNODE_H
+
29 #define EXPRESSIONARGUMENTNODE_H
+
30 #include "src/ast/abstractnode.h"
+
31 #include "src/ast/expressionnode.h"
+
32 #include <boost/fusion/include/adapt_struct.hpp>
+
33 
+
34 namespace jmespath { namespace ast {
+
35 
+ +
41 {
+
42 public:
+ +
52  ExpressionArgumentNode(const ExpressionNode& subexpression);
+
58  void accept(interpreter::AbstractVisitor* visitor) const override;
+
65  bool operator==(const ExpressionArgumentNode& other) const;
+ +
70 };
+
71 }} // namespace jmespath::ast
+
72 
+
73 BOOST_FUSION_ADAPT_STRUCT(
+ +
75  (jmespath::ast::ExpressionNode, expression)
+
76 )
+
77 #endif // EXPRESSIONARGUMENTNODE_H
+
ExpressionArgumentNode()
Constructs an emtpy ExpressionArgumentNode object.
Definition: expressionargumentnode.cpp:32
+
void accept(interpreter::AbstractVisitor *visitor) const override
Calls the visit method of the given visitor with the dynamic type of the node.
Definition: expressionargumentnode.cpp:44
+ + +
The ExpressionArgumentNode class represents a JMESPath expression argument.
Definition: expressionargumentnode.h:40
+
bool operator==(const ExpressionArgumentNode &other) const
Equality compares this node to the other.
Definition: expressionargumentnode.cpp:49
+
ExpressionNode expression
The node's child expression.
Definition: expressionargumentnode.h:69
+
The AbstractVisitor class is an interface which defines the member functions required to visit every ...
Definition: abstractvisitor.h:71
+
The ExpressionNode class represents a JMESPath expression.
Definition: expressionnode.h:56
+
The AbstractNode class is the common interface class for all AST node types.
Definition: abstractnode.h:45
+
+ + + + diff --git a/expressionnode_8cpp.html b/expressionnode_8cpp.html new file mode 100644 index 0000000..23a96fc --- /dev/null +++ b/expressionnode_8cpp.html @@ -0,0 +1,114 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/expressionnode.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
expressionnode.cpp File Reference
+
+
+
#include "src/ast/allnodes.h"
+
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/expressionnode_8h.html b/expressionnode_8h.html new file mode 100644 index 0000000..91216a6 --- /dev/null +++ b/expressionnode_8h.html @@ -0,0 +1,126 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/expressionnode.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
expressionnode.h File Reference
+
+
+
#include "src/ast/abstractnode.h"
+#include "src/ast/variantnode.h"
+#include <boost/variant.hpp>
+#include <boost/fusion/include/adapt_struct.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::ast::ExpressionNode
 The ExpressionNode class represents a JMESPath expression. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/expressionnode_8h_source.html b/expressionnode_8h_source.html new file mode 100644 index 0000000..3148805 --- /dev/null +++ b/expressionnode_8h_source.html @@ -0,0 +1,194 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/expressionnode.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
expressionnode.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef EXPRESSIONNODE_H
+
29 #define EXPRESSIONNODE_H
+
30 #include "src/ast/abstractnode.h"
+
31 #include "src/ast/variantnode.h"
+
32 #include <boost/variant.hpp>
+
33 #include <boost/fusion/include/adapt_struct.hpp>
+
34 
+
35 namespace jmespath { namespace ast {
+
36 
+
37 class IdentifierNode;
+
38 class RawStringNode;
+
39 class LiteralNode;
+
40 class SubexpressionNode;
+
41 class IndexExpressionNode;
+
42 class HashWildcardNode;
+
43 class MultiselectListNode;
+
44 class MultiselectHashNode;
+
45 class NotExpressionNode;
+
46 class ComparatorExpressionNode;
+
47 class OrExpressionNode;
+
48 class AndExpressionNode;
+
49 class ParenExpressionNode;
+
50 class PipeExpressionNode;
+
51 class CurrentNode;
+
52 class FunctionExpressionNode;
+
56 class ExpressionNode : public VariantNode<
+
57  boost::recursive_wrapper<IdentifierNode>,
+
58  boost::recursive_wrapper<RawStringNode>,
+
59  boost::recursive_wrapper<LiteralNode>,
+
60  boost::recursive_wrapper<SubexpressionNode>,
+
61  boost::recursive_wrapper<IndexExpressionNode>,
+
62  boost::recursive_wrapper<HashWildcardNode>,
+
63  boost::recursive_wrapper<MultiselectListNode>,
+
64  boost::recursive_wrapper<MultiselectHashNode>,
+
65  boost::recursive_wrapper<NotExpressionNode>,
+
66  boost::recursive_wrapper<ComparatorExpressionNode>,
+
67  boost::recursive_wrapper<OrExpressionNode>,
+
68  boost::recursive_wrapper<AndExpressionNode>,
+
69  boost::recursive_wrapper<ParenExpressionNode>,
+
70  boost::recursive_wrapper<PipeExpressionNode>,
+
71  boost::recursive_wrapper<CurrentNode>,
+
72  boost::recursive_wrapper<FunctionExpressionNode> >
+
73 {
+
74 public:
+ +
82  ExpressionNode(const ExpressionNode&) = default;
+
86  virtual ~ExpressionNode();
+
92  ExpressionNode(const ValueType& expression);
+ +
104  ExpressionNode& operator=(const ValueType& expression);
+
105 };
+
106 }} // namespace jmespath::ast
+
107 
+
108 BOOST_FUSION_ADAPT_STRUCT(
+ + +
111 )
+
112 #endif // EXPRESSIONNODE_H
+
virtual ~ExpressionNode()
Destroys the ExpressionNode object.
Definition: expressionnode.cpp:37
+ + + +
ExpressionNode()
Constructs an empty ExpressionNode object.
Definition: expressionnode.cpp:32
+
The VariantNode class serves as a container node which can represent either one of the node types spe...
Definition: variantnode.h:42
+
The ExpressionNode class represents a JMESPath expression.
Definition: expressionnode.h:56
+
ExpressionNode & operator=(const ExpressionNode &other)
Assigns the other object to this object.
Definition: expressionnode.cpp:46
+
+ + + + diff --git a/files.html b/files.html new file mode 100644 index 0000000..5a96d4a --- /dev/null +++ b/files.html @@ -0,0 +1,186 @@ + + + + + + +jmespath.cpp: File List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + +
+ + + + +
+ +
+ +
+
+
File List
+
+
+
Here is a list of all files with brief descriptions:
+
[detail level 123]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
o-include
|\-jmespath
| o*exceptions.h
| o*expression.h
| o*jmespath.h
| \*types.h
\-src
 o-ast
 |o*abstractnode.cpp
 |o*abstractnode.h
 |o*allnodes.h
 |o*andexpressionnode.cpp
 |o*andexpressionnode.h
 |o*arrayitemnode.cpp
 |o*arrayitemnode.h
 |o*binaryexpressionnode.cpp
 |o*binaryexpressionnode.h
 |o*bracketspecifiernode.cpp
 |o*bracketspecifiernode.h
 |o*comparatorexpressionnode.cpp
 |o*comparatorexpressionnode.h
 |o*currentnode.cpp
 |o*currentnode.h
 |o*expressionargumentnode.cpp
 |o*expressionargumentnode.h
 |o*expressionnode.cpp
 |o*expressionnode.h
 |o*filterexpressionnode.cpp
 |o*filterexpressionnode.h
 |o*flattenoperatornode.cpp
 |o*flattenoperatornode.h
 |o*functionexpressionnode.cpp
 |o*functionexpressionnode.h
 |o*hashwildcardnode.cpp
 |o*hashwildcardnode.h
 |o*identifiernode.cpp
 |o*identifiernode.h
 |o*indexexpressionnode.cpp
 |o*indexexpressionnode.h
 |o*listwildcardnode.cpp
 |o*listwildcardnode.h
 |o*literalnode.cpp
 |o*literalnode.h
 |o*multiselecthashnode.cpp
 |o*multiselecthashnode.h
 |o*multiselectlistnode.cpp
 |o*multiselectlistnode.h
 |o*notexpressionnode.cpp
 |o*notexpressionnode.h
 |o*orexpressionnode.cpp
 |o*orexpressionnode.h
 |o*parenexpressionnode.cpp
 |o*parenexpressionnode.h
 |o*pipeexpressionnode.cpp
 |o*pipeexpressionnode.h
 |o*rawstringnode.cpp
 |o*rawstringnode.h
 |o*sliceexpressionnode.cpp
 |o*sliceexpressionnode.h
 |o*subexpressionnode.cpp
 |o*subexpressionnode.h
 |o*variantnode.h
 |o*variantvisitoradaptor.cpp
 |\*variantvisitoradaptor.h
 o-interpreter
 |o*abstractvisitor.cpp
 |o*abstractvisitor.h
 |o*contextvaluevisitoradaptor.h
 |o*interpreter.cpp
 |\*interpreter.h
 o-parser
 |o*appendescapesequenceaction.h
 |o*appendutf8action.h
 |o*encodesurrogatepairaction.h
 |o*grammar.h
 |o*insertnodeaction.h
 |o*leftchildextractor.h
 |o*leftedgeiterator.h
 |o*nodeinsertcondition.h
 |o*nodeinsertpolicy.h
 |o*noderank.h
 |\*parser.h
 o*exceptions.cpp
 o*expression.cpp
 \*jmespath.cpp
+
+
+ + + + diff --git a/filterexpressionnode_8cpp.html b/filterexpressionnode_8cpp.html new file mode 100644 index 0000000..eaacbfe --- /dev/null +++ b/filterexpressionnode_8cpp.html @@ -0,0 +1,116 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/filterexpressionnode.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
filterexpressionnode.cpp File Reference
+
+
+ + + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/filterexpressionnode_8h.html b/filterexpressionnode_8h.html new file mode 100644 index 0000000..e476eb9 --- /dev/null +++ b/filterexpressionnode_8h.html @@ -0,0 +1,124 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/filterexpressionnode.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
filterexpressionnode.h File Reference
+
+
+
#include "src/ast/expressionnode.h"
+#include <boost/fusion/include/adapt_struct.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::ast::FilterExpressionNode
 The FilterExpressionNode class represents a JMESPath filter expression. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/filterexpressionnode_8h_source.html b/filterexpressionnode_8h_source.html new file mode 100644 index 0000000..4399979 --- /dev/null +++ b/filterexpressionnode_8h_source.html @@ -0,0 +1,160 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/filterexpressionnode.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
filterexpressionnode.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef FILTEREXPRESSIONNODE_H
+
29 #define FILTEREXPRESSIONNODE_H
+
30 #include "src/ast/expressionnode.h"
+
31 #include <boost/fusion/include/adapt_struct.hpp>
+
32 
+
33 namespace jmespath { namespace ast {
+
34 
+ +
40 {
+
41 public:
+ +
51  FilterExpressionNode(const ExpressionNode& subexpression);
+
57  void accept(interpreter::AbstractVisitor* visitor) const override;
+
64  bool operator==(const FilterExpressionNode& other) const;
+ +
69 };
+
70 }} // namespace jmespath::ast
+
71 
+
72 BOOST_FUSION_ADAPT_STRUCT(
+ +
74  (jmespath::ast::ExpressionNode, expression)
+
75 )
+
76 #endif // FILTEREXPRESSIONNODE_H
+
ExpressionNode expression
The node's child expression.
Definition: filterexpressionnode.h:68
+ +
The FilterExpressionNode class represents a JMESPath filter expression.
Definition: filterexpressionnode.h:39
+
The AbstractVisitor class is an interface which defines the member functions required to visit every ...
Definition: abstractvisitor.h:71
+
bool operator==(const FilterExpressionNode &other) const
Equality compares this node to the other.
Definition: filterexpressionnode.cpp:50
+
FilterExpressionNode()
Constructs a FilterExpressionNode object.
Definition: filterexpressionnode.cpp:34
+
The ExpressionNode class represents a JMESPath expression.
Definition: expressionnode.h:56
+
void accept(interpreter::AbstractVisitor *visitor) const override
Calls the visit method of the given visitor with the dynamic type of the node.
Definition: filterexpressionnode.cpp:45
+
The AbstractNode class is the common interface class for all AST node types.
Definition: abstractnode.h:45
+
+ + + + diff --git a/flattenoperatornode_8cpp.html b/flattenoperatornode_8cpp.html new file mode 100644 index 0000000..7d30389 --- /dev/null +++ b/flattenoperatornode_8cpp.html @@ -0,0 +1,114 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/flattenoperatornode.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
flattenoperatornode.cpp File Reference
+
+
+ + + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/flattenoperatornode_8h.html b/flattenoperatornode_8h.html new file mode 100644 index 0000000..831d71d --- /dev/null +++ b/flattenoperatornode_8h.html @@ -0,0 +1,125 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/flattenoperatornode.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
flattenoperatornode.h File Reference
+
+
+
#include "src/ast/abstractnode.h"
+#include "src/ast/variantnode.h"
+#include <boost/fusion/include/adapt_struct.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::ast::FlattenOperatorNode
 The FlattenOperatorNode class represents a JMESPath flatten operator. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/flattenoperatornode_8h_source.html b/flattenoperatornode_8h_source.html new file mode 100644 index 0000000..c0a7977 --- /dev/null +++ b/flattenoperatornode_8h_source.html @@ -0,0 +1,153 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/flattenoperatornode.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
flattenoperatornode.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef FLATTENOPERATORNODE_H
+
29 #define FLATTENOPERATORNODE_H
+
30 #include "src/ast/abstractnode.h"
+
31 #include "src/ast/variantnode.h"
+
32 #include <boost/fusion/include/adapt_struct.hpp>
+
33 
+
34 namespace jmespath { namespace ast {
+
35 
+ +
40 {
+
41 public:
+ +
51  void accept(interpreter::AbstractVisitor* visitor) const override;
+
58  bool operator==(const FlattenOperatorNode& other) const;
+
59 };
+
60 }} // namespace jmespath::ast
+
61 #endif // FLATTENOPERATORNODE_H
+ + +
bool operator==(const FlattenOperatorNode &other) const
Equality compares this node to the other.
Definition: flattenoperatornode.cpp:41
+
void accept(interpreter::AbstractVisitor *visitor) const override
Calls the visit method of the given visitor with the dynamic type of the node.
Definition: flattenoperatornode.cpp:36
+
FlattenOperatorNode()
Constructs a FlattenOperatorNode object.
Definition: flattenoperatornode.cpp:32
+
The AbstractVisitor class is an interface which defines the member functions required to visit every ...
Definition: abstractvisitor.h:71
+
The FlattenOperatorNode class represents a JMESPath flatten operator.
Definition: flattenoperatornode.h:39
+
The AbstractNode class is the common interface class for all AST node types.
Definition: abstractnode.h:45
+
+ + + + diff --git a/ftv2blank.png b/ftv2blank.png new file mode 100644 index 0000000000000000000000000000000000000000..63c605bb4c3d941c921a4b6cfa74951e946bcb48 GIT binary patch literal 86 zcmeAS@N?(olHy`uVBq!ia0vp^0zfRr!3HExu9B$%QnH>djv*C{Z|`mdau^P8_z}#X h?B8GEpdi4(BFDx$je&7RrDQEg&ePS;Wt~$(69Dh@6T1Ka literal 0 HcmV?d00001 diff --git a/ftv2cl.png b/ftv2cl.png new file mode 100644 index 0000000000000000000000000000000000000000..132f6577bf7f085344904602815a260d29f55d9b GIT binary patch literal 453 zcmV;$0XqJPP)VBF;ev;toEj8_OB0EQg5eYilIj#JZG_m^33l3^k4mtzx!TVD?g)Y$ zrvwRDSqT!wLIM$dWCIa$vtxE|mzbTzu-y&$FvF6WA2a{Wr1g}`WdPT-0JzEZ0IxAv z-Z+ejZc&H;I5-pb_SUB}04j0^V)3t{`z<7asDl2Tw3w3sP%)0^8$bhEg)IOTBcRXv zFfq~3&gvJ$F-U7mpBW8z1GY~HK&7h4^YI~Orv~wLnC0PP_dAkv;nzX{9Q|8Gv=2ca z@v)c9T;D#h`TZ2X&&$ff2wedmot995de~-s3I)yauahg;7qn*?1n?F$e+PwP37}~; z1NKUk7reVK^7A;$QRW7qAx40HHUZ<|k3U%nz(Ec`#i+q9K!dgcROAlCS?`L= v>#=f?wF5ZND!1uAfQsk;KN^4&*8~0npJiJ%2dj9(00000NkvXXu0mjfWVFf_ literal 0 HcmV?d00001 diff --git a/ftv2doc.png b/ftv2doc.png new file mode 100644 index 0000000000000000000000000000000000000000..17edabff95f7b8da13c9516a04efe05493c29501 GIT binary patch literal 746 zcmV7=@pnbNXRFEm&G8P!&WHG=d)>K?YZ1bzou)2{$)) zumDct!>4SyxL;zgaG>wy`^Hv*+}0kUfCrz~BCOViSb$_*&;{TGGn2^x9K*!Sf0=lV zpP=7O;GA0*Jm*tTYj$IoXvimpnV4S1Z5f$p*f$Db2iq2zrVGQUz~yq`ahn7ck(|CE z7Gz;%OP~J6)tEZWDzjhL9h2hdfoU2)Nd%T<5Kt;Y0XLt&<@6pQx!nw*5`@bq#?l*?3z{Hlzoc=Pr>oB5(9i6~_&-}A(4{Q$>c>%rV&E|a(r&;?i5cQB=} zYSDU5nXG)NS4HEs0it2AHe2>shCyr7`6@4*6{r@8fXRbTA?=IFVWAQJL&H5H{)DpM#{W(GL+Idzf^)uRV@oB8u$ z8v{MfJbTiiRg4bza<41NAzrl{=3fl_D+$t+^!xlQ8S}{UtY`e z;;&9UhyZqQRN%2pot{*Ei0*4~hSF_3AH2@fKU!$NSflS>{@tZpDT4`M2WRTTVH+D? z)GFlEGGHe?koB}i|1w45!BF}N_q&^HJ&-tyR{(afC6H7|aml|tBBbv}55C5DNP8p3 z)~jLEO4Z&2hZmP^i-e%(@d!(E|KRafiU8Q5u(wU((j8un3OR*Hvj+t literal 0 HcmV?d00001 diff --git a/ftv2folderclosed.png b/ftv2folderclosed.png new file mode 100644 index 0000000000000000000000000000000000000000..bb8ab35edce8e97554e360005ee9fc5bffb36e66 GIT binary patch literal 616 zcmV-u0+;=XP)a9#ETzayK)T~Jw&MMH>OIr#&;dC}is*2Mqdf&akCc=O@`qC+4i z5Iu3w#1M@KqXCz8TIZd1wli&kkl2HVcAiZ8PUn5z_kG@-y;?yK06=cA0U%H0PH+kU zl6dp}OR(|r8-RG+YLu`zbI}5TlOU6ToR41{9=uz^?dGTNL;wIMf|V3`d1Wj3y!#6` zBLZ?xpKR~^2x}?~zA(_NUu3IaDB$tKma*XUdOZN~c=dLt_h_k!dbxm_*ibDM zlFX`g{k$X}yIe%$N)cn1LNu=q9_CS)*>A zsX_mM4L@`(cSNQKMFc$RtYbx{79#j-J7hk*>*+ZZhM4Hw?I?rsXCi#mRWJ=-0LGV5a-WR0Qgt<|Nqf)C-@80`5gIz45^_20000IqP)X=#(TiCT&PiIIVc55T}TU}EUh*{q$|`3@{d>{Tc9Bo>e= zfmF3!f>fbI9#GoEHh0f`i5)wkLpva0ztf%HpZneK?w-7AK@b4Itw{y|Zd3k!fH?q2 zlhckHd_V2M_X7+)U&_Xcfvtw60l;--DgZmLSw-Y?S>)zIqMyJ1#FwLU*%bl38ok+! zh78H87n`ZTS;uhzAR$M`zZ`bVhq=+%u9^$5jDplgxd44}9;IRqUH1YHH|@6oFe%z( zo4)_>E$F&^P-f(#)>(TrnbE>Pefs9~@iN=|)Rz|V`sGfHNrJ)0gJb8xx+SBmRf@1l zvuzt=vGfI)<-F9!o&3l?>9~0QbUDT(wFdnQPv%xdD)m*g%!20>Bc9iYmGAp<9YAa( z0QgYgTWqf1qN++Gqp z8@AYPTB3E|6s=WLG?xw0tm|U!o=&zd+H0oRYE;Dbx+Na9s^STqX|Gnq%H8s(nGDGJ j8vwW|`Ts`)fSK|Kx=IK@RG@g200000NkvXXu0mjfauFEA literal 0 HcmV?d00001 diff --git a/ftv2lastnode.png b/ftv2lastnode.png new file mode 100644 index 0000000000000000000000000000000000000000..63c605bb4c3d941c921a4b6cfa74951e946bcb48 GIT binary patch literal 86 zcmeAS@N?(olHy`uVBq!ia0vp^0zfRr!3HExu9B$%QnH>djv*C{Z|`mdau^P8_z}#X h?B8GEpdi4(BFDx$je&7RrDQEg&ePS;Wt~$(69Dh@6T1Ka literal 0 HcmV?d00001 diff --git a/ftv2link.png b/ftv2link.png new file mode 100644 index 0000000000000000000000000000000000000000..17edabff95f7b8da13c9516a04efe05493c29501 GIT binary patch literal 746 zcmV7=@pnbNXRFEm&G8P!&WHG=d)>K?YZ1bzou)2{$)) zumDct!>4SyxL;zgaG>wy`^Hv*+}0kUfCrz~BCOViSb$_*&;{TGGn2^x9K*!Sf0=lV zpP=7O;GA0*Jm*tTYj$IoXvimpnV4S1Z5f$p*f$Db2iq2zrVGQUz~yq`ahn7ck(|CE z7Gz;%OP~J6)tEZWDzjhL9h2hdfoU2)Nd%T<5Kt;Y0XLt&<@6pQx!nw*5`@bq#?l*?3z{Hlzoc=Pr>oB5(9i6~_&-}A(4{Q$>c>%rV&E|a(r&;?i5cQB=} zYSDU5nXG)NS4HEs0it2AHe2>shCyr7`6@4*6{r@8fXRbTA?=IFVWAQJL&H5H{)DpM#{W(GL+Idzf^)uRV@oB8u$ z8v{MfJbTiiRg4bza<41NAzrl{=3fl_D+$t+^!xlQ8S}{UtY`e z;;&9UhyZqQRN%2pot{*Ei0*4~hSF_3AH2@fKU!$NSflS>{@tZpDT4`M2WRTTVH+D? z)GFlEGGHe?koB}i|1w45!BF}N_q&^HJ&-tyR{(afC6H7|aml|tBBbv}55C5DNP8p3 z)~jLEO4Z&2hZmP^i-e%(@d!(E|KRafiU8Q5u(wU((j8un3OR*Hvj+t literal 0 HcmV?d00001 diff --git a/ftv2mlastnode.png b/ftv2mlastnode.png new file mode 100644 index 0000000000000000000000000000000000000000..0b63f6d38c4b9ec907b820192ebe9724ed6eca22 GIT binary patch literal 246 zcmVkw!R34#Lv2LOS^S2tZA31X++9RY}n zChwn@Z)Wz*WWHH{)HDtJnq&A2hk$b-y(>?@z0iHr41EKCGp#T5?07*qoM6N<$f(V3Pvj6}9 literal 0 HcmV?d00001 diff --git a/ftv2mnode.png b/ftv2mnode.png new file mode 100644 index 0000000000000000000000000000000000000000..0b63f6d38c4b9ec907b820192ebe9724ed6eca22 GIT binary patch literal 246 zcmVkw!R34#Lv2LOS^S2tZA31X++9RY}n zChwn@Z)Wz*WWHH{)HDtJnq&A2hk$b-y(>?@z0iHr41EKCGp#T5?07*qoM6N<$f(V3Pvj6}9 literal 0 HcmV?d00001 diff --git a/ftv2mo.png b/ftv2mo.png new file mode 100644 index 0000000000000000000000000000000000000000..4bfb80f76e65815989a9350ad79d8ce45380e2b1 GIT binary patch literal 403 zcmV;E0c`$>P)${!fXv7NWJ%@%u4(KapRY>T6_x;E zxE7kt!}Tiw8@d9Sd`rTGum>z#Q14vIm`wm1#-byD1muMi02@YNO5LRF0o!Y{`a!Ya z{^&p0Su|s705&2QxmqdexG+-zNKL3f@8gTQSJrKByfo+oNJ^-{|Mn||Q5SDwjQVsS zr1}7o5-QMs>gYIMD>GRw@$lT`z4r-_m{5U#cR{urD_)TOeY)(UD|qZ^&y`IVijqk~ xs(9-kWFr7E^!lgi8GsFK5kOY_{Xbgf0^etEU%fLevs?fG002ovPDHLkV1nB&vX1}& literal 0 HcmV?d00001 diff --git a/ftv2node.png b/ftv2node.png new file mode 100644 index 0000000000000000000000000000000000000000..63c605bb4c3d941c921a4b6cfa74951e946bcb48 GIT binary patch literal 86 zcmeAS@N?(olHy`uVBq!ia0vp^0zfRr!3HExu9B$%QnH>djv*C{Z|`mdau^P8_z}#X h?B8GEpdi4(BFDx$je&7RrDQEg&ePS;Wt~$(69Dh@6T1Ka literal 0 HcmV?d00001 diff --git a/ftv2ns.png b/ftv2ns.png new file mode 100644 index 0000000000000000000000000000000000000000..72e3d71c2892d6f00e259facebc88b45f6db2e35 GIT binary patch literal 388 zcmV-~0ek+5P)f+++#cT|!CkD&4pnIkeMEUEM*>`*9>+Juji$!h-mW%M^8s9957{3nvbrz^&=u<~TAUrFROkmt%^F~Ez+-c53Lv%iH3d38!Rv?K zrb&MYAhp;Gf<}wS;9ZZq2@;!uYG;=Z>~GKE^{HD4keu}lnyqhc>kWX^tQn|warJ~h zT+rtMkdz6aHoN%z(o|&wpu@@OpJnF_z{PA)6(FHw02iHslz^(N{4*+K9)QJHR87wT iTyp>aXaF{u2lxRou|^4tux6eB0000^P)R?RzRoKvklcaQ%HF6%rK2&ZgO(-ihJ_C zzrKgp4jgO( fd_(yg|3PpEQb#9`a?Pz_00000NkvXXu0mjftR`5K literal 0 HcmV?d00001 diff --git a/ftv2pnode.png b/ftv2pnode.png new file mode 100644 index 0000000000000000000000000000000000000000..c6ee22f937a07d1dbfc27c669d11f8ed13e2f152 GIT binary patch literal 229 zcmV^P)R?RzRoKvklcaQ%HF6%rK2&ZgO(-ihJ_C zzrKgp4jgO( fd_(yg|3PpEQb#9`a?Pz_00000NkvXXu0mjftR`5K literal 0 HcmV?d00001 diff --git a/ftv2splitbar.png b/ftv2splitbar.png new file mode 100644 index 0000000000000000000000000000000000000000..fe895f2c58179b471a22d8320b39a4bd7312ec8e GIT binary patch literal 314 zcmeAS@N?(olHy`uVBq!ia0vp^Yzz!63>-{AmhX=Jf(#6djGiuzAr*{o?=JLmPLyc> z_*`QK&+BH@jWrYJ7>r6%keRM@)Qyv8R=enp0jiI>aWlGyB58O zFVR20d+y`K7vDw(hJF3;>dD*3-?v=<8M)@x|EEGLnJsniYK!2U1 Y!`|5biEc?d1`HDhPgg&ebxsLQ02F6;9RL6T literal 0 HcmV?d00001 diff --git a/ftv2vertline.png b/ftv2vertline.png new file mode 100644 index 0000000000000000000000000000000000000000..63c605bb4c3d941c921a4b6cfa74951e946bcb48 GIT binary patch literal 86 zcmeAS@N?(olHy`uVBq!ia0vp^0zfRr!3HExu9B$%QnH>djv*C{Z|`mdau^P8_z}#X h?B8GEpdi4(BFDx$je&7RrDQEg&ePS;Wt~$(69Dh@6T1Ka literal 0 HcmV?d00001 diff --git a/functionexpressionnode_8cpp.html b/functionexpressionnode_8cpp.html new file mode 100644 index 0000000..383880d --- /dev/null +++ b/functionexpressionnode_8cpp.html @@ -0,0 +1,116 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/functionexpressionnode.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
functionexpressionnode.cpp File Reference
+
+
+ + + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/functionexpressionnode_8h.html b/functionexpressionnode_8h.html new file mode 100644 index 0000000..86e5f5f --- /dev/null +++ b/functionexpressionnode_8h.html @@ -0,0 +1,128 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/functionexpressionnode.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
functionexpressionnode.h File Reference
+
+
+
#include "src/ast/abstractnode.h"
+#include "jmespath/types.h"
+#include <vector>
+#include <initializer_list>
+#include <boost/variant.hpp>
+#include <boost/fusion/include/adapt_struct.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::ast::FunctionExpressionNode
 The FunctionExpressionNode class represents a JMESPath function expression. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/functionexpressionnode_8h_source.html b/functionexpressionnode_8h_source.html new file mode 100644 index 0000000..5e76260 --- /dev/null +++ b/functionexpressionnode_8h_source.html @@ -0,0 +1,176 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/functionexpressionnode.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
functionexpressionnode.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef FUNCTIONEXPRESSIONNODE_H
+
29 #define FUNCTIONEXPRESSIONNODE_H
+
30 #include "src/ast/abstractnode.h"
+
31 #include "jmespath/types.h"
+
32 #include <vector>
+
33 #include <initializer_list>
+
34 #include <boost/variant.hpp>
+
35 #include <boost/fusion/include/adapt_struct.hpp>
+
36 
+
37 namespace jmespath { namespace ast {
+
38 
+
39 class ExpressionNode;
+
40 class ExpressionArgumentNode;
+ +
46 {
+
47 public:
+
48  using ArgumentType = boost::variant<boost::blank,
+
49  boost::recursive_wrapper<ExpressionNode>,
+
50  boost::recursive_wrapper<ExpressionArgumentNode> >;
+ +
61  FunctionExpressionNode(const String& name,
+
62  const std::initializer_list<ArgumentType>& argumentList = {});
+
68  void accept(interpreter::AbstractVisitor* visitor) const override;
+
75  bool operator==(const FunctionExpressionNode& other) const;
+ +
83  std::vector<ArgumentType> arguments;
+
84 };
+
85 }} // namespace jmespath::ast
+
86 
+
87 BOOST_FUSION_ADAPT_STRUCT(
+ +
89  (jmespath::String, functionName)
+
90  (std::vector<jmespath::ast::FunctionExpressionNode::ArgumentType>,
+
91  arguments)
+
92 )
+
93 #endif // FUNCTIONEXPRESSIONNODE_H
+ +
bool operator==(const FunctionExpressionNode &other) const
Equality compares this node to the other.
Definition: functionexpressionnode.cpp:52
+
std::vector< ArgumentType > arguments
The function expressions's arguments.
Definition: functionexpressionnode.h:83
+
boost::variant< boost::blank, boost::recursive_wrapper< ExpressionNode >, boost::recursive_wrapper< ExpressionArgumentNode > > ArgumentType
Definition: functionexpressionnode.h:50
+
void accept(interpreter::AbstractVisitor *visitor) const override
Calls the visit method of the given visitor with the dynamic type of the node.
Definition: functionexpressionnode.cpp:47
+ +
std::basic_string< Char > String
UTF-8 encoded string type.
Definition: types.h:44
+
FunctionExpressionNode()
Constructs an empty FunctionExpressionNode object.
Definition: functionexpressionnode.cpp:34
+
The AbstractVisitor class is an interface which defines the member functions required to visit every ...
Definition: abstractvisitor.h:71
+
String functionName
The function's name.
Definition: functionexpressionnode.h:79
+
The AbstractNode class is the common interface class for all AST node types.
Definition: abstractnode.h:45
+
The FunctionExpressionNode class represents a JMESPath function expression.
Definition: functionexpressionnode.h:45
+
+ + + + diff --git a/functions.html b/functions.html new file mode 100644 index 0000000..8bdb297 --- /dev/null +++ b/functions.html @@ -0,0 +1,201 @@ + + + + + + +jmespath.cpp: Class Members + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- a -

+
+ + + + diff --git a/functions_b.html b/functions_b.html new file mode 100644 index 0000000..9cd185d --- /dev/null +++ b/functions_b.html @@ -0,0 +1,144 @@ + + + + + + +jmespath.cpp: Class Members + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- b -

+
+ + + + diff --git a/functions_c.html b/functions_c.html new file mode 100644 index 0000000..31517d8 --- /dev/null +++ b/functions_c.html @@ -0,0 +1,165 @@ + + + + + + +jmespath.cpp: Class Members + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- c -

+
+ + + + diff --git a/functions_e.html b/functions_e.html new file mode 100644 index 0000000..0be2dda --- /dev/null +++ b/functions_e.html @@ -0,0 +1,172 @@ + + + + + + +jmespath.cpp: Class Members + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- e -

+
+ + + + diff --git a/functions_enum.html b/functions_enum.html new file mode 100644 index 0000000..6ffac8d --- /dev/null +++ b/functions_enum.html @@ -0,0 +1,111 @@ + + + + + + +jmespath.cpp: Class Members - Enumerations + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + +
+ + + + +
+ +
+ +
+
+ + + + diff --git a/functions_eval.html b/functions_eval.html new file mode 100644 index 0000000..607a1b5 --- /dev/null +++ b/functions_eval.html @@ -0,0 +1,129 @@ + + + + + + +jmespath.cpp: Class Members - Enumerator + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + +
+ + + + +
+ +
+ + + + + + diff --git a/functions_f.html b/functions_f.html new file mode 100644 index 0000000..176440a --- /dev/null +++ b/functions_f.html @@ -0,0 +1,165 @@ + + + + + + +jmespath.cpp: Class Members + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- f -

+
+ + + + diff --git a/functions_func.html b/functions_func.html new file mode 100644 index 0000000..2d0cbfc --- /dev/null +++ b/functions_func.html @@ -0,0 +1,191 @@ + + + + + + +jmespath.cpp: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- a -

+
+ + + + diff --git a/functions_func_b.html b/functions_func_b.html new file mode 100644 index 0000000..2ff24fe --- /dev/null +++ b/functions_func_b.html @@ -0,0 +1,140 @@ + + + + + + +jmespath.cpp: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- b -

+
+ + + + diff --git a/functions_func_c.html b/functions_func_c.html new file mode 100644 index 0000000..2e01f08 --- /dev/null +++ b/functions_func_c.html @@ -0,0 +1,158 @@ + + + + + + +jmespath.cpp: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- c -

+
+ + + + diff --git a/functions_func_e.html b/functions_func_e.html new file mode 100644 index 0000000..ab90667 --- /dev/null +++ b/functions_func_e.html @@ -0,0 +1,155 @@ + + + + + + +jmespath.cpp: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- e -

+
+ + + + diff --git a/functions_func_f.html b/functions_func_f.html new file mode 100644 index 0000000..de202c1 --- /dev/null +++ b/functions_func_f.html @@ -0,0 +1,146 @@ + + + + + + +jmespath.cpp: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- f -

+
+ + + + diff --git a/functions_func_g.html b/functions_func_g.html new file mode 100644 index 0000000..ab9b9df --- /dev/null +++ b/functions_func_g.html @@ -0,0 +1,143 @@ + + + + + + +jmespath.cpp: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- g -

+
+ + + + diff --git a/functions_func_h.html b/functions_func_h.html new file mode 100644 index 0000000..a3f8d76 --- /dev/null +++ b/functions_func_h.html @@ -0,0 +1,137 @@ + + + + + + +jmespath.cpp: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- h -

+
+ + + + diff --git a/functions_func_i.html b/functions_func_i.html new file mode 100644 index 0000000..87648fc --- /dev/null +++ b/functions_func_i.html @@ -0,0 +1,163 @@ + + + + + + +jmespath.cpp: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ + + + + + diff --git a/functions_func_j.html b/functions_func_j.html new file mode 100644 index 0000000..ff6de9d --- /dev/null +++ b/functions_func_j.html @@ -0,0 +1,137 @@ + + + + + + +jmespath.cpp: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- j -

+
+ + + + diff --git a/functions_func_k.html b/functions_func_k.html new file mode 100644 index 0000000..3445fd6 --- /dev/null +++ b/functions_func_k.html @@ -0,0 +1,137 @@ + + + + + + +jmespath.cpp: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- k -

+
+ + + + diff --git a/functions_func_l.html b/functions_func_l.html new file mode 100644 index 0000000..80e436a --- /dev/null +++ b/functions_func_l.html @@ -0,0 +1,146 @@ + + + + + + +jmespath.cpp: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- l -

+
+ + + + diff --git a/functions_func_m.html b/functions_func_m.html new file mode 100644 index 0000000..ee46354 --- /dev/null +++ b/functions_func_m.html @@ -0,0 +1,155 @@ + + + + + + +jmespath.cpp: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ + + + + + diff --git a/functions_func_n.html b/functions_func_n.html new file mode 100644 index 0000000..d39c453 --- /dev/null +++ b/functions_func_n.html @@ -0,0 +1,140 @@ + + + + + + +jmespath.cpp: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- n -

+
+ + + + diff --git a/functions_func_o.html b/functions_func_o.html new file mode 100644 index 0000000..fe4dc1a --- /dev/null +++ b/functions_func_o.html @@ -0,0 +1,188 @@ + + + + + + +jmespath.cpp: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- o -

+
+ + + + diff --git a/functions_func_p.html b/functions_func_p.html new file mode 100644 index 0000000..4f48b28 --- /dev/null +++ b/functions_func_p.html @@ -0,0 +1,146 @@ + + + + + + +jmespath.cpp: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- p -

+
+ + + + diff --git a/functions_func_r.html b/functions_func_r.html new file mode 100644 index 0000000..3c4a6ac --- /dev/null +++ b/functions_func_r.html @@ -0,0 +1,140 @@ + + + + + + +jmespath.cpp: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- r -

+
+ + + + diff --git a/functions_func_s.html b/functions_func_s.html new file mode 100644 index 0000000..5f1c61c --- /dev/null +++ b/functions_func_s.html @@ -0,0 +1,166 @@ + + + + + + +jmespath.cpp: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ + + + + + diff --git a/functions_func_t.html b/functions_func_t.html new file mode 100644 index 0000000..f2039f0 --- /dev/null +++ b/functions_func_t.html @@ -0,0 +1,150 @@ + + + + + + +jmespath.cpp: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ + + + + + diff --git a/functions_func_v.html b/functions_func_v.html new file mode 100644 index 0000000..316e20d --- /dev/null +++ b/functions_func_v.html @@ -0,0 +1,147 @@ + + + + + + +jmespath.cpp: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ + + + + + diff --git a/functions_func_~.html b/functions_func_~.html new file mode 100644 index 0000000..6e2b20c --- /dev/null +++ b/functions_func_~.html @@ -0,0 +1,143 @@ + + + + + + +jmespath.cpp: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- ~ -

+
+ + + + diff --git a/functions_g.html b/functions_g.html new file mode 100644 index 0000000..e7227ab --- /dev/null +++ b/functions_g.html @@ -0,0 +1,153 @@ + + + + + + +jmespath.cpp: Class Members + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- g -

+
+ + + + diff --git a/functions_h.html b/functions_h.html new file mode 100644 index 0000000..ad99b9f --- /dev/null +++ b/functions_h.html @@ -0,0 +1,138 @@ + + + + + + +jmespath.cpp: Class Members + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- h -

+
+ + + + diff --git a/functions_i.html b/functions_i.html new file mode 100644 index 0000000..c336caf --- /dev/null +++ b/functions_i.html @@ -0,0 +1,176 @@ + + + + + + +jmespath.cpp: Class Members + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ + + + + + diff --git a/functions_j.html b/functions_j.html new file mode 100644 index 0000000..ed2ffc1 --- /dev/null +++ b/functions_j.html @@ -0,0 +1,141 @@ + + + + + + +jmespath.cpp: Class Members + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- j -

+
+ + + + diff --git a/functions_k.html b/functions_k.html new file mode 100644 index 0000000..ac2d7d6 --- /dev/null +++ b/functions_k.html @@ -0,0 +1,141 @@ + + + + + + +jmespath.cpp: Class Members + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- k -

+
+ + + + diff --git a/functions_l.html b/functions_l.html new file mode 100644 index 0000000..b15e046 --- /dev/null +++ b/functions_l.html @@ -0,0 +1,159 @@ + + + + + + +jmespath.cpp: Class Members + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- l -

+
+ + + + diff --git a/functions_m.html b/functions_m.html new file mode 100644 index 0000000..8ab0593 --- /dev/null +++ b/functions_m.html @@ -0,0 +1,319 @@ + + + + + + +jmespath.cpp: Class Members + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- m -

+
+ + + + diff --git a/functions_n.html b/functions_n.html new file mode 100644 index 0000000..1518dc5 --- /dev/null +++ b/functions_n.html @@ -0,0 +1,144 @@ + + + + + + +jmespath.cpp: Class Members + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- n -

+
+ + + + diff --git a/functions_o.html b/functions_o.html new file mode 100644 index 0000000..185dca6 --- /dev/null +++ b/functions_o.html @@ -0,0 +1,189 @@ + + + + + + +jmespath.cpp: Class Members + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- o -

+
+ + + + diff --git a/functions_p.html b/functions_p.html new file mode 100644 index 0000000..180af1d --- /dev/null +++ b/functions_p.html @@ -0,0 +1,147 @@ + + + + + + +jmespath.cpp: Class Members + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- p -

+
+ + + + diff --git a/functions_r.html b/functions_r.html new file mode 100644 index 0000000..3b90b59 --- /dev/null +++ b/functions_r.html @@ -0,0 +1,158 @@ + + + + + + +jmespath.cpp: Class Members + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ + + + + + diff --git a/functions_s.html b/functions_s.html new file mode 100644 index 0000000..f4ec08e --- /dev/null +++ b/functions_s.html @@ -0,0 +1,176 @@ + + + + + + +jmespath.cpp: Class Members + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ + + + + + diff --git a/functions_t.html b/functions_t.html new file mode 100644 index 0000000..088d1e0 --- /dev/null +++ b/functions_t.html @@ -0,0 +1,151 @@ + + + + + + +jmespath.cpp: Class Members + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- t -

+
+ + + + diff --git a/functions_type.html b/functions_type.html new file mode 100644 index 0000000..89456a7 --- /dev/null +++ b/functions_type.html @@ -0,0 +1,161 @@ + + + + + + +jmespath.cpp: Class Members - Typedefs + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + +
+ + + + +
+ +
+ + + + + + diff --git a/functions_u.html b/functions_u.html new file mode 100644 index 0000000..5942515 --- /dev/null +++ b/functions_u.html @@ -0,0 +1,138 @@ + + + + + + +jmespath.cpp: Class Members + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- u -

+
+ + + + diff --git a/functions_v.html b/functions_v.html new file mode 100644 index 0000000..24a01db --- /dev/null +++ b/functions_v.html @@ -0,0 +1,154 @@ + + + + + + +jmespath.cpp: Class Members + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- v -

+
+ + + + diff --git a/functions_vars.html b/functions_vars.html new file mode 100644 index 0000000..f3bdb91 --- /dev/null +++ b/functions_vars.html @@ -0,0 +1,380 @@ + + + + + + +jmespath.cpp: Class Members - Variables + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+  + +

- a -

+ + +

- b -

+ + +

- c -

+ + +

- e -

+ + +

- f -

+ + +

- i -

+ + +

- l -

+ + +

- m -

+ + +

- r -

+ + +

- s -

+ + +

- v -

+
+ + + + diff --git a/functions_~.html b/functions_~.html new file mode 100644 index 0000000..dc7ca54 --- /dev/null +++ b/functions_~.html @@ -0,0 +1,144 @@ + + + + + + +jmespath.cpp: Class Members + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- ~ -

+
+ + + + diff --git a/grammar_8h.html b/grammar_8h.html new file mode 100644 index 0000000..94a02bd --- /dev/null +++ b/grammar_8h.html @@ -0,0 +1,133 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/parser/grammar.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
grammar.h File Reference
+
+
+
#include "jmespath/types.h"
+#include "src/ast/allnodes.h"
+#include "src/parser/noderank.h"
+#include "src/parser/insertnodeaction.h"
+#include "src/parser/appendutf8action.h"
+#include "src/parser/appendescapesequenceaction.h"
+#include "src/parser/encodesurrogatepairaction.h"
+#include "src/parser/nodeinsertpolicy.h"
+#include "src/parser/nodeinsertcondition.h"
+#include <boost/spirit/include/qi.hpp>
+#include <boost/phoenix.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::parser::Grammar< Iterator, Skipper >
 The Grammar class contains the PEG rule definition based on the EBNF specifications of JMESPath. More...
 
+ + + + + + + +

+Namespaces

 jmespath::parser
 Classes required for parsing JMESPath expressions.
 
 jmespath
 The top level namespace which contains the public functions of the library.
 
+
+ + + + diff --git a/grammar_8h_source.html b/grammar_8h_source.html new file mode 100644 index 0000000..0ca6a8f --- /dev/null +++ b/grammar_8h_source.html @@ -0,0 +1,670 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/parser/grammar.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
grammar.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef GRAMMAR_H
+
29 #define GRAMMAR_H
+
30 #include "jmespath/types.h"
+
31 #include "src/ast/allnodes.h"
+
32 #include "src/parser/noderank.h"
+ + + + + + +
39 #include <boost/spirit/include/qi.hpp>
+
40 #include <boost/phoenix.hpp>
+
41 
+
46 namespace jmespath { namespace parser {
+
47 
+
48 namespace qi = boost::spirit::qi;
+
49 namespace encoding = qi::unicode;
+
50 namespace phx = boost::phoenix;
+
51 
+
62 template <typename Iterator, typename Skipper = encoding::space_type>
+
63 class Grammar : public qi::grammar<Iterator,
+
64  ast::ExpressionNode(),
+
65  Skipper>
+
66 {
+
67 public:
+ +
72  : Grammar::base_type(m_topLevelExpressionRule)
+
73  {
+
74  using encoding::char_;
+
75  using qi::lit;
+
76  using qi::lexeme;
+
77  using qi::int_parser;
+
78  using qi::_val;
+
79  using qi::_1;
+
80  using qi::_2;
+
81  using qi::_pass;
+
82  using qi::_r1;
+
83  using qi::_r2;
+
84  using qi::eps;
+
85  using qi::_a;
+
86  using phx::at_c;
+
87  using phx::if_;
+
88  using phx::ref;
+
89 
+
90  // Since boost spirit doesn't support left recursive grammars, some of
+
91  // the rules are converted into tail expressions. When a tail expression
+
92  // is parsed and the parser returns from a recursion the
+
93  // InsertNodeAction functor is used to compensate for tail expressions.
+
94  // It inserts the binary expression nodes into the appropriate position
+
95  // which leads to an easy to interpret AST.
+
96 
+
97  // lazy function for inserting binary nodes to the appropriate position
+
98  phx::function<InsertNodeAction<
+ +
100  NodeInsertCondition> > insertNode;
+
101  // lazy function for appending UTF-32 characters to a string encoded
+
102  // in UTF-8
+
103  phx::function<AppendUtf8Action> appendUtf8;
+
104  // lazy function for appending UTF-32 encoded escape sequence to a
+
105  // string encoded in UTF-8
+
106  phx::function<AppendEscapeSequenceAction> appendEscape;
+
107  // lazy function for for combining surrogate pair characters into a
+
108  // single codepoint
+
109  phx::function<EncodeSurrogatePairAction> encodeSurrogatePair;
+
110 
+
111  // optionally match an expression
+
112  // this ensures that the parsing of empty expressions which contain
+
113  // only whitespaces will be successful
+
114  m_topLevelExpressionRule = -m_expressionRule[insertNode(_val, _1)];
+
115 
+
116  // match a standalone index expression or hash wildcard expression or
+
117  // not expression or function expression or identifier or multiselect
+
118  // list or multiselect hash or literal or a raw string or paren
+
119  // expression or current node expression, optionally followed by a
+
120  // subexpression an index expression a hash wildcard subexpression a
+
121  // pipe expresion a comparator expression an or expression and an and
+
122  // expression
+
123  m_expressionRule = (m_indexExpressionRule(_val)[insertNode(_val, _1)]
+
124  | m_hashWildcardRule(_val)[insertNode(_val, _1)]
+
125  | m_notExpressionRule(_val)[insertNode(_val, _1)]
+ + + + +
130  | m_literalRule
+ + +
133  | m_currentNodeRule)[_a = _1])
+
134  >> -m_subexpressionRule(_val)[insertNode(_val, _1)]
+
135  >> -m_indexExpressionRule(_val)[insertNode(_val, _1)]
+
136  >> -m_hashWildcardSubexpressionRule(_val)[insertNode(_val, _1)]
+
137  >> -m_pipeExpressionRule(_val)[insertNode(_val, _1)]
+
138  >> -m_comparatorExpressionRule(_val)[insertNode(_val, _1)]
+
139  >> -m_orExpressionRule(_val)[insertNode(_val, _1)]
+
140  >> -m_andExpressionRule(_val)[insertNode(_val, _1)]
+
141  >> eps[insertNode(_val, _a)];
+
142 
+
143  // match an identifier or multiselect list or multiselect hash preceded
+
144  // by a dot, a subexpression can also be optionally followed by an index
+
145  // expression a hash wildcard subexpression by another subexpression
+
146  // a pipe expresion a comparator expression an or expression and an
+
147  // and expression
+
148  m_subexpressionRule = (lit('.')
+ + + +
152  | m_multiselectHashRule)[at_c<1>(_val) = _1])
+
153  >> -m_indexExpressionRule(_r1)[insertNode(_r1, _1)]
+
154  >> -m_hashWildcardSubexpressionRule(_r1)[insertNode(_r1, _1)]
+
155  >> -m_subexpressionRule(_r1)[insertNode(_r1, _1)]
+
156  >> -m_pipeExpressionRule(_r1)[insertNode(_r1, _1)]
+
157  >> -m_comparatorExpressionRule(_r1)[insertNode(_r1, _1)]
+
158  >> -m_orExpressionRule(_r1)[insertNode(_r1, _1)]
+
159  >> -m_andExpressionRule(_r1)[insertNode(_r1, _1)];
+
160 
+
161  // match a bracket specifier which can be optionally followed by a
+
162  // subexpression a hash wildcard subexpression an index expression
+
163  // a pipe expresion a comparator expression an or expression and an
+
164  // and expression
+
165  m_indexExpressionRule = m_bracketSpecifierRule[at_c<1>(_val) = _1]
+
166  >> -m_subexpressionRule(_r1)[insertNode(_r1, _1)]
+
167  >> -m_hashWildcardSubexpressionRule(_r1)[insertNode(_r1, _1)]
+
168  >> -m_indexExpressionRule(_r1)[insertNode(_r1, _1)]
+
169  >> -m_pipeExpressionRule(_r1)[insertNode(_r1, _1)]
+
170  >> -m_comparatorExpressionRule(_r1)[insertNode(_r1, _1)]
+
171  >> -m_orExpressionRule(_r1)[insertNode(_r1, _1)]
+
172  >> -m_andExpressionRule(_r1)[insertNode(_r1, _1)];
+
173 
+
174  // match a slice expression or an array item or a list wildcard or a
+
175  // flatten operator or a filter expression
+
176  m_bracketSpecifierRule = (lit("[")
+ + + +
180  >> lit("]"))
+ + +
183 
+
184  // match an integer of type Index
+
185  m_indexRule = int_parser<Index>();
+
186 
+
187  // match an index
+ +
189 
+
190  // match a pair of square brackets
+
191  m_flattenOperatorRule = eps >> lit("[]");
+
192 
+
193  // match an expression preceded by a question mark
+
194  m_filterExpressionRule = lit("[?") >> m_expressionRule >> lit("]");
+
195 
+
196  // match a colon which can be optionally preceded and followed by a
+
197  // single index, these matches can also be optionally followed by
+
198  // another colon which can be followed by an index
+
199  m_sliceExpressionRule = -m_indexRule[at_c<0>(_val) = _1]
+
200  >> lit(':')
+
201  >> -m_indexRule[at_c<1>(_val) = _1]
+
202  >> -(lit(':') >> -m_indexRule[at_c<2>(_val) = _1]);
+
203 
+
204  // match an asterisk
+
205  m_listWildcardRule = eps >> lit("*");
+
206 
+
207  // match an asterisk optionally followd by a subexpression an
+
208  // index expression a hash wildcard subexpression a pipe expresion
+
209  // a comparator expression an or expression and an and expression
+
210  m_hashWildcardRule = eps >> lit("*")
+
211  >> -m_subexpressionRule(_r1)[insertNode(_r1, _1)]
+
212  >> -m_indexExpressionRule(_r1)[insertNode(_r1, _1)]
+
213  >> -m_hashWildcardSubexpressionRule(_r1)[insertNode(_r1, _1)]
+
214  >> -m_pipeExpressionRule(_r1)[insertNode(_r1, _1)]
+
215  >> -m_comparatorExpressionRule(_r1)[insertNode(_r1, _1)]
+
216  >> -m_orExpressionRule(_r1)[insertNode(_r1, _1)]
+
217  >> -m_andExpressionRule(_r1)[insertNode(_r1, _1)];
+
218 
+
219  // match a dot followd by an asterisk optionally followd by a
+
220  // subexpression an index expression a hash wildcard subexpression
+
221  // a pipe expresion a comparator expression an or expression and an
+
222  // and expression
+
223  m_hashWildcardSubexpressionRule = eps >> lit(".") >> lit("*")
+
224  >> -m_subexpressionRule(_r1)[insertNode(_r1, _1)]
+
225  >> -m_indexExpressionRule(_r1)[insertNode(_r1, _1)]
+
226  >> -m_hashWildcardSubexpressionRule(_r1)[insertNode(_r1, _1)]
+
227  >> -m_pipeExpressionRule(_r1)[insertNode(_r1, _1)]
+
228  >> -m_comparatorExpressionRule(_r1)[insertNode(_r1, _1)]
+
229  >> -m_orExpressionRule(_r1)[insertNode(_r1, _1)]
+
230  >> -m_andExpressionRule(_r1)[insertNode(_r1, _1)];
+
231 
+
232  // matches an expression enclosed in square brackets, the expression
+
233  // can optionally be followd by more expressions separated with commas
+
234  m_multiselectListRule = lit('[')
+
235  >> m_expressionRule % lit(',')
+
236  >> lit(']');
+
237 
+
238  // match a key-value pair enclosed in curly braces, the key-value pair
+
239  // can optionally be followed by more key-value pairs separated with
+
240  // commas
+
241  m_multiselectHashRule = lit('{')
+
242  >> m_keyValuePairRule % lit(',')
+
243  >> lit('}');
+
244 
+
245  // match an expression preceded by an exclamation mark
+
246  m_notExpressionRule = lit('!') >> m_expressionRule[_r1 = _1];
+
247 
+
248  // match an expression inside parentheses
+
249  m_parenExpressionRule = lit('(') >> m_expressionRule >> lit(')');
+
250 
+
251  // match a comparator symbol followed by an expression
+
252  m_comparatorExpressionRule = m_comparatorSymbols[at_c<1>(_val) = _1]
+
253  >> m_expressionRule[_r1 = _1];
+
254 
+
255  // convert textual comparator symbols to enum values
+ + + + + + + +
263 
+
264  // match a single vertical bar followed by an expression
+
265  m_pipeExpressionRule = lit("|") >> m_expressionRule[_r1 = _1];
+
266 
+
267  // match double vertical bars followed by an expression
+
268  m_orExpressionRule = lit("||") >> m_expressionRule[_r1 = _1];
+
269 
+
270  // match double ampersand followed by an expression
+
271  m_andExpressionRule = lit("&&") >> m_expressionRule[_r1 = _1];
+
272 
+
273  // match
+
274  m_currentNodeRule = eps >> lit('@');
+
275 
+
276  // match an unquoted string which is optionally followed by an argument
+
277  // list enclosed in parenthesis
+ +
279  >> lit('(') >> -m_functionArgumentListRule >> lit(')');
+
280 
+
281  // match a sequence of function arguments separated with commas
+ +
283 
+
284  // match an expression or an expression argument
+ +
286 
+
287  // match an expression following an ampersand
+ +
289 
+
290  // match an identifier and an expression separated with a colon
+ +
292 
+
293  // match zero or more literal characters enclosed in grave accents
+
294  m_literalRule = lexeme[ lit('\x60')
+
295  >> *m_literalCharRule[appendUtf8(at_c<0>(_val), _1)]
+
296  >> lit('\x60') ];
+
297 
+
298  // match a character in the range of 0x00-0x5B or 0x5D-0x5F or
+
299  // 0x61-0x10FFFF or a literal escape
+
300  m_literalCharRule = char_(U'\x00', U'\x5B')
+
301  | char_(U'\x5D', U'\x5F')
+
302  | char_(U'\x61', U'\U0010FFFF')
+ +
304 
+
305  // match a grave accent preceded by an escape or match a backslash if
+
306  // it's not followed by a grave accent
+
307  m_literalEscapeRule = (m_escapeRule >> char_(U'\x60'))
+
308  | (char_(U'\\') >> & (!lit('`')));
+
309 
+
310  // match zero or more raw string characters enclosed in apostrophes
+
311  m_rawStringRule = lexeme[ lit("\'")
+
312  >> * (m_rawStringEscapeRule[appendEscape(at_c<0>(_val), _1)]
+
313  | m_rawStringCharRule[appendUtf8(at_c<0>(_val), _1)])
+
314  >> lit("\'") ];
+
315 
+
316  // match a single character in the range of 0x07-0x0D or 0x20-0x26 or
+
317  // 0x28-0x5B or 0x5D-0x10FFFF or an escaped apostrophe
+
318  m_rawStringCharRule = (char_(U'\x07', U'\x0D')
+
319  | char_(U'\x20', U'\x26')
+
320  | char_(U'\x28', U'\x5B')
+
321  | char_(U'\x5D', U'\U0010FFFF'));
+
322 
+
323  // match escape sequences
+
324  m_rawStringEscapeRule = char_(U'\\') >>
+
325  (char_(U'\x07', U'\x0D')
+
326  | char_(U'\x20', U'\U0010FFFF'));
+
327 
+
328  // match unquoted or quoted strings
+ +
330 
+
331  // match a single character in the range of 0x41-0x5A or 0x61-0x7A
+
332  // or 0x5F (A-Za-z_) followed by zero or more characters in the range of
+
333  // 0x30-0x39 (0-9) or 0x41-0x5A (A-Z) or 0x5F (_) or 0x61-0x7A (a-z)
+
334  // and append them to the rule's string attribute encoded as UTF-8
+ +
336  = lexeme[ ((char_(U'\x41', U'\x5A')
+
337  | char_(U'\x61', U'\x7A')
+
338  | char_(U'\x5F'))[appendUtf8(_val, _1)]
+
339  >> *(char_(U'\x30', U'\x39')
+
340  | char_(U'\x41', U'\x5A')
+
341  | char_(U'\x5F')
+
342  | char_(U'\x61', U'\x7A'))[appendUtf8(_val, _1)]) ];
+
343 
+
344  // match unescaped or escaped characters enclosed in quotes one or more
+
345  // times and append them to the rule's string attribute encoded as UTF-8
+ +
347  = lexeme[ m_quoteRule
+ +
349  | m_escapedCharRule)[appendUtf8(_val, _1)]
+
350  >> m_quoteRule ];
+
351 
+
352  // match characters in the range of 0x20-0x21 or 0x23-0x5B or
+
353  // 0x5D-0x10FFFF
+
354  m_unescapedCharRule = char_(U'\x20', U'\x21')
+
355  | char_(U'\x23', U'\x5B')
+
356  | char_(U'\x5D', U'\U0010FFFF');
+
357 
+
358  // match quotation mark literal
+
359  m_quoteRule = lit('\"');
+
360 
+
361  // match backslash literal
+
362  m_escapeRule = lit('\\');
+
363 
+
364  // match an escape character followed by quotation mark or backslash or
+
365  // slash or control character or surrogate pair or a single unicode
+
366  // escape
+ +
368  >> (char_(U'\"')
+
369  | char_(U'\\')
+
370  | char_(U'/')
+ + +
373  | m_unicodeCharRule) ];
+
374 
+
375  // match a pair of unicode character escapes separated by an escape
+
376  // symbol if the first character's value is between 0xD800-0xDBFF
+
377  // and convert them into a single codepoint
+ + +
380  [_pass = (_1 >= 0xD800 && _1 <= 0xDBFF),
+
381  _val = encodeSurrogatePair(_1, _2)] ];
+
382 
+
383  // match a unicode character escape and convert it into a
+
384  // single codepoint
+
385  m_unicodeCharRule = lexeme[ lit('u')
+
386  >> int_parser<UnicodeChar, 16, 4, 4>() ];
+
387 
+
388  // convert symbols into control characters
+ +
390  (U"b", U'\x08') // backspace
+
391  (U"f", U'\x0C') // form feed
+
392  (U"n", U'\x0A') // line feed
+
393  (U"r", U'\x0D') // carriage return
+
394  (U"t", U'\x09'); // tab
+
395  }
+
396 
+
397 private:
+
398  qi::rule<Iterator,
+ + +
401  qi::rule<Iterator,
+ +
403  qi::locals<ast::ExpressionNode>,
+
404  Skipper > m_expressionRule;
+
405  qi::rule<Iterator,
+ + +
408  qi::rule<Iterator,
+ + +
411  qi::rule<Iterator,
+ + +
414  qi::rule<Iterator,
+ + +
417  qi::rule<Iterator,
+ + +
420  qi::rule<Iterator,
+ +
422  Skipper> m_arrayItemRule;
+
423  qi::rule<Iterator,
+ + +
426  qi::rule<Iterator,
+ + +
429  qi::rule<Iterator,
+ + +
432  qi::rule<Iterator,
+ + +
435  qi::rule<Iterator,
+ + +
438  qi::rule<Iterator,
+ + +
441  qi::rule<Iterator,
+ + +
444  qi::rule<Iterator,
+ + +
447  qi::rule<Iterator,
+ + +
450  qi::rule<Iterator,
+ + +
453  qi::symbols<UnicodeChar,
+ +
455  qi::rule<Iterator,
+ + +
458  qi::rule<Iterator,
+ + +
461  qi::rule<Iterator,
+ + +
464  qi::rule<Iterator,
+ + +
467  qi::rule<Iterator,
+
468  std::vector<ast::FunctionExpressionNode::ArgumentType>(),
+ +
470  qi::rule<Iterator,
+ + +
473  qi::rule<Iterator,
+ + +
476  qi::rule<Iterator, ast::IdentifierNode(), Skipper> m_identifierRule;
+
477  qi::rule<Iterator, ast::RawStringNode(), Skipper> m_rawStringRule;
+
478  qi::rule<Iterator, ast::LiteralNode(), Skipper> m_literalRule;
+
479  qi::rule<Iterator, ast::CurrentNode()> m_currentNodeRule;
+
480  qi::rule<Iterator, UnicodeChar()> m_literalCharRule;
+
481  qi::rule<Iterator, UnicodeChar()> m_literalEscapeRule;
+
482  qi::rule<Iterator, UnicodeChar()> m_rawStringCharRule;
+
483  qi::rule<Iterator,
+
484  std::pair<UnicodeChar,
+ +
486  qi::rule<Iterator, String()> m_quotedStringRule;
+
487  qi::rule<Iterator, String()> m_unquotedStringRule;
+
488  qi::rule<Iterator, UnicodeChar()> m_unescapedCharRule;
+
489  qi::rule<Iterator, UnicodeChar()> m_escapedCharRule;
+
490  qi::rule<Iterator, UnicodeChar()> m_unicodeCharRule;
+
491  qi::rule<Iterator, UnicodeChar()> m_surrogatePairCharacterRule;
+
492  qi::rule<Iterator> m_quoteRule;
+
493  qi::rule<Iterator> m_escapeRule;
+
494  qi::symbols<UnicodeChar, UnicodeChar> m_controlCharacterSymbols;
+
495  qi::rule<Iterator, Index()> m_indexRule;
+
496 };
+
497 }} // namespace jmespath::parser
+
498 #endif // GRAMMAR_H
+
The NodeInsertCondition class is a functor that will either yield a true or false result based on whe...
Definition: nodeinsertcondition.h:41
+ +
qi::rule< Iterator, ast::IdentifierNode(), Skipper > m_identifierRule
Definition: grammar.h:476
+
The ComparatorExpressionNode class represents a JMESPath comparator expression.
Definition: comparatorexpressionnode.h:39
+ +
The ListWildcardNode class represents a JMESPath list wildcard expression.
Definition: listwildcardnode.h:38
+
qi::rule< Iterator, ast::ExpressionNode(), Skipper > m_topLevelExpressionRule
Definition: grammar.h:400
+
qi::rule< Iterator, UnicodeChar()> m_escapedCharRule
Definition: grammar.h:489
+
qi::rule< Iterator, ast::ParenExpressionNode(), Skipper > m_parenExpressionRule
Definition: grammar.h:463
+
qi::rule< Iterator, ast::PipeExpressionNode(ast::ExpressionNode &), Skipper > m_pipeExpressionRule
Definition: grammar.h:449
+
qi::rule< Iterator, ast::CurrentNode()> m_currentNodeRule
Definition: grammar.h:479
+
qi::rule< Iterator, ast::SliceExpressionNode(), Skipper > m_sliceExpressionRule
Definition: grammar.h:431
+
qi::rule< Iterator, ast::FilterExpressionNode(), Skipper > m_filterExpressionRule
Definition: grammar.h:428
+
The HashWildcardNode class represents a JMESPath hash wildcard expression.
Definition: hashwildcardnode.h:38
+
The BracketSpecifierNode class represents a JMESPath bracket specifier.
Definition: bracketspecifiernode.h:44
+
qi::rule< Iterator, ast::ArrayItemNode(), Skipper > m_arrayItemRule
Definition: grammar.h:422
+
qi::rule< Iterator, ast::ComparatorExpressionNode(ast::ExpressionNode &), Skipper > m_comparatorExpressionRule
Definition: grammar.h:452
+
qi::rule< Iterator, UnicodeChar()> m_unicodeCharRule
Definition: grammar.h:490
+
qi::rule< Iterator, ast::ListWildcardNode(), Skipper > m_listWildcardRule
Definition: grammar.h:434
+
qi::rule< Iterator, ast::OrExpressionNode(ast::ExpressionNode &), Skipper > m_orExpressionRule
Definition: grammar.h:457
+
The AndExpressionNode class represents a JMESPath and expression.
Definition: andexpressionnode.h:38
+
boost::variant< boost::blank, boost::recursive_wrapper< ExpressionNode >, boost::recursive_wrapper< ExpressionArgumentNode > > ArgumentType
Definition: functionexpressionnode.h:50
+ +
qi::rule< Iterator, ast::ExpressionArgumentNode(), Skipper > m_expressionArgumentRule
Definition: grammar.h:475
+
qi::rule< Iterator, String()> m_quotedStringRule
Definition: grammar.h:486
+
qi::rule< Iterator, UnicodeChar()> m_literalCharRule
Definition: grammar.h:480
+
The SliceExpressionNode class represents a JMESPath slice expression.
Definition: sliceexpressionnode.h:41
+
The NodeInsertPolicy class is a functor for inserting a given node into the AST.
Definition: nodeinsertpolicy.h:38
+ +
qi::rule< Iterator, ast::FunctionExpressionNode::ArgumentType(), Skipper > m_functionArgumentRule
Definition: grammar.h:472
+ +
The MultiselectHashNode class represents a JMESPath multiselect hash expression.
Definition: multiselecthashnode.h:45
+
The PipeExpressionNode class represents a JMESPath pipe expression.
Definition: pipeexpressionnode.h:38
+
qi::rule< Iterator, ast::AndExpressionNode(ast::ExpressionNode &), Skipper > m_andExpressionRule
Definition: grammar.h:460
+
qi::rule< Iterator, ast::HashWildcardNode(ast::ExpressionNode &), Skipper > m_hashWildcardSubexpressionRule
Definition: grammar.h:416
+
The Grammar class contains the PEG rule definition based on the EBNF specifications of JMESPath...
Definition: grammar.h:63
+
qi::rule< Iterator, ast::LiteralNode(), Skipper > m_literalRule
Definition: grammar.h:478
+
qi::rule< Iterator, ast::IndexExpressionNode(ast::ExpressionNode &), Skipper > m_indexExpressionRule
Definition: grammar.h:410
+
The SubexpressionNode class represents a JMESPath subexpression.
Definition: subexpressionnode.h:37
+
The ExpressionArgumentNode class represents a JMESPath expression argument.
Definition: expressionargumentnode.h:40
+
The InsertNodeAction class is a functor for inserting the given node into the AST whose root node is ...
Definition: insertnodeaction.h:59
+
qi::rule< Iterator, ast::FlattenOperatorNode(), Skipper > m_flattenOperatorRule
Definition: grammar.h:425
+
qi::rule< Iterator > m_escapeRule
Definition: grammar.h:493
+ +
qi::rule< Iterator, ast::NotExpressionNode(ast::ExpressionNode &), Skipper > m_notExpressionRule
Definition: grammar.h:446
+
qi::rule< Iterator, ast::MultiselectHashNode::KeyValuePairType(), Skipper > m_keyValuePairRule
Definition: grammar.h:443
+
qi::rule< Iterator, ast::ExpressionNode(), qi::locals< ast::ExpressionNode >, Skipper > m_expressionRule
Definition: grammar.h:404
+
qi::rule< Iterator, ast::MultiselectHashNode(), Skipper > m_multiselectHashRule
Definition: grammar.h:440
+
qi::rule< Iterator, String()> m_unquotedStringRule
Definition: grammar.h:487
+
qi::rule< Iterator, UnicodeChar()> m_unescapedCharRule
Definition: grammar.h:488
+ +
The FilterExpressionNode class represents a JMESPath filter expression.
Definition: filterexpressionnode.h:39
+
qi::rule< Iterator, ast::HashWildcardNode(ast::ExpressionNode &), Skipper > m_hashWildcardRule
Definition: grammar.h:413
+
qi::rule< Iterator, ast::RawStringNode(), Skipper > m_rawStringRule
Definition: grammar.h:477
+
qi::rule< Iterator, std::pair< UnicodeChar, UnicodeChar >)> m_rawStringEscapeRule
Definition: grammar.h:485
+
Comparator
The Comparator enum defines the available comparison operators.
Definition: comparatorexpressionnode.h:45
+
The OrExpressionNode class represents a JMESPath or expression.
Definition: orexpressionnode.h:38
+
qi::rule< Iterator, Index()> m_indexRule
Definition: grammar.h:495
+
qi::rule< Iterator, ast::BracketSpecifierNode(), Skipper > m_bracketSpecifierRule
Definition: grammar.h:419
+ +
Grammar()
Constructs a Grammar object.
Definition: grammar.h:71
+
The IndexExpressionNode class represents a JMESPath index expression.
Definition: indexexpressionnode.h:39
+ +
qi::symbols< UnicodeChar, UnicodeChar > m_controlCharacterSymbols
Definition: grammar.h:494
+
The NotExpressionNode class represents a JMESPath not expression.
Definition: notexpressionnode.h:39
+ +
qi::rule< Iterator, ast::FunctionExpressionNode(), Skipper > m_functionExpressionRule
Definition: grammar.h:466
+ +
qi::rule< Iterator, UnicodeChar()> m_rawStringCharRule
Definition: grammar.h:482
+
The ArrayItemNode class represents a JMESPath array index expression.
Definition: arrayitemnode.h:40
+
The FlattenOperatorNode class represents a JMESPath flatten operator.
Definition: flattenoperatornode.h:39
+
The MultiselectListNode class represents a JMESPath list wildcard expression.
Definition: multiselectlistnode.h:42
+
The ExpressionNode class represents a JMESPath expression.
Definition: expressionnode.h:56
+
std::pair< IdentifierNode, ExpressionNode > KeyValuePairType
Definition: multiselecthashnode.h:48
+
qi::symbols< UnicodeChar, ast::ComparatorExpressionNode::Comparator > m_comparatorSymbols
Definition: grammar.h:454
+
qi::rule< Iterator, UnicodeChar()> m_literalEscapeRule
Definition: grammar.h:481
+ +
qi::rule< Iterator, UnicodeChar()> m_surrogatePairCharacterRule
Definition: grammar.h:491
+
qi::rule< Iterator, std::vector< ast::FunctionExpressionNode::ArgumentType >), Skipper > m_functionArgumentListRule
Definition: grammar.h:469
+
qi::rule< Iterator > m_quoteRule
Definition: grammar.h:492
+
qi::rule< Iterator, ast::MultiselectListNode(), Skipper > m_multiselectListRule
Definition: grammar.h:437
+
The ParenExpressionNode class represents a JMESPath paren expression.
Definition: parenexpressionnode.h:38
+
char32_t UnicodeChar
32 bit character type
Definition: types.h:48
+
qi::rule< Iterator, ast::SubexpressionNode(ast::ExpressionNode &), Skipper > m_subexpressionRule
Definition: grammar.h:407
+ + +
The FunctionExpressionNode class represents a JMESPath function expression.
Definition: functionexpressionnode.h:45
+ +
+ + + + diff --git a/group__error__info.html b/group__error__info.html new file mode 100644 index 0000000..593eb0f --- /dev/null +++ b/group__error__info.html @@ -0,0 +1,152 @@ + + + + + + +jmespath.cpp: Error info types + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + +
+ + + + +
+ +
+ +
+ +
+
Error info types
+
+
+ + + + + + + + + + + +

+Typedefs

using jmespath::InfoSearchExpression = boost::error_info< struct tag_search_expression, std::string >
 InfoSearchExpression contains the JMESPath expression being evaluated. More...
 
using jmespath::InfoSyntaxErrorLocation = boost::error_info< struct tag_syntax_error_location, long >
 InfoSyntaxErrorLocation contains the location of the syntax error in the JMESPath expression. More...
 
using jmespath::InfoFunctionName = boost::error_info< struct tag_function_name, std::string >
 InfoFunctionName contains the name of the built in JMESpath function. More...
 
+

Detailed Description

+

Additional information about the error that might be attached to exceptions.

+

Typedef Documentation

+ +
+
+ + + + +
using jmespath::InfoFunctionName = typedef boost::error_info<struct tag_function_name, std::string>
+
+ +

InfoFunctionName contains the name of the built in JMESpath function.

+ +
+
+ +
+
+ + + + +
using jmespath::InfoSearchExpression = typedef boost::error_info<struct tag_search_expression, std::string>
+
+ +

InfoSearchExpression contains the JMESPath expression being evaluated.

+ +
+
+ +
+
+ + + + +
using jmespath::InfoSyntaxErrorLocation = typedef boost::error_info<struct tag_syntax_error_location, long>
+
+ +

InfoSyntaxErrorLocation contains the location of the syntax error in the JMESPath expression.

+ +
+
+
+ + + + diff --git a/group__exceptions.html b/group__exceptions.html new file mode 100644 index 0000000..706bca7 --- /dev/null +++ b/group__exceptions.html @@ -0,0 +1,519 @@ + + + + + + +jmespath.cpp: Exception classes + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + +
+ + + + +
+ +
+ +
+ +
+
Exception classes
+
+
+ + + + + + + + + + + + + + + + + + + + + + + +

+Classes

struct  jmespath::Exception
 The Exception struct is the common base class for for all the exceptions thrown by the library. More...
 
struct  jmespath::SyntaxError
 The SyntaxError struct represents a syntax error in the evaluated expression. More...
 
struct  jmespath::InvalidAgrument
 The InvalidAgrument struct signals a function call with illegal arguments. More...
 
struct  jmespath::InvalidValue
 The InvalidValue struct represents an invalid value in the JMESPath expression. More...
 
struct  jmespath::UnknownFunction
 The UnknownFunction struct represents a call to a JMESPath built in function which doesn't exists. More...
 
struct  jmespath::InvalidFunctionArgumentArity
 The InvalidFunctionArgumentArity struct signals the a JMESPath built in function was called with an unexpected number of arguments. More...
 
struct  jmespath::InvalidFunctionArgumentType
 The InvalidFunctionArgumentType struct represents a call to a JMESPath built in function with an unexpected type of argument. More...
 
+

Detailed Description

+

Exception types that the public interface of the library might throw.

+

Class Documentation

+ +
+
+ + + + +
struct jmespath::Exception
+
+

The Exception struct is the common base class for for all the exceptions thrown by the library.

+
+Inheritance diagram for jmespath::Exception:
+
+
+ + +jmespath::InvalidAgrument +jmespath::InvalidFunctionArgumentArity +jmespath::InvalidFunctionArgumentType +jmespath::InvalidValue +jmespath::SyntaxError +jmespath::UnknownFunction + +
+ + + + + +

Private Member Functions

virtual void anchor ()
 A virtual function used to pin vtable to a transaltion unit. More...
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
void jmespath::Exception::anchor ()
+
+privatevirtual
+
+
+ +
+
+ +
+
+ + + + +
struct jmespath::SyntaxError
+
+

The SyntaxError struct represents a syntax error in the evaluated expression.

+
+Inheritance diagram for jmespath::SyntaxError:
+
+
+ + +jmespath::Exception + +
+ + + + + +

Private Member Functions

virtual void anchor ()
 A virtual function used to pin vtable to a transaltion unit. More...
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
void jmespath::SyntaxError::anchor ()
+
+privatevirtual
+
+ +

A virtual function used to pin vtable to a transaltion unit.

+ +

Reimplemented from jmespath::Exception.

+ +
+
+ +
+
+ +
+
+ + + + +
struct jmespath::InvalidAgrument
+
+

The InvalidAgrument struct signals a function call with illegal arguments.

+
+Inheritance diagram for jmespath::InvalidAgrument:
+
+
+ + +jmespath::Exception + +
+ + + + + +

Private Member Functions

virtual void anchor ()
 A virtual function used to pin vtable to a transaltion unit. More...
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
void jmespath::InvalidAgrument::anchor ()
+
+privatevirtual
+
+ +

A virtual function used to pin vtable to a transaltion unit.

+ +

Reimplemented from jmespath::Exception.

+ +
+
+ +
+
+ +
+
+ + + + +
struct jmespath::InvalidValue
+
+

The InvalidValue struct represents an invalid value in the JMESPath expression.

+
+Inheritance diagram for jmespath::InvalidValue:
+
+
+ + +jmespath::Exception + +
+ + + + + +

Private Member Functions

virtual void anchor ()
 A virtual function used to pin vtable to a transaltion unit. More...
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
void jmespath::InvalidValue::anchor ()
+
+privatevirtual
+
+ +

A virtual function used to pin vtable to a transaltion unit.

+ +

Reimplemented from jmespath::Exception.

+ +
+
+ +
+
+ +
+
+ + + + +
struct jmespath::UnknownFunction
+
+

The UnknownFunction struct represents a call to a JMESPath built in function which doesn't exists.

+
+Inheritance diagram for jmespath::UnknownFunction:
+
+
+ + +jmespath::Exception + +
+ + + + + +

Private Member Functions

virtual void anchor ()
 A virtual function used to pin vtable to a transaltion unit. More...
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
void jmespath::UnknownFunction::anchor ()
+
+privatevirtual
+
+ +

A virtual function used to pin vtable to a transaltion unit.

+ +

Reimplemented from jmespath::Exception.

+ +
+
+ +
+
+ +
+
+ + + + +
struct jmespath::InvalidFunctionArgumentArity
+
+

The InvalidFunctionArgumentArity struct signals the a JMESPath built in function was called with an unexpected number of arguments.

+
+Inheritance diagram for jmespath::InvalidFunctionArgumentArity:
+
+
+ + +jmespath::Exception + +
+ + + + + +

Private Member Functions

virtual void anchor ()
 A virtual function used to pin vtable to a transaltion unit. More...
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
void jmespath::InvalidFunctionArgumentArity::anchor ()
+
+privatevirtual
+
+ +

A virtual function used to pin vtable to a transaltion unit.

+ +

Reimplemented from jmespath::Exception.

+ +
+
+ +
+
+ +
+
+ + + + +
struct jmespath::InvalidFunctionArgumentType
+
+

The InvalidFunctionArgumentType struct represents a call to a JMESPath built in function with an unexpected type of argument.

+
+Inheritance diagram for jmespath::InvalidFunctionArgumentType:
+
+
+ + +jmespath::Exception + +
+ + + + + +

Private Member Functions

virtual void anchor ()
 A virtual function used to pin vtable to a transaltion unit. More...
 
+

Member Function Documentation

+ +
+
+ + + + + +
+ + + + + + + +
void jmespath::InvalidFunctionArgumentType::anchor ()
+
+privatevirtual
+
+ +

A virtual function used to pin vtable to a transaltion unit.

+ +

Reimplemented from jmespath::Exception.

+ +
+
+ +
+
+
+ + + + diff --git a/group__exceptions.png b/group__exceptions.png new file mode 100644 index 0000000000000000000000000000000000000000..ee1300ca605845870eba4455ef7c8b107bf364e0 GIT binary patch literal 1573 zcma)+c~BB~6vx41HPN)(T`gA~D{|aSO(RoNw(wZ zr@V4iaMO)c1hRuP6|t07Q1A#z160%m6BgUQwwZ1AH}m_w&&>C|Ki>Pk`CUKe>!G8y zT?+sJ=y?9@>JI<_c}l*fsj7T6M_=wz2E$|C2sed7p+v!lMs3uG@86MpEb8WIi7; zUAw}ZA!aIoN!IQ-v8;XP$`GPmgM(v6m)qu7R(uK`y+>|3aEiMBowTKIPp)w3O*^V< zTlTo0u}_0VLvWyvkr&K~(zj=dIKjp<&ErGiF%FHAs#@wDRDAPPYmdU78-8XfCV}?XoLhG%nODOt7a-sg zgT8+JkR7rHlCqa@kiM+LE6lHSc~`R&QGDEasP?Wc(lc^c{nnXQ-CpwZX$gv|!O3Hy zk2;9IvuEqW1PPrRoj@aJ8_bp-gc8Q{F;b@Nj@}V;+AmAGHHDj{sozq2K3;X#9lPxq zmz-(afsk8yud`J|F9j!KO)cgCj}5A$TXUtsp?WRcI>F`wEb_fpSA%)AzRk1Y^a3{-s_X&6BES)vO-eDP zD~!0l$v^4-(5o+{uh#t|k`ZOn8=PF<JW$vHCDxR zCqAX~b>#VWczLoj%6`CFpMpbEbHeqYS4Yel&lBWnZFf~xD!6qALnhJMy|ymc(-Q$Z zlHJ6Hrg=rOY%3kzy7^z z!}dJgV5l#mfrv=}=(V7HzRWKgU!xD?0b4K^E%u5;X`k@ilDH6rK0Th;OSiX4s6Oc1#%cg3pn@XBLW@MZQ}#}R=& z{)eXvd}c-`+vSq}d?*c61e?v)Oz-(!NOtaJ04k|GGv2aKB7oFbdUtEflTTz^ zc;0^a8=&cmpnba)y(j=M$s$rrA4shD6R1+aOTOruIf)N#Dh Sc1roD13cY)T?t1bF8vKmwh86{ literal 0 HcmV?d00001 diff --git a/group__public.html b/group__public.html new file mode 100644 index 0000000..3be5714 --- /dev/null +++ b/group__public.html @@ -0,0 +1,552 @@ + + + + + + +jmespath.cpp: The public API of the library + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + +
+ + + + +
+ +
+ +
+ +
+
The public API of the library
+
+
+ + + + + +

+Classes

class  jmespath::Expression
 The Expression class represents a JMESPath expression. More...
 
+ + + + + +

+Functions

template<typename JsonT >
std::enable_if_t< std::is_same
+< std::decay_t< JsonT >, Json >
+::value, Json > 
jmespath::search (const Expression &expression, JsonT &&document)
 Finds or creates the results for the expression evaluated on the given document. More...
 
+

Detailed Description

+

Class Documentation

+ +
+
+ + + + +
class jmespath::Expression
+
+

The Expression class represents a JMESPath expression.

+

The Expression class can be used to store a parsed JMESPath expression and reuse it for multiple searches.

+
Note
This class is reentrant.
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

Public Member Functions

 Expression ()
 Constructs an empty Expression object. More...
 
 Expression (const Expression &other)
 Constructs a copy of other. More...
 
 Expression (Expression &&other)
 Move-constructs an Expression by moving the value of other to this object. More...
 
template<typename U , typename std::enable_if< std::is_convertible< U, String >::value >::type * = nullptr>
 Expression (U &&expression)
 Constructs an Expression object by forwarding argument. More...
 
Expressionoperator= (const Expression &other)
 Assigns other to this expression and returns a reference to this expression. More...
 
Expressionoperator= (Expression &&other)
 Move-assigns other to this expression and returns a reference to this expression. More...
 
bool operator== (const Expression &other) const
 Equality compares this expression to the other. More...
 
String toString () const
 Converts the expression to the string representation of the JMESPath expression. More...
 
bool isEmpty () const
 Checks whether this object has been initialized. expression. More...
 
const ast::ExpressionNodeastRoot () const
 Returns a pointer to the root expression in the abstract syntax tree. More...
 

Private Member Functions

void parseExpression (const String &expressionString)
 Parses the expressionString and updates the AST. More...
 

Private Attributes

String m_expressionString
 The string representation of the JMESPath expression. More...
 
std::unique_ptr
+< ast::ExpressionNode,
+ExpressionDeleter
m_astRoot
 The root node of the ast. More...
 
+

Constructor & Destructor Documentation

+ +
+
+ + + + + + + +
jmespath::Expression::Expression ()
+
+ +

Constructs an empty Expression object.

+ +
+
+ +
+
+ + + + + + + + +
jmespath::Expression::Expression (const Expressionother)
+
+ +

Constructs a copy of other.

+
Parameters
+ + +
[in]otherThe object that should be copied.
+
+
+ +
+
+ +
+
+ + + + + + + + +
jmespath::Expression::Expression (Expression && other)
+
+ +

Move-constructs an Expression by moving the value of other to this object.

+
Parameters
+ + +
[in]otherThe object whose value should be mvoed.
+
+
+ +
+
+ +
+
+
+template<typename U , typename std::enable_if< std::is_convertible< U, String >::value >::type * = nullptr>
+ + + + + +
+ + + + + + + + +
jmespath::Expression::Expression (U && expression)
+
+inline
+
+ +

Constructs an Expression object by forwarding argument.

+

This constructor participates in overload resolution only if U is implicitly convertible to String. Argument should describe a valid JMESPath expression.

+
Parameters
+ + +
[in]argumentThe value that should be forwarded.
+
+
+
Template Parameters
+ + +
UThe type of argument.
+
+
+
Exceptions
+ + +
SyntaxErrorWhen the syntax of the specified expression is invalid.
+
+
+ +
+
+

Member Function Documentation

+ +
+
+ + + + + + + +
const ast::ExpressionNode * jmespath::Expression::astRoot () const
+
+ +

Returns a pointer to the root expression in the abstract syntax tree.

+
Returns
A pointer to the root expression or nullptr if the object is empty.
+ +
+
+ +
+
+ + + + + + + +
bool jmespath::Expression::isEmpty () const
+
+ +

Checks whether this object has been initialized. expression.

+
Returns
Returns true the expression has not been initialized yet, otherwise returns false.
+ +
+
+ +
+
+ + + + + + + + +
Expression & jmespath::Expression::operator= (const Expressionother)
+
+ +

Assigns other to this expression and returns a reference to this expression.

+
Parameters
+ + +
[in]otherThe expression that should be assigned.
+
+
+
Returns
Reference to this expression.
+ +
+
+ +
+
+ + + + + + + + +
Expression & jmespath::Expression::operator= (Expression && other)
+
+ +

Move-assigns other to this expression and returns a reference to this expression.

+
Parameters
+ + +
[in]otherThe expression that should be moved.
+
+
+
Returns
Reference to this expression.
+ +
+
+ +
+
+ + + + + + + + +
bool jmespath::Expression::operator== (const Expressionother) const
+
+ +

Equality compares this expression to the other.

+
Parameters
+ + +
[in]otherThe expression that should be compared.
+
+
+
Returns
Returns true if this object is equal to the other, otherwise false
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
void jmespath::Expression::parseExpression (const StringexpressionString)
+
+private
+
+ +

Parses the expressionString and updates the AST.

+
Parameters
+ + +
[in]expressionStringThe string representation of the JMESPath expression.
+
+
+
Exceptions
+ + +
SyntaxErrorWhen the syntax of the specified expressionString is invalid.
+
+
+ +
+
+ +
+
+ + + + + + + +
String jmespath::Expression::toString () const
+
+ +

Converts the expression to the string representation of the JMESPath expression.

+
Returns
[in] String representation of the JMESPath expression.
+ +
+
+

Member Data Documentation

+ +
+
+ + + + + +
+ + + + +
std::unique_ptr<ast::ExpressionNode, ExpressionDeleter> jmespath::Expression::m_astRoot
+
+private
+
+ +

The root node of the ast.

+ +
+
+ +
+
+ + + + + +
+ + + + +
String jmespath::Expression::m_expressionString
+
+private
+
+ +

The string representation of the JMESPath expression.

+ +
+
+ +
+
+

Function Documentation

+ +
+
+
+template<typename JsonT >
+ + + + + + + + + + + + + + + + + + +
std::enable_if_t< std::is_same< std::decay_t< JsonT >, Json >::value, Json > jmespath::search (const Expression & expression,
JsonT && document 
)
+
+ +

Finds or creates the results for the expression evaluated on the given document.

+

The expression string should be encoded in UTF-8.

+
Parameters
+ + + +
expressionJMESPath expression.
documentInput JSON document
+
+
+
Returns
Result of the evaluation of the expression in Json format
+
Note
This function is reentrant. Since it takes the expression by reference the value of the expression should be protected from changes until the function returns.
+
Exceptions
+ + + + + + +
InvalidAgrumentIf a precondition fails. Usually signals an internal error.
InvalidValueWhen an invalid value is specified for an expression. For example a 0 step value for a slice expression.
UnknownFunctionWhen an unknown JMESPath function is called in the expression.
InvalidFunctionArgumentArityWhen a JMESPath function is called with an unexpected number of arguments in the expression.
InvalidFunctionArgumentTypeWhen an invalid type of argument was specified for a JMESPath function call in the expression.
+
+
+ +
+
+
+ + + + diff --git a/hashwildcardnode_8cpp.html b/hashwildcardnode_8cpp.html new file mode 100644 index 0000000..28a82ea --- /dev/null +++ b/hashwildcardnode_8cpp.html @@ -0,0 +1,115 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/hashwildcardnode.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
hashwildcardnode.cpp File Reference
+
+
+ + + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/hashwildcardnode_8h.html b/hashwildcardnode_8h.html new file mode 100644 index 0000000..770d350 --- /dev/null +++ b/hashwildcardnode_8h.html @@ -0,0 +1,123 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/hashwildcardnode.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
hashwildcardnode.h File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::ast::HashWildcardNode
 The HashWildcardNode class represents a JMESPath hash wildcard expression. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/hashwildcardnode_8h_source.html b/hashwildcardnode_8h_source.html new file mode 100644 index 0000000..0d9d5d4 --- /dev/null +++ b/hashwildcardnode_8h_source.html @@ -0,0 +1,163 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/hashwildcardnode.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
hashwildcardnode.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef HASHWILDCARDNODE_H
+
29 #define HASHWILDCARDNODE_H
+ +
31 
+
32 namespace jmespath { namespace ast {
+
33 
+ +
39 {
+
40 public:
+ + + +
58  bool isProjection() const override;
+
65  bool stopsProjection() const override;
+
71  void accept(interpreter::AbstractVisitor* visitor) const override;
+
72 };
+
73 }} // namespace jmespath::ast
+
74 
+
75 BOOST_FUSION_ADAPT_STRUCT(
+ +
77  (jmespath::ast::ExpressionNode, leftExpression)
+
78  (jmespath::ast::ExpressionNode, rightExpression)
+
79 )
+
80 #endif // HASHWILDCARDNODE_H
+ +
The HashWildcardNode class represents a JMESPath hash wildcard expression.
Definition: hashwildcardnode.h:38
+
bool isProjection() const override
Returns whather this expression requires the projection of subsequent expressions.
Definition: hashwildcardnode.cpp:44
+
The BinaryExpressionNode class is the base class for all node types which consist of a left and a rig...
Definition: binaryexpressionnode.h:39
+
void accept(interpreter::AbstractVisitor *visitor) const override
Calls the visit method of the given visitor with the dynamic type of the node.
Definition: hashwildcardnode.cpp:54
+
ExpressionNode rightExpression
The right hand expression of the node.
Definition: binaryexpressionnode.h:88
+
The AbstractVisitor class is an interface which defines the member functions required to visit every ...
Definition: abstractvisitor.h:71
+
ExpressionNode leftExpression
The left hand expression of the node.
Definition: binaryexpressionnode.h:84
+
The ExpressionNode class represents a JMESPath expression.
Definition: expressionnode.h:56
+
HashWildcardNode()
Constructs an empty HashWildcardNode object.
Definition: hashwildcardnode.cpp:33
+
bool stopsProjection() const override
Reports whether the node should stop an ongoing projection or not.
Definition: hashwildcardnode.cpp:49
+
+ + + + diff --git a/hierarchy.html b/hierarchy.html new file mode 100644 index 0000000..0aa74cc --- /dev/null +++ b/hierarchy.html @@ -0,0 +1,162 @@ + + + + + + +jmespath.cpp: Class Hierarchy + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + +
+ + + + +
+ +
+ +
+
+
Class Hierarchy
+
+
+
This inheritance list is sorted roughly, but not completely, alphabetically:
+
[detail level 123]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
oCjmespath::ast::AbstractNodeCommon interface class for all AST node types
|oCjmespath::ast::ArrayItemNodeJMESPath array index expression
|oCjmespath::ast::BinaryExpressionNodeBase class for all node types which consist of a left and a right hand side expression
||oCjmespath::ast::AndExpressionNodeJMESPath and expression
||oCjmespath::ast::ComparatorExpressionNodeJMESPath comparator expression
||oCjmespath::ast::HashWildcardNodeJMESPath hash wildcard expression
||oCjmespath::ast::IndexExpressionNodeJMESPath index expression
||oCjmespath::ast::OrExpressionNodeJMESPath or expression
||oCjmespath::ast::PipeExpressionNodeJMESPath pipe expression
||\Cjmespath::ast::SubexpressionNodeJMESPath subexpression
|oCjmespath::ast::CurrentNodeJMESPath current node expression
|oCjmespath::ast::ExpressionArgumentNodeJMESPath expression argument
|oCjmespath::ast::FilterExpressionNodeJMESPath filter expression
|oCjmespath::ast::FlattenOperatorNodeJMESPath flatten operator
|oCjmespath::ast::FunctionExpressionNodeJMESPath function expression
|oCjmespath::ast::IdentifierNodeJMESPath identifier
|oCjmespath::ast::ListWildcardNodeJMESPath list wildcard expression
|oCjmespath::ast::LiteralNodeJMESPath literal string
|oCjmespath::ast::MultiselectHashNodeJMESPath multiselect hash expression
|oCjmespath::ast::MultiselectListNodeJMESPath list wildcard expression
|oCjmespath::ast::NotExpressionNodeJMESPath not expression
|oCjmespath::ast::ParenExpressionNodeJMESPath paren expression
|oCjmespath::ast::RawStringNodeJMESPath raw string literal
|oCjmespath::ast::SliceExpressionNodeJMESPath slice expression
|oCjmespath::ast::VariantNode< VariantT >The VariantNode class serves as a container node which can represent either one of the node types specified in the classes template argument list
|oCjmespath::ast::VariantNode< boost::recursive_wrapper< ArrayItemNode >, boost::recursive_wrapper< FlattenOperatorNode >, boost::recursive_wrapper< SliceExpressionNode >, boost::recursive_wrapper< ListWildcardNode >, boost::recursive_wrapper< FilterExpressionNode > >
||\Cjmespath::ast::BracketSpecifierNodeJMESPath bracket specifier
|\Cjmespath::ast::VariantNode< boost::recursive_wrapper< IdentifierNode >, boost::recursive_wrapper< RawStringNode >, boost::recursive_wrapper< LiteralNode >, boost::recursive_wrapper< SubexpressionNode >, boost::recursive_wrapper< IndexExpressionNode >, boost::recursive_wrapper< HashWildcardNode >, boost::recursive_wrapper< MultiselectListNode >, boost::recursive_wrapper< MultiselectHashNode >, boost::recursive_wrapper< NotExpressionNode >, boost::recursive_wrapper< ComparatorExpressionNode >, boost::recursive_wrapper< OrExpressionNode >, boost::recursive_wrapper< AndExpressionNode >, boost::recursive_wrapper< ParenExpressionNode >, boost::recursive_wrapper< PipeExpressionNode >, boost::recursive_wrapper< CurrentNode >, boost::recursive_wrapper< FunctionExpressionNode > >
| \Cjmespath::ast::ExpressionNodeJMESPath expression
oCjmespath::interpreter::AbstractVisitorInterface which defines the member functions required to visit every type of AST node
|\Cjmespath::interpreter::InterpreterEvaluates the AST structure on a Json context
oCjmespath::parser::AppendEscapeSequenceActionFunctor for appending UTF-32 an escape sequence, consisting from a pair of UTF-32 characters, to a UTF-8 encoded strings
oCjmespath::parser::AppendUtf8ActionFunctor for appending UTF-32 characters to UTF-8 encoded strings
oCjmespath::parser::EncodeSurrogatePairActionFunctor for encoding surrogate pair characters in UTF-32
oCexception
|\Cjmespath::ExceptionThe Exception struct is the common base class for for all the exceptions thrown by the library
| oCjmespath::InvalidAgrumentThe InvalidAgrument struct signals a function call with illegal arguments
| oCjmespath::InvalidFunctionArgumentArityThe InvalidFunctionArgumentArity struct signals the a JMESPath built in function was called with an unexpected number of arguments
| oCjmespath::InvalidFunctionArgumentTypeThe InvalidFunctionArgumentType struct represents a call to a JMESPath built in function with an unexpected type of argument
| oCjmespath::InvalidValueThe InvalidValue struct represents an invalid value in the JMESPath expression
| oCjmespath::SyntaxErrorThe SyntaxError struct represents a syntax error in the evaluated expression
| \Cjmespath::UnknownFunctionThe UnknownFunction struct represents a call to a JMESPath built in function which doesn't exists
oCexception
|\Cjmespath::ExceptionThe Exception struct is the common base class for for all the exceptions thrown by the library
oCjmespath::ExpressionJMESPath expression
oCjmespath::Expression::ExpressionDeleterThe ExpressionDeleter struct is a custom destruction policy for deleting ast::ExpressionNode objects
oCgrammar
|\Cjmespath::parser::Grammar< Iterator, Skipper >The Grammar class contains the PEG rule definition based on the EBNF specifications of JMESPath
oCjmespath::parser::InsertNodeAction< NodeInserterT, NodeInsertConditionT >The InsertNodeAction class is a functor for inserting the given node into the AST whose root node is specified with targetNode
oCiterator
|\Cjmespath::parser::LeftEdgeIteratorForward iterator which can be used to iterate over the ExpressionNode objects along the left edge of the AST
oCjmespath::parser::NodeInsertConditionFunctor that will either yield a true or false result based on whether the given node should be inserted at the location of the targetNode
oCjmespath::parser::NodeInsertPolicyFunctor for inserting a given node into the AST
oCjmespath::parser::Parser< T >The Parser class parses expressions with the specified grammar
\Cstatic_visitor
 oCjmespath::ast::VariantVisitorAdaptorAdapts an AbstractVisitor implementation to the boost::static_visitor interface, so it can be used to visit boost::variant objects
 oCjmespath::interpreter::ContextValueVisitorAdaptor< VisitorT, ForceMove >The ContextValueVisitorAdaptor class adapts a visitor object, which is callable with const lvalue reference of Json and with rvalue reference of Json objects, to ContextValue objects
 \Cjmespath::parser::LeftChildExtractorFunctor that extracts the child expression node from the given node which should be evaluated before the given node itself
+
+
+ + + + diff --git a/identifiernode_8cpp.html b/identifiernode_8cpp.html new file mode 100644 index 0000000..fb2256b --- /dev/null +++ b/identifiernode_8cpp.html @@ -0,0 +1,115 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/identifiernode.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
identifiernode.cpp File Reference
+
+
+ + + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/identifiernode_8h.html b/identifiernode_8h.html new file mode 100644 index 0000000..578d25b --- /dev/null +++ b/identifiernode_8h.html @@ -0,0 +1,125 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/identifiernode.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
identifiernode.h File Reference
+
+
+
#include "src/ast/abstractnode.h"
+#include "jmespath/types.h"
+#include <boost/fusion/include/adapt_struct.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::ast::IdentifierNode
 The IdentifierNode class represents a JMESPath identifier. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/identifiernode_8h_source.html b/identifiernode_8h_source.html new file mode 100644 index 0000000..6f73f03 --- /dev/null +++ b/identifiernode_8h_source.html @@ -0,0 +1,162 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/identifiernode.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
identifiernode.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef IDENTIFIERNODE_H
+
29 #define IDENTIFIERNODE_H
+
30 #include "src/ast/abstractnode.h"
+
31 #include "jmespath/types.h"
+
32 #include <boost/fusion/include/adapt_struct.hpp>
+
33 
+
34 namespace jmespath { namespace ast {
+
35 
+ +
40 {
+
41 public:
+ +
51  IdentifierNode(const String& name);
+
57  void accept(interpreter::AbstractVisitor* visitor) const override;
+
64  bool operator==(const IdentifierNode& other) const;
+ +
69 };
+
70 }} // namespace jmespath::ast
+
71 
+
72 BOOST_FUSION_ADAPT_STRUCT(
+ +
74  (jmespath::String, identifier)
+
75 )
+
76 #endif // IDENTIFIERNODE_H
+ +
IdentifierNode()
Constructs an IdentifierNode object with an empty name.
Definition: identifiernode.cpp:33
+
The IdentifierNode class represents a JMESPath identifier.
Definition: identifiernode.h:39
+ +
std::basic_string< Char > String
UTF-8 encoded string type.
Definition: types.h:44
+
bool operator==(const IdentifierNode &other) const
Equality compares this node to the other.
Definition: identifiernode.cpp:49
+
String identifier
Name of the identifier.
Definition: identifiernode.h:68
+
The AbstractVisitor class is an interface which defines the member functions required to visit every ...
Definition: abstractvisitor.h:71
+
void accept(interpreter::AbstractVisitor *visitor) const override
Calls the visit method of the given visitor with the dynamic type of the node.
Definition: identifiernode.cpp:44
+
The AbstractNode class is the common interface class for all AST node types.
Definition: abstractnode.h:45
+
+ + + + diff --git a/index.html b/index.html new file mode 100644 index 0000000..8dab1cd --- /dev/null +++ b/index.html @@ -0,0 +1,211 @@ + + + + + + +jmespath.cpp: jmespath.cpp + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + +
+ + + + +
+ +
+ +
+
+
jmespath.cpp
+
+
+

jmespath.cpp is a C++ implementation of JMESPath, a query language for JSON. It can be used to extract and transform elements of a JSON document.

+

+JMESPath expression example

+

Input JSON document:

+
{
+
"locations": [
+
{"name": "Seattle", "state": "WA"},
+
{"name": "New York", "state": "NY"},
+
{"name": "Bellevue", "state": "WA"},
+
{"name": "Olympia", "state": "WA"}
+
]
+
}
+

JMESPath expression:

+
locations[?state == 'WA'].name | sort(@) | {WashingtonCities: join(', ', @)}
+

Result of evaluating the expression:

+
{"WashingtonCities": "Bellevue, Olympia, Seattle"}
+

For more examples take a look at the JMESPath Tutorial or the JMESPath Examples pages.

+

+Using jmespath.cpp

+

For installation instructions check out the Installation and integration page.

+

To use the public functions and classes of jmespath.cpp you should include the header file "#include \<jmespath/jmespath.h\>". The public interface is declared in the "jmespath" namespace.

+
#include <iostream>
+ +
+
namespace jp = jmespath;
+
+
int main(int argc, char *argv[])
+
{
+
auto data = R"({
+
"locations": [
+
{"name": "Seattle", "state": "WA"},
+
{"name": "New York", "state": "NY"},
+
{"name": "Bellevue", "state": "WA"},
+
{"name": "Olympia", "state": "WA"}
+
]
+
})"_json;
+
jp::Expression expression = "locations[?state == 'WA'].name | sort(@) | "
+
"{WashingtonCities: join(', ', @)}";
+
std::cout << jp::search(expression, data) << std::endl;
+
return 0;
+
}
+

+Search function

+

The main entry point of the library is the jmespath::search function which takes a JMESPath expression as its first argument and a JSON document as the second argument and returns the result of the evaluated expression as a new JSON document.

+
auto input = R"({"foo": "bar"})"_json;
+
auto result = jmespath::search("foo", input);
+

Besided passing the input document as an lvalue reference you can also pass it as an rvalue reference, which would allow the library to take advantage of move operations internally and produce the output document in a more efficient and faster manner.

+
auto input = R"({"foo": "bar"})"_json;
+
auto result = jmespath::search("foo", std::move(input));
+

+Expression class

+

The jmespath::Expression class allows to store a parsed JMESPath expression which is usefull if you want to evaluate the same expression on multiple JSON documents.

+
jmespath::Expression expression {"foo"};
+
auto result1 = jmespath::search(expression, R"({"foo": "bar"})"_json);
+
auto result2 = jmespath::search(expression, R"({"foo": {"bar": "baz"}})"_json);
+

By importing the names from the jmespath::literals namespace you can also use user defined literals to define JMESPath expressions.

+
using namespace jmespath::literals;
+
+
auto expression = "foo"_jmespath;
+
auto result1 = jmespath::search(expression, R"({"foo": "bar"})"_json);
+
auto result2 = jmespath::search(expression, R"({"foo": {"bar": "baz"}})"_json);
+

+JSON documents

+

For the handling of JSON documents and values jmespath.cpp relies on the excelent nlohmann_json library.

+

For defining JSON values you can either use "_json" user defined literal or the jmespath::Json type which is just an alias for nlohmann_json

+
jmespath::Json jsonObject {{"foo", "bar"}};
+

or you can also include the header of the nlohmann_json library and use the "nlohmann::json" type directly.

+
#include <nlohmann/json.hpp>
+
+
nlohmann::json jsonObject {{"foo", "bar"}};
+

+Error handling

+

All the exceptions that might get thrown by jmespath::search or jmespath::Expression are listed on the Exception classes page.

+

The library uses the Boost Exception library for throwing exceptions. Which means that the thrown exceptions can carry additional data attached to them. All the additional data that exceptions might carry is listed on the Error info types page.

+

This additional information can be used for example to pinpoint exactly which part of a JMESPath expression caused a parsing failure.

+
+
+
try
+
{
+
expression = "foo?";
+
}
+
catch (jmespath::SyntaxError& error)
+
{
+
if (const std::string* searchExpression
+
= boost::get_error_info<jmespath::InfoSearchExpression>(error))
+
{
+
std::cerr << "Failed parsing expression: "
+
<< *searchExpression << std::endl;
+
}
+
if (const long* location
+
= boost::get_error_info<jmespath::InfoSyntaxErrorLocation>(
+
error))
+
{
+
std::cerr << "Error at position: " << *location << std::endl;
+
}
+
}
+

This code would produce the following output:

+
Failed parsing expression: foo?
+
Error at position: 3
+

You can also use boost::diagnostic_information function to get all the additional information attached to an exception.

+
+
+
try
+
{
+
expression = "foo?";
+
}
+
catch (jmespath::SyntaxError& error)
+
{
+
std::cerr << boost::diagnostic_information(error) << std::endl;
+
}
+

This code would produce the following output:

+
jmespath.cpp/src/parser/parser.h(90): Throw in function jmespath::parser::Parser::ResultType jmespath::parser::Parser<parser::Grammar>::parse(const jmespath::String &) [T = parser::Grammar]
+
Dynamic exception type: boost::exception_detail::clone_impl<jmespath::SyntaxError>
+
std::exception::what: std::exception
+
[jmespath::tag_search_expression*] = foo?
+
[jmespath::tag_syntax_error_location*] = 3
+
+ + + + diff --git a/indexexpressionnode_8cpp.html b/indexexpressionnode_8cpp.html new file mode 100644 index 0000000..05dc2bf --- /dev/null +++ b/indexexpressionnode_8cpp.html @@ -0,0 +1,114 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/indexexpressionnode.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
indexexpressionnode.cpp File Reference
+
+
+
#include "src/ast/allnodes.h"
+
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/indexexpressionnode_8h.html b/indexexpressionnode_8h.html new file mode 100644 index 0000000..5917e5f --- /dev/null +++ b/indexexpressionnode_8h.html @@ -0,0 +1,125 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/indexexpressionnode.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
indexexpressionnode.h File Reference
+
+
+
#include "src/ast/binaryexpressionnode.h"
+#include "src/ast/bracketspecifiernode.h"
+#include <boost/fusion/include/adapt_struct.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::ast::IndexExpressionNode
 The IndexExpressionNode class represents a JMESPath index expression. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/indexexpressionnode_8h_source.html b/indexexpressionnode_8h_source.html new file mode 100644 index 0000000..e5bc608 --- /dev/null +++ b/indexexpressionnode_8h_source.html @@ -0,0 +1,172 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/indexexpressionnode.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
indexexpressionnode.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef INDEXEXPRESSIONNODE_H
+
29 #define INDEXEXPRESSIONNODE_H
+ + +
32 #include <boost/fusion/include/adapt_struct.hpp>
+
33 
+
34 namespace jmespath { namespace ast {
+
35 
+ +
40 {
+
41 public:
+ +
51  IndexExpressionNode(const BracketSpecifierNode& bracketNode);
+ +
61  const BracketSpecifierNode& bracketNode,
+
62  const ExpressionNode& right = {});
+
69  bool operator ==(const IndexExpressionNode& other) const;
+
75  bool isProjection() const override;
+
82  bool stopsProjection() const override;
+
88  void accept(interpreter::AbstractVisitor* visitor) const override;
+ +
93 };
+
94 }} // namespace jmespath::ast
+
95 
+
96 BOOST_FUSION_ADAPT_STRUCT(
+ +
98  (jmespath::ast::ExpressionNode, leftExpression)
+
99  (jmespath::ast::BracketSpecifierNode, bracketSpecifier)
+
100  (jmespath::ast::ExpressionNode, rightExpression)
+
101 )
+
102 #endif // INDEXEXPRESSIONNODE_H
+
bool stopsProjection() const override
Reports whether the node should stop an ongoing projection or not.
Definition: indexexpressionnode.cpp:68
+
IndexExpressionNode()
Construct an empty IndexExpressionNode object.
Definition: indexexpressionnode.cpp:32
+ +
BracketSpecifierNode bracketSpecifier
The bracket specifier in an index expression.
Definition: indexexpressionnode.h:92
+
The BracketSpecifierNode class represents a JMESPath bracket specifier.
Definition: bracketspecifiernode.h:44
+
bool isProjection() const override
Returns whather this expression requires the projection of subsequent expressions.
Definition: indexexpressionnode.cpp:63
+ +
The BinaryExpressionNode class is the base class for all node types which consist of a left and a rig...
Definition: binaryexpressionnode.h:39
+
The AbstractVisitor class is an interface which defines the member functions required to visit every ...
Definition: abstractvisitor.h:71
+
The IndexExpressionNode class represents a JMESPath index expression.
Definition: indexexpressionnode.h:39
+
bool operator==(const IndexExpressionNode &other) const
Equality compares this node to the other.
Definition: indexexpressionnode.cpp:53
+
The ExpressionNode class represents a JMESPath expression.
Definition: expressionnode.h:56
+
void accept(interpreter::AbstractVisitor *visitor) const override
Calls the visit method of the given visitor with the dynamic type of the node.
Definition: indexexpressionnode.cpp:73
+
+ + + + diff --git a/insertnodeaction_8h.html b/insertnodeaction_8h.html new file mode 100644 index 0000000..33da2c7 --- /dev/null +++ b/insertnodeaction_8h.html @@ -0,0 +1,128 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/parser/insertnodeaction.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
insertnodeaction.h File Reference
+
+
+
#include "src/parser/noderank.h"
+#include "src/parser/leftedgeiterator.h"
+#include "src/ast/allnodes.h"
+#include <algorithm>
+#include <boost/variant/polymorphic_get.hpp>
+#include <boost/optional.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::parser::InsertNodeAction< NodeInserterT, NodeInsertConditionT >
 The InsertNodeAction class is a functor for inserting the given node into the AST whose root node is specified with targetNode. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::parser
 Classes required for parsing JMESPath expressions.
 
+
+ + + + diff --git a/insertnodeaction_8h_source.html b/insertnodeaction_8h_source.html new file mode 100644 index 0000000..2b24aad --- /dev/null +++ b/insertnodeaction_8h_source.html @@ -0,0 +1,175 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/parser/insertnodeaction.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
insertnodeaction.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef INSERTBINARYEXPRESSIONNODEACTION_H
+
29 #define INSERTBINARYEXPRESSIONNODEACTION_H
+
30 #include "src/parser/noderank.h"
+ +
32 #include "src/ast/allnodes.h"
+
33 #include <algorithm>
+
34 #include <boost/variant/polymorphic_get.hpp>
+
35 #include <boost/optional.hpp>
+
36 
+
37 namespace jmespath { namespace parser {
+
38 
+
57 template <typename NodeInserterT,
+
58  typename NodeInsertConditionT>
+ +
60 {
+
61 public:
+
65  using result_type = void;
+
72  template <typename T>
+
73  void operator()(ast::ExpressionNode& targetNode, T& node) const
+
74  {
+
75  using std::placeholders::_1;
+
76  LeftEdgeIterator begin(targetNode);
+
77  LeftEdgeIterator end;
+
78  auto predicate = std::bind(m_insertCondition, _1, std::ref(node));
+
79  auto it = std::find_if(begin, end, predicate);
+
80  if (it != end)
+
81  {
+
82  m_nodeInserter(*it, node);
+
83  }
+
84  }
+
85 
+
86 private:
+
91  NodeInserterT m_nodeInserter;
+
96  NodeInsertConditionT m_insertCondition;
+
97 };
+
98 }} // namespace jmespath::parser
+
99 #endif // INSERTBINARYEXPRESSIONNODEACTION_H
+
The LeftEdgeIterator class is a forward iterator which can be used to iterate over the ExpressionNode...
Definition: leftedgeiterator.h:40
+
void operator()(ast::ExpressionNode &targetNode, T &node) const
Inserts the given node into the AST whose root node is specified with targetNode. ...
Definition: insertnodeaction.h:73
+
void result_type
The action's result type.
Definition: insertnodeaction.h:65
+ +
NodeInserterT m_nodeInserter
Functor for inserting the a node at the position of the target node into the AST. ...
Definition: insertnodeaction.h:91
+
The InsertNodeAction class is a functor for inserting the given node into the AST whose root node is ...
Definition: insertnodeaction.h:59
+
NodeInsertConditionT m_insertCondition
Functor for checking whether the passed node can be inserted at the position of the target node...
Definition: insertnodeaction.h:96
+ + +
The ExpressionNode class represents a JMESPath expression.
Definition: expressionnode.h:56
+
+ + + + diff --git a/install.html b/install.html new file mode 100644 index 0000000..637d559 --- /dev/null +++ b/install.html @@ -0,0 +1,133 @@ + + + + + + +jmespath.cpp: Installation and integration + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + +
+ +
+ +
+
+
+
Installation and integration
+
+
+

+Requirements

+

To build, install and use the library you must have CMake installed, version 3.8 or later.

+

+Supported compilers

+

jmespath.cpp needs a compiler that supports at least the c++14 standard. The currently supported and tested compilers are:

+
    +
  • g++ versions: 5, 6, 7, 8
  • +
  • Clang versions: 4.0, 5.0, 6.0, 7
  • +
  • XCode versions: 9.0, 9.3, 10.1
  • +
  • Visual Studio 2017
  • +
+

+Library dependencies

+ +

+Build and install

+

To get the source code of the library either clone it from github

+
git clone https://github.com/robertmrk/jmespath.cpp.git
+

or download the latest release and extract it.

+

In the terminal change the current directory to the location of the source code

+
cd <path_to_source>/jmespath.cpp
+

Generate the project or makefiles for the build system of your choice with CMake, then build and install the library:

+
mkdir build
+
cd build
+
cmake .. -G"Unix Makefiles" -DCMAKE_BUILD_TYPE=Release -DJMESPATH_BUILD_TESTS=OFF
+
sudo cmake --build . --target install
+

+Integration

+

To use the library in your CMake project you should find the library with "find_package" and link your target with "jmespath::jmespath":

+
cmake_minimum_required(VERSION 3.0)
+
project(example)
+
+
find_package(jmespath 0.1.0 CONFIG REQUIRED)
+
+
add_executable(${PROJECT_NAME} main.cpp)
+
target_link_libraries(${PROJECT_NAME} jmespath::jmespath)
+
target_compile_features(${PROJECT_NAME} PUBLIC cxx_std_14)
+
+ + + + diff --git a/interpreter_8cpp.html b/interpreter_8cpp.html new file mode 100644 index 0000000..295d013 --- /dev/null +++ b/interpreter_8cpp.html @@ -0,0 +1,125 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/interpreter/interpreter.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
interpreter.cpp File Reference
+
+
+
#include "src/interpreter/interpreter.h"
+#include "src/ast/allnodes.h"
+#include "jmespath/exceptions.h"
+#include "src/interpreter/contextvaluevisitoradaptor.h"
+#include <numeric>
+#include <boost/range.hpp>
+#include <boost/range/algorithm.hpp>
+#include <boost/range/numeric.hpp>
+#include <boost/algorithm/cxx11/any_of.hpp>
+#include <boost/algorithm/string.hpp>
+#include <boost/hana.hpp>
+#include <boost/type_index.hpp>
+
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::interpreter
 Classes for interpreting the AST of the JMESPath expression.
 
+
+ + + + diff --git a/interpreter_8h.html b/interpreter_8h.html new file mode 100644 index 0000000..5b87e21 --- /dev/null +++ b/interpreter_8h.html @@ -0,0 +1,156 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/interpreter/interpreter.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
interpreter.h File Reference
+
+
+
#include "src/interpreter/abstractvisitor.h"
+#include "jmespath/types.h"
+#include "src/ast/expressionnode.h"
+#include "src/ast/functionexpressionnode.h"
+#include <functional>
+#include <tuple>
+#include <unordered_map>
+#include <boost/variant.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::interpreter::Interpreter
 The Interpreter class evaluates the AST structure on a Json context. More...
 
+ + + + + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
 jmespath::interpreter
 Classes for interpreting the AST of the JMESPath expression.
 
+ + + + + + + +

+Typedefs

using jmespath::interpreter::JsonRef = std::reference_wrapper< const Json >
 Copyable and assignable reference to a constant Json value. More...
 
using jmespath::interpreter::ContextValue = boost::variant< Json, JsonRef >
 Evaluation context type. More...
 
+ + + + + + + + + + +

+Functions

Json && jmespath::interpreter::assignContextValue (Json &&value)
 Convert the given value to something assignable to a ContextValue variable. More...
 
JsonRef jmespath::interpreter::assignContextValue (const Json &value)
 Convert the given value to something assignable to a ContextValue variable. More...
 
const Json & jmespath::interpreter::getJsonValue (const ContextValue &contextValue)
 Extract the Json value held by the given value. More...
 
+
+ + + + diff --git a/interpreter_8h_source.html b/interpreter_8h_source.html new file mode 100644 index 0000000..ddd4883 --- /dev/null +++ b/interpreter_8h_source.html @@ -0,0 +1,386 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/interpreter/interpreter.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
interpreter.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef INTERPRETER_H
+
29 #define INTERPRETER_H
+ +
31 #include "jmespath/types.h"
+
32 #include "src/ast/expressionnode.h"
+ +
34 #include <functional>
+
35 #include <tuple>
+
36 #include <unordered_map>
+
37 #include <boost/variant.hpp>
+
38 
+
39 namespace jmespath { namespace ast {
+
40 
+
41 class BinaryExpressionNode;
+
42 }} // namespace jmespath::ast
+
43 
+
44 namespace jmespath { namespace interpreter {
+
45 
+
49 using JsonRef = std::reference_wrapper<const Json>;
+
55 using ContextValue = boost::variant<Json, JsonRef>;
+
56 
+
63 inline Json&& assignContextValue(Json&& value)
+
64 {
+
65  return std::move(value);
+
66 }
+
73 inline JsonRef assignContextValue(const Json& value)
+
74 {
+
75  return std::cref(value);
+
76 }
+
77 
+
83 inline const Json& getJsonValue(const ContextValue& contextValue)
+
84 {
+
85  return boost::apply_visitor([](const auto& value) -> const Json& {
+
86  return value;
+
87  }, contextValue);
+
88 }
+
89 
+ +
96 {
+
97 public:
+
101  Interpreter();
+
106  template <typename JsonT>
+
107  std::enable_if_t<std::is_same<std::decay_t<JsonT>, Json>::value, void>
+
108  setContext(JsonT&& value)
+
109  {
+
110  m_context = assignContextValue(std::forward<JsonT>(value));
+
111  }
+
116  const Json &currentContext() const
+
117  {
+
118  return getJsonValue(m_context);
+
119  }
+ +
126  {
+
127  return m_context;
+
128  }
+
134  virtual void evaluateProjection(const ast::ExpressionNode* expression);
+
135 
+
141  void visit(const ast::AbstractNode *node) override;
+
142  void visit(const ast::ExpressionNode *node) override;
+
143  void visit(const ast::IdentifierNode *node) override;
+
144  void visit(const ast::RawStringNode *node) override;
+
145  void visit(const ast::LiteralNode* node) override;
+
146  void visit(const ast::SubexpressionNode* node) override;
+
147  void visit(const ast::IndexExpressionNode* node) override;
+
148  void visit(const ast::ArrayItemNode* node) override;
+
149  void visit(const ast::FlattenOperatorNode*) override;
+
150  void visit(const ast::BracketSpecifierNode* node) override;
+
151  void visit(const ast::SliceExpressionNode* node) override;
+
152  void visit(const ast::ListWildcardNode*) override;
+
153  void visit(const ast::HashWildcardNode* node) override;
+
154  void visit(const ast::MultiselectListNode* node) override;
+
155  void visit(const ast::MultiselectHashNode* node) override;
+
156  void visit(const ast::NotExpressionNode* node) override;
+
157  void visit(const ast::ComparatorExpressionNode* node) override;
+
158  void visit(const ast::OrExpressionNode* node) override;
+
159  void visit(const ast::AndExpressionNode* node) override;
+
160  void visit(const ast::ParenExpressionNode* node) override;
+
161  void visit(const ast::PipeExpressionNode* node) override;
+
162  void visit(const ast::CurrentNode*) override;
+
163  void visit(const ast::FilterExpressionNode* node) override;
+
164  void visit(const ast::FunctionExpressionNode* node) override;
+
165  void visit(const ast::ExpressionArgumentNode*) override;
+
168 private:
+
172  using FunctionArgument
+
173  = boost::variant<boost::blank, ContextValue, ast::ExpressionNode>;
+
177  using FunctionArgumentList = std::vector<FunctionArgument>;
+
182  using Function = std::function<void(FunctionArgumentList&)>;
+
187  using JsonComparator = std::function<bool(const Json&, const Json&)>;
+
191  using ArgumentArityValidator = std::function<bool(const size_t&)>;
+
200  using FunctionDescriptor = std::tuple<ArgumentArityValidator,
+
201  bool,
+ + +
207  = std::vector<ast::FunctionExpressionNode::ArgumentType>;
+ +
216  std::unordered_map<String, FunctionDescriptor> m_functionMap;
+
225  template <typename JsonT>
+
226  void visit(const ast::IdentifierNode *node, JsonT&& context);
+
227  template <typename JsonT>
+
228  void visit(const ast::ArrayItemNode *node, JsonT&& context);
+
229  template <typename JsonT>
+
230  void visit(const ast::FlattenOperatorNode* node, JsonT&& context);
+
231  template <typename JsonT>
+
232  void visit(const ast::SliceExpressionNode* node, JsonT&& context);
+
233  template <typename JsonT>
+
234  void visit(const ast::HashWildcardNode* node, JsonT&& context);
+
235  template <typename JsonT>
+
236  void visit(const ast::FilterExpressionNode* node, JsonT&& context);
+ +
247  Index endpoint,
+
248  Index step) const;
+
255  bool toBoolean(const Json& json) const;
+
264  template <typename JsonT>
+
265  void evaluateProjection(const ast::ExpressionNode* expression,
+
266  JsonT&& context);
+ +
277  bool shortCircuitValue);
+ +
290  const FunctionExpressionArgumentList& arguments,
+
291  const std::shared_ptr<ContextValue> &contextValue);
+
299  template <typename T>
+
300  T& getArgument(FunctionArgument& argument) const;
+
307  const Json& getJsonArgument(FunctionArgument& argument) const;
+
314  void abs(FunctionArgumentList& arguments);
+
322  void avg(FunctionArgumentList& arguments);
+
330  void contains(FunctionArgumentList& arguments);
+
337  void ceil(FunctionArgumentList& arguments);
+
345  void endsWith(FunctionArgumentList& arguments);
+
352  void floor(FunctionArgumentList& arguments);
+
360  void join(FunctionArgumentList& arguments);
+
367  void keys(FunctionArgumentList& arguments);
+
374  void length(FunctionArgumentList& arguments);
+
382  void map(FunctionArgumentList& arguments);
+
392  template <typename JsonT>
+
393  void map(const ast::ExpressionNode* node, JsonT&& array);
+
401  void merge(FunctionArgumentList& arguments);
+
410  template <typename JsonT>
+
411  void mergeObject(Json* object, JsonT&& sourceObject);
+
418  void notNull(FunctionArgumentList& arguments);
+
425  void reverse(FunctionArgumentList& arguments);
+
432  void reverse(Json&& subject);
+
439  void sort(FunctionArgumentList& arguments);
+
446  void sort(Json&& array);
+
454  void sortBy(FunctionArgumentList& arguments);
+
463  void sortBy(const ast::ExpressionNode* expression, Json&& array);
+
471  void startsWith(FunctionArgumentList& arguments);
+
478  void sum(FunctionArgumentList& arguments);
+
485  void toArray(FunctionArgumentList& arguments);
+
492  template <typename JsonT>
+
493  void toArray(JsonT&& value);
+
500  void toString(FunctionArgumentList& arguments);
+
507  template <typename JsonT>
+
508  void toString(JsonT&& value);
+
516  void toNumber(FunctionArgumentList& arguments);
+
523  template <typename JsonT>
+
524  void toNumber(JsonT&& value);
+
531  void type(FunctionArgumentList& arguments);
+
538  void values(FunctionArgumentList& arguments);
+
545  template <typename JsonT>
+
546  void values(JsonT&& object);
+
557  void max(FunctionArgumentList& arguments, const JsonComparator& comparator);
+
568  template <typename JsonT>
+
569  void max(const JsonComparator* comparator, JsonT&& array);
+
581  void maxBy(FunctionArgumentList& arguments,
+
582  const JsonComparator& comparator = std::less<Json>{});
+
596  template <typename JsonT>
+
597  void maxBy(const ast::ExpressionNode* expression,
+
598  const JsonComparator* comparator,
+
599  JsonT&& array);
+
607  bool isComparableArray(const Json& array) const;
+
608 };
+
609 }} // namespace jmespath::interpreter
+
610 #endif // INTERPRETER_H
+
void floor(FunctionArgumentList &arguments)
Rounds down the first item of the given arguments to the next lowest integer value. The first item should be a Json number.
Definition: interpreter.cpp:1031
+
boost::variant< Json, JsonRef > ContextValue
Evaluation context type.
Definition: interpreter.h:55
+
The ComparatorExpressionNode class represents a JMESPath comparator expression.
Definition: comparatorexpressionnode.h:39
+ +
The ListWildcardNode class represents a JMESPath list wildcard expression.
Definition: listwildcardnode.h:38
+
Json && assignContextValue(Json &&value)
Convert the given value to something assignable to a ContextValue variable.
Definition: interpreter.h:63
+
std::function< bool(const size_t &)> ArgumentArityValidator
Function argument arity validator predicate.
Definition: interpreter.h:191
+
std::function< void(FunctionArgumentList &)> Function
Function wrapper type to which JMESPath built in function implementations should conform to...
Definition: interpreter.h:182
+
bool isComparableArray(const Json &array) const
Checks whether array is a homogeneous array which contains comparable types like strings and numbers...
Definition: interpreter.cpp:1712
+
const Json & getJsonArgument(FunctionArgument &argument) const
Creates a reference to the Json value held by the argument.
Definition: interpreter.cpp:888
+
void keys(FunctionArgumentList &arguments)
Extracts the keys from the object provided as the first item of the given arguments.
Definition: interpreter.cpp:1075
+
The HashWildcardNode class represents a JMESPath hash wildcard expression.
Definition: hashwildcardnode.h:38
+
void ceil(FunctionArgumentList &arguments)
Rounds up the first item of the given arguments to the next highest integer value. The first item should be a Json number.
Definition: interpreter.cpp:993
+
The CurrentNode class represents a JMESPath current node expression.
Definition: currentnode.h:38
+
The BracketSpecifierNode class represents a JMESPath bracket specifier.
Definition: bracketspecifiernode.h:44
+
ContextValue m_context
Stores the evaluation context.
Definition: interpreter.h:211
+
std::function< bool(const Json &, const Json &)> JsonComparator
The type of comparator functions used for comparing Json values.
Definition: interpreter.h:187
+
The IdentifierNode class represents a JMESPath identifier.
Definition: identifiernode.h:39
+
bool toBoolean(const Json &json) const
Converts the json value to a boolean.
Definition: interpreter.cpp:822
+
void sort(FunctionArgumentList &arguments)
Sorts the first item in the given arguments, which must either be an array of numbers or an array of ...
Definition: interpreter.cpp:1278
+
The AndExpressionNode class represents a JMESPath and expression.
Definition: andexpressionnode.h:38
+
void join(FunctionArgumentList &arguments)
Joins every item in the array provided as the second item of the given arguments with the first item ...
Definition: interpreter.cpp:1052
+
std::enable_if_t< std::is_same< std::decay_t< JsonT >, Json >::value, void > setContext(JsonT &&value)
Sets the context of the evaluation.
Definition: interpreter.h:108
+
The SliceExpressionNode class represents a JMESPath slice expression.
Definition: sliceexpressionnode.h:41
+
std::tuple< ArgumentArityValidator, bool, Function > FunctionDescriptor
Describes a built in function implementation.
Definition: interpreter.h:202
+
void notNull(FunctionArgumentList &arguments)
Accepts one or more items in arguments, and will evaluate them in order until a non null argument is ...
Definition: interpreter.cpp:1224
+
The MultiselectHashNode class represents a JMESPath multiselect hash expression.
Definition: multiselecthashnode.h:45
+
void length(FunctionArgumentList &arguments)
Returns the length of the first item in the given arguments. The first item must be either an array a...
Definition: interpreter.cpp:1094
+
The PipeExpressionNode class represents a JMESPath pipe expression.
Definition: pipeexpressionnode.h:38
+ +
void maxBy(FunctionArgumentList &arguments, const JsonComparator &comparator=std::less< Json >{})
Finds the largest item in the array provided as the first item in the arguments, which must either be...
Definition: interpreter.cpp:1637
+
nlohmann::json Json
JSON data type.
Definition: types.h:66
+
void toNumber(FunctionArgumentList &arguments)
Converts the string provided as the first item in the given arguments to a number. If it's already a number then the original value is returned, all other Json types are converted to null.
Definition: interpreter.cpp:1498
+
void startsWith(FunctionArgumentList &arguments)
Checks wheather the string provided as the first item in arguments starts with the string provided as...
Definition: interpreter.cpp:1381
+
const Json & currentContext() const
Returns the current evaluation context.
Definition: interpreter.h:116
+
The BinaryExpressionNode class is the base class for all node types which consist of a left and a rig...
Definition: binaryexpressionnode.h:39
+
The SubexpressionNode class represents a JMESPath subexpression.
Definition: subexpressionnode.h:37
+
The ExpressionArgumentNode class represents a JMESPath expression argument.
Definition: expressionargumentnode.h:40
+
Interpreter()
Constructs an Interpreter object.
Definition: interpreter.cpp:46
+
boost::multiprecision::number< boost::multiprecision::cpp_int_backend< std::numeric_limits< size_t >::digits, std::numeric_limits< size_t >::digits, boost::multiprecision::signed_magnitude, boost::multiprecision::checked, void > > Index
Signed integer type that can hold all values in the range of numeric_limits<size_t>::max() * -1 ...
Definition: types.h:77
+
const Json & getJsonValue(const ContextValue &contextValue)
Extract the Json value held by the given value.
Definition: interpreter.h:83
+ +
void map(FunctionArgumentList &arguments)
Applies the expression provided as the first item in the given arguments to every item in the array p...
Definition: interpreter.cpp:1122
+
void evaluateLogicOperator(const ast::BinaryExpressionNode *node, bool shortCircuitValue)
Evaluates a binary logic operator to the result of the left side expression if it's binary value equa...
Definition: interpreter.cpp:654
+
void sortBy(FunctionArgumentList &arguments)
Sorts the first item in the given arguments, which must either be an array of numbers or an array of ...
Definition: interpreter.cpp:1307
+
void merge(FunctionArgumentList &arguments)
Accepts zero or more objects in the given arguments, and returns a single object with subsequent obje...
Definition: interpreter.cpp:1173
+
void visit(const ast::AbstractNode *node) override
Evaluate the given node on the current context value.
Definition: interpreter.cpp:189
+
boost::variant< boost::blank, ContextValue, ast::ExpressionNode > FunctionArgument
Type of the arguments in FunctionArgumentList.
Definition: interpreter.h:173
+
void mergeObject(Json *object, JsonT &&sourceObject)
Merges the items of the sourceObject into object.
Definition: interpreter.cpp:1214
+
void values(FunctionArgumentList &arguments)
Extracts the values from the object provided as the first item of the given arguments.
Definition: interpreter.cpp:1566
+
std::reference_wrapper< const Json > JsonRef
Copyable and assignable reference to a constant Json value.
Definition: interpreter.h:49
+
FunctionArgumentList evaluateArguments(const FunctionExpressionArgumentList &arguments, const std::shared_ptr< ContextValue > &contextValue)
Evaluate the given function expression arguments.
Definition: interpreter.cpp:832
+
The LiteralNode class represents a JMESPath literal string.
Definition: literalnode.h:39
+
The FilterExpressionNode class represents a JMESPath filter expression.
Definition: filterexpressionnode.h:39
+
std::unordered_map< String, FunctionDescriptor > m_functionMap
Maps the JMESPath built in function names to their implementations.
Definition: interpreter.h:216
+
The OrExpressionNode class represents a JMESPath or expression.
Definition: orexpressionnode.h:38
+
The AbstractVisitor class is an interface which defines the member functions required to visit every ...
Definition: abstractvisitor.h:71
+
void avg(FunctionArgumentList &arguments)
Calculates the average value of the items in the first item of the given arguments. The first item must be an Json array and every item in the array must be a number Json value.
Definition: interpreter.cpp:913
+
The IndexExpressionNode class represents a JMESPath index expression.
Definition: indexexpressionnode.h:39
+
void reverse(FunctionArgumentList &arguments)
Reverses the order of the first item in arguments. It must either be an array or a string...
Definition: interpreter.cpp:1242
+
void abs(FunctionArgumentList &arguments)
Calculates the absolute value of the first item in the given list of arguments. The first item must b...
Definition: interpreter.cpp:893
+
virtual void evaluateProjection(const ast::ExpressionNode *expression)
Evaluates the projection of the given expression on the current context.
Definition: interpreter.cpp:126
+
The NotExpressionNode class represents a JMESPath not expression.
Definition: notexpressionnode.h:39
+
The RawStringNode class represents a JMESPath raw string literal.
Definition: rawstringnode.h:39
+
void type(FunctionArgumentList &arguments)
Returns the type of the Json value provided as the first item in arguments.
Definition: interpreter.cpp:1541
+ +
void contains(FunctionArgumentList &arguments)
Checks whether the first item in the given arguments contains the second item. The first item should ...
Definition: interpreter.cpp:961
+
The ArrayItemNode class represents a JMESPath array index expression.
Definition: arrayitemnode.h:40
+
void toString(FunctionArgumentList &arguments)
Converts the first item of the given arguments to the Json encoded value if it's not already a string...
Definition: interpreter.cpp:1468
+
void endsWith(FunctionArgumentList &arguments)
Checks whether the first item of the given arguments ends with the second item. The first and second ...
Definition: interpreter.cpp:1014
+
The FlattenOperatorNode class represents a JMESPath flatten operator.
Definition: flattenoperatornode.h:39
+
Index adjustSliceEndpoint(size_t length, Index endpoint, Index step) const
Adjust the value of the slice endpoint to make sure it's within the array's bounds and points to the ...
Definition: interpreter.cpp:803
+
The MultiselectListNode class represents a JMESPath list wildcard expression.
Definition: multiselectlistnode.h:42
+
The ExpressionNode class represents a JMESPath expression.
Definition: expressionnode.h:56
+
std::vector< ast::FunctionExpressionNode::ArgumentType > FunctionExpressionArgumentList
List of unevaluated function arguments.
Definition: interpreter.h:207
+
void toArray(FunctionArgumentList &arguments)
Converts the first item of the given arguments to a one element array if it's not already an array...
Definition: interpreter.cpp:1435
+
std::vector< FunctionArgument > FunctionArgumentList
List of FunctionArgument objects.
Definition: interpreter.h:177
+
T & getArgument(FunctionArgument &argument) const
Converts the given function argument to the requsted type.
Definition: interpreter.cpp:874
+
void sum(FunctionArgumentList &arguments)
Calculates the sum of the numbers in the array provided as the first item of arguments.
Definition: interpreter.cpp:1398
+
void max(FunctionArgumentList &arguments, const JsonComparator &comparator)
Finds the largest item in the array provided as the first item in the arguments, it must either be an...
Definition: interpreter.cpp:1596
+
The Interpreter class evaluates the AST structure on a Json context.
Definition: interpreter.h:95
+
ContextValue & currentContextValue()
Returns the current evaluation context which can either hold a value or a const reference.
Definition: interpreter.h:125
+
The ParenExpressionNode class represents a JMESPath paren expression.
Definition: parenexpressionnode.h:38
+
The AbstractNode class is the common interface class for all AST node types.
Definition: abstractnode.h:45
+
The FunctionExpressionNode class represents a JMESPath function expression.
Definition: functionexpressionnode.h:45
+
+ + + + diff --git a/jmespath_8cpp.html b/jmespath_8cpp.html new file mode 100644 index 0000000..35b70ba --- /dev/null +++ b/jmespath_8cpp.html @@ -0,0 +1,133 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/jmespath.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath.cpp File Reference
+
+
+
#include "jmespath/jmespath.h"
+#include "src/interpreter/interpreter.h"
+#include <boost/hana.hpp>
+
+ + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
+ + + + + + + + + + + + + + + +

+Functions

template<typename JsonT >
std::enable_if_t< std::is_same
+< std::decay_t< JsonT >, Json >
+::value, Json > 
jmespath::search (const Expression &expression, JsonT &&document)
 Finds or creates the results for the expression evaluated on the given document. More...
 
template Json jmespath::search< const Json & > (const Expression &, const Json &)
 Explicit instantiation declaration for Search function to prevent implicit instantiation in client code. More...
 
template Json jmespath::search< Json & > (const Expression &, Json &)
 Explicit instantiation declaration for Search function to prevent implicit instantiation in client code. More...
 
template Json jmespath::search< Json > (const Expression &, Json &&)
 Explicit instantiation declaration for Search function to prevent implicit instantiation in client code. More...
 
+
+ + + + diff --git a/jmespath_8h.html b/jmespath_8h.html new file mode 100644 index 0000000..d2110a2 --- /dev/null +++ b/jmespath_8h.html @@ -0,0 +1,136 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/include/jmespath/jmespath.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath.h File Reference
+
+
+
#include <string>
+#include <jmespath/types.h>
+#include <jmespath/exceptions.h>
+#include <jmespath/expression.h>
+
+

Go to the source code of this file.

+ + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
+ + + + + + + + + + + + + + + +

+Functions

template<typename JsonT >
std::enable_if_t< std::is_same
+< std::decay_t< JsonT >, Json >
+::value, Json > 
jmespath::search (const Expression &expression, JsonT &&document)
 Finds or creates the results for the expression evaluated on the given document. More...
 
template Json jmespath::search< const Json & > (const Expression &, const Json &)
 Explicit instantiation declaration for Search function to prevent implicit instantiation in client code. More...
 
template Json jmespath::search< Json & > (const Expression &, Json &)
 Explicit instantiation declaration for Search function to prevent implicit instantiation in client code. More...
 
template Json jmespath::search< Json > (const Expression &, Json &&)
 Explicit instantiation declaration for Search function to prevent implicit instantiation in client code. More...
 
+
+ + + + diff --git a/jmespath_8h_source.html b/jmespath_8h_source.html new file mode 100644 index 0000000..f93e945 --- /dev/null +++ b/jmespath_8h_source.html @@ -0,0 +1,154 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/include/jmespath/jmespath.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef JMESPATH_H
+
29 #define JMESPATH_H
+
30 #include <string>
+
31 #include <jmespath/types.h>
+
32 #include <jmespath/exceptions.h>
+
33 #include <jmespath/expression.h>
+
34 
+
295 namespace jmespath {
+
296 
+
320 template <typename JsonT>
+
321 std::enable_if_t<std::is_same<std::decay_t<JsonT>, Json>::value, Json>
+
322 search(const Expression& expression, JsonT&& document);
+
323 
+
329 extern template Json search<const Json&>(const Expression&, const Json&);
+
330 extern template Json search<Json&>(const Expression&, Json&);
+
331 extern template Json search<Json>(const Expression&, Json&&);
+
333 } // namespace jmespath
+
334 #endif // JMESPATH_H
+ +
template Json search< const Json & >(const Expression &, const Json &)
Explicit instantiation declaration for Search function to prevent implicit instantiation in client co...
+
nlohmann::json Json
JSON data type.
Definition: types.h:66
+ +
template Json search< Json >(const Expression &, Json &&)
Explicit instantiation declaration for Search function to prevent implicit instantiation in client co...
+ +
std::enable_if_t< std::is_same< std::decay_t< JsonT >, Json >::value, Json > search(const Expression &expression, JsonT &&document)
Finds or creates the results for the expression evaluated on the given document.
Definition: jmespath.cpp:36
+
template Json search< Json & >(const Expression &, Json &)
Explicit instantiation declaration for Search function to prevent implicit instantiation in client co...
+
+ + + + diff --git a/jquery.js b/jquery.js new file mode 100644 index 0000000..c197801 --- /dev/null +++ b/jquery.js @@ -0,0 +1,31 @@ +/*! + * jQuery JavaScript Library v1.7.1 + * http://jquery.com/ + * + * Copyright 2011, John Resig + * Dual licensed under the MIT or GPL Version 2 licenses. + * http://jquery.org/license + * + * Includes Sizzle.js + * http://sizzlejs.com/ + * Copyright 2011, The Dojo Foundation + * Released under the MIT, BSD, and GPL Licenses. + * + * Date: Mon Nov 21 21:11:03 2011 -0500 + */ +(function(bb,L){var av=bb.document,bu=bb.navigator,bl=bb.location;var b=(function(){var bF=function(b0,b1){return new bF.fn.init(b0,b1,bD)},bU=bb.jQuery,bH=bb.$,bD,bY=/^(?:[^#<]*(<[\w\W]+>)[^>]*$|#([\w\-]*)$)/,bM=/\S/,bI=/^\s+/,bE=/\s+$/,bA=/^<(\w+)\s*\/?>(?:<\/\1>)?$/,bN=/^[\],:{}\s]*$/,bW=/\\(?:["\\\/bfnrt]|u[0-9a-fA-F]{4})/g,bP=/"[^"\\\n\r]*"|true|false|null|-?\d+(?:\.\d*)?(?:[eE][+\-]?\d+)?/g,bJ=/(?:^|:|,)(?:\s*\[)+/g,by=/(webkit)[ \/]([\w.]+)/,bR=/(opera)(?:.*version)?[ \/]([\w.]+)/,bQ=/(msie) ([\w.]+)/,bS=/(mozilla)(?:.*? rv:([\w.]+))?/,bB=/-([a-z]|[0-9])/ig,bZ=/^-ms-/,bT=function(b0,b1){return(b1+"").toUpperCase()},bX=bu.userAgent,bV,bC,e,bL=Object.prototype.toString,bG=Object.prototype.hasOwnProperty,bz=Array.prototype.push,bK=Array.prototype.slice,bO=String.prototype.trim,bv=Array.prototype.indexOf,bx={};bF.fn=bF.prototype={constructor:bF,init:function(b0,b4,b3){var b2,b5,b1,b6;if(!b0){return this}if(b0.nodeType){this.context=this[0]=b0;this.length=1;return this}if(b0==="body"&&!b4&&av.body){this.context=av;this[0]=av.body;this.selector=b0;this.length=1;return this}if(typeof b0==="string"){if(b0.charAt(0)==="<"&&b0.charAt(b0.length-1)===">"&&b0.length>=3){b2=[null,b0,null]}else{b2=bY.exec(b0)}if(b2&&(b2[1]||!b4)){if(b2[1]){b4=b4 instanceof bF?b4[0]:b4;b6=(b4?b4.ownerDocument||b4:av);b1=bA.exec(b0);if(b1){if(bF.isPlainObject(b4)){b0=[av.createElement(b1[1])];bF.fn.attr.call(b0,b4,true)}else{b0=[b6.createElement(b1[1])]}}else{b1=bF.buildFragment([b2[1]],[b6]);b0=(b1.cacheable?bF.clone(b1.fragment):b1.fragment).childNodes}return bF.merge(this,b0)}else{b5=av.getElementById(b2[2]);if(b5&&b5.parentNode){if(b5.id!==b2[2]){return b3.find(b0)}this.length=1;this[0]=b5}this.context=av;this.selector=b0;return this}}else{if(!b4||b4.jquery){return(b4||b3).find(b0)}else{return this.constructor(b4).find(b0)}}}else{if(bF.isFunction(b0)){return b3.ready(b0)}}if(b0.selector!==L){this.selector=b0.selector;this.context=b0.context}return bF.makeArray(b0,this)},selector:"",jquery:"1.7.1",length:0,size:function(){return this.length},toArray:function(){return bK.call(this,0)},get:function(b0){return b0==null?this.toArray():(b0<0?this[this.length+b0]:this[b0])},pushStack:function(b1,b3,b0){var b2=this.constructor();if(bF.isArray(b1)){bz.apply(b2,b1)}else{bF.merge(b2,b1)}b2.prevObject=this;b2.context=this.context;if(b3==="find"){b2.selector=this.selector+(this.selector?" ":"")+b0}else{if(b3){b2.selector=this.selector+"."+b3+"("+b0+")"}}return b2},each:function(b1,b0){return bF.each(this,b1,b0)},ready:function(b0){bF.bindReady();bC.add(b0);return this},eq:function(b0){b0=+b0;return b0===-1?this.slice(b0):this.slice(b0,b0+1)},first:function(){return this.eq(0)},last:function(){return this.eq(-1)},slice:function(){return this.pushStack(bK.apply(this,arguments),"slice",bK.call(arguments).join(","))},map:function(b0){return this.pushStack(bF.map(this,function(b2,b1){return b0.call(b2,b1,b2)}))},end:function(){return this.prevObject||this.constructor(null)},push:bz,sort:[].sort,splice:[].splice};bF.fn.init.prototype=bF.fn;bF.extend=bF.fn.extend=function(){var b9,b2,b0,b1,b6,b7,b5=arguments[0]||{},b4=1,b3=arguments.length,b8=false;if(typeof b5==="boolean"){b8=b5;b5=arguments[1]||{};b4=2}if(typeof b5!=="object"&&!bF.isFunction(b5)){b5={}}if(b3===b4){b5=this;--b4}for(;b40){return}bC.fireWith(av,[bF]);if(bF.fn.trigger){bF(av).trigger("ready").off("ready")}}},bindReady:function(){if(bC){return}bC=bF.Callbacks("once memory");if(av.readyState==="complete"){return setTimeout(bF.ready,1)}if(av.addEventListener){av.addEventListener("DOMContentLoaded",e,false);bb.addEventListener("load",bF.ready,false)}else{if(av.attachEvent){av.attachEvent("onreadystatechange",e);bb.attachEvent("onload",bF.ready);var b0=false;try{b0=bb.frameElement==null}catch(b1){}if(av.documentElement.doScroll&&b0){bw()}}}},isFunction:function(b0){return bF.type(b0)==="function"},isArray:Array.isArray||function(b0){return bF.type(b0)==="array"},isWindow:function(b0){return b0&&typeof b0==="object"&&"setInterval" in b0},isNumeric:function(b0){return !isNaN(parseFloat(b0))&&isFinite(b0)},type:function(b0){return b0==null?String(b0):bx[bL.call(b0)]||"object"},isPlainObject:function(b2){if(!b2||bF.type(b2)!=="object"||b2.nodeType||bF.isWindow(b2)){return false}try{if(b2.constructor&&!bG.call(b2,"constructor")&&!bG.call(b2.constructor.prototype,"isPrototypeOf")){return false}}catch(b1){return false}var b0;for(b0 in b2){}return b0===L||bG.call(b2,b0)},isEmptyObject:function(b1){for(var b0 in b1){return false}return true},error:function(b0){throw new Error(b0)},parseJSON:function(b0){if(typeof b0!=="string"||!b0){return null}b0=bF.trim(b0);if(bb.JSON&&bb.JSON.parse){return bb.JSON.parse(b0)}if(bN.test(b0.replace(bW,"@").replace(bP,"]").replace(bJ,""))){return(new Function("return "+b0))()}bF.error("Invalid JSON: "+b0)},parseXML:function(b2){var b0,b1;try{if(bb.DOMParser){b1=new DOMParser();b0=b1.parseFromString(b2,"text/xml")}else{b0=new ActiveXObject("Microsoft.XMLDOM");b0.async="false";b0.loadXML(b2)}}catch(b3){b0=L}if(!b0||!b0.documentElement||b0.getElementsByTagName("parsererror").length){bF.error("Invalid XML: "+b2)}return b0},noop:function(){},globalEval:function(b0){if(b0&&bM.test(b0)){(bb.execScript||function(b1){bb["eval"].call(bb,b1)})(b0)}},camelCase:function(b0){return b0.replace(bZ,"ms-").replace(bB,bT)},nodeName:function(b1,b0){return b1.nodeName&&b1.nodeName.toUpperCase()===b0.toUpperCase()},each:function(b3,b6,b2){var b1,b4=0,b5=b3.length,b0=b5===L||bF.isFunction(b3);if(b2){if(b0){for(b1 in b3){if(b6.apply(b3[b1],b2)===false){break}}}else{for(;b40&&b0[0]&&b0[b1-1])||b1===0||bF.isArray(b0));if(b3){for(;b21?aJ.call(arguments,0):bG;if(!(--bw)){bC.resolveWith(bC,bx)}}}function bz(bF){return function(bG){bB[bF]=arguments.length>1?aJ.call(arguments,0):bG;bC.notifyWith(bE,bB)}}if(e>1){for(;bv
a";bI=bv.getElementsByTagName("*");bF=bv.getElementsByTagName("a")[0];if(!bI||!bI.length||!bF){return{}}bG=av.createElement("select");bx=bG.appendChild(av.createElement("option"));bE=bv.getElementsByTagName("input")[0];bJ={leadingWhitespace:(bv.firstChild.nodeType===3),tbody:!bv.getElementsByTagName("tbody").length,htmlSerialize:!!bv.getElementsByTagName("link").length,style:/top/.test(bF.getAttribute("style")),hrefNormalized:(bF.getAttribute("href")==="/a"),opacity:/^0.55/.test(bF.style.opacity),cssFloat:!!bF.style.cssFloat,checkOn:(bE.value==="on"),optSelected:bx.selected,getSetAttribute:bv.className!=="t",enctype:!!av.createElement("form").enctype,html5Clone:av.createElement("nav").cloneNode(true).outerHTML!=="<:nav>",submitBubbles:true,changeBubbles:true,focusinBubbles:false,deleteExpando:true,noCloneEvent:true,inlineBlockNeedsLayout:false,shrinkWrapBlocks:false,reliableMarginRight:true};bE.checked=true;bJ.noCloneChecked=bE.cloneNode(true).checked;bG.disabled=true;bJ.optDisabled=!bx.disabled;try{delete bv.test}catch(bC){bJ.deleteExpando=false}if(!bv.addEventListener&&bv.attachEvent&&bv.fireEvent){bv.attachEvent("onclick",function(){bJ.noCloneEvent=false});bv.cloneNode(true).fireEvent("onclick")}bE=av.createElement("input");bE.value="t";bE.setAttribute("type","radio");bJ.radioValue=bE.value==="t";bE.setAttribute("checked","checked");bv.appendChild(bE);bD=av.createDocumentFragment();bD.appendChild(bv.lastChild);bJ.checkClone=bD.cloneNode(true).cloneNode(true).lastChild.checked;bJ.appendChecked=bE.checked;bD.removeChild(bE);bD.appendChild(bv);bv.innerHTML="";if(bb.getComputedStyle){bA=av.createElement("div");bA.style.width="0";bA.style.marginRight="0";bv.style.width="2px";bv.appendChild(bA);bJ.reliableMarginRight=(parseInt((bb.getComputedStyle(bA,null)||{marginRight:0}).marginRight,10)||0)===0}if(bv.attachEvent){for(by in {submit:1,change:1,focusin:1}){bB="on"+by;bw=(bB in bv);if(!bw){bv.setAttribute(bB,"return;");bw=(typeof bv[bB]==="function")}bJ[by+"Bubbles"]=bw}}bD.removeChild(bv);bD=bG=bx=bA=bv=bE=null;b(function(){var bM,bU,bV,bT,bN,bO,bL,bS,bR,e,bP,bQ=av.getElementsByTagName("body")[0];if(!bQ){return}bL=1;bS="position:absolute;top:0;left:0;width:1px;height:1px;margin:0;";bR="visibility:hidden;border:0;";e="style='"+bS+"border:5px solid #000;padding:0;'";bP="
";bM=av.createElement("div");bM.style.cssText=bR+"width:0;height:0;position:static;top:0;margin-top:"+bL+"px";bQ.insertBefore(bM,bQ.firstChild);bv=av.createElement("div");bM.appendChild(bv);bv.innerHTML="
t
";bz=bv.getElementsByTagName("td");bw=(bz[0].offsetHeight===0);bz[0].style.display="";bz[1].style.display="none";bJ.reliableHiddenOffsets=bw&&(bz[0].offsetHeight===0);bv.innerHTML="";bv.style.width=bv.style.paddingLeft="1px";b.boxModel=bJ.boxModel=bv.offsetWidth===2;if(typeof bv.style.zoom!=="undefined"){bv.style.display="inline";bv.style.zoom=1;bJ.inlineBlockNeedsLayout=(bv.offsetWidth===2);bv.style.display="";bv.innerHTML="
";bJ.shrinkWrapBlocks=(bv.offsetWidth!==2)}bv.style.cssText=bS+bR;bv.innerHTML=bP;bU=bv.firstChild;bV=bU.firstChild;bN=bU.nextSibling.firstChild.firstChild;bO={doesNotAddBorder:(bV.offsetTop!==5),doesAddBorderForTableAndCells:(bN.offsetTop===5)};bV.style.position="fixed";bV.style.top="20px";bO.fixedPosition=(bV.offsetTop===20||bV.offsetTop===15);bV.style.position=bV.style.top="";bU.style.overflow="hidden";bU.style.position="relative";bO.subtractsBorderForOverflowNotVisible=(bV.offsetTop===-5);bO.doesNotIncludeMarginInBodyOffset=(bQ.offsetTop!==bL);bQ.removeChild(bM);bv=bM=null;b.extend(bJ,bO)});return bJ})();var aS=/^(?:\{.*\}|\[.*\])$/,aA=/([A-Z])/g;b.extend({cache:{},uuid:0,expando:"jQuery"+(b.fn.jquery+Math.random()).replace(/\D/g,""),noData:{embed:true,object:"clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",applet:true},hasData:function(e){e=e.nodeType?b.cache[e[b.expando]]:e[b.expando];return !!e&&!S(e)},data:function(bx,bv,bz,by){if(!b.acceptData(bx)){return}var bG,bA,bD,bE=b.expando,bC=typeof bv==="string",bF=bx.nodeType,e=bF?b.cache:bx,bw=bF?bx[bE]:bx[bE]&&bE,bB=bv==="events";if((!bw||!e[bw]||(!bB&&!by&&!e[bw].data))&&bC&&bz===L){return}if(!bw){if(bF){bx[bE]=bw=++b.uuid}else{bw=bE}}if(!e[bw]){e[bw]={};if(!bF){e[bw].toJSON=b.noop}}if(typeof bv==="object"||typeof bv==="function"){if(by){e[bw]=b.extend(e[bw],bv)}else{e[bw].data=b.extend(e[bw].data,bv)}}bG=bA=e[bw];if(!by){if(!bA.data){bA.data={}}bA=bA.data}if(bz!==L){bA[b.camelCase(bv)]=bz}if(bB&&!bA[bv]){return bG.events}if(bC){bD=bA[bv];if(bD==null){bD=bA[b.camelCase(bv)]}}else{bD=bA}return bD},removeData:function(bx,bv,by){if(!b.acceptData(bx)){return}var bB,bA,bz,bC=b.expando,bD=bx.nodeType,e=bD?b.cache:bx,bw=bD?bx[bC]:bC;if(!e[bw]){return}if(bv){bB=by?e[bw]:e[bw].data;if(bB){if(!b.isArray(bv)){if(bv in bB){bv=[bv]}else{bv=b.camelCase(bv);if(bv in bB){bv=[bv]}else{bv=bv.split(" ")}}}for(bA=0,bz=bv.length;bA-1){return true}}return false},val:function(bx){var e,bv,by,bw=this[0];if(!arguments.length){if(bw){e=b.valHooks[bw.nodeName.toLowerCase()]||b.valHooks[bw.type];if(e&&"get" in e&&(bv=e.get(bw,"value"))!==L){return bv}bv=bw.value;return typeof bv==="string"?bv.replace(aU,""):bv==null?"":bv}return}by=b.isFunction(bx);return this.each(function(bA){var bz=b(this),bB;if(this.nodeType!==1){return}if(by){bB=bx.call(this,bA,bz.val())}else{bB=bx}if(bB==null){bB=""}else{if(typeof bB==="number"){bB+=""}else{if(b.isArray(bB)){bB=b.map(bB,function(bC){return bC==null?"":bC+""})}}}e=b.valHooks[this.nodeName.toLowerCase()]||b.valHooks[this.type];if(!e||!("set" in e)||e.set(this,bB,"value")===L){this.value=bB}})}});b.extend({valHooks:{option:{get:function(e){var bv=e.attributes.value;return !bv||bv.specified?e.value:e.text}},select:{get:function(e){var bA,bv,bz,bx,by=e.selectedIndex,bB=[],bC=e.options,bw=e.type==="select-one";if(by<0){return null}bv=bw?by:0;bz=bw?by+1:bC.length;for(;bv=0});if(!e.length){bv.selectedIndex=-1}return e}}},attrFn:{val:true,css:true,html:true,text:true,data:true,width:true,height:true,offset:true},attr:function(bA,bx,bB,bz){var bw,e,by,bv=bA.nodeType; +if(!bA||bv===3||bv===8||bv===2){return}if(bz&&bx in b.attrFn){return b(bA)[bx](bB)}if(typeof bA.getAttribute==="undefined"){return b.prop(bA,bx,bB)}by=bv!==1||!b.isXMLDoc(bA);if(by){bx=bx.toLowerCase();e=b.attrHooks[bx]||(ao.test(bx)?aY:be)}if(bB!==L){if(bB===null){b.removeAttr(bA,bx);return}else{if(e&&"set" in e&&by&&(bw=e.set(bA,bB,bx))!==L){return bw}else{bA.setAttribute(bx,""+bB);return bB}}}else{if(e&&"get" in e&&by&&(bw=e.get(bA,bx))!==null){return bw}else{bw=bA.getAttribute(bx);return bw===null?L:bw}}},removeAttr:function(bx,bz){var by,bA,bv,e,bw=0;if(bz&&bx.nodeType===1){bA=bz.toLowerCase().split(af);e=bA.length;for(;bw=0)}}})});var bd=/^(?:textarea|input|select)$/i,n=/^([^\.]*)?(?:\.(.+))?$/,J=/\bhover(\.\S+)?\b/,aO=/^key/,bf=/^(?:mouse|contextmenu)|click/,T=/^(?:focusinfocus|focusoutblur)$/,U=/^(\w*)(?:#([\w\-]+))?(?:\.([\w\-]+))?$/,Y=function(e){var bv=U.exec(e);if(bv){bv[1]=(bv[1]||"").toLowerCase();bv[3]=bv[3]&&new RegExp("(?:^|\\s)"+bv[3]+"(?:\\s|$)")}return bv},j=function(bw,e){var bv=bw.attributes||{};return((!e[1]||bw.nodeName.toLowerCase()===e[1])&&(!e[2]||(bv.id||{}).value===e[2])&&(!e[3]||e[3].test((bv["class"]||{}).value)))},bt=function(e){return b.event.special.hover?e:e.replace(J,"mouseenter$1 mouseleave$1")};b.event={add:function(bx,bC,bJ,bA,by){var bD,bB,bK,bI,bH,bF,e,bG,bv,bz,bw,bE;if(bx.nodeType===3||bx.nodeType===8||!bC||!bJ||!(bD=b._data(bx))){return}if(bJ.handler){bv=bJ;bJ=bv.handler}if(!bJ.guid){bJ.guid=b.guid++}bK=bD.events;if(!bK){bD.events=bK={}}bB=bD.handle;if(!bB){bD.handle=bB=function(bL){return typeof b!=="undefined"&&(!bL||b.event.triggered!==bL.type)?b.event.dispatch.apply(bB.elem,arguments):L};bB.elem=bx}bC=b.trim(bt(bC)).split(" ");for(bI=0;bI=0){bG=bG.slice(0,-1);bw=true}if(bG.indexOf(".")>=0){bx=bG.split(".");bG=bx.shift();bx.sort()}if((!bA||b.event.customEvent[bG])&&!b.event.global[bG]){return}bv=typeof bv==="object"?bv[b.expando]?bv:new b.Event(bG,bv):new b.Event(bG);bv.type=bG;bv.isTrigger=true;bv.exclusive=bw;bv.namespace=bx.join(".");bv.namespace_re=bv.namespace?new RegExp("(^|\\.)"+bx.join("\\.(?:.*\\.)?")+"(\\.|$)"):null;by=bG.indexOf(":")<0?"on"+bG:"";if(!bA){e=b.cache;for(bC in e){if(e[bC].events&&e[bC].events[bG]){b.event.trigger(bv,bD,e[bC].handle.elem,true)}}return}bv.result=L;if(!bv.target){bv.target=bA}bD=bD!=null?b.makeArray(bD):[];bD.unshift(bv);bF=b.event.special[bG]||{};if(bF.trigger&&bF.trigger.apply(bA,bD)===false){return}bB=[[bA,bF.bindType||bG]];if(!bJ&&!bF.noBubble&&!b.isWindow(bA)){bI=bF.delegateType||bG;bH=T.test(bI+bG)?bA:bA.parentNode;bz=null;for(;bH;bH=bH.parentNode){bB.push([bH,bI]);bz=bH}if(bz&&bz===bA.ownerDocument){bB.push([bz.defaultView||bz.parentWindow||bb,bI])}}for(bC=0;bCbA){bH.push({elem:this,matches:bz.slice(bA)})}for(bC=0;bC0?this.on(e,null,bx,bw):this.trigger(e)};if(b.attrFn){b.attrFn[e]=true}if(aO.test(e)){b.event.fixHooks[e]=b.event.keyHooks}if(bf.test(e)){b.event.fixHooks[e]=b.event.mouseHooks}}); +/*! + * Sizzle CSS Selector Engine + * Copyright 2011, The Dojo Foundation + * Released under the MIT, BSD, and GPL Licenses. + * More information: http://sizzlejs.com/ + */ +(function(){var bH=/((?:\((?:\([^()]+\)|[^()]+)+\)|\[(?:\[[^\[\]]*\]|['"][^'"]*['"]|[^\[\]'"]+)+\]|\\.|[^ >+~,(\[\\]+)+|[>+~])(\s*,\s*)?((?:.|\r|\n)*)/g,bC="sizcache"+(Math.random()+"").replace(".",""),bI=0,bL=Object.prototype.toString,bB=false,bA=true,bK=/\\/g,bO=/\r\n/g,bQ=/\W/;[0,0].sort(function(){bA=false;return 0});var by=function(bV,e,bY,bZ){bY=bY||[];e=e||av;var b1=e;if(e.nodeType!==1&&e.nodeType!==9){return[]}if(!bV||typeof bV!=="string"){return bY}var bS,b3,b6,bR,b2,b5,b4,bX,bU=true,bT=by.isXML(e),bW=[],b0=bV;do{bH.exec("");bS=bH.exec(b0);if(bS){b0=bS[3];bW.push(bS[1]);if(bS[2]){bR=bS[3];break}}}while(bS);if(bW.length>1&&bD.exec(bV)){if(bW.length===2&&bE.relative[bW[0]]){b3=bM(bW[0]+bW[1],e,bZ)}else{b3=bE.relative[bW[0]]?[e]:by(bW.shift(),e);while(bW.length){bV=bW.shift();if(bE.relative[bV]){bV+=bW.shift()}b3=bM(bV,b3,bZ)}}}else{if(!bZ&&bW.length>1&&e.nodeType===9&&!bT&&bE.match.ID.test(bW[0])&&!bE.match.ID.test(bW[bW.length-1])){b2=by.find(bW.shift(),e,bT);e=b2.expr?by.filter(b2.expr,b2.set)[0]:b2.set[0]}if(e){b2=bZ?{expr:bW.pop(),set:bF(bZ)}:by.find(bW.pop(),bW.length===1&&(bW[0]==="~"||bW[0]==="+")&&e.parentNode?e.parentNode:e,bT);b3=b2.expr?by.filter(b2.expr,b2.set):b2.set;if(bW.length>0){b6=bF(b3)}else{bU=false}while(bW.length){b5=bW.pop();b4=b5;if(!bE.relative[b5]){b5=""}else{b4=bW.pop()}if(b4==null){b4=e}bE.relative[b5](b6,b4,bT)}}else{b6=bW=[]}}if(!b6){b6=b3}if(!b6){by.error(b5||bV)}if(bL.call(b6)==="[object Array]"){if(!bU){bY.push.apply(bY,b6)}else{if(e&&e.nodeType===1){for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&(b6[bX]===true||b6[bX].nodeType===1&&by.contains(e,b6[bX]))){bY.push(b3[bX])}}}else{for(bX=0;b6[bX]!=null;bX++){if(b6[bX]&&b6[bX].nodeType===1){bY.push(b3[bX])}}}}}else{bF(b6,bY)}if(bR){by(bR,b1,bY,bZ);by.uniqueSort(bY)}return bY};by.uniqueSort=function(bR){if(bJ){bB=bA;bR.sort(bJ);if(bB){for(var e=1;e0};by.find=function(bX,e,bY){var bW,bS,bU,bT,bV,bR;if(!bX){return[]}for(bS=0,bU=bE.order.length;bS":function(bW,bR){var bV,bU=typeof bR==="string",bS=0,e=bW.length;if(bU&&!bQ.test(bR)){bR=bR.toLowerCase();for(;bS=0)){if(!bS){e.push(bV)}}else{if(bS){bR[bU]=false}}}}return false},ID:function(e){return e[1].replace(bK,"")},TAG:function(bR,e){return bR[1].replace(bK,"").toLowerCase()},CHILD:function(e){if(e[1]==="nth"){if(!e[2]){by.error(e[0])}e[2]=e[2].replace(/^\+|\s*/g,"");var bR=/(-?)(\d*)(?:n([+\-]?\d*))?/.exec(e[2]==="even"&&"2n"||e[2]==="odd"&&"2n+1"||!/\D/.test(e[2])&&"0n+"+e[2]||e[2]);e[2]=(bR[1]+(bR[2]||1))-0;e[3]=bR[3]-0}else{if(e[2]){by.error(e[0])}}e[0]=bI++;return e},ATTR:function(bU,bR,bS,e,bV,bW){var bT=bU[1]=bU[1].replace(bK,"");if(!bW&&bE.attrMap[bT]){bU[1]=bE.attrMap[bT]}bU[4]=(bU[4]||bU[5]||"").replace(bK,"");if(bU[2]==="~="){bU[4]=" "+bU[4]+" "}return bU},PSEUDO:function(bU,bR,bS,e,bV){if(bU[1]==="not"){if((bH.exec(bU[3])||"").length>1||/^\w/.test(bU[3])){bU[3]=by(bU[3],null,null,bR)}else{var bT=by.filter(bU[3],bR,bS,true^bV);if(!bS){e.push.apply(e,bT)}return false}}else{if(bE.match.POS.test(bU[0])||bE.match.CHILD.test(bU[0])){return true}}return bU},POS:function(e){e.unshift(true);return e}},filters:{enabled:function(e){return e.disabled===false&&e.type!=="hidden"},disabled:function(e){return e.disabled===true},checked:function(e){return e.checked===true},selected:function(e){if(e.parentNode){e.parentNode.selectedIndex}return e.selected===true},parent:function(e){return !!e.firstChild},empty:function(e){return !e.firstChild},has:function(bS,bR,e){return !!by(e[3],bS).length},header:function(e){return(/h\d/i).test(e.nodeName)},text:function(bS){var e=bS.getAttribute("type"),bR=bS.type;return bS.nodeName.toLowerCase()==="input"&&"text"===bR&&(e===bR||e===null)},radio:function(e){return e.nodeName.toLowerCase()==="input"&&"radio"===e.type},checkbox:function(e){return e.nodeName.toLowerCase()==="input"&&"checkbox"===e.type},file:function(e){return e.nodeName.toLowerCase()==="input"&&"file"===e.type},password:function(e){return e.nodeName.toLowerCase()==="input"&&"password"===e.type},submit:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"submit"===bR.type},image:function(e){return e.nodeName.toLowerCase()==="input"&&"image"===e.type},reset:function(bR){var e=bR.nodeName.toLowerCase();return(e==="input"||e==="button")&&"reset"===bR.type},button:function(bR){var e=bR.nodeName.toLowerCase();return e==="input"&&"button"===bR.type||e==="button"},input:function(e){return(/input|select|textarea|button/i).test(e.nodeName)},focus:function(e){return e===e.ownerDocument.activeElement}},setFilters:{first:function(bR,e){return e===0},last:function(bS,bR,e,bT){return bR===bT.length-1},even:function(bR,e){return e%2===0},odd:function(bR,e){return e%2===1 +},lt:function(bS,bR,e){return bRe[3]-0},nth:function(bS,bR,e){return e[3]-0===bR},eq:function(bS,bR,e){return e[3]-0===bR}},filter:{PSEUDO:function(bS,bX,bW,bY){var e=bX[1],bR=bE.filters[e];if(bR){return bR(bS,bW,bX,bY)}else{if(e==="contains"){return(bS.textContent||bS.innerText||bw([bS])||"").indexOf(bX[3])>=0}else{if(e==="not"){var bT=bX[3];for(var bV=0,bU=bT.length;bV=0)}}},ID:function(bR,e){return bR.nodeType===1&&bR.getAttribute("id")===e},TAG:function(bR,e){return(e==="*"&&bR.nodeType===1)||!!bR.nodeName&&bR.nodeName.toLowerCase()===e},CLASS:function(bR,e){return(" "+(bR.className||bR.getAttribute("class"))+" ").indexOf(e)>-1},ATTR:function(bV,bT){var bS=bT[1],e=by.attr?by.attr(bV,bS):bE.attrHandle[bS]?bE.attrHandle[bS](bV):bV[bS]!=null?bV[bS]:bV.getAttribute(bS),bW=e+"",bU=bT[2],bR=bT[4];return e==null?bU==="!=":!bU&&by.attr?e!=null:bU==="="?bW===bR:bU==="*="?bW.indexOf(bR)>=0:bU==="~="?(" "+bW+" ").indexOf(bR)>=0:!bR?bW&&e!==false:bU==="!="?bW!==bR:bU==="^="?bW.indexOf(bR)===0:bU==="$="?bW.substr(bW.length-bR.length)===bR:bU==="|="?bW===bR||bW.substr(0,bR.length+1)===bR+"-":false},POS:function(bU,bR,bS,bV){var e=bR[2],bT=bE.setFilters[e];if(bT){return bT(bU,bS,bR,bV)}}}};var bD=bE.match.POS,bx=function(bR,e){return"\\"+(e-0+1)};for(var bz in bE.match){bE.match[bz]=new RegExp(bE.match[bz].source+(/(?![^\[]*\])(?![^\(]*\))/.source));bE.leftMatch[bz]=new RegExp(/(^(?:.|\r|\n)*?)/.source+bE.match[bz].source.replace(/\\(\d+)/g,bx))}var bF=function(bR,e){bR=Array.prototype.slice.call(bR,0);if(e){e.push.apply(e,bR);return e}return bR};try{Array.prototype.slice.call(av.documentElement.childNodes,0)[0].nodeType}catch(bP){bF=function(bU,bT){var bS=0,bR=bT||[];if(bL.call(bU)==="[object Array]"){Array.prototype.push.apply(bR,bU)}else{if(typeof bU.length==="number"){for(var e=bU.length;bS";e.insertBefore(bR,e.firstChild);if(av.getElementById(bS)){bE.find.ID=function(bU,bV,bW){if(typeof bV.getElementById!=="undefined"&&!bW){var bT=bV.getElementById(bU[1]);return bT?bT.id===bU[1]||typeof bT.getAttributeNode!=="undefined"&&bT.getAttributeNode("id").nodeValue===bU[1]?[bT]:L:[]}};bE.filter.ID=function(bV,bT){var bU=typeof bV.getAttributeNode!=="undefined"&&bV.getAttributeNode("id");return bV.nodeType===1&&bU&&bU.nodeValue===bT}}e.removeChild(bR);e=bR=null})();(function(){var e=av.createElement("div");e.appendChild(av.createComment(""));if(e.getElementsByTagName("*").length>0){bE.find.TAG=function(bR,bV){var bU=bV.getElementsByTagName(bR[1]);if(bR[1]==="*"){var bT=[];for(var bS=0;bU[bS];bS++){if(bU[bS].nodeType===1){bT.push(bU[bS])}}bU=bT}return bU}}e.innerHTML="";if(e.firstChild&&typeof e.firstChild.getAttribute!=="undefined"&&e.firstChild.getAttribute("href")!=="#"){bE.attrHandle.href=function(bR){return bR.getAttribute("href",2)}}e=null})();if(av.querySelectorAll){(function(){var e=by,bT=av.createElement("div"),bS="__sizzle__";bT.innerHTML="

";if(bT.querySelectorAll&&bT.querySelectorAll(".TEST").length===0){return}by=function(b4,bV,bZ,b3){bV=bV||av;if(!b3&&!by.isXML(bV)){var b2=/^(\w+$)|^\.([\w\-]+$)|^#([\w\-]+$)/.exec(b4);if(b2&&(bV.nodeType===1||bV.nodeType===9)){if(b2[1]){return bF(bV.getElementsByTagName(b4),bZ)}else{if(b2[2]&&bE.find.CLASS&&bV.getElementsByClassName){return bF(bV.getElementsByClassName(b2[2]),bZ)}}}if(bV.nodeType===9){if(b4==="body"&&bV.body){return bF([bV.body],bZ)}else{if(b2&&b2[3]){var bY=bV.getElementById(b2[3]);if(bY&&bY.parentNode){if(bY.id===b2[3]){return bF([bY],bZ)}}else{return bF([],bZ)}}}try{return bF(bV.querySelectorAll(b4),bZ)}catch(b0){}}else{if(bV.nodeType===1&&bV.nodeName.toLowerCase()!=="object"){var bW=bV,bX=bV.getAttribute("id"),bU=bX||bS,b6=bV.parentNode,b5=/^\s*[+~]/.test(b4);if(!bX){bV.setAttribute("id",bU)}else{bU=bU.replace(/'/g,"\\$&")}if(b5&&b6){bV=bV.parentNode}try{if(!b5||b6){return bF(bV.querySelectorAll("[id='"+bU+"'] "+b4),bZ)}}catch(b1){}finally{if(!bX){bW.removeAttribute("id")}}}}}return e(b4,bV,bZ,b3)};for(var bR in e){by[bR]=e[bR]}bT=null})()}(function(){var e=av.documentElement,bS=e.matchesSelector||e.mozMatchesSelector||e.webkitMatchesSelector||e.msMatchesSelector;if(bS){var bU=!bS.call(av.createElement("div"),"div"),bR=false;try{bS.call(av.documentElement,"[test!='']:sizzle")}catch(bT){bR=true}by.matchesSelector=function(bW,bY){bY=bY.replace(/\=\s*([^'"\]]*)\s*\]/g,"='$1']");if(!by.isXML(bW)){try{if(bR||!bE.match.PSEUDO.test(bY)&&!/!=/.test(bY)){var bV=bS.call(bW,bY);if(bV||!bU||bW.document&&bW.document.nodeType!==11){return bV}}}catch(bX){}}return by(bY,null,null,[bW]).length>0}}})();(function(){var e=av.createElement("div");e.innerHTML="
";if(!e.getElementsByClassName||e.getElementsByClassName("e").length===0){return}e.lastChild.className="e";if(e.getElementsByClassName("e").length===1){return}bE.order.splice(1,0,"CLASS");bE.find.CLASS=function(bR,bS,bT){if(typeof bS.getElementsByClassName!=="undefined"&&!bT){return bS.getElementsByClassName(bR[1])}};e=null})();function bv(bR,bW,bV,bZ,bX,bY){for(var bT=0,bS=bZ.length;bT0){bU=e;break}}}e=e[bR]}bZ[bT]=bU}}}if(av.documentElement.contains){by.contains=function(bR,e){return bR!==e&&(bR.contains?bR.contains(e):true)}}else{if(av.documentElement.compareDocumentPosition){by.contains=function(bR,e){return !!(bR.compareDocumentPosition(e)&16)}}else{by.contains=function(){return false}}}by.isXML=function(e){var bR=(e?e.ownerDocument||e:0).documentElement;return bR?bR.nodeName!=="HTML":false};var bM=function(bS,e,bW){var bV,bX=[],bU="",bY=e.nodeType?[e]:e;while((bV=bE.match.PSEUDO.exec(bS))){bU+=bV[0];bS=bS.replace(bE.match.PSEUDO,"")}bS=bE.relative[bS]?bS+"*":bS;for(var bT=0,bR=bY.length;bT0){for(bB=bA;bB=0:b.filter(e,this).length>0:this.filter(e).length>0)},closest:function(by,bx){var bv=[],bw,e,bz=this[0];if(b.isArray(by)){var bB=1;while(bz&&bz.ownerDocument&&bz!==bx){for(bw=0;bw-1:b.find.matchesSelector(bz,by)){bv.push(bz);break}else{bz=bz.parentNode;if(!bz||!bz.ownerDocument||bz===bx||bz.nodeType===11){break}}}}bv=bv.length>1?b.unique(bv):bv;return this.pushStack(bv,"closest",by)},index:function(e){if(!e){return(this[0]&&this[0].parentNode)?this.prevAll().length:-1}if(typeof e==="string"){return b.inArray(this[0],b(e))}return b.inArray(e.jquery?e[0]:e,this)},add:function(e,bv){var bx=typeof e==="string"?b(e,bv):b.makeArray(e&&e.nodeType?[e]:e),bw=b.merge(this.get(),bx);return this.pushStack(C(bx[0])||C(bw[0])?bw:b.unique(bw))},andSelf:function(){return this.add(this.prevObject)}});function C(e){return !e||!e.parentNode||e.parentNode.nodeType===11}b.each({parent:function(bv){var e=bv.parentNode;return e&&e.nodeType!==11?e:null},parents:function(e){return b.dir(e,"parentNode")},parentsUntil:function(bv,e,bw){return b.dir(bv,"parentNode",bw)},next:function(e){return b.nth(e,2,"nextSibling")},prev:function(e){return b.nth(e,2,"previousSibling")},nextAll:function(e){return b.dir(e,"nextSibling")},prevAll:function(e){return b.dir(e,"previousSibling")},nextUntil:function(bv,e,bw){return b.dir(bv,"nextSibling",bw)},prevUntil:function(bv,e,bw){return b.dir(bv,"previousSibling",bw)},siblings:function(e){return b.sibling(e.parentNode.firstChild,e)},children:function(e){return b.sibling(e.firstChild)},contents:function(e){return b.nodeName(e,"iframe")?e.contentDocument||e.contentWindow.document:b.makeArray(e.childNodes)}},function(e,bv){b.fn[e]=function(by,bw){var bx=b.map(this,bv,by);if(!ab.test(e)){bw=by}if(bw&&typeof bw==="string"){bx=b.filter(bw,bx)}bx=this.length>1&&!ay[e]?b.unique(bx):bx;if((this.length>1||a9.test(bw))&&aq.test(e)){bx=bx.reverse()}return this.pushStack(bx,e,P.call(arguments).join(","))}});b.extend({filter:function(bw,e,bv){if(bv){bw=":not("+bw+")"}return e.length===1?b.find.matchesSelector(e[0],bw)?[e[0]]:[]:b.find.matches(bw,e)},dir:function(bw,bv,by){var e=[],bx=bw[bv];while(bx&&bx.nodeType!==9&&(by===L||bx.nodeType!==1||!b(bx).is(by))){if(bx.nodeType===1){e.push(bx)}bx=bx[bv]}return e},nth:function(by,e,bw,bx){e=e||1;var bv=0;for(;by;by=by[bw]){if(by.nodeType===1&&++bv===e){break}}return by},sibling:function(bw,bv){var e=[];for(;bw;bw=bw.nextSibling){if(bw.nodeType===1&&bw!==bv){e.push(bw)}}return e}});function aG(bx,bw,e){bw=bw||0;if(b.isFunction(bw)){return b.grep(bx,function(bz,by){var bA=!!bw.call(bz,by,bz);return bA===e})}else{if(bw.nodeType){return b.grep(bx,function(bz,by){return(bz===bw)===e})}else{if(typeof bw==="string"){var bv=b.grep(bx,function(by){return by.nodeType===1});if(bp.test(bw)){return b.filter(bw,bv,!e)}else{bw=b.filter(bw,bv)}}}}return b.grep(bx,function(bz,by){return(b.inArray(bz,bw)>=0)===e})}function a(e){var bw=aR.split("|"),bv=e.createDocumentFragment();if(bv.createElement){while(bw.length){bv.createElement(bw.pop())}}return bv}var aR="abbr|article|aside|audio|canvas|datalist|details|figcaption|figure|footer|header|hgroup|mark|meter|nav|output|progress|section|summary|time|video",ag=/ jQuery\d+="(?:\d+|null)"/g,ar=/^\s+/,R=/<(?!area|br|col|embed|hr|img|input|link|meta|param)(([\w:]+)[^>]*)\/>/ig,d=/<([\w:]+)/,w=/",""],legend:[1,"
","
"],thead:[1,"","
"],tr:[2,"","
"],td:[3,"","
"],col:[2,"","
"],area:[1,"",""],_default:[0,"",""]},ac=a(av); +ax.optgroup=ax.option;ax.tbody=ax.tfoot=ax.colgroup=ax.caption=ax.thead;ax.th=ax.td;if(!b.support.htmlSerialize){ax._default=[1,"div
","
"]}b.fn.extend({text:function(e){if(b.isFunction(e)){return this.each(function(bw){var bv=b(this);bv.text(e.call(this,bw,bv.text()))})}if(typeof e!=="object"&&e!==L){return this.empty().append((this[0]&&this[0].ownerDocument||av).createTextNode(e))}return b.text(this)},wrapAll:function(e){if(b.isFunction(e)){return this.each(function(bw){b(this).wrapAll(e.call(this,bw))})}if(this[0]){var bv=b(e,this[0].ownerDocument).eq(0).clone(true);if(this[0].parentNode){bv.insertBefore(this[0])}bv.map(function(){var bw=this;while(bw.firstChild&&bw.firstChild.nodeType===1){bw=bw.firstChild}return bw}).append(this)}return this},wrapInner:function(e){if(b.isFunction(e)){return this.each(function(bv){b(this).wrapInner(e.call(this,bv))})}return this.each(function(){var bv=b(this),bw=bv.contents();if(bw.length){bw.wrapAll(e)}else{bv.append(e)}})},wrap:function(e){var bv=b.isFunction(e);return this.each(function(bw){b(this).wrapAll(bv?e.call(this,bw):e)})},unwrap:function(){return this.parent().each(function(){if(!b.nodeName(this,"body")){b(this).replaceWith(this.childNodes)}}).end()},append:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.appendChild(e)}})},prepend:function(){return this.domManip(arguments,true,function(e){if(this.nodeType===1){this.insertBefore(e,this.firstChild)}})},before:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this)})}else{if(arguments.length){var e=b.clean(arguments);e.push.apply(e,this.toArray());return this.pushStack(e,"before",arguments)}}},after:function(){if(this[0]&&this[0].parentNode){return this.domManip(arguments,false,function(bv){this.parentNode.insertBefore(bv,this.nextSibling)})}else{if(arguments.length){var e=this.pushStack(this,"after",arguments);e.push.apply(e,b.clean(arguments));return e}}},remove:function(e,bx){for(var bv=0,bw;(bw=this[bv])!=null;bv++){if(!e||b.filter(e,[bw]).length){if(!bx&&bw.nodeType===1){b.cleanData(bw.getElementsByTagName("*"));b.cleanData([bw])}if(bw.parentNode){bw.parentNode.removeChild(bw)}}}return this},empty:function(){for(var e=0,bv;(bv=this[e])!=null;e++){if(bv.nodeType===1){b.cleanData(bv.getElementsByTagName("*"))}while(bv.firstChild){bv.removeChild(bv.firstChild)}}return this},clone:function(bv,e){bv=bv==null?false:bv;e=e==null?bv:e;return this.map(function(){return b.clone(this,bv,e)})},html:function(bx){if(bx===L){return this[0]&&this[0].nodeType===1?this[0].innerHTML.replace(ag,""):null}else{if(typeof bx==="string"&&!ae.test(bx)&&(b.support.leadingWhitespace||!ar.test(bx))&&!ax[(d.exec(bx)||["",""])[1].toLowerCase()]){bx=bx.replace(R,"<$1>");try{for(var bw=0,bv=this.length;bw1&&bw0?this.clone(true):this).get();b(bC[bA])[bv](by);bz=bz.concat(by)}return this.pushStack(bz,e,bC.selector)}}});function bg(e){if(typeof e.getElementsByTagName!=="undefined"){return e.getElementsByTagName("*")}else{if(typeof e.querySelectorAll!=="undefined"){return e.querySelectorAll("*")}else{return[]}}}function az(e){if(e.type==="checkbox"||e.type==="radio"){e.defaultChecked=e.checked}}function E(e){var bv=(e.nodeName||"").toLowerCase();if(bv==="input"){az(e)}else{if(bv!=="script"&&typeof e.getElementsByTagName!=="undefined"){b.grep(e.getElementsByTagName("input"),az)}}}function al(e){var bv=av.createElement("div");ac.appendChild(bv);bv.innerHTML=e.outerHTML;return bv.firstChild}b.extend({clone:function(by,bA,bw){var e,bv,bx,bz=b.support.html5Clone||!ah.test("<"+by.nodeName)?by.cloneNode(true):al(by);if((!b.support.noCloneEvent||!b.support.noCloneChecked)&&(by.nodeType===1||by.nodeType===11)&&!b.isXMLDoc(by)){ai(by,bz);e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){if(bv[bx]){ai(e[bx],bv[bx])}}}if(bA){t(by,bz);if(bw){e=bg(by);bv=bg(bz);for(bx=0;e[bx];++bx){t(e[bx],bv[bx])}}}e=bv=null;return bz},clean:function(bw,by,bH,bA){var bF;by=by||av;if(typeof by.createElement==="undefined"){by=by.ownerDocument||by[0]&&by[0].ownerDocument||av}var bI=[],bB;for(var bE=0,bz;(bz=bw[bE])!=null;bE++){if(typeof bz==="number"){bz+=""}if(!bz){continue}if(typeof bz==="string"){if(!W.test(bz)){bz=by.createTextNode(bz)}else{bz=bz.replace(R,"<$1>");var bK=(d.exec(bz)||["",""])[1].toLowerCase(),bx=ax[bK]||ax._default,bD=bx[0],bv=by.createElement("div");if(by===av){ac.appendChild(bv)}else{a(by).appendChild(bv)}bv.innerHTML=bx[1]+bz+bx[2];while(bD--){bv=bv.lastChild}if(!b.support.tbody){var e=w.test(bz),bC=bK==="table"&&!e?bv.firstChild&&bv.firstChild.childNodes:bx[1]===""&&!e?bv.childNodes:[];for(bB=bC.length-1;bB>=0;--bB){if(b.nodeName(bC[bB],"tbody")&&!bC[bB].childNodes.length){bC[bB].parentNode.removeChild(bC[bB])}}}if(!b.support.leadingWhitespace&&ar.test(bz)){bv.insertBefore(by.createTextNode(ar.exec(bz)[0]),bv.firstChild)}bz=bv.childNodes}}var bG;if(!b.support.appendChecked){if(bz[0]&&typeof(bG=bz.length)==="number"){for(bB=0;bB=0){return bx+"px"}}else{return bx}}}});if(!b.support.opacity){b.cssHooks.opacity={get:function(bv,e){return au.test((e&&bv.currentStyle?bv.currentStyle.filter:bv.style.filter)||"")?(parseFloat(RegExp.$1)/100)+"":e?"1":""},set:function(by,bz){var bx=by.style,bv=by.currentStyle,e=b.isNumeric(bz)?"alpha(opacity="+bz*100+")":"",bw=bv&&bv.filter||bx.filter||"";bx.zoom=1;if(bz>=1&&b.trim(bw.replace(ak,""))===""){bx.removeAttribute("filter");if(bv&&!bv.filter){return}}bx.filter=ak.test(bw)?bw.replace(ak,e):bw+" "+e}}}b(function(){if(!b.support.reliableMarginRight){b.cssHooks.marginRight={get:function(bw,bv){var e;b.swap(bw,{display:"inline-block"},function(){if(bv){e=Z(bw,"margin-right","marginRight")}else{e=bw.style.marginRight}});return e}}}});if(av.defaultView&&av.defaultView.getComputedStyle){aI=function(by,bw){var bv,bx,e;bw=bw.replace(z,"-$1").toLowerCase();if((bx=by.ownerDocument.defaultView)&&(e=bx.getComputedStyle(by,null))){bv=e.getPropertyValue(bw);if(bv===""&&!b.contains(by.ownerDocument.documentElement,by)){bv=b.style(by,bw)}}return bv}}if(av.documentElement.currentStyle){aX=function(bz,bw){var bA,e,by,bv=bz.currentStyle&&bz.currentStyle[bw],bx=bz.style;if(bv===null&&bx&&(by=bx[bw])){bv=by}if(!bc.test(bv)&&bn.test(bv)){bA=bx.left;e=bz.runtimeStyle&&bz.runtimeStyle.left;if(e){bz.runtimeStyle.left=bz.currentStyle.left}bx.left=bw==="fontSize"?"1em":(bv||0);bv=bx.pixelLeft+"px";bx.left=bA;if(e){bz.runtimeStyle.left=e}}return bv===""?"auto":bv}}Z=aI||aX;function p(by,bw,bv){var bA=bw==="width"?by.offsetWidth:by.offsetHeight,bz=bw==="width"?an:a1,bx=0,e=bz.length; +if(bA>0){if(bv!=="border"){for(;bx)<[^<]*)*<\/script>/gi,q=/^(?:select|textarea)/i,h=/\s+/,br=/([?&])_=[^&]*/,K=/^([\w\+\.\-]+:)(?:\/\/([^\/?#:]*)(?::(\d+))?)?/,A=b.fn.load,aa={},r={},aE,s,aV=["*/"]+["*"];try{aE=bl.href}catch(aw){aE=av.createElement("a");aE.href="";aE=aE.href}s=K.exec(aE.toLowerCase())||[];function f(e){return function(by,bA){if(typeof by!=="string"){bA=by;by="*"}if(b.isFunction(bA)){var bx=by.toLowerCase().split(h),bw=0,bz=bx.length,bv,bB,bC;for(;bw=0){var e=bw.slice(by,bw.length);bw=bw.slice(0,by)}var bx="GET";if(bz){if(b.isFunction(bz)){bA=bz;bz=L}else{if(typeof bz==="object"){bz=b.param(bz,b.ajaxSettings.traditional);bx="POST"}}}var bv=this;b.ajax({url:bw,type:bx,dataType:"html",data:bz,complete:function(bC,bB,bD){bD=bC.responseText;if(bC.isResolved()){bC.done(function(bE){bD=bE});bv.html(e?b("
").append(bD.replace(a6,"")).find(e):bD)}if(bA){bv.each(bA,[bD,bB,bC])}}});return this},serialize:function(){return b.param(this.serializeArray())},serializeArray:function(){return this.map(function(){return this.elements?b.makeArray(this.elements):this}).filter(function(){return this.name&&!this.disabled&&(this.checked||q.test(this.nodeName)||aZ.test(this.type))}).map(function(e,bv){var bw=b(this).val();return bw==null?null:b.isArray(bw)?b.map(bw,function(by,bx){return{name:bv.name,value:by.replace(bs,"\r\n")}}):{name:bv.name,value:bw.replace(bs,"\r\n")}}).get()}});b.each("ajaxStart ajaxStop ajaxComplete ajaxError ajaxSuccess ajaxSend".split(" "),function(e,bv){b.fn[bv]=function(bw){return this.on(bv,bw)}});b.each(["get","post"],function(e,bv){b[bv]=function(bw,by,bz,bx){if(b.isFunction(by)){bx=bx||bz;bz=by;by=L}return b.ajax({type:bv,url:bw,data:by,success:bz,dataType:bx})}});b.extend({getScript:function(e,bv){return b.get(e,L,bv,"script")},getJSON:function(e,bv,bw){return b.get(e,bv,bw,"json")},ajaxSetup:function(bv,e){if(e){am(bv,b.ajaxSettings)}else{e=bv;bv=b.ajaxSettings}am(bv,e);return bv},ajaxSettings:{url:aE,isLocal:aM.test(s[1]),global:true,type:"GET",contentType:"application/x-www-form-urlencoded",processData:true,async:true,accepts:{xml:"application/xml, text/xml",html:"text/html",text:"text/plain",json:"application/json, text/javascript","*":aV},contents:{xml:/xml/,html:/html/,json:/json/},responseFields:{xml:"responseXML",text:"responseText"},converters:{"* text":bb.String,"text html":true,"text json":b.parseJSON,"text xml":b.parseXML},flatOptions:{context:true,url:true}},ajaxPrefilter:f(aa),ajaxTransport:f(r),ajax:function(bz,bx){if(typeof bz==="object"){bx=bz;bz=L}bx=bx||{};var bD=b.ajaxSetup({},bx),bS=bD.context||bD,bG=bS!==bD&&(bS.nodeType||bS instanceof b)?b(bS):b.event,bR=b.Deferred(),bN=b.Callbacks("once memory"),bB=bD.statusCode||{},bC,bH={},bO={},bQ,by,bL,bE,bI,bA=0,bw,bK,bJ={readyState:0,setRequestHeader:function(bT,bU){if(!bA){var e=bT.toLowerCase();bT=bO[e]=bO[e]||bT;bH[bT]=bU}return this},getAllResponseHeaders:function(){return bA===2?bQ:null},getResponseHeader:function(bT){var e;if(bA===2){if(!by){by={};while((e=aD.exec(bQ))){by[e[1].toLowerCase()]=e[2]}}e=by[bT.toLowerCase()]}return e===L?null:e},overrideMimeType:function(e){if(!bA){bD.mimeType=e}return this},abort:function(e){e=e||"abort";if(bL){bL.abort(e)}bF(0,e);return this}};function bF(bZ,bU,b0,bW){if(bA===2){return}bA=2;if(bE){clearTimeout(bE)}bL=L;bQ=bW||"";bJ.readyState=bZ>0?4:0;var bT,b4,b3,bX=bU,bY=b0?bj(bD,bJ,b0):L,bV,b2;if(bZ>=200&&bZ<300||bZ===304){if(bD.ifModified){if((bV=bJ.getResponseHeader("Last-Modified"))){b.lastModified[bC]=bV}if((b2=bJ.getResponseHeader("Etag"))){b.etag[bC]=b2}}if(bZ===304){bX="notmodified";bT=true}else{try{b4=G(bD,bY);bX="success";bT=true}catch(b1){bX="parsererror";b3=b1}}}else{b3=bX;if(!bX||bZ){bX="error";if(bZ<0){bZ=0}}}bJ.status=bZ;bJ.statusText=""+(bU||bX);if(bT){bR.resolveWith(bS,[b4,bX,bJ])}else{bR.rejectWith(bS,[bJ,bX,b3])}bJ.statusCode(bB);bB=L;if(bw){bG.trigger("ajax"+(bT?"Success":"Error"),[bJ,bD,bT?b4:b3])}bN.fireWith(bS,[bJ,bX]);if(bw){bG.trigger("ajaxComplete",[bJ,bD]);if(!(--b.active)){b.event.trigger("ajaxStop")}}}bR.promise(bJ);bJ.success=bJ.done;bJ.error=bJ.fail;bJ.complete=bN.add;bJ.statusCode=function(bT){if(bT){var e;if(bA<2){for(e in bT){bB[e]=[bB[e],bT[e]]}}else{e=bT[bJ.status];bJ.then(e,e)}}return this};bD.url=((bz||bD.url)+"").replace(bq,"").replace(c,s[1]+"//");bD.dataTypes=b.trim(bD.dataType||"*").toLowerCase().split(h);if(bD.crossDomain==null){bI=K.exec(bD.url.toLowerCase());bD.crossDomain=!!(bI&&(bI[1]!=s[1]||bI[2]!=s[2]||(bI[3]||(bI[1]==="http:"?80:443))!=(s[3]||(s[1]==="http:"?80:443))))}if(bD.data&&bD.processData&&typeof bD.data!=="string"){bD.data=b.param(bD.data,bD.traditional)}aW(aa,bD,bx,bJ);if(bA===2){return false}bw=bD.global;bD.type=bD.type.toUpperCase();bD.hasContent=!aQ.test(bD.type);if(bw&&b.active++===0){b.event.trigger("ajaxStart")}if(!bD.hasContent){if(bD.data){bD.url+=(M.test(bD.url)?"&":"?")+bD.data;delete bD.data}bC=bD.url;if(bD.cache===false){var bv=b.now(),bP=bD.url.replace(br,"$1_="+bv);bD.url=bP+((bP===bD.url)?(M.test(bD.url)?"&":"?")+"_="+bv:"")}}if(bD.data&&bD.hasContent&&bD.contentType!==false||bx.contentType){bJ.setRequestHeader("Content-Type",bD.contentType)}if(bD.ifModified){bC=bC||bD.url;if(b.lastModified[bC]){bJ.setRequestHeader("If-Modified-Since",b.lastModified[bC])}if(b.etag[bC]){bJ.setRequestHeader("If-None-Match",b.etag[bC])}}bJ.setRequestHeader("Accept",bD.dataTypes[0]&&bD.accepts[bD.dataTypes[0]]?bD.accepts[bD.dataTypes[0]]+(bD.dataTypes[0]!=="*"?", "+aV+"; q=0.01":""):bD.accepts["*"]);for(bK in bD.headers){bJ.setRequestHeader(bK,bD.headers[bK])}if(bD.beforeSend&&(bD.beforeSend.call(bS,bJ,bD)===false||bA===2)){bJ.abort();return false}for(bK in {success:1,error:1,complete:1}){bJ[bK](bD[bK])}bL=aW(r,bD,bx,bJ);if(!bL){bF(-1,"No Transport")}else{bJ.readyState=1;if(bw){bG.trigger("ajaxSend",[bJ,bD])}if(bD.async&&bD.timeout>0){bE=setTimeout(function(){bJ.abort("timeout")},bD.timeout)}try{bA=1;bL.send(bH,bF)}catch(bM){if(bA<2){bF(-1,bM)}else{throw bM}}}return bJ},param:function(e,bw){var bv=[],by=function(bz,bA){bA=b.isFunction(bA)?bA():bA;bv[bv.length]=encodeURIComponent(bz)+"="+encodeURIComponent(bA)};if(bw===L){bw=b.ajaxSettings.traditional}if(b.isArray(e)||(e.jquery&&!b.isPlainObject(e))){b.each(e,function(){by(this.name,this.value)})}else{for(var bx in e){v(bx,e[bx],bw,by)}}return bv.join("&").replace(k,"+")}});function v(bw,by,bv,bx){if(b.isArray(by)){b.each(by,function(bA,bz){if(bv||ap.test(bw)){bx(bw,bz)}else{v(bw+"["+(typeof bz==="object"||b.isArray(bz)?bA:"")+"]",bz,bv,bx)}})}else{if(!bv&&by!=null&&typeof by==="object"){for(var e in by){v(bw+"["+e+"]",by[e],bv,bx)}}else{bx(bw,by)}}}b.extend({active:0,lastModified:{},etag:{}});function bj(bD,bC,bz){var bv=bD.contents,bB=bD.dataTypes,bw=bD.responseFields,by,bA,bx,e;for(bA in bw){if(bA in bz){bC[bw[bA]]=bz[bA]}}while(bB[0]==="*"){bB.shift();if(by===L){by=bD.mimeType||bC.getResponseHeader("content-type")}}if(by){for(bA in bv){if(bv[bA]&&bv[bA].test(by)){bB.unshift(bA);break}}}if(bB[0] in bz){bx=bB[0]}else{for(bA in bz){if(!bB[0]||bD.converters[bA+" "+bB[0]]){bx=bA;break}if(!e){e=bA}}bx=bx||e}if(bx){if(bx!==bB[0]){bB.unshift(bx)}return bz[bx]}}function G(bH,bz){if(bH.dataFilter){bz=bH.dataFilter(bz,bH.dataType)}var bD=bH.dataTypes,bG={},bA,bE,bw=bD.length,bB,bC=bD[0],bx,by,bF,bv,e;for(bA=1;bA=bw.duration+this.startTime){this.now=this.end;this.pos=this.state=1;this.update();bw.animatedProperties[this.prop]=true;for(bA in bw.animatedProperties){if(bw.animatedProperties[bA]!==true){e=false}}if(e){if(bw.overflow!=null&&!b.support.shrinkWrapBlocks){b.each(["","X","Y"],function(bC,bD){bz.style["overflow"+bD]=bw.overflow[bC]})}if(bw.hide){b(bz).hide()}if(bw.hide||bw.show){for(bA in bw.animatedProperties){b.style(bz,bA,bw.orig[bA]);b.removeData(bz,"fxshow"+bA,true);b.removeData(bz,"toggle"+bA,true)}}bv=bw.complete;if(bv){bw.complete=false;bv.call(bz)}}return false}else{if(bw.duration==Infinity){this.now=bx}else{bB=bx-this.startTime;this.state=bB/bw.duration;this.pos=b.easing[bw.animatedProperties[this.prop]](this.state,bB,0,1,bw.duration);this.now=this.start+((this.end-this.start)*this.pos)}this.update()}return true}};b.extend(b.fx,{tick:function(){var bw,bv=b.timers,e=0;for(;e").appendTo(e),bw=bv.css("display");bv.remove();if(bw==="none"||bw===""){if(!a8){a8=av.createElement("iframe");a8.frameBorder=a8.width=a8.height=0}e.appendChild(a8);if(!m||!a8.createElement){m=(a8.contentWindow||a8.contentDocument).document;m.write((av.compatMode==="CSS1Compat"?"":"")+"");m.close()}bv=m.createElement(bx);m.body.appendChild(bv);bw=b.css(bv,"display");e.removeChild(a8)}Q[bx]=bw}return Q[bx]}var V=/^t(?:able|d|h)$/i,ad=/^(?:body|html)$/i;if("getBoundingClientRect" in av.documentElement){b.fn.offset=function(bI){var by=this[0],bB;if(bI){return this.each(function(e){b.offset.setOffset(this,bI,e)})}if(!by||!by.ownerDocument){return null}if(by===by.ownerDocument.body){return b.offset.bodyOffset(by)}try{bB=by.getBoundingClientRect()}catch(bF){}var bH=by.ownerDocument,bw=bH.documentElement;if(!bB||!b.contains(bw,by)){return bB?{top:bB.top,left:bB.left}:{top:0,left:0}}var bC=bH.body,bD=aK(bH),bA=bw.clientTop||bC.clientTop||0,bE=bw.clientLeft||bC.clientLeft||0,bv=bD.pageYOffset||b.support.boxModel&&bw.scrollTop||bC.scrollTop,bz=bD.pageXOffset||b.support.boxModel&&bw.scrollLeft||bC.scrollLeft,bG=bB.top+bv-bA,bx=bB.left+bz-bE;return{top:bG,left:bx}}}else{b.fn.offset=function(bF){var bz=this[0];if(bF){return this.each(function(bG){b.offset.setOffset(this,bF,bG)})}if(!bz||!bz.ownerDocument){return null}if(bz===bz.ownerDocument.body){return b.offset.bodyOffset(bz)}var bC,bw=bz.offsetParent,bv=bz,bE=bz.ownerDocument,bx=bE.documentElement,bA=bE.body,bB=bE.defaultView,e=bB?bB.getComputedStyle(bz,null):bz.currentStyle,bD=bz.offsetTop,by=bz.offsetLeft;while((bz=bz.parentNode)&&bz!==bA&&bz!==bx){if(b.support.fixedPosition&&e.position==="fixed"){break}bC=bB?bB.getComputedStyle(bz,null):bz.currentStyle;bD-=bz.scrollTop;by-=bz.scrollLeft;if(bz===bw){bD+=bz.offsetTop;by+=bz.offsetLeft;if(b.support.doesNotAddBorder&&!(b.support.doesAddBorderForTableAndCells&&V.test(bz.nodeName))){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}bv=bw;bw=bz.offsetParent}if(b.support.subtractsBorderForOverflowNotVisible&&bC.overflow!=="visible"){bD+=parseFloat(bC.borderTopWidth)||0;by+=parseFloat(bC.borderLeftWidth)||0}e=bC}if(e.position==="relative"||e.position==="static"){bD+=bA.offsetTop;by+=bA.offsetLeft}if(b.support.fixedPosition&&e.position==="fixed"){bD+=Math.max(bx.scrollTop,bA.scrollTop);by+=Math.max(bx.scrollLeft,bA.scrollLeft)}return{top:bD,left:by}}}b.offset={bodyOffset:function(e){var bw=e.offsetTop,bv=e.offsetLeft;if(b.support.doesNotIncludeMarginInBodyOffset){bw+=parseFloat(b.css(e,"marginTop"))||0;bv+=parseFloat(b.css(e,"marginLeft"))||0}return{top:bw,left:bv}},setOffset:function(bx,bG,bA){var bB=b.css(bx,"position");if(bB==="static"){bx.style.position="relative"}var bz=b(bx),bv=bz.offset(),e=b.css(bx,"top"),bE=b.css(bx,"left"),bF=(bB==="absolute"||bB==="fixed")&&b.inArray("auto",[e,bE])>-1,bD={},bC={},bw,by;if(bF){bC=bz.position();bw=bC.top;by=bC.left}else{bw=parseFloat(e)||0;by=parseFloat(bE)||0}if(b.isFunction(bG)){bG=bG.call(bx,bA,bv)}if(bG.top!=null){bD.top=(bG.top-bv.top)+bw}if(bG.left!=null){bD.left=(bG.left-bv.left)+by}if("using" in bG){bG.using.call(bx,bD)}else{bz.css(bD)}}};b.fn.extend({position:function(){if(!this[0]){return null}var bw=this[0],bv=this.offsetParent(),bx=this.offset(),e=ad.test(bv[0].nodeName)?{top:0,left:0}:bv.offset();bx.top-=parseFloat(b.css(bw,"marginTop"))||0;bx.left-=parseFloat(b.css(bw,"marginLeft"))||0;e.top+=parseFloat(b.css(bv[0],"borderTopWidth"))||0;e.left+=parseFloat(b.css(bv[0],"borderLeftWidth"))||0;return{top:bx.top-e.top,left:bx.left-e.left}},offsetParent:function(){return this.map(function(){var e=this.offsetParent||av.body;while(e&&(!ad.test(e.nodeName)&&b.css(e,"position")==="static")){e=e.offsetParent}return e})}});b.each(["Left","Top"],function(bv,e){var bw="scroll"+e;b.fn[bw]=function(bz){var bx,by;if(bz===L){bx=this[0];if(!bx){return null}by=aK(bx);return by?("pageXOffset" in by)?by[bv?"pageYOffset":"pageXOffset"]:b.support.boxModel&&by.document.documentElement[bw]||by.document.body[bw]:bx[bw]}return this.each(function(){by=aK(this);if(by){by.scrollTo(!bv?bz:b(by).scrollLeft(),bv?bz:b(by).scrollTop())}else{this[bw]=bz}})}});function aK(e){return b.isWindow(e)?e:e.nodeType===9?e.defaultView||e.parentWindow:false}b.each(["Height","Width"],function(bv,e){var bw=e.toLowerCase();b.fn["inner"+e]=function(){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,"padding")):this[bw]():null};b.fn["outer"+e]=function(by){var bx=this[0];return bx?bx.style?parseFloat(b.css(bx,bw,by?"margin":"border")):this[bw]():null};b.fn[bw]=function(bz){var bA=this[0];if(!bA){return bz==null?null:this}if(b.isFunction(bz)){return this.each(function(bE){var bD=b(this);bD[bw](bz.call(this,bE,bD[bw]()))})}if(b.isWindow(bA)){var bB=bA.document.documentElement["client"+e],bx=bA.document.body;return bA.document.compatMode==="CSS1Compat"&&bB||bx&&bx["client"+e]||bB}else{if(bA.nodeType===9){return Math.max(bA.documentElement["client"+e],bA.body["scroll"+e],bA.documentElement["scroll"+e],bA.body["offset"+e],bA.documentElement["offset"+e])}else{if(bz===L){var bC=b.css(bA,bw),by=parseFloat(bC);return b.isNumeric(by)?by:bC}else{return this.css(bw,typeof bz==="string"?bz:bz+"px")}}}}});bb.jQuery=bb.$=b;if(typeof define==="function"&&define.amd&&define.amd.jQuery){define("jquery",[],function(){return b +})}})(window); diff --git a/leftchildextractor_8h.html b/leftchildextractor_8h.html new file mode 100644 index 0000000..6322a86 --- /dev/null +++ b/leftchildextractor_8h.html @@ -0,0 +1,124 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/parser/leftchildextractor.h File Reference + + + + + + + + + +
+
+
+ + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+ + + + + + + + + + +
+ +
+ + + +
+ +
+
leftchildextractor.h File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::parser::LeftChildExtractor
 The LeftChildExtractor class is a functor that extracts the child expression node from the given node which should be evaluated before the given node itself. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::parser
 Classes required for parsing JMESPath expressions.
 
+
+ + + + diff --git a/leftchildextractor_8h_source.html b/leftchildextractor_8h_source.html new file mode 100644 index 0000000..90291c6 --- /dev/null +++ b/leftchildextractor_8h_source.html @@ -0,0 +1,194 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/parser/leftchildextractor.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
leftchildextractor.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef LEFTCHILDEXTRACTOR_H
+
29 #define LEFTCHILDEXTRACTOR_H
+ + +
32 
+
33 namespace jmespath { namespace parser {
+
34 
+ +
41  : public boost::static_visitor<ast::ExpressionNode*>
+
42 {
+
43 public:
+ +
51  {
+
52  return boost::apply_visitor(*this, node->value);
+
53  }
+
54 
+
55  template <typename T>
+ +
57  {
+
58  return childNode(&node);
+
59  }
+
60 
+
61  template <typename T, typename
+
62  std::enable_if<
+
63  !std::is_base_of<ast::BinaryExpressionNode,
+
64  T>::value
+
65  && !std::is_same<ast::NotExpressionNode,
+
66  T>::value, int>::type = 0>
+ +
68  {
+
69  return nullptr;
+
70  }
+
71 
+
72  template <typename T, typename
+
73  std::enable_if<
+
74  !std::is_base_of<ast::BinaryExpressionNode,
+
75  T>::value
+
76  && std::is_same<ast::NotExpressionNode,
+
77  T>::value, int>::type = 0>
+ +
79  {
+
80  return &node->expression;
+
81  }
+
82 
+
83  template <typename T, typename
+
84  std::enable_if<
+
85  std::is_base_of<ast::BinaryExpressionNode,
+
86  T>::value, int>::type = 0>
+ +
88  {
+
89  return &node->leftExpression;
+
90  }
+
92 };
+
93 }} // namespace jmespath::parser
+
94 #endif // LEFTCHILDEXTRACTOR_H
+ +
ast::ExpressionNode * operator()(T &node) const
Returns a pointer to the child expression node of the given node or nullptr if the node doesn't has a...
Definition: leftchildextractor.h:56
+
ast::ExpressionNode * childNode(T *node) const
Returns a pointer to the child expression node of the given node or nullptr if the node doesn't has a...
Definition: leftchildextractor.h:78
+
ValueType value
The variable which stores the node that this object represents.
Definition: variantnode.h:126
+
The BinaryExpressionNode class is the base class for all node types which consist of a left and a rig...
Definition: binaryexpressionnode.h:39
+
The LeftChildExtractor class is a functor that extracts the child expression node from the given node...
Definition: leftchildextractor.h:40
+
ast::ExpressionNode * childNode(T *) const
Returns a pointer to the child expression node of the given node or nullptr if the node doesn't has a...
Definition: leftchildextractor.h:67
+
The NotExpressionNode class represents a JMESPath not expression.
Definition: notexpressionnode.h:39
+ +
The ExpressionNode class represents a JMESPath expression.
Definition: expressionnode.h:56
+
ast::ExpressionNode * operator()(ast::ExpressionNode *node) const
Returns a pointer to the child expression node of the given node or nullptr if the node doesn't has a...
Definition: leftchildextractor.h:50
+
+ + + + diff --git a/leftedgeiterator_8h.html b/leftedgeiterator_8h.html new file mode 100644 index 0000000..4ba1573 --- /dev/null +++ b/leftedgeiterator_8h.html @@ -0,0 +1,125 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/parser/leftedgeiterator.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
leftedgeiterator.h File Reference
+
+
+
#include "src/ast/expressionnode.h"
+#include "src/parser/leftchildextractor.h"
+#include <iterator>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::parser::LeftEdgeIterator
 The LeftEdgeIterator class is a forward iterator which can be used to iterate over the ExpressionNode objects along the left edge of the AST. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::parser
 Classes required for parsing JMESPath expressions.
 
+
+ + + + diff --git a/leftedgeiterator_8h_source.html b/leftedgeiterator_8h_source.html new file mode 100644 index 0000000..25b6b03 --- /dev/null +++ b/leftedgeiterator_8h_source.html @@ -0,0 +1,192 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/parser/leftedgeiterator.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
leftedgeiterator.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef LEFTEDGEITERATOR_H
+
29 #define LEFTEDGEITERATOR_H
+
30 #include "src/ast/expressionnode.h"
+ +
32 #include <iterator>
+
33 
+
34 namespace jmespath { namespace parser {
+
35 
+
40 class LeftEdgeIterator : public std::iterator<std::forward_iterator_tag,
+
41  ast::ExpressionNode>
+
42 {
+
43 public:
+ +
49  : m_node(nullptr)
+
50  {
+
51  }
+ +
57  : m_node(&node)
+
58  {
+
59  }
+
64  reference operator*() const
+
65  {
+
66  return *m_node;
+
67  }
+
72  pointer operator->() const
+
73  {
+
74  return m_node;
+
75  }
+
82  bool operator!=(const LeftEdgeIterator& other) const
+
83  {
+
84  return m_node != other.m_node;
+
85  }
+ +
92  {
+ +
94  return *this;
+
95  }
+ +
102  {
+
103  auto tempIterator = *this;
+ +
105  return tempIterator;
+
106  }
+
107 
+
108 private:
+ + +
117 };
+
118 }} // namespace jmespath::parser
+
119 #endif // LEFTEDGEITERATOR_H
+
The LeftEdgeIterator class is a forward iterator which can be used to iterate over the ExpressionNode...
Definition: leftedgeiterator.h:40
+
LeftEdgeIterator()
Constructs an empty LeftEdgeIterator object which can be used as an end iterator. ...
Definition: leftedgeiterator.h:48
+
LeftEdgeIterator operator++(int)
Advances the iterator to the next node on the left edge of the AST.
Definition: leftedgeiterator.h:101
+
ast::ExpressionNode * m_node
Pointer to the current node object.
Definition: leftedgeiterator.h:112
+
pointer operator->() const
Returns a pointer to the current node.
Definition: leftedgeiterator.h:72
+ +
The LeftChildExtractor class is a functor that extracts the child expression node from the given node...
Definition: leftchildextractor.h:40
+
LeftChildExtractor m_childExtractor
Functor used for extracting the left child of the given node.
Definition: leftedgeiterator.h:116
+ +
reference operator*() const
Returns a reference to the current node.
Definition: leftedgeiterator.h:64
+
bool operator!=(const LeftEdgeIterator &other) const
Checks whether this iterator doesn't equals to the other.
Definition: leftedgeiterator.h:82
+
The ExpressionNode class represents a JMESPath expression.
Definition: expressionnode.h:56
+
LeftEdgeIterator & operator++()
Advances the iterator to the next node on the left edge of the AST.
Definition: leftedgeiterator.h:91
+
LeftEdgeIterator(ast::ExpressionNode &node)
Constructs a LeftEdgeIterator which points to the given node.
Definition: leftedgeiterator.h:56
+
+ + + + diff --git a/listwildcardnode_8cpp.html b/listwildcardnode_8cpp.html new file mode 100644 index 0000000..3a84d5a --- /dev/null +++ b/listwildcardnode_8cpp.html @@ -0,0 +1,115 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/listwildcardnode.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
listwildcardnode.cpp File Reference
+
+
+ + + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/listwildcardnode_8h.html b/listwildcardnode_8h.html new file mode 100644 index 0000000..71b4069 --- /dev/null +++ b/listwildcardnode_8h.html @@ -0,0 +1,123 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/listwildcardnode.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
listwildcardnode.h File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::ast::ListWildcardNode
 The ListWildcardNode class represents a JMESPath list wildcard expression. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/listwildcardnode_8h_source.html b/listwildcardnode_8h_source.html new file mode 100644 index 0000000..3a21262 --- /dev/null +++ b/listwildcardnode_8h_source.html @@ -0,0 +1,150 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/listwildcardnode.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
listwildcardnode.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef LISTWILDCARDNODE_H
+
29 #define LISTWILDCARDNODE_H
+
30 #include "src/ast/abstractnode.h"
+
31 
+
32 namespace jmespath { namespace ast {
+
33 
+ +
39 {
+
40 public:
+ +
50  void accept(interpreter::AbstractVisitor* visitor) const override;
+
57  bool operator==(const ListWildcardNode& other) const;
+
58 };
+
59 }} // namespace jmespath::ast
+
60 #endif // LISTWILDCARDNODE_H
+
ListWildcardNode()
Constructs a ListWildcardNode object.
Definition: listwildcardnode.cpp:33
+
The ListWildcardNode class represents a JMESPath list wildcard expression.
Definition: listwildcardnode.h:38
+
void accept(interpreter::AbstractVisitor *visitor) const override
Calls the visit method of the given visitor with the dynamic type of the node.
Definition: listwildcardnode.cpp:38
+ +
bool operator==(const ListWildcardNode &other) const
Equality compares this node to the other.
Definition: listwildcardnode.cpp:43
+
The AbstractVisitor class is an interface which defines the member functions required to visit every ...
Definition: abstractvisitor.h:71
+
The AbstractNode class is the common interface class for all AST node types.
Definition: abstractnode.h:45
+
+ + + + diff --git a/literalnode_8cpp.html b/literalnode_8cpp.html new file mode 100644 index 0000000..fb96954 --- /dev/null +++ b/literalnode_8cpp.html @@ -0,0 +1,115 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/literalnode.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
literalnode.cpp File Reference
+
+
+ + + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/literalnode_8h.html b/literalnode_8h.html new file mode 100644 index 0000000..231fb2e --- /dev/null +++ b/literalnode_8h.html @@ -0,0 +1,125 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/literalnode.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
literalnode.h File Reference
+
+
+
#include "src/ast/abstractnode.h"
+#include "jmespath/types.h"
+#include <boost/fusion/include/adapt_struct.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::ast::LiteralNode
 The LiteralNode class represents a JMESPath literal string. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/literalnode_8h_source.html b/literalnode_8h_source.html new file mode 100644 index 0000000..21f12d6 --- /dev/null +++ b/literalnode_8h_source.html @@ -0,0 +1,162 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/literalnode.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
literalnode.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef LITERALNODE_H
+
29 #define LITERALNODE_H
+
30 #include "src/ast/abstractnode.h"
+
31 #include "jmespath/types.h"
+
32 #include <boost/fusion/include/adapt_struct.hpp>
+
33 
+
34 namespace jmespath { namespace ast {
+
35 
+
39 class LiteralNode : public AbstractNode
+
40 {
+
41 public:
+
45  LiteralNode();
+
50  LiteralNode(const String& value);
+
56  void accept(interpreter::AbstractVisitor* visitor) const override;
+
63  bool operator==(const LiteralNode& other) const;
+ +
68 };
+
69 }} // namespace jmespath::ast
+
70 
+
71 BOOST_FUSION_ADAPT_STRUCT(
+ +
73  (jmespath::String, literal)
+
74 )
+
75 #endif // LITERALNODE_H
+ +
bool operator==(const LiteralNode &other) const
Equality compares this node to the other.
Definition: literalnode.cpp:49
+
void accept(interpreter::AbstractVisitor *visitor) const override
Calls the visit method of the given visitor with the dynamic type of the node.
Definition: literalnode.cpp:44
+ +
std::basic_string< Char > String
UTF-8 encoded string type.
Definition: types.h:44
+
The LiteralNode class represents a JMESPath literal string.
Definition: literalnode.h:39
+
String literal
literal The value of the literal
Definition: literalnode.h:67
+
The AbstractVisitor class is an interface which defines the member functions required to visit every ...
Definition: abstractvisitor.h:71
+
LiteralNode()
Constructs a LiteralNode object with empty value.
Definition: literalnode.cpp:33
+
The AbstractNode class is the common interface class for all AST node types.
Definition: abstractnode.h:45
+
+ + + + diff --git a/modules.html b/modules.html new file mode 100644 index 0000000..ad90689 --- /dev/null +++ b/modules.html @@ -0,0 +1,99 @@ + + + + + + +jmespath.cpp: Modules + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + +
+ + + + +
+ +
+ +
+
+
Modules
+
+
+
Here is a list of all modules:
+
+ + + + diff --git a/multiselecthashnode_8cpp.html b/multiselecthashnode_8cpp.html new file mode 100644 index 0000000..b247f4f --- /dev/null +++ b/multiselecthashnode_8cpp.html @@ -0,0 +1,116 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/multiselecthashnode.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
multiselecthashnode.cpp File Reference
+
+
+ + + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/multiselecthashnode_8h.html b/multiselecthashnode_8h.html new file mode 100644 index 0000000..b9346ae --- /dev/null +++ b/multiselecthashnode_8h.html @@ -0,0 +1,130 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/multiselecthashnode.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
multiselecthashnode.h File Reference
+
+
+
#include "src/ast/abstractnode.h"
+#include "src/ast/identifiernode.h"
+#include "src/ast/expressionnode.h"
+#include <utility>
+#include <initializer_list>
+#include <boost/fusion/include/adapt_struct.hpp>
+#include <boost/fusion/include/std_pair.hpp>
+#include <boost/fusion/adapted/std_pair.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::ast::MultiselectHashNode
 The MultiselectHashNode class represents a JMESPath multiselect hash expression. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/multiselecthashnode_8h_source.html b/multiselecthashnode_8h_source.html new file mode 100644 index 0000000..faf260f --- /dev/null +++ b/multiselecthashnode_8h_source.html @@ -0,0 +1,171 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/multiselecthashnode.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
multiselecthashnode.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef MULTISELECTHASHNODE_H
+
29 #define MULTISELECTHASHNODE_H
+
30 #include "src/ast/abstractnode.h"
+
31 #include "src/ast/identifiernode.h"
+
32 #include "src/ast/expressionnode.h"
+
33 #include <utility>
+
34 #include <initializer_list>
+
35 #include <boost/fusion/include/adapt_struct.hpp>
+
36 #include <boost/fusion/include/std_pair.hpp>
+
37 #include <boost/fusion/adapted/std_pair.hpp>
+
38 
+
39 namespace jmespath { namespace ast {
+
40 
+ +
46 {
+
47 public:
+
48  using KeyValuePairType = std::pair<IdentifierNode, ExpressionNode>;
+ +
58  MultiselectHashNode(const std::vector<KeyValuePairType>& subexpressions);
+
64  MultiselectHashNode(const std::initializer_list<KeyValuePairType>& subexpressions);
+
70  void accept(interpreter::AbstractVisitor* visitor) const override;
+
77  bool operator==(const MultiselectHashNode& other) const;
+
81  std::vector<KeyValuePairType> expressions;
+
82 };
+
83 }} // namespace jmespath::ast
+
84 
+
85 BOOST_FUSION_ADAPT_STRUCT(
+ +
87  (std::vector<jmespath::ast::MultiselectHashNode::KeyValuePairType>,
+
88  expressions)
+
89 )
+
90 #endif // MULTISELECTHASHNODE_H
+
std::vector< KeyValuePairType > expressions
The node's child expressions.
Definition: multiselecthashnode.h:81
+
MultiselectHashNode()
Constructs an empty MultiselectHashNode object.
Definition: multiselecthashnode.cpp:34
+
void accept(interpreter::AbstractVisitor *visitor) const override
Calls the visit method of the given visitor with the dynamic type of the node.
Definition: multiselecthashnode.cpp:53
+
The MultiselectHashNode class represents a JMESPath multiselect hash expression.
Definition: multiselecthashnode.h:45
+ + +
bool operator==(const MultiselectHashNode &other) const
Equality compares this node to the other.
Definition: multiselecthashnode.cpp:58
+ +
The AbstractVisitor class is an interface which defines the member functions required to visit every ...
Definition: abstractvisitor.h:71
+
std::pair< IdentifierNode, ExpressionNode > KeyValuePairType
Definition: multiselecthashnode.h:48
+
The AbstractNode class is the common interface class for all AST node types.
Definition: abstractnode.h:45
+
+ + + + diff --git a/multiselectlistnode_8cpp.html b/multiselectlistnode_8cpp.html new file mode 100644 index 0000000..5066569 --- /dev/null +++ b/multiselectlistnode_8cpp.html @@ -0,0 +1,115 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/multiselectlistnode.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
multiselectlistnode.cpp File Reference
+
+
+ + + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/multiselectlistnode_8h.html b/multiselectlistnode_8h.html new file mode 100644 index 0000000..44d0f5f --- /dev/null +++ b/multiselectlistnode_8h.html @@ -0,0 +1,127 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/multiselectlistnode.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
multiselectlistnode.h File Reference
+
+
+
#include "src/ast/abstractnode.h"
+#include "src/ast/expressionnode.h"
+#include <vector>
+#include <initializer_list>
+#include <boost/fusion/include/adapt_struct.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::ast::MultiselectListNode
 The MultiselectListNode class represents a JMESPath list wildcard expression. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/multiselectlistnode_8h_source.html b/multiselectlistnode_8h_source.html new file mode 100644 index 0000000..89ffde1 --- /dev/null +++ b/multiselectlistnode_8h_source.html @@ -0,0 +1,165 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/multiselectlistnode.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
multiselectlistnode.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef MULTISELECTLISTNODE_H
+
29 #define MULTISELECTLISTNODE_H
+
30 #include "src/ast/abstractnode.h"
+
31 #include "src/ast/expressionnode.h"
+
32 #include <vector>
+
33 #include <initializer_list>
+
34 #include <boost/fusion/include/adapt_struct.hpp>
+
35 
+
36 namespace jmespath { namespace ast {
+
37 
+ +
43 {
+
44 public:
+ +
54  MultiselectListNode(const std::vector<ExpressionNode>& subexpressions);
+ +
61  const std::initializer_list<ExpressionNode>& subexpressions);
+
67  void accept(interpreter::AbstractVisitor* visitor) const override;
+
74  bool operator==(const MultiselectListNode& other) const;
+
78  std::vector<ExpressionNode> expressions;
+
79 };
+
80 }} // namespace jmespath::ast
+
81 
+
82 BOOST_FUSION_ADAPT_STRUCT(
+ +
84  (std::vector<jmespath::ast::ExpressionNode>, expressions)
+
85 )
+
86 #endif // MULTISELECTLISTNODE_H
+
void accept(interpreter::AbstractVisitor *visitor) const override
Calls the visit method of the given visitor with the dynamic type of the node.
Definition: multiselectlistnode.cpp:52
+
std::vector< ExpressionNode > expressions
The node's child expressions.
Definition: multiselectlistnode.h:78
+ + +
The AbstractVisitor class is an interface which defines the member functions required to visit every ...
Definition: abstractvisitor.h:71
+
MultiselectListNode()
Constructs an empty MultiselectListNode object.
Definition: multiselectlistnode.cpp:33
+
The MultiselectListNode class represents a JMESPath list wildcard expression.
Definition: multiselectlistnode.h:42
+
The AbstractNode class is the common interface class for all AST node types.
Definition: abstractnode.h:45
+
bool operator==(const MultiselectListNode &other) const
Equality compares this node to the other.
Definition: multiselectlistnode.cpp:57
+
+ + + + diff --git a/namespacejmespath.html b/namespacejmespath.html new file mode 100644 index 0000000..5b61194 --- /dev/null +++ b/namespacejmespath.html @@ -0,0 +1,404 @@ + + + + + + +jmespath.cpp: jmespath Namespace Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ +
+
+ +
+
jmespath Namespace Reference
+
+
+ +

The top level namespace which contains the public functions of the library. +More...

+ + + + + + + + + + + + + + +

+Namespaces

 ast
 Classes which represent the AST nodes.
 
 interpreter
 Classes for interpreting the AST of the JMESPath expression.
 
 literals
 User defined literals.
 
 parser
 Classes required for parsing JMESPath expressions.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Classes

struct  Exception
 The Exception struct is the common base class for for all the exceptions thrown by the library. More...
 
struct  SyntaxError
 The SyntaxError struct represents a syntax error in the evaluated expression. More...
 
struct  InvalidAgrument
 The InvalidAgrument struct signals a function call with illegal arguments. More...
 
struct  InvalidValue
 The InvalidValue struct represents an invalid value in the JMESPath expression. More...
 
struct  UnknownFunction
 The UnknownFunction struct represents a call to a JMESPath built in function which doesn't exists. More...
 
struct  InvalidFunctionArgumentArity
 The InvalidFunctionArgumentArity struct signals the a JMESPath built in function was called with an unexpected number of arguments. More...
 
struct  InvalidFunctionArgumentType
 The InvalidFunctionArgumentType struct represents a call to a JMESPath built in function with an unexpected type of argument. More...
 
class  Expression
 The Expression class represents a JMESPath expression. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

using InfoSearchExpression = boost::error_info< struct tag_search_expression, std::string >
 InfoSearchExpression contains the JMESPath expression being evaluated. More...
 
using InfoSyntaxErrorLocation = boost::error_info< struct tag_syntax_error_location, long >
 InfoSyntaxErrorLocation contains the location of the syntax error in the JMESPath expression. More...
 
using InfoFunctionName = boost::error_info< struct tag_function_name, std::string >
 InfoFunctionName contains the name of the built in JMESpath function. More...
 
using Char = char
 8 bit character type More...
 
using String = std::basic_string< Char >
 UTF-8 encoded string type. More...
 
using UnicodeChar = char32_t
 32 bit character type More...
 
using UnicodeString = std::basic_string< UnicodeChar >
 UTF-32 encoded string type. More...
 
using UnicodeIteratorAdaptor = boost::u8_to_u32_iterator< String::const_iterator >
 UTF-32 string iterator adaptor. More...
 
using StringIteratorAdaptor = boost::u32_to_u8_iterator< UnicodeString::const_iterator >
 UTF-8 string iterator adaptor. More...
 
using Json = nlohmann::json
 JSON data type. More...
 
using Index = boost::multiprecision::number< boost::multiprecision::cpp_int_backend< std::numeric_limits< size_t >::digits, std::numeric_limits< size_t >::digits, boost::multiprecision::signed_magnitude, boost::multiprecision::checked, void > >
 Signed integer type that can hold all values in the range of numeric_limits<size_t>::max() * -1 ... numeric_limits<size_t>::max() More...
 
+ + + + + + + + + + + + + + + +

+Functions

template<typename JsonT >
std::enable_if_t< std::is_same
+< std::decay_t< JsonT >, Json >
+::value, Json
search (const Expression &expression, JsonT &&document)
 Finds or creates the results for the expression evaluated on the given document. More...
 
template Json search< const Json & > (const Expression &, const Json &)
 Explicit instantiation declaration for Search function to prevent implicit instantiation in client code. More...
 
template Json search< Json & > (const Expression &, Json &)
 Explicit instantiation declaration for Search function to prevent implicit instantiation in client code. More...
 
template Json search< Json > (const Expression &, Json &&)
 Explicit instantiation declaration for Search function to prevent implicit instantiation in client code. More...
 
+

Detailed Description

+

The top level namespace which contains the public functions of the library.

+

Typedef Documentation

+ +
+
+ + + + +
using jmespath::Char = typedef char
+
+ +

8 bit character type

+ +
+
+ +
+
+ + + + +
using jmespath::Index = typedef boost::multiprecision::number< boost::multiprecision::cpp_int_backend< std::numeric_limits<size_t>::digits, std::numeric_limits<size_t>::digits, boost::multiprecision::signed_magnitude, boost::multiprecision::checked, void> >
+
+ +

Signed integer type that can hold all values in the range of numeric_limits<size_t>::max() * -1 ... numeric_limits<size_t>::max()

+ +
+
+ +
+
+ + + + +
using jmespath::Json = typedef nlohmann::json
+
+ +

JSON data type.

+ +
+
+ +
+
+ + + + +
using jmespath::String = typedef std::basic_string<Char>
+
+ +

UTF-8 encoded string type.

+ +
+
+ +
+
+ + + + +
using jmespath::StringIteratorAdaptor = typedef boost::u32_to_u8_iterator<UnicodeString::const_iterator>
+
+ +

UTF-8 string iterator adaptor.

+ +
+
+ +
+
+ + + + +
using jmespath::UnicodeChar = typedef char32_t
+
+ +

32 bit character type

+ +
+
+ +
+
+ + + + +
using jmespath::UnicodeIteratorAdaptor = typedef boost::u8_to_u32_iterator<String::const_iterator>
+
+ +

UTF-32 string iterator adaptor.

+ +
+
+ +
+
+ + + + +
using jmespath::UnicodeString = typedef std::basic_string<UnicodeChar>
+
+ +

UTF-32 encoded string type.

+ +
+
+

Function Documentation

+ +
+
+ + + + + + + + + + + + + + + + + + +
template Json jmespath::search< const Json & > (const Expression & ,
const Json &  
)
+
+ +

Explicit instantiation declaration for Search function to prevent implicit instantiation in client code.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
template Json jmespath::search< Json & > (const Expression & ,
Json &  
)
+
+ +

Explicit instantiation declaration for Search function to prevent implicit instantiation in client code.

+ +
+
+ +
+
+ + + + + + + + + + + + + + + + + + +
template Json jmespath::search< Json > (const Expression & ,
Json &&  
)
+
+ +

Explicit instantiation declaration for Search function to prevent implicit instantiation in client code.

+ +
+
+
+ + + + diff --git a/namespacejmespath_1_1ast.html b/namespacejmespath_1_1ast.html new file mode 100644 index 0000000..8c3fd55 --- /dev/null +++ b/namespacejmespath_1_1ast.html @@ -0,0 +1,197 @@ + + + + + + +jmespath.cpp: jmespath::ast Namespace Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::ast Namespace Reference
+
+
+ +

Classes which represent the AST nodes. +More...

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Classes

class  AbstractNode
 The AbstractNode class is the common interface class for all AST node types. More...
 
class  AndExpressionNode
 The AndExpressionNode class represents a JMESPath and expression. More...
 
class  ArrayItemNode
 The ArrayItemNode class represents a JMESPath array index expression. More...
 
class  BinaryExpressionNode
 The BinaryExpressionNode class is the base class for all node types which consist of a left and a right hand side expression. More...
 
class  BracketSpecifierNode
 The BracketSpecifierNode class represents a JMESPath bracket specifier. More...
 
class  ComparatorExpressionNode
 The ComparatorExpressionNode class represents a JMESPath comparator expression. More...
 
class  CurrentNode
 The CurrentNode class represents a JMESPath current node expression. More...
 
class  ExpressionArgumentNode
 The ExpressionArgumentNode class represents a JMESPath expression argument. More...
 
class  ExpressionNode
 The ExpressionNode class represents a JMESPath expression. More...
 
class  FilterExpressionNode
 The FilterExpressionNode class represents a JMESPath filter expression. More...
 
class  FlattenOperatorNode
 The FlattenOperatorNode class represents a JMESPath flatten operator. More...
 
class  FunctionExpressionNode
 The FunctionExpressionNode class represents a JMESPath function expression. More...
 
class  HashWildcardNode
 The HashWildcardNode class represents a JMESPath hash wildcard expression. More...
 
class  IdentifierNode
 The IdentifierNode class represents a JMESPath identifier. More...
 
class  IndexExpressionNode
 The IndexExpressionNode class represents a JMESPath index expression. More...
 
class  ListWildcardNode
 The ListWildcardNode class represents a JMESPath list wildcard expression. More...
 
class  LiteralNode
 The LiteralNode class represents a JMESPath literal string. More...
 
class  MultiselectHashNode
 The MultiselectHashNode class represents a JMESPath multiselect hash expression. More...
 
class  MultiselectListNode
 The MultiselectListNode class represents a JMESPath list wildcard expression. More...
 
class  NotExpressionNode
 The NotExpressionNode class represents a JMESPath not expression. More...
 
class  OrExpressionNode
 The OrExpressionNode class represents a JMESPath or expression. More...
 
class  ParenExpressionNode
 The ParenExpressionNode class represents a JMESPath paren expression. More...
 
class  PipeExpressionNode
 The PipeExpressionNode class represents a JMESPath pipe expression. More...
 
class  RawStringNode
 The RawStringNode class represents a JMESPath raw string literal. More...
 
class  SliceExpressionNode
 The SliceExpressionNode class represents a JMESPath slice expression. More...
 
class  SubexpressionNode
 The SubexpressionNode class represents a JMESPath subexpression. More...
 
class  VariantNode
 The VariantNode class serves as a container node which can represent either one of the node types specified in the classes template argument list. More...
 
class  VariantVisitorAdaptor
 The VariantVisitorAdaptor class adapts an AbstractVisitor implementation to the boost::static_visitor interface, so it can be used to visit boost::variant objects. More...
 
+

Detailed Description

+

Classes which represent the AST nodes.

+
+ + + + diff --git a/namespacejmespath_1_1interpreter.html b/namespacejmespath_1_1interpreter.html new file mode 100644 index 0000000..9b745af --- /dev/null +++ b/namespacejmespath_1_1interpreter.html @@ -0,0 +1,358 @@ + + + + + + +jmespath.cpp: jmespath::interpreter Namespace Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::interpreter Namespace Reference
+
+
+ +

Classes for interpreting the AST of the JMESPath expression. +More...

+ + + + + + + + + + + +

+Classes

class  AbstractVisitor
 The AbstractVisitor class is an interface which defines the member functions required to visit every type of AST node. More...
 
class  ContextValueVisitorAdaptor
 The ContextValueVisitorAdaptor class adapts a visitor object, which is callable with const lvalue reference of Json and with rvalue reference of Json objects, to ContextValue objects. More...
 
class  Interpreter
 The Interpreter class evaluates the AST structure on a Json context. More...
 
+ + + + + + + +

+Typedefs

using JsonRef = std::reference_wrapper< const Json >
 Copyable and assignable reference to a constant Json value. More...
 
using ContextValue = boost::variant< Json, JsonRef >
 Evaluation context type. More...
 
+ + + + + + + + + + + + + + + + +

+Functions

decltype(auto) makeVisitor (std::function< void(const Json &)> &&lvalueFunc, std::function< void(Json &&)> &&rvalueFunc)
 Create visitor object which accepts ContextValue objects, and calls lvalueFunc callable with a const lvalue ref of the Json reference held by the ContextValue or calls the rvalueFunc callable with an rvalue ref of the Json object held by ContextValue. More...
 
decltype(auto) makeMoveOnlyVisitor (std::function< void(Json &&)> rvalueFunc)
 Create visitor object which accepts ContextValue objects, and calls the rvalueFunc callable with an rvalue ref of the Json object held by the ContextValue or calls it with the rvalue ref of the copy of the object to which the Json reference points in the ContextValue object. More...
 
Json && assignContextValue (Json &&value)
 Convert the given value to something assignable to a ContextValue variable. More...
 
JsonRef assignContextValue (const Json &value)
 Convert the given value to something assignable to a ContextValue variable. More...
 
const JsongetJsonValue (const ContextValue &contextValue)
 Extract the Json value held by the given value. More...
 
+

Detailed Description

+

Classes for interpreting the AST of the JMESPath expression.

+

Typedef Documentation

+ +
+
+ + + + +
using jmespath::interpreter::ContextValue = typedef boost::variant<Json, JsonRef>
+
+ +

Evaluation context type.

+

It can hold either a Json value or a JsonRef.

+ +
+
+ +
+
+ + + + +
using jmespath::interpreter::JsonRef = typedef std::reference_wrapper<const Json>
+
+ +

Copyable and assignable reference to a constant Json value.

+ +
+
+

Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + +
Json&& jmespath::interpreter::assignContextValue (Json && value)
+
+inline
+
+ +

Convert the given value to something assignable to a ContextValue variable.

+
Parameters
+ + +
[in]valueA Json value.
+
+
+
Returns
Returns the parameter without any changes as an rvalue reference.
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
JsonRef jmespath::interpreter::assignContextValue (const Json & value)
+
+inline
+
+ +

Convert the given value to something assignable to a ContextValue variable.

+
Parameters
+ + +
[in]valueA Json value.
+
+
+
Returns
Returns a JsonRef which refers to the given value.
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
const Json& jmespath::interpreter::getJsonValue (const ContextValue & contextValue)
+
+inline
+
+ +

Extract the Json value held by the given value.

+
Parameters
+ + +
[in]contextValueA ContextValue variable.
+
+
+
Returns
Returns a constant reference to the Json value held by value.
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + +
decltype(auto) jmespath::interpreter::makeMoveOnlyVisitor (std::function< void(Json &&)> rvalueFunc)
+
+inline
+
+ +

Create visitor object which accepts ContextValue objects, and calls the rvalueFunc callable with an rvalue ref of the Json object held by the ContextValue or calls it with the rvalue ref of the copy of the object to which the Json reference points in the ContextValue object.

+
Parameters
+ + +
[in]rvalueFuncA callable taking an rvalue reference to Json.
+
+
+
Returns
A visitor object which accepts ContextValue objects
+ +
+
+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
decltype(auto) jmespath::interpreter::makeVisitor (std::function< void(const Json &)> && lvalueFunc,
std::function< void(Json &&)> && rvalueFunc 
)
+
+inline
+
+ +

Create visitor object which accepts ContextValue objects, and calls lvalueFunc callable with a const lvalue ref of the Json reference held by the ContextValue or calls the rvalueFunc callable with an rvalue ref of the Json object held by ContextValue.

+
Parameters
+ + + +
[in]lvalueFuncA callable taking a const lvalue reference to Json.
[in]rvalueFuncA callable taking an rvalue reference to Json.
+
+
+
Returns
A visitor object which accepts ContextValue objects
+ +
+
+
+ + + + diff --git a/namespacejmespath_1_1literals.html b/namespacejmespath_1_1literals.html new file mode 100644 index 0000000..8696501 --- /dev/null +++ b/namespacejmespath_1_1literals.html @@ -0,0 +1,167 @@ + + + + + + +jmespath.cpp: jmespath::literals Namespace Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::literals Namespace Reference
+
+
+ +

User defined literals. +More...

+ + + + + +

+Functions

Expression operator""_jmespath (const char *expression, std::size_t)
 User defined string literal for JMESPath expressions. More...
 
+

Detailed Description

+

User defined literals.

+

Function Documentation

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Expression jmespath::literals::operator""_jmespath (const char * expression,
std::size_t  
)
+
+inline
+
+ +

User defined string literal for JMESPath expressions.

+

This operator implements a user defined string literal for JMESPath expressions. It can be used by appending "_jmespath" to a string literal.

+
Parameters
+ + +
[in]expressionThe string representation of a JMESPath expression.
+
+
+
Returns
An Expression object.
+
Exceptions
+ + +
SyntaxErrorWhen the syntax of the specified expression is invalid.
+
+
+ +
+
+
+ + + + diff --git a/namespacejmespath_1_1parser.html b/namespacejmespath_1_1parser.html new file mode 100644 index 0000000..2886520 --- /dev/null +++ b/namespacejmespath_1_1parser.html @@ -0,0 +1,812 @@ + + + + + + +jmespath.cpp: jmespath::parser Namespace Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::parser Namespace Reference
+
+
+ +

Classes required for parsing JMESPath expressions. +More...

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Classes

class  AppendEscapeSequenceAction
 The AppendEscapeSequenceAction class is a functor for appending UTF-32 an escape sequence, consisting from a pair of UTF-32 characters, to a UTF-8 encoded strings. More...
 
class  AppendUtf8Action
 The AppendUtf8Action class is a functor for appending UTF-32 characters to UTF-8 encoded strings. More...
 
class  EncodeSurrogatePairAction
 The EncodeSurrogatePairAction class is a functor for encoding surrogate pair characters in UTF-32. More...
 
class  Grammar
 The Grammar class contains the PEG rule definition based on the EBNF specifications of JMESPath. More...
 
class  InsertNodeAction
 The InsertNodeAction class is a functor for inserting the given node into the AST whose root node is specified with targetNode. More...
 
class  LeftChildExtractor
 The LeftChildExtractor class is a functor that extracts the child expression node from the given node which should be evaluated before the given node itself. More...
 
class  LeftEdgeIterator
 The LeftEdgeIterator class is a forward iterator which can be used to iterate over the ExpressionNode objects along the left edge of the AST. More...
 
class  NodeInsertCondition
 The NodeInsertCondition class is a functor that will either yield a true or false result based on whether the given node should be inserted at the location of the targetNode. More...
 
class  NodeInsertPolicy
 The NodeInsertPolicy class is a functor for inserting a given node into the AST. More...
 
class  Parser
 The Parser class parses expressions with the specified grammar. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T >
int nodeRank (const T &)
 Returns the rank of the given node object's type. More...
 
template<typename... Args>
int nodeRank (const boost::variant< Args...> &variant)
 Returns the rank of the node object's type contained in variant. More...
 
template<>
int nodeRank (const ast::ExpressionNode &node)
 Returns the rank of the given node object's type. More...
 
template<>
int nodeRank (const ast::SubexpressionNode &)
 Returns the rank of the given node object's type. More...
 
template<>
int nodeRank (const ast::BracketSpecifierNode &node)
 Returns the rank of the given node object's type. More...
 
template<>
int nodeRank (const ast::IndexExpressionNode &node)
 Returns the rank of the given node object's type. More...
 
template<>
int nodeRank (const ast::ArrayItemNode &)
 Returns the rank of the given node object's type. More...
 
template<>
int nodeRank (const ast::FlattenOperatorNode &)
 Returns the rank of the given node object's type. More...
 
template<>
int nodeRank (const ast::SliceExpressionNode &)
 Returns the rank of the given node object's type. More...
 
template<>
int nodeRank (const ast::ListWildcardNode &)
 Returns the rank of the given node object's type. More...
 
template<>
int nodeRank (const ast::HashWildcardNode &)
 Returns the rank of the given node object's type. More...
 
template<>
int nodeRank (const ast::FilterExpressionNode &)
 Returns the rank of the given node object's type. More...
 
template<>
int nodeRank (const ast::NotExpressionNode &)
 Returns the rank of the given node object's type. More...
 
template<>
int nodeRank (const ast::ComparatorExpressionNode &)
 Returns the rank of the given node object's type. More...
 
template<>
int nodeRank (const ast::AndExpressionNode &)
 Returns the rank of the given node object's type. More...
 
template<>
int nodeRank (const ast::OrExpressionNode &)
 Returns the rank of the given node object's type. More...
 
template<>
int nodeRank (const ast::PipeExpressionNode &)
 Returns the rank of the given node object's type. More...
 
+

Detailed Description

+

Classes required for parsing JMESPath expressions.

+

Function Documentation

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
int jmespath::parser::nodeRank (const T & )
+
+inline
+
+ +

Returns the rank of the given node object's type.

+
Template Parameters
+ + +
TThe type of the node object.
+
+
+
Returns
Returns the rank of the node as an integer.
+ +
+
+ +
+
+
+template<typename... Args>
+ + + + + +
+ + + + + + + + +
int jmespath::parser::nodeRank (const boost::variant< Args...> & variant)
+
+inline
+
+ +

Returns the rank of the node object's type contained in variant.

+
Parameters
+ + +
[in]variantA variant object containing a ast::AbstractNode
+
+
+
Returns
Returns the rank of the node as an integer.
+ +
+
+ +
+
+
+template<>
+ + + + + +
+ + + + + + + + +
int jmespath::parser::nodeRank (const ast::ExpressionNode & node)
+
+inline
+
+ +

Returns the rank of the given node object's type.

+
Parameters
+ + +
[in]nodeA node object
+
+
+
Returns
Returns the rank of the node as an integer.
+ +
+
+ +
+
+
+template<>
+ + + + + +
+ + + + + + + + +
int jmespath::parser::nodeRank (const ast::SubexpressionNode & )
+
+inline
+
+ +

Returns the rank of the given node object's type.

+
Parameters
+ + +
[in]nodeA node object
+
+
+
Returns
Returns the rank of the node as an integer.
+ +
+
+ +
+
+
+template<>
+ + + + + +
+ + + + + + + + +
int jmespath::parser::nodeRank (const ast::BracketSpecifierNode & node)
+
+inline
+
+ +

Returns the rank of the given node object's type.

+
Parameters
+ + +
[in]nodeA node object
+
+
+
Returns
Returns the rank of the node as an integer.
+ +
+
+ +
+
+
+template<>
+ + + + + +
+ + + + + + + + +
int jmespath::parser::nodeRank (const ast::IndexExpressionNode & node)
+
+inline
+
+ +

Returns the rank of the given node object's type.

+
Parameters
+ + +
[in]nodeA node object
+
+
+
Returns
Returns the rank of the node as an integer.
+ +
+
+ +
+
+
+template<>
+ + + + + +
+ + + + + + + + +
int jmespath::parser::nodeRank (const ast::ArrayItemNode & )
+
+inline
+
+ +

Returns the rank of the given node object's type.

+
Parameters
+ + +
[in]nodeA node object
+
+
+
Returns
Returns the rank of the node as an integer.
+ +
+
+ +
+
+
+template<>
+ + + + + +
+ + + + + + + + +
int jmespath::parser::nodeRank (const ast::FlattenOperatorNode & )
+
+inline
+
+ +

Returns the rank of the given node object's type.

+
Parameters
+ + +
[in]nodeA node object
+
+
+
Returns
Returns the rank of the node as an integer.
+ +
+
+ +
+
+
+template<>
+ + + + + +
+ + + + + + + + +
int jmespath::parser::nodeRank (const ast::SliceExpressionNode & )
+
+inline
+
+ +

Returns the rank of the given node object's type.

+
Parameters
+ + +
[in]nodeA node object
+
+
+
Returns
Returns the rank of the node as an integer.
+ +
+
+ +
+
+
+template<>
+ + + + + +
+ + + + + + + + +
int jmespath::parser::nodeRank (const ast::ListWildcardNode & )
+
+inline
+
+ +

Returns the rank of the given node object's type.

+
Parameters
+ + +
[in]nodeA node object
+
+
+
Returns
Returns the rank of the node as an integer.
+ +
+
+ +
+
+
+template<>
+ + + + + +
+ + + + + + + + +
int jmespath::parser::nodeRank (const ast::HashWildcardNode & )
+
+inline
+
+ +

Returns the rank of the given node object's type.

+
Parameters
+ + +
[in]nodeA node object
+
+
+
Returns
Returns the rank of the node as an integer.
+ +
+
+ +
+
+
+template<>
+ + + + + +
+ + + + + + + + +
int jmespath::parser::nodeRank (const ast::FilterExpressionNode & )
+
+inline
+
+ +

Returns the rank of the given node object's type.

+
Parameters
+ + +
[in]nodeA node object
+
+
+
Returns
Returns the rank of the node as an integer.
+ +
+
+ +
+
+
+template<>
+ + + + + +
+ + + + + + + + +
int jmespath::parser::nodeRank (const ast::NotExpressionNode & )
+
+inline
+
+ +

Returns the rank of the given node object's type.

+
Parameters
+ + +
[in]nodeA node object
+
+
+
Returns
Returns the rank of the node as an integer.
+ +
+
+ +
+
+
+template<>
+ + + + + +
+ + + + + + + + +
int jmespath::parser::nodeRank (const ast::ComparatorExpressionNode & )
+
+inline
+
+ +

Returns the rank of the given node object's type.

+
Parameters
+ + +
[in]nodeA node object
+
+
+
Returns
Returns the rank of the node as an integer.
+ +
+
+ +
+
+
+template<>
+ + + + + +
+ + + + + + + + +
int jmespath::parser::nodeRank (const ast::AndExpressionNode & )
+
+inline
+
+ +

Returns the rank of the given node object's type.

+
Parameters
+ + +
[in]nodeA node object
+
+
+
Returns
Returns the rank of the node as an integer.
+ +
+
+ +
+
+
+template<>
+ + + + + +
+ + + + + + + + +
int jmespath::parser::nodeRank (const ast::OrExpressionNode & )
+
+inline
+
+ +

Returns the rank of the given node object's type.

+
Parameters
+ + +
[in]nodeA node object
+
+
+
Returns
Returns the rank of the node as an integer.
+ +
+
+ +
+
+
+template<>
+ + + + + +
+ + + + + + + + +
int jmespath::parser::nodeRank (const ast::PipeExpressionNode & )
+
+inline
+
+ +

Returns the rank of the given node object's type.

+
Parameters
+ + +
[in]nodeA node object
+
+
+
Returns
Returns the rank of the node as an integer.
+ +
+
+
+ + + + diff --git a/namespacemembers.html b/namespacemembers.html new file mode 100644 index 0000000..1911f65 --- /dev/null +++ b/namespacemembers.html @@ -0,0 +1,224 @@ + + + + + + +jmespath.cpp: Namespace Members + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + +
+ + + + +
+ +
+ +
+
Here is a list of all namespace members with links to the namespace documentation for each member:
+ +

- a -

+ + +

- c -

+ + +

- g -

+ + +

- i -

+ + +

- j -

+ + +

- m -

+ + +

- n -

+ + +

- o -

+ + +

- s -

+ + +

- u -

+
+ + + + diff --git a/namespacemembers_func.html b/namespacemembers_func.html new file mode 100644 index 0000000..125551c --- /dev/null +++ b/namespacemembers_func.html @@ -0,0 +1,133 @@ + + + + + + +jmespath.cpp: Namespace Members + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + +
+ + + + +
+ +
+ +
+
+ + + + diff --git a/namespacemembers_type.html b/namespacemembers_type.html new file mode 100644 index 0000000..0856552 --- /dev/null +++ b/namespacemembers_type.html @@ -0,0 +1,142 @@ + + + + + + +jmespath.cpp: Namespace Members + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + +
+ + + + +
+ +
+ +
+
+ + + + diff --git a/namespaces.html b/namespaces.html new file mode 100644 index 0000000..cd70639 --- /dev/null +++ b/namespaces.html @@ -0,0 +1,107 @@ + + + + + + +jmespath.cpp: Namespace List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + +
+ + + + +
+ +
+ +
+
+
Namespace List
+
+
+
Here is a list of all namespaces with brief descriptions:
+
[detail level 12]
+ + + + + +
\NjmespathThe top level namespace which contains the public functions of the library
 oNastClasses which represent the AST nodes
 oNinterpreterClasses for interpreting the AST of the JMESPath expression
 oNliteralsUser defined literals
 \NparserClasses required for parsing JMESPath expressions
+
+
+ + + + diff --git a/nav_f.png b/nav_f.png new file mode 100644 index 0000000000000000000000000000000000000000..72a58a529ed3a9ed6aa0c51a79cf207e026deee2 GIT binary patch literal 153 zcmeAS@N?(olHy`uVBq!ia0vp^j6iI`!2~2XGqLUlQVE_ejv*C{Z|{2ZH7M}7UYxc) zn!W8uqtnIQ>_z8U literal 0 HcmV?d00001 diff --git a/nav_g.png b/nav_g.png new file mode 100644 index 0000000000000000000000000000000000000000..2093a237a94f6c83e19ec6e5fd42f7ddabdafa81 GIT binary patch literal 95 zcmeAS@N?(olHy`uVBq!ia0vp^j6lrB!3HFm1ilyoDK$?Q$B+ufw|5PB85lU25BhtE tr?otc=hd~V+ws&_A@j8Fiv!KF$B+ufw|5=67#uj90@pIL wZ=Q8~_Ju`#59=RjDrmm`tMD@M=!-l18IR?&vFVdQ&MBb@0HFXL + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/parser/nodeinsertcondition.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
nodeinsertcondition.h File Reference
+
+
+
#include "src/ast/allnodes.h"
+#include "src/parser/noderank.h"
+#include <boost/variant/polymorphic_get.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::parser::NodeInsertCondition
 The NodeInsertCondition class is a functor that will either yield a true or false result based on whether the given node should be inserted at the location of the targetNode. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::parser
 Classes required for parsing JMESPath expressions.
 
+
+ + + + diff --git a/nodeinsertcondition_8h_source.html b/nodeinsertcondition_8h_source.html new file mode 100644 index 0000000..ca2e6d1 --- /dev/null +++ b/nodeinsertcondition_8h_source.html @@ -0,0 +1,185 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/parser/nodeinsertcondition.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
nodeinsertcondition.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef NODEINSERTCONDITION_H
+
29 #define NODEINSERTCONDITION_H
+
30 #include "src/ast/allnodes.h"
+
31 #include "src/parser/noderank.h"
+
32 #include <boost/variant/polymorphic_get.hpp>
+
33 
+
34 namespace jmespath { namespace parser {
+
35 
+ +
42 {
+
43 public:
+
47  using result_type = bool;
+
48 
+
57  template <typename T, typename
+
58  std::enable_if<
+
59  std::is_base_of<ast::BinaryExpressionNode,
+
60  T>::value, int>::type = 0>
+
61  bool operator()(const ast::ExpressionNode& targetNode,
+
62  const T& node) const
+
63  {
+
64  int targetNodeRank = nodeRank(targetNode);
+
65  int currentNodeRank = nodeRank(node);
+
66  const ast::BinaryExpressionNode* targetBinaryNode
+
67  = boost::polymorphic_get<ast::BinaryExpressionNode>(
+
68  &targetNode.value);
+
69  return (targetNodeRank < currentNodeRank)
+
70  || ((targetNodeRank == currentNodeRank)
+
71  && targetBinaryNode
+
72  && targetBinaryNode->isProjection()
+
73  && !targetBinaryNode->stopsProjection());
+
74  }
+
75 
+
76  template <typename T, typename
+
77  std::enable_if<
+
78  !std::is_base_of<ast::BinaryExpressionNode,
+
79  T>::value, int>::type = 0>
+
80  bool operator()(const ast::ExpressionNode& targetNode,
+
81  const T& node) const
+
82  {
+
83  int targetNodeRank = nodeRank(targetNode);
+
84  int currentNodeRank = nodeRank(node);
+
85  return (targetNodeRank < currentNodeRank);
+
86  }
+
88 };
+
89 }} // namespace jmespath::parser
+
90 #endif // NODEINSERTCONDITION_H
+
The NodeInsertCondition class is a functor that will either yield a true or false result based on whe...
Definition: nodeinsertcondition.h:41
+
ValueType value
The variable which stores the node that this object represents.
Definition: variantnode.h:126
+
int nodeRank(const T &)
Returns the rank of the given node object's type.
Definition: noderank.h:40
+
The BinaryExpressionNode class is the base class for all node types which consist of a left and a rig...
Definition: binaryexpressionnode.h:39
+
bool operator()(const ast::ExpressionNode &targetNode, const T &node) const
Returns true or false based on whether the given node should be inserted at the location of the targe...
Definition: nodeinsertcondition.h:61
+
virtual bool stopsProjection() const =0
Reports whether the node should stop an ongoing projection or not.
+
virtual bool isProjection() const =0
Reports whether the right hand side expression is projected onto the result of the operation or not...
+ + +
The ExpressionNode class represents a JMESPath expression.
Definition: expressionnode.h:56
+
bool result_type
The result type of the functor.
Definition: nodeinsertcondition.h:47
+
+ + + + diff --git a/nodeinsertpolicy_8h.html b/nodeinsertpolicy_8h.html new file mode 100644 index 0000000..25b93ff --- /dev/null +++ b/nodeinsertpolicy_8h.html @@ -0,0 +1,123 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/parser/nodeinsertpolicy.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
nodeinsertpolicy.h File Reference
+
+
+
#include "src/ast/allnodes.h"
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::parser::NodeInsertPolicy
 The NodeInsertPolicy class is a functor for inserting a given node into the AST. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::parser
 Classes required for parsing JMESPath expressions.
 
+
+ + + + diff --git a/nodeinsertpolicy_8h_source.html b/nodeinsertpolicy_8h_source.html new file mode 100644 index 0000000..9d9decf --- /dev/null +++ b/nodeinsertpolicy_8h_source.html @@ -0,0 +1,179 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/parser/nodeinsertpolicy.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
nodeinsertpolicy.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef NODEINSERTPOLICY_H
+
29 #define NODEINSERTPOLICY_H
+
30 #include "src/ast/allnodes.h"
+
31 
+
32 namespace jmespath { namespace parser {
+
33 
+ +
39 {
+
40 public:
+
44  using result_type = void;
+
45 
+
53  template <typename T, typename
+
54  std::enable_if<
+
55  std::is_base_of<ast::BinaryExpressionNode, T>::value
+
56  && !std::is_same<ast::SubexpressionNode, T>::value, int>::type = 0>
+
57  void operator()(ast::ExpressionNode& targetNode,
+
58  T& node) const
+
59  {
+
60  node.rightExpression = targetNode;
+
61  targetNode = node;
+
62  }
+
63 
+
64  template <typename T, typename
+
65  std::enable_if<
+
66  std::is_same<ast::NotExpressionNode, T>::value, int>::type = 0>
+
67  void operator()(ast::ExpressionNode& targetNode,
+
68  T& node) const
+
69  {
+
70  node.expression = targetNode;
+
71  targetNode = node;
+
72  }
+
73 
+
74  template <typename T, typename
+
75  std::enable_if<
+
76  (!std::is_base_of<ast::BinaryExpressionNode, T>::value
+
77  && !std::is_same<ast::NotExpressionNode, T>::value
+
78  && std::is_assignable<ast::ExpressionNode, T>::value)
+
79  || std::is_same<ast::SubexpressionNode, T>::value, int>::type = 0>
+
80  void operator()(ast::ExpressionNode& targetNode,
+
81  T& node) const
+
82  {
+
83  targetNode = node;
+
84  }
+
86 };
+
87 }} // namespace jmespath::parser
+
88 #endif // NODEINSERTPOLICY_H
+
The NodeInsertPolicy class is a functor for inserting a given node into the AST.
Definition: nodeinsertpolicy.h:38
+
void result_type
The result type of the functor.
Definition: nodeinsertpolicy.h:44
+ +
void operator()(ast::ExpressionNode &targetNode, T &node) const
Inserts the given node into the AST at the location of the targetNode.
Definition: nodeinsertpolicy.h:57
+
The ExpressionNode class represents a JMESPath expression.
Definition: expressionnode.h:56
+
+ + + + diff --git a/noderank_8h.html b/noderank_8h.html new file mode 100644 index 0000000..8ba55ad --- /dev/null +++ b/noderank_8h.html @@ -0,0 +1,189 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/parser/noderank.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
noderank.h File Reference
+
+
+
#include "src/ast/allnodes.h"
+
+

Go to the source code of this file.

+ + + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::parser
 Classes required for parsing JMESPath expressions.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T >
int jmespath::parser::nodeRank (const T &)
 Returns the rank of the given node object's type. More...
 
template<typename... Args>
int jmespath::parser::nodeRank (const boost::variant< Args...> &variant)
 Returns the rank of the node object's type contained in variant. More...
 
template<>
int jmespath::parser::nodeRank (const ast::ExpressionNode &node)
 Returns the rank of the given node object's type. More...
 
template<>
int jmespath::parser::nodeRank (const ast::SubexpressionNode &)
 Returns the rank of the given node object's type. More...
 
template<>
int jmespath::parser::nodeRank (const ast::BracketSpecifierNode &node)
 Returns the rank of the given node object's type. More...
 
template<>
int jmespath::parser::nodeRank (const ast::IndexExpressionNode &node)
 Returns the rank of the given node object's type. More...
 
template<>
int jmespath::parser::nodeRank (const ast::ArrayItemNode &)
 Returns the rank of the given node object's type. More...
 
template<>
int jmespath::parser::nodeRank (const ast::FlattenOperatorNode &)
 Returns the rank of the given node object's type. More...
 
template<>
int jmespath::parser::nodeRank (const ast::SliceExpressionNode &)
 Returns the rank of the given node object's type. More...
 
template<>
int jmespath::parser::nodeRank (const ast::ListWildcardNode &)
 Returns the rank of the given node object's type. More...
 
template<>
int jmespath::parser::nodeRank (const ast::HashWildcardNode &)
 Returns the rank of the given node object's type. More...
 
template<>
int jmespath::parser::nodeRank (const ast::FilterExpressionNode &)
 Returns the rank of the given node object's type. More...
 
template<>
int jmespath::parser::nodeRank (const ast::NotExpressionNode &)
 Returns the rank of the given node object's type. More...
 
template<>
int jmespath::parser::nodeRank (const ast::ComparatorExpressionNode &)
 Returns the rank of the given node object's type. More...
 
template<>
int jmespath::parser::nodeRank (const ast::AndExpressionNode &)
 Returns the rank of the given node object's type. More...
 
template<>
int jmespath::parser::nodeRank (const ast::OrExpressionNode &)
 Returns the rank of the given node object's type. More...
 
template<>
int jmespath::parser::nodeRank (const ast::PipeExpressionNode &)
 Returns the rank of the given node object's type. More...
 
+
+ + + + diff --git a/noderank_8h_source.html b/noderank_8h_source.html new file mode 100644 index 0000000..4104d8a --- /dev/null +++ b/noderank_8h_source.html @@ -0,0 +1,266 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/parser/noderank.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
noderank.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef NODERANK_H
+
29 #define NODERANK_H
+
30 #include "src/ast/allnodes.h"
+
31 
+
32 namespace jmespath { namespace parser {
+
33 
+
39 template <typename T>
+
40 inline int nodeRank(const T&)
+
41 {
+
42  return 0;
+
43 }
+
44 
+
50 template <typename... Args>
+
51 inline int nodeRank(const boost::variant<Args...>& variant)
+
52 {
+
53  return boost::apply_visitor([](const auto& node){
+
54  return nodeRank(node);
+
55  }, variant);
+
56 }
+
57 
+
64 template <>
+
65 inline int nodeRank(const ast::ExpressionNode& node)
+
66 {
+
67  if(node.isNull())
+
68  {
+
69  return -1;
+
70  }
+
71  else
+
72  {
+
73  return nodeRank(node.value);
+
74  }
+
75 }
+
76 
+
77 template <>
+
78 inline int nodeRank(const ast::SubexpressionNode&)
+
79 {
+
80  return 1;
+
81 }
+
82 
+
83 template <>
+
84 inline int nodeRank(const ast::BracketSpecifierNode& node)
+
85 {
+
86  return nodeRank(node.value);
+
87 }
+
88 
+
89 template <>
+
90 inline int nodeRank(const ast::IndexExpressionNode& node)
+
91 {
+
92  return nodeRank(node.bracketSpecifier);
+
93 }
+
94 
+
95 template <>
+
96 inline int nodeRank(const ast::ArrayItemNode&)
+
97 {
+
98  return 1;
+
99 }
+
100 
+
101 template <>
+ +
103 {
+
104  return 2;
+
105 }
+
106 
+
107 template <>
+ +
109 {
+
110  return 2;
+
111 }
+
112 
+
113 template <>
+
114 inline int nodeRank(const ast::ListWildcardNode&)
+
115 {
+
116  return 2;
+
117 }
+
118 
+
119 template <>
+
120 inline int nodeRank(const ast::HashWildcardNode&)
+
121 {
+
122  return 2;
+
123 }
+
124 
+
125 template <>
+ +
127 {
+
128  return 2;
+
129 }
+
130 
+
131 template <>
+ +
133 {
+
134  return 3;
+
135 }
+
136 
+
137 template <>
+ +
139 {
+
140  return 4;
+
141 }
+
142 
+
143 template <>
+ +
145 {
+
146  return 5;
+
147 }
+
148 
+
149 template <>
+
150 inline int nodeRank(const ast::OrExpressionNode&)
+
151 {
+
152  return 6;
+
153 }
+
154 
+
155 template <>
+ +
157 {
+
158  return 7;
+
159 }
+
161 }} // namespace jmespath::parser
+
162 #endif // NODERANK_H
+
The ComparatorExpressionNode class represents a JMESPath comparator expression.
Definition: comparatorexpressionnode.h:39
+
The ListWildcardNode class represents a JMESPath list wildcard expression.
Definition: listwildcardnode.h:38
+
BracketSpecifierNode bracketSpecifier
The bracket specifier in an index expression.
Definition: indexexpressionnode.h:92
+
The HashWildcardNode class represents a JMESPath hash wildcard expression.
Definition: hashwildcardnode.h:38
+
The BracketSpecifierNode class represents a JMESPath bracket specifier.
Definition: bracketspecifiernode.h:44
+
The AndExpressionNode class represents a JMESPath and expression.
Definition: andexpressionnode.h:38
+
The SliceExpressionNode class represents a JMESPath slice expression.
Definition: sliceexpressionnode.h:41
+
ValueType value
The variable which stores the node that this object represents.
Definition: variantnode.h:126
+
int nodeRank(const T &)
Returns the rank of the given node object's type.
Definition: noderank.h:40
+
The PipeExpressionNode class represents a JMESPath pipe expression.
Definition: pipeexpressionnode.h:38
+
The SubexpressionNode class represents a JMESPath subexpression.
Definition: subexpressionnode.h:37
+
The FilterExpressionNode class represents a JMESPath filter expression.
Definition: filterexpressionnode.h:39
+
The OrExpressionNode class represents a JMESPath or expression.
Definition: orexpressionnode.h:38
+
The IndexExpressionNode class represents a JMESPath index expression.
Definition: indexexpressionnode.h:39
+
The NotExpressionNode class represents a JMESPath not expression.
Definition: notexpressionnode.h:39
+ +
bool isNull() const
Returns whether this object has been initialized.
Definition: variantnode.h:114
+
The ArrayItemNode class represents a JMESPath array index expression.
Definition: arrayitemnode.h:40
+
The FlattenOperatorNode class represents a JMESPath flatten operator.
Definition: flattenoperatornode.h:39
+
The ExpressionNode class represents a JMESPath expression.
Definition: expressionnode.h:56
+
+ + + + diff --git a/notexpressionnode_8cpp.html b/notexpressionnode_8cpp.html new file mode 100644 index 0000000..36e972a --- /dev/null +++ b/notexpressionnode_8cpp.html @@ -0,0 +1,116 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/notexpressionnode.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
notexpressionnode.cpp File Reference
+
+
+ + + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/notexpressionnode_8h.html b/notexpressionnode_8h.html new file mode 100644 index 0000000..68f6c3e --- /dev/null +++ b/notexpressionnode_8h.html @@ -0,0 +1,125 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/notexpressionnode.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
notexpressionnode.h File Reference
+
+
+
#include "src/ast/abstractnode.h"
+#include "src/ast/expressionnode.h"
+#include <boost/fusion/include/adapt_struct.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::ast::NotExpressionNode
 The NotExpressionNode class represents a JMESPath not expression. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/notexpressionnode_8h_source.html b/notexpressionnode_8h_source.html new file mode 100644 index 0000000..1de5fc6 --- /dev/null +++ b/notexpressionnode_8h_source.html @@ -0,0 +1,162 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/notexpressionnode.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
notexpressionnode.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef NOTEXPRESSIONNODE_H
+
29 #define NOTEXPRESSIONNODE_H
+
30 #include "src/ast/abstractnode.h"
+
31 #include "src/ast/expressionnode.h"
+
32 #include <boost/fusion/include/adapt_struct.hpp>
+
33 
+
34 namespace jmespath { namespace ast {
+
35 
+ +
40 {
+
41 public:
+ +
51  NotExpressionNode(const ExpressionNode& subexpression);
+
57  void accept(interpreter::AbstractVisitor* visitor) const override;
+
64  bool operator==(const NotExpressionNode& other) const;
+ +
69 };
+
70 }} // namespace jmespath::ast
+
71 
+
72 BOOST_FUSION_ADAPT_STRUCT(
+ +
74  (jmespath::ast::ExpressionNode, expression)
+
75 )
+
76 #endif // NOTEXPRESSIONNODE_H
+
bool operator==(const NotExpressionNode &other) const
Equality compares this node to the other.
Definition: notexpressionnode.cpp:50
+ + +
void accept(interpreter::AbstractVisitor *visitor) const override
Calls the visit method of the given visitor with the dynamic type of the node.
Definition: notexpressionnode.cpp:45
+
NotExpressionNode()
Constructs an emtpy NotExpressionNode object.
Definition: notexpressionnode.cpp:34
+
The AbstractVisitor class is an interface which defines the member functions required to visit every ...
Definition: abstractvisitor.h:71
+
The NotExpressionNode class represents a JMESPath not expression.
Definition: notexpressionnode.h:39
+
The ExpressionNode class represents a JMESPath expression.
Definition: expressionnode.h:56
+
The AbstractNode class is the common interface class for all AST node types.
Definition: abstractnode.h:45
+
ExpressionNode expression
The node's child expression.
Definition: notexpressionnode.h:68
+
+ + + + diff --git a/open.png b/open.png new file mode 100644 index 0000000000000000000000000000000000000000..30f75c7efe2dd0c9e956e35b69777a02751f048b GIT binary patch literal 123 zcmeAS@N?(olHy`uVBq!ia0vp^oFL4>1|%O$WD@{VPM$7~Ar*{o?;hlAFyLXmaDC0y znK1_#cQqJWPES%4Uujug^TE?jMft$}Eq^WaR~)%f)vSNs&gek&x%A9X9sM + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/orexpressionnode.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
orexpressionnode.cpp File Reference
+
+
+ + + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/orexpressionnode_8h.html b/orexpressionnode_8h.html new file mode 100644 index 0000000..70fc71c --- /dev/null +++ b/orexpressionnode_8h.html @@ -0,0 +1,124 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/orexpressionnode.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
orexpressionnode.h File Reference
+
+
+
#include "src/ast/binaryexpressionnode.h"
+#include <boost/fusion/include/adapt_struct.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::ast::OrExpressionNode
 The OrExpressionNode class represents a JMESPath or expression. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/orexpressionnode_8h_source.html b/orexpressionnode_8h_source.html new file mode 100644 index 0000000..5fc5293 --- /dev/null +++ b/orexpressionnode_8h_source.html @@ -0,0 +1,164 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/orexpressionnode.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
orexpressionnode.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef OREXPRESSIONNODE_H
+
29 #define OREXPRESSIONNODE_H
+ +
31 #include <boost/fusion/include/adapt_struct.hpp>
+
32 
+
33 namespace jmespath { namespace ast {
+
34 
+ +
39 {
+
40 public:
+ + + +
58  bool isProjection() const override;
+
65  bool stopsProjection() const override;
+
71  void accept(interpreter::AbstractVisitor* visitor) const override;
+
72 };
+
73 }} // namespace jmespath::ast
+
74 
+
75 BOOST_FUSION_ADAPT_STRUCT(
+ +
77  (jmespath::ast::ExpressionNode, leftExpression)
+
78  (jmespath::ast::ExpressionNode, rightExpression)
+
79 )
+
80 #endif // OREXPRESSIONNODE_H
+ +
bool isProjection() const override
Returns whather this expression requires the projection of subsequent expressions.
Definition: orexpressionnode.cpp:45
+
The BinaryExpressionNode class is the base class for all node types which consist of a left and a rig...
Definition: binaryexpressionnode.h:39
+
ExpressionNode rightExpression
The right hand expression of the node.
Definition: binaryexpressionnode.h:88
+
OrExpressionNode()
Constructs an empty OrExpressionNode object.
Definition: orexpressionnode.cpp:34
+
The OrExpressionNode class represents a JMESPath or expression.
Definition: orexpressionnode.h:38
+
The AbstractVisitor class is an interface which defines the member functions required to visit every ...
Definition: abstractvisitor.h:71
+
void accept(interpreter::AbstractVisitor *visitor) const override
Calls the visit method of the given visitor with the dynamic type of the node.
Definition: orexpressionnode.cpp:55
+
ExpressionNode leftExpression
The left hand expression of the node.
Definition: binaryexpressionnode.h:84
+
The ExpressionNode class represents a JMESPath expression.
Definition: expressionnode.h:56
+
bool stopsProjection() const override
Reports whether the node should stop an ongoing projection or not.
Definition: orexpressionnode.cpp:50
+
+ + + + diff --git a/pages.html b/pages.html new file mode 100644 index 0000000..bfa620c --- /dev/null +++ b/pages.html @@ -0,0 +1,97 @@ + + + + + + +jmespath.cpp: Related Pages + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + +
+ + + + +
+ +
+ +
+
+
Related Pages
+
+
+
Here is a list of all related documentation pages:
+
+ + + + diff --git a/parenexpressionnode_8cpp.html b/parenexpressionnode_8cpp.html new file mode 100644 index 0000000..c42b2c4 --- /dev/null +++ b/parenexpressionnode_8cpp.html @@ -0,0 +1,116 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/parenexpressionnode.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
parenexpressionnode.cpp File Reference
+
+
+ + + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/parenexpressionnode_8h.html b/parenexpressionnode_8h.html new file mode 100644 index 0000000..35a2ee5 --- /dev/null +++ b/parenexpressionnode_8h.html @@ -0,0 +1,124 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/parenexpressionnode.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
parenexpressionnode.h File Reference
+
+
+
#include "src/ast/expressionnode.h"
+#include <boost/fusion/include/adapt_struct.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::ast::ParenExpressionNode
 The ParenExpressionNode class represents a JMESPath paren expression. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/parenexpressionnode_8h_source.html b/parenexpressionnode_8h_source.html new file mode 100644 index 0000000..07c537c --- /dev/null +++ b/parenexpressionnode_8h_source.html @@ -0,0 +1,160 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/parenexpressionnode.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
parenexpressionnode.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef PARENEXPRESSIONNODE_H
+
29 #define PARENEXPRESSIONNODE_H
+
30 #include "src/ast/expressionnode.h"
+
31 #include <boost/fusion/include/adapt_struct.hpp>
+
32 
+
33 namespace jmespath { namespace ast {
+
34 
+ +
39 {
+
40 public:
+ +
50  ParenExpressionNode(const ExpressionNode& subexpression);
+
56  void accept(interpreter::AbstractVisitor* visitor) const override;
+
63  bool operator==(const ParenExpressionNode& other) const;
+ +
68 };
+
69 }} // namespace jmespath::ast
+
70 
+
71 BOOST_FUSION_ADAPT_STRUCT(
+ +
73  (jmespath::ast::ExpressionNode, expression)
+
74 )
+
75 #endif // PARENEXPRESSIONNODE_H
+
ExpressionNode expression
The node's child expression.
Definition: parenexpressionnode.h:67
+
ParenExpressionNode()
Constructs an emtpy ParenExpressionNode object.
Definition: parenexpressionnode.cpp:34
+ +
The AbstractVisitor class is an interface which defines the member functions required to visit every ...
Definition: abstractvisitor.h:71
+
void accept(interpreter::AbstractVisitor *visitor) const override
Calls the visit method of the given visitor with the dynamic type of the node.
Definition: parenexpressionnode.cpp:45
+
The ExpressionNode class represents a JMESPath expression.
Definition: expressionnode.h:56
+
The ParenExpressionNode class represents a JMESPath paren expression.
Definition: parenexpressionnode.h:38
+
bool operator==(const ParenExpressionNode &other) const
Equality compares this node to the other.
Definition: parenexpressionnode.cpp:50
+
The AbstractNode class is the common interface class for all AST node types.
Definition: abstractnode.h:45
+
+ + + + diff --git a/parser_8h.html b/parser_8h.html new file mode 100644 index 0000000..b04ec73 --- /dev/null +++ b/parser_8h.html @@ -0,0 +1,125 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/parser/parser.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
parser.h File Reference
+
+
+
#include "jmespath/types.h"
+#include "jmespath/exceptions.h"
+#include <boost/spirit/include/qi.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::parser::Parser< T >
 The Parser class parses expressions with the specified grammar. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::parser
 Classes required for parsing JMESPath expressions.
 
+
+ + + + diff --git a/parser_8h_source.html b/parser_8h_source.html new file mode 100644 index 0000000..0d1ec04 --- /dev/null +++ b/parser_8h_source.html @@ -0,0 +1,200 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/parser/parser.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
parser.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef PARSER_H
+
29 #define PARSER_H
+
30 #include "jmespath/types.h"
+
31 #include "jmespath/exceptions.h"
+
32 #include <boost/spirit/include/qi.hpp>
+
33 
+
34 namespace jmespath { namespace parser {
+
35 
+
36 namespace qi = boost::spirit::qi;
+
37 namespace encoding = qi::unicode;
+
38 
+
43 template <template<typename, typename> class T>
+
44 class Parser
+
45 {
+
46 public:
+ +
54  using GrammarType = T<IteratorType, encoding::space_type>;
+
58  using ResultType = typename GrammarType::start_type::attr_type;
+
59 
+
67  ResultType parse(const String& expression)
+
68  {
+
69  try
+
70  {
+
71  // create begin and end iterators to the expression
+
72  // retain the value of the begin iterator
+
73  IteratorType beginIt(expression.cbegin());
+
74  IteratorType it = beginIt;
+
75  IteratorType endIt(expression.cend());
+
76 
+
77  ResultType result;
+
78  // parse JMESPath expression and create the result
+
79  bool parsingSuccesful = qi::phrase_parse(it, endIt,
+
80  m_grammar, encoding::space,
+
81  result);
+
82  // if parsing wasn't sucessful or if the expression was
+
83  // only partially parsed
+
84  if (!parsingSuccesful || (it != endIt))
+
85  {
+
86  // throw exception and set the location of syntax error
+
87  auto syntaxErrorLocation = std::distance(beginIt, it);
+
88  auto exception = SyntaxError();
+
89  exception << InfoSyntaxErrorLocation(syntaxErrorLocation);
+
90  BOOST_THROW_EXCEPTION(exception);
+
91  }
+
92  return result;
+
93  }
+
94  catch(Exception& exception)
+
95  {
+
96  exception << InfoSearchExpression(expression);
+
97  throw;
+
98  }
+
99  }
+
100 
+
101 private:
+ +
106 };
+
107 }} // namespace jmespath::parser
+
108 #endif // PARSER_H
+ +
boost::error_info< struct tag_syntax_error_location, long > InfoSyntaxErrorLocation
InfoSyntaxErrorLocation contains the location of the syntax error in the JMESPath expression...
Definition: exceptions.h:50
+
The Parser class parses expressions with the specified grammar.
Definition: parser.h:44
+
ResultType parse(const String &expression)
Parses the given expression.
Definition: parser.h:67
+
UnicodeIteratorAdaptor IteratorType
Iterator type which will be used to instantiate the grammar.
Definition: parser.h:50
+
std::basic_string< Char > String
UTF-8 encoded string type.
Definition: types.h:44
+ +
boost::error_info< struct tag_search_expression, std::string > InfoSearchExpression
InfoSearchExpression contains the JMESPath expression being evaluated.
Definition: exceptions.h:43
+
GrammarType m_grammar
Grammar object used for parsing.
Definition: parser.h:105
+
typename GrammarType::start_type::attr_type ResultType
The type of the result of parsing.
Definition: parser.h:58
+
The SyntaxError struct represents a syntax error in the evaluated expression.
Definition: exceptions.h:80
+
T< IteratorType, encoding::space_type > GrammarType
The type of the grammar that will be instantiated.
Definition: parser.h:54
+
The Exception struct is the common base class for for all the exceptions thrown by the library...
Definition: exceptions.h:67
+
boost::u8_to_u32_iterator< String::const_iterator > UnicodeIteratorAdaptor
UTF-32 string iterator adaptor.
Definition: types.h:57
+
+ + + + diff --git a/pipeexpressionnode_8cpp.html b/pipeexpressionnode_8cpp.html new file mode 100644 index 0000000..17eef0d --- /dev/null +++ b/pipeexpressionnode_8cpp.html @@ -0,0 +1,116 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/pipeexpressionnode.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
pipeexpressionnode.cpp File Reference
+
+
+ + + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/pipeexpressionnode_8h.html b/pipeexpressionnode_8h.html new file mode 100644 index 0000000..80d336b --- /dev/null +++ b/pipeexpressionnode_8h.html @@ -0,0 +1,124 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/pipeexpressionnode.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
pipeexpressionnode.h File Reference
+
+
+
#include "src/ast/binaryexpressionnode.h"
+#include <boost/fusion/include/adapt_struct.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::ast::PipeExpressionNode
 The PipeExpressionNode class represents a JMESPath pipe expression. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/pipeexpressionnode_8h_source.html b/pipeexpressionnode_8h_source.html new file mode 100644 index 0000000..913b10c --- /dev/null +++ b/pipeexpressionnode_8h_source.html @@ -0,0 +1,164 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/pipeexpressionnode.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
pipeexpressionnode.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef PIPEEXPRESSIONNODE_H
+
29 #define PIPEEXPRESSIONNODE_H
+ +
31 #include <boost/fusion/include/adapt_struct.hpp>
+
32 
+
33 namespace jmespath { namespace ast {
+
34 
+ +
39 {
+
40 public:
+ + + +
58  bool isProjection() const override;
+
65  bool stopsProjection() const override;
+
71  void accept(interpreter::AbstractVisitor* visitor) const override;
+
72 };
+
73 }} // namespace jmespath::ast
+
74 
+
75 BOOST_FUSION_ADAPT_STRUCT(
+ +
77  (jmespath::ast::ExpressionNode, leftExpression)
+
78  (jmespath::ast::ExpressionNode, rightExpression)
+
79 )
+
80 #endif // PIPEEXPRESSIONNODE_H
+ +
void accept(interpreter::AbstractVisitor *visitor) const override
Calls the visit method of the given visitor with the dynamic type of the node.
Definition: pipeexpressionnode.cpp:55
+
bool stopsProjection() const override
Reports whether the node should stop an ongoing projection or not.
Definition: pipeexpressionnode.cpp:50
+
The PipeExpressionNode class represents a JMESPath pipe expression.
Definition: pipeexpressionnode.h:38
+
The BinaryExpressionNode class is the base class for all node types which consist of a left and a rig...
Definition: binaryexpressionnode.h:39
+
ExpressionNode rightExpression
The right hand expression of the node.
Definition: binaryexpressionnode.h:88
+
The AbstractVisitor class is an interface which defines the member functions required to visit every ...
Definition: abstractvisitor.h:71
+
ExpressionNode leftExpression
The left hand expression of the node.
Definition: binaryexpressionnode.h:84
+
The ExpressionNode class represents a JMESPath expression.
Definition: expressionnode.h:56
+
PipeExpressionNode()
Constructs an empty PipeExpressionNode object.
Definition: pipeexpressionnode.cpp:34
+
bool isProjection() const override
Returns whather this expression requires the projection of subsequent expressions.
Definition: pipeexpressionnode.cpp:45
+
+ + + + diff --git a/rawstringnode_8cpp.html b/rawstringnode_8cpp.html new file mode 100644 index 0000000..14fd602 --- /dev/null +++ b/rawstringnode_8cpp.html @@ -0,0 +1,115 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/rawstringnode.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
rawstringnode.cpp File Reference
+
+
+ + + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/rawstringnode_8h.html b/rawstringnode_8h.html new file mode 100644 index 0000000..542d84d --- /dev/null +++ b/rawstringnode_8h.html @@ -0,0 +1,125 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/rawstringnode.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
rawstringnode.h File Reference
+
+
+
#include "src/ast/abstractnode.h"
+#include "jmespath/types.h"
+#include <boost/fusion/include/adapt_struct.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::ast::RawStringNode
 The RawStringNode class represents a JMESPath raw string literal. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/rawstringnode_8h_source.html b/rawstringnode_8h_source.html new file mode 100644 index 0000000..9773c11 --- /dev/null +++ b/rawstringnode_8h_source.html @@ -0,0 +1,162 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/rawstringnode.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
rawstringnode.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef RAWSTRINGNODE_H
+
29 #define RAWSTRINGNODE_H
+
30 #include "src/ast/abstractnode.h"
+
31 #include "jmespath/types.h"
+
32 #include <boost/fusion/include/adapt_struct.hpp>
+
33 
+
34 namespace jmespath { namespace ast {
+
35 
+ +
40 {
+
41 public:
+
45  RawStringNode();
+
51  RawStringNode(const String& string);
+
57  void accept(interpreter::AbstractVisitor* visitor) const override;
+
64  bool operator==(const RawStringNode& other) const;
+ +
69 };
+
70 }} // namespace jmespath::ast
+
71 
+
72 BOOST_FUSION_ADAPT_STRUCT(
+ +
74  (jmespath::String, rawString)
+
75 )
+
76 #endif // RAWSTRINGNODE_H
+ +
bool operator==(const RawStringNode &other) const
Equality compares this node to the other.
Definition: rawstringnode.cpp:49
+ +
RawStringNode()
Constructs an empty RawStringNode object.
Definition: rawstringnode.cpp:33
+
void accept(interpreter::AbstractVisitor *visitor) const override
Calls the visit method of the given visitor with the dynamic type of the node.
Definition: rawstringnode.cpp:44
+
std::basic_string< Char > String
UTF-8 encoded string type.
Definition: types.h:44
+
String rawString
The raw string value.
Definition: rawstringnode.h:68
+
The AbstractVisitor class is an interface which defines the member functions required to visit every ...
Definition: abstractvisitor.h:71
+
The RawStringNode class represents a JMESPath raw string literal.
Definition: rawstringnode.h:39
+
The AbstractNode class is the common interface class for all AST node types.
Definition: abstractnode.h:45
+
+ + + + diff --git a/search/all_0.html b/search/all_0.html new file mode 100644 index 0000000..17b6da8 --- /dev/null +++ b/search/all_0.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_0.js b/search/all_0.js new file mode 100644 index 0000000..b2aa121 --- /dev/null +++ b/search/all_0.js @@ -0,0 +1,33 @@ +var searchData= +[ + ['abs',['abs',['../classjmespath_1_1interpreter_1_1_interpreter.html#a055e816d0cb67f04fb1d8b482d6fa3d1',1,'jmespath::interpreter::Interpreter']]], + ['abstractnode',['AbstractNode',['../classjmespath_1_1ast_1_1_abstract_node.html',1,'jmespath::ast']]], + ['abstractnode',['AbstractNode',['../classjmespath_1_1ast_1_1_abstract_node.html#a5caa1d6562417f6c9e9269bac406dd7d',1,'jmespath::ast::AbstractNode::AbstractNode()=default'],['../classjmespath_1_1ast_1_1_abstract_node.html#ae3220ad3bf0fc6f8f6007af5feee82eb',1,'jmespath::ast::AbstractNode::AbstractNode(const AbstractNode &)=default']]], + ['abstractnode_2ecpp',['abstractnode.cpp',['../abstractnode_8cpp.html',1,'']]], + ['abstractnode_2eh',['abstractnode.h',['../abstractnode_8h.html',1,'']]], + ['abstractvisitor',['AbstractVisitor',['../classjmespath_1_1interpreter_1_1_abstract_visitor.html',1,'jmespath::interpreter']]], + ['abstractvisitor_2ecpp',['abstractvisitor.cpp',['../abstractvisitor_8cpp.html',1,'']]], + ['abstractvisitor_2eh',['abstractvisitor.h',['../abstractvisitor_8h.html',1,'']]], + ['accept',['accept',['../classjmespath_1_1ast_1_1_abstract_node.html#a629a34664e74545820cd0a1baeee7058',1,'jmespath::ast::AbstractNode::accept()'],['../classjmespath_1_1ast_1_1_and_expression_node.html#a8fd82ec77740adc1f1bc371029cdc61d',1,'jmespath::ast::AndExpressionNode::accept()'],['../classjmespath_1_1ast_1_1_array_item_node.html#a7125bf687c30332b32240e1f10ce1dda',1,'jmespath::ast::ArrayItemNode::accept()'],['../classjmespath_1_1ast_1_1_binary_expression_node.html#a56041d6e19f470ac7d42b1931d2bde91',1,'jmespath::ast::BinaryExpressionNode::accept()'],['../classjmespath_1_1ast_1_1_comparator_expression_node.html#af2a58c0debf9aa0a2799c2b75f52154f',1,'jmespath::ast::ComparatorExpressionNode::accept()'],['../classjmespath_1_1ast_1_1_current_node.html#a42b316ad0c3fceae2d281b11b1455147',1,'jmespath::ast::CurrentNode::accept()'],['../classjmespath_1_1ast_1_1_expression_argument_node.html#a093787d9b359929b345afcaa822e552b',1,'jmespath::ast::ExpressionArgumentNode::accept()'],['../classjmespath_1_1ast_1_1_filter_expression_node.html#aec97ce9c0930fb5fc29067cd7c01df01',1,'jmespath::ast::FilterExpressionNode::accept()'],['../classjmespath_1_1ast_1_1_flatten_operator_node.html#a4b6818f101c06effafde46547e173c7a',1,'jmespath::ast::FlattenOperatorNode::accept()'],['../classjmespath_1_1ast_1_1_function_expression_node.html#a67512a70bbca7fe403d973e3c2a0e2a3',1,'jmespath::ast::FunctionExpressionNode::accept()'],['../classjmespath_1_1ast_1_1_hash_wildcard_node.html#ab399e99846d6b0b38f48b1dfaf3292e2',1,'jmespath::ast::HashWildcardNode::accept()'],['../classjmespath_1_1ast_1_1_identifier_node.html#a0daf16d2e28aa4f247f98a6859fde36c',1,'jmespath::ast::IdentifierNode::accept()'],['../classjmespath_1_1ast_1_1_index_expression_node.html#a1e9d3d83b2ec8481db72198af61ca9bf',1,'jmespath::ast::IndexExpressionNode::accept()'],['../classjmespath_1_1ast_1_1_list_wildcard_node.html#a60f2d0e46ad8c87d2b770d02fc1a4728',1,'jmespath::ast::ListWildcardNode::accept()'],['../classjmespath_1_1ast_1_1_literal_node.html#a3bd52fb115d1af74370dc20a957e984d',1,'jmespath::ast::LiteralNode::accept()'],['../classjmespath_1_1ast_1_1_multiselect_hash_node.html#aec853618dbc1d00579a8b1901d4f1979',1,'jmespath::ast::MultiselectHashNode::accept()'],['../classjmespath_1_1ast_1_1_multiselect_list_node.html#a878494e4158892fbdffb1d9e296a8f32',1,'jmespath::ast::MultiselectListNode::accept()'],['../classjmespath_1_1ast_1_1_not_expression_node.html#a42132de1915cf0a2072e4965d9d13a5a',1,'jmespath::ast::NotExpressionNode::accept()'],['../classjmespath_1_1ast_1_1_or_expression_node.html#a3daa5e19c005de1c6b739f9824f5fc37',1,'jmespath::ast::OrExpressionNode::accept()'],['../classjmespath_1_1ast_1_1_paren_expression_node.html#a91fc1fc1019dbb79dd1a6e8a1e524cae',1,'jmespath::ast::ParenExpressionNode::accept()'],['../classjmespath_1_1ast_1_1_pipe_expression_node.html#a956d4736e50a2510c73f37652bbee832',1,'jmespath::ast::PipeExpressionNode::accept()'],['../classjmespath_1_1ast_1_1_raw_string_node.html#a0cd4a2019e675c218ec3e4f555f6b1c9',1,'jmespath::ast::RawStringNode::accept()'],['../classjmespath_1_1ast_1_1_slice_expression_node.html#a8b24d1e01b1efa9638f5ce8892900c5e',1,'jmespath::ast::SliceExpressionNode::accept()'],['../classjmespath_1_1ast_1_1_variant_node.html#afcccfaed818e41c1ea09511cc25d541e',1,'jmespath::ast::VariantNode::accept()']]], + ['adjustsliceendpoint',['adjustSliceEndpoint',['../classjmespath_1_1interpreter_1_1_interpreter.html#a8dd7b2b8edd9c46ab2b406b806e8bf68',1,'jmespath::interpreter::Interpreter']]], + ['allnodes_2eh',['allnodes.h',['../allnodes_8h.html',1,'']]], + ['anchor',['anchor',['../classjmespath_1_1ast_1_1_bracket_specifier_node.html#a06150a5c9daff9a2f315445ba6ddea8a',1,'jmespath::ast::BracketSpecifierNode::anchor()'],['../group__exceptions.html#aeb724f4ff79dad28930b71d2d49ba298',1,'jmespath::Exception::anchor()'],['../group__exceptions.html#a5edfb4cbe1df585d65f67471427021d4',1,'jmespath::SyntaxError::anchor()'],['../group__exceptions.html#a3331ca881be8b10a504f8d07a45049b7',1,'jmespath::InvalidAgrument::anchor()'],['../group__exceptions.html#a847ab426138e54f6023a044fbf483209',1,'jmespath::InvalidValue::anchor()'],['../group__exceptions.html#a5644adc5743a28077c7814f35105af0e',1,'jmespath::UnknownFunction::anchor()'],['../group__exceptions.html#af25fe8caa7344ac8ff15d81cc78ed85b',1,'jmespath::InvalidFunctionArgumentArity::anchor()'],['../group__exceptions.html#a4b95ecbe4149e65afdcb54c4e4f38101',1,'jmespath::InvalidFunctionArgumentType::anchor()']]], + ['andexpressionnode',['AndExpressionNode',['../classjmespath_1_1ast_1_1_and_expression_node.html#a93c4a5585c1a5f750f0ce71a89e42e29',1,'jmespath::ast::AndExpressionNode::AndExpressionNode()'],['../classjmespath_1_1ast_1_1_and_expression_node.html#acd0f3d76b4a2c2e2ad06397e66bd9292',1,'jmespath::ast::AndExpressionNode::AndExpressionNode(const ExpressionNode &leftExpression, const ExpressionNode &rightExpression)']]], + ['andexpressionnode',['AndExpressionNode',['../classjmespath_1_1ast_1_1_and_expression_node.html',1,'jmespath::ast']]], + ['andexpressionnode_2ecpp',['andexpressionnode.cpp',['../andexpressionnode_8cpp.html',1,'']]], + ['andexpressionnode_2eh',['andexpressionnode.h',['../andexpressionnode_8h.html',1,'']]], + ['appendescapesequenceaction',['AppendEscapeSequenceAction',['../classjmespath_1_1parser_1_1_append_escape_sequence_action.html',1,'jmespath::parser']]], + ['appendescapesequenceaction_2eh',['appendescapesequenceaction.h',['../appendescapesequenceaction_8h.html',1,'']]], + ['appendutf8action',['AppendUtf8Action',['../classjmespath_1_1parser_1_1_append_utf8_action.html',1,'jmespath::parser']]], + ['appendutf8action_2eh',['appendutf8action.h',['../appendutf8action_8h.html',1,'']]], + ['argumentarityvalidator',['ArgumentArityValidator',['../classjmespath_1_1interpreter_1_1_interpreter.html#a2e0a73594f7107917465635275b68cc4',1,'jmespath::interpreter::Interpreter']]], + ['arguments',['arguments',['../classjmespath_1_1ast_1_1_function_expression_node.html#ab930aed9fdf3374b1dc6a313a8937224',1,'jmespath::ast::FunctionExpressionNode']]], + ['argumenttype',['ArgumentType',['../classjmespath_1_1ast_1_1_function_expression_node.html#abe0dfade0179a9b6212bc6ec4acfbd05',1,'jmespath::ast::FunctionExpressionNode']]], + ['arrayitemnode',['ArrayItemNode',['../classjmespath_1_1ast_1_1_array_item_node.html#a9ef25f514638059e7906d1f7d9a86a79',1,'jmespath::ast::ArrayItemNode::ArrayItemNode()'],['../classjmespath_1_1ast_1_1_array_item_node.html#aa62e3e8cf2f82856793c3d509921b9ce',1,'jmespath::ast::ArrayItemNode::ArrayItemNode(Index itemIndex)']]], + ['arrayitemnode',['ArrayItemNode',['../classjmespath_1_1ast_1_1_array_item_node.html',1,'jmespath::ast']]], + ['arrayitemnode_2ecpp',['arrayitemnode.cpp',['../arrayitemnode_8cpp.html',1,'']]], + ['arrayitemnode_2eh',['arrayitemnode.h',['../arrayitemnode_8h.html',1,'']]], + ['assigncontextvalue',['assignContextValue',['../namespacejmespath_1_1interpreter.html#a40841c02a3fe19752807242535bc840c',1,'jmespath::interpreter::assignContextValue(Json &&value)'],['../namespacejmespath_1_1interpreter.html#a84ff43d4f17c3e41927cf40a6ed62849',1,'jmespath::interpreter::assignContextValue(const Json &value)']]], + ['astroot',['astRoot',['../group__public.html#ad5c2ef2db4ef41c7fe6804ebcb2f011e',1,'jmespath::Expression']]], + ['avg',['avg',['../classjmespath_1_1interpreter_1_1_interpreter.html#adbeadae2f2706ac9f4f6c27f90631bdf',1,'jmespath::interpreter::Interpreter']]] +]; diff --git a/search/all_1.html b/search/all_1.html new file mode 100644 index 0000000..e290644 --- /dev/null +++ b/search/all_1.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_1.js b/search/all_1.js new file mode 100644 index 0000000..1c11ec1 --- /dev/null +++ b/search/all_1.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['binaryexpressionnode',['BinaryExpressionNode',['../classjmespath_1_1ast_1_1_binary_expression_node.html',1,'jmespath::ast']]], + ['binaryexpressionnode',['BinaryExpressionNode',['../classjmespath_1_1ast_1_1_binary_expression_node.html#ae1ede34adad2e1da823b8deb76a15452',1,'jmespath::ast::BinaryExpressionNode::BinaryExpressionNode()'],['../classjmespath_1_1ast_1_1_binary_expression_node.html#a19615b683a707076bc345dcdbe247783',1,'jmespath::ast::BinaryExpressionNode::BinaryExpressionNode(const ExpressionNode &left, const ExpressionNode &right)']]], + ['binaryexpressionnode_2ecpp',['binaryexpressionnode.cpp',['../binaryexpressionnode_8cpp.html',1,'']]], + ['binaryexpressionnode_2eh',['binaryexpressionnode.h',['../binaryexpressionnode_8h.html',1,'']]], + ['bracketspecifier',['bracketSpecifier',['../classjmespath_1_1ast_1_1_index_expression_node.html#a09e0daed81a1e77f51396200ce0d1863',1,'jmespath::ast::IndexExpressionNode']]], + ['bracketspecifiernode',['BracketSpecifierNode',['../classjmespath_1_1ast_1_1_bracket_specifier_node.html#a047d85af8ffa5d2a3ff09646711fb1ef',1,'jmespath::ast::BracketSpecifierNode::BracketSpecifierNode()'],['../classjmespath_1_1ast_1_1_bracket_specifier_node.html#a1b5af260323113a1fb55e4e889ac8c0f',1,'jmespath::ast::BracketSpecifierNode::BracketSpecifierNode(const ValueType &expression)']]], + ['bracketspecifiernode',['BracketSpecifierNode',['../classjmespath_1_1ast_1_1_bracket_specifier_node.html',1,'jmespath::ast']]], + ['bracketspecifiernode_2ecpp',['bracketspecifiernode.cpp',['../bracketspecifiernode_8cpp.html',1,'']]], + ['bracketspecifiernode_2eh',['bracketspecifiernode.h',['../bracketspecifiernode_8h.html',1,'']]] +]; diff --git a/search/all_10.html b/search/all_10.html new file mode 100644 index 0000000..c55c836 --- /dev/null +++ b/search/all_10.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_10.js b/search/all_10.js new file mode 100644 index 0000000..315938f --- /dev/null +++ b/search/all_10.js @@ -0,0 +1,27 @@ +var searchData= +[ + ['search',['search',['../group__public.html#ga6df94674a4b7617fbd14a0c59f123dc6',1,'jmespath']]], + ['search_3c_20const_20json_20_26_20_3e',['search< const Json & >',['../namespacejmespath.html#a133b8541fb21b54b98b4008d171daeda',1,'jmespath']]], + ['search_3c_20json_20_26_20_3e',['search< Json & >',['../namespacejmespath.html#a561c9705166e454e85a2b52942b69a0d',1,'jmespath']]], + ['search_3c_20json_20_3e',['search< Json >',['../namespacejmespath.html#a27c0b44635c9d95c157a474be688cbc6',1,'jmespath']]], + ['setcontext',['setContext',['../classjmespath_1_1interpreter_1_1_interpreter.html#a79f98e341474b65ec9cce68fed2a4d20',1,'jmespath::interpreter::Interpreter']]], + ['sliceexpressionnode',['SliceExpressionNode',['../classjmespath_1_1ast_1_1_slice_expression_node.html',1,'jmespath::ast']]], + ['sliceexpressionnode',['SliceExpressionNode',['../classjmespath_1_1ast_1_1_slice_expression_node.html#ae43160208183ea536185f7788b649f77',1,'jmespath::ast::SliceExpressionNode']]], + ['sliceexpressionnode_2ecpp',['sliceexpressionnode.cpp',['../sliceexpressionnode_8cpp.html',1,'']]], + ['sliceexpressionnode_2eh',['sliceexpressionnode.h',['../sliceexpressionnode_8h.html',1,'']]], + ['sort',['sort',['../classjmespath_1_1interpreter_1_1_interpreter.html#ac14ac0f815365173feb5b2370db72619',1,'jmespath::interpreter::Interpreter::sort(FunctionArgumentList &arguments)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a52fdde020a1709ed8e55903ff2f93ee5',1,'jmespath::interpreter::Interpreter::sort(Json &&array)']]], + ['sortby',['sortBy',['../classjmespath_1_1interpreter_1_1_interpreter.html#aad2b1ac8df5b01a4f2efed15a349b327',1,'jmespath::interpreter::Interpreter::sortBy(FunctionArgumentList &arguments)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#abfd1f3877221af3183e08785195cbe94',1,'jmespath::interpreter::Interpreter::sortBy(const ast::ExpressionNode *expression, Json &&array)']]], + ['start',['start',['../classjmespath_1_1ast_1_1_slice_expression_node.html#aebcc622ffeb5d48ea37164db576af234',1,'jmespath::ast::SliceExpressionNode']]], + ['startswith',['startsWith',['../classjmespath_1_1interpreter_1_1_interpreter.html#a5d33ef82e21134b447efc83497966c18',1,'jmespath::interpreter::Interpreter']]], + ['step',['step',['../classjmespath_1_1ast_1_1_slice_expression_node.html#a1e4d27f4875e42addb62dabb62776846',1,'jmespath::ast::SliceExpressionNode']]], + ['stop',['stop',['../classjmespath_1_1ast_1_1_slice_expression_node.html#a03ea56e003a1d1054e483e9deba88792',1,'jmespath::ast::SliceExpressionNode']]], + ['stopsprojection',['stopsProjection',['../classjmespath_1_1ast_1_1_and_expression_node.html#ae9e9d81854589d07a73ffebc8e7bad85',1,'jmespath::ast::AndExpressionNode::stopsProjection()'],['../classjmespath_1_1ast_1_1_binary_expression_node.html#a3c80b0c5b21b0a03992c943cc775b317',1,'jmespath::ast::BinaryExpressionNode::stopsProjection()'],['../classjmespath_1_1ast_1_1_bracket_specifier_node.html#aaff4f383e7b0aebcd8dae83831adb5a1',1,'jmespath::ast::BracketSpecifierNode::stopsProjection()'],['../classjmespath_1_1ast_1_1_comparator_expression_node.html#acb3f51b3130a1514815b7ac098d1f6df',1,'jmespath::ast::ComparatorExpressionNode::stopsProjection()'],['../classjmespath_1_1ast_1_1_hash_wildcard_node.html#a4f82169bb3b3a29ab46adeef241ee284',1,'jmespath::ast::HashWildcardNode::stopsProjection()'],['../classjmespath_1_1ast_1_1_index_expression_node.html#a2767fa2f58a876c87c88a983ac648660',1,'jmespath::ast::IndexExpressionNode::stopsProjection()'],['../classjmespath_1_1ast_1_1_or_expression_node.html#a44673e60565b908cf69df5fee5177e85',1,'jmespath::ast::OrExpressionNode::stopsProjection()'],['../classjmespath_1_1ast_1_1_pipe_expression_node.html#a2a4aee22c531c12d82e5137ebc72b0a5',1,'jmespath::ast::PipeExpressionNode::stopsProjection()'],['../classjmespath_1_1ast_1_1_subexpression_node.html#a060601e46c6cd9435a018be8c301357c',1,'jmespath::ast::SubexpressionNode::stopsProjection()']]], + ['string',['String',['../namespacejmespath.html#ab178b37f05f638534caa4d585b767dfa',1,'jmespath']]], + ['stringiteratoradaptor',['StringIteratorAdaptor',['../namespacejmespath.html#ac2f18d8bf73fe1cdb5d72ab9e3765256',1,'jmespath']]], + ['subexpressionnode',['SubexpressionNode',['../classjmespath_1_1ast_1_1_subexpression_node.html',1,'jmespath::ast']]], + ['subexpressionnode',['SubexpressionNode',['../classjmespath_1_1ast_1_1_subexpression_node.html#a866523d011d89b18a9a25bff340a4eb8',1,'jmespath::ast::SubexpressionNode::SubexpressionNode()'],['../classjmespath_1_1ast_1_1_subexpression_node.html#a0d0c7ede8c786c6a29c8d22376c766c0',1,'jmespath::ast::SubexpressionNode::SubexpressionNode(const ExpressionNode &expression, const ExpressionNode &subexpression={})']]], + ['subexpressionnode_2ecpp',['subexpressionnode.cpp',['../subexpressionnode_8cpp.html',1,'']]], + ['subexpressionnode_2eh',['subexpressionnode.h',['../subexpressionnode_8h.html',1,'']]], + ['sum',['sum',['../classjmespath_1_1interpreter_1_1_interpreter.html#ae19c4cb62717b133788483d16f9edaa1',1,'jmespath::interpreter::Interpreter']]], + ['syntaxerror',['SyntaxError',['../group__exceptions.html#structjmespath_1_1_syntax_error',1,'jmespath']]] +]; diff --git a/search/all_11.html b/search/all_11.html new file mode 100644 index 0000000..6f3943a --- /dev/null +++ b/search/all_11.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_11.js b/search/all_11.js new file mode 100644 index 0000000..a83f6ac --- /dev/null +++ b/search/all_11.js @@ -0,0 +1,10 @@ +var searchData= +[ + ['the_20public_20api_20of_20the_20library',['The public API of the library',['../group__public.html',1,'']]], + ['toarray',['toArray',['../classjmespath_1_1interpreter_1_1_interpreter.html#a591bf888dc0076333b9654928c335e49',1,'jmespath::interpreter::Interpreter::toArray(FunctionArgumentList &arguments)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a4cb3e4cf97fb7e8109bf42d1f7de3d26',1,'jmespath::interpreter::Interpreter::toArray(JsonT &&value)']]], + ['toboolean',['toBoolean',['../classjmespath_1_1interpreter_1_1_interpreter.html#a6b9c860895bda8083b06c8f8cc2c5c7a',1,'jmespath::interpreter::Interpreter']]], + ['tonumber',['toNumber',['../classjmespath_1_1interpreter_1_1_interpreter.html#a3d75ed5fb8a3fe2d0c3317cf2f42e453',1,'jmespath::interpreter::Interpreter::toNumber(FunctionArgumentList &arguments)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a4bbbe8af7773986af8beb5b2d1c0ffa4',1,'jmespath::interpreter::Interpreter::toNumber(JsonT &&value)']]], + ['tostring',['toString',['../classjmespath_1_1interpreter_1_1_interpreter.html#a418c0ba5ae28f84d68886ce9444d1c42',1,'jmespath::interpreter::Interpreter::toString(FunctionArgumentList &arguments)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a9e1442e650f3a6093113d86508e64381',1,'jmespath::interpreter::Interpreter::toString(JsonT &&value)'],['../group__public.html#a4d366bff973fc49648331988aebd271a',1,'jmespath::Expression::toString()']]], + ['type',['type',['../classjmespath_1_1interpreter_1_1_interpreter.html#a4bb569a4240c75a31925185e4f044ae6',1,'jmespath::interpreter::Interpreter']]], + ['types_2eh',['types.h',['../types_8h.html',1,'']]] +]; diff --git a/search/all_12.html b/search/all_12.html new file mode 100644 index 0000000..3c7c89e --- /dev/null +++ b/search/all_12.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_12.js b/search/all_12.js new file mode 100644 index 0000000..64b60c1 --- /dev/null +++ b/search/all_12.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['unicodechar',['UnicodeChar',['../namespacejmespath.html#a0e5eb6047dedbe647b4a69021d6193e7',1,'jmespath']]], + ['unicodeiteratoradaptor',['UnicodeIteratorAdaptor',['../namespacejmespath.html#a041615dd23e73a1e8bd7661d2355843b',1,'jmespath']]], + ['unicodestring',['UnicodeString',['../namespacejmespath.html#ad594dcfde4a9039a84292e1ff0ed1104',1,'jmespath']]], + ['unknown',['Unknown',['../classjmespath_1_1ast_1_1_comparator_expression_node.html#a41659ba6a374723c6e6be7495b5b4db6a88183b946cc5f0e8c96b2e66e1c74a7e',1,'jmespath::ast::ComparatorExpressionNode']]], + ['unknownfunction',['UnknownFunction',['../group__exceptions.html#structjmespath_1_1_unknown_function',1,'jmespath']]] +]; diff --git a/search/all_13.html b/search/all_13.html new file mode 100644 index 0000000..0bd629b --- /dev/null +++ b/search/all_13.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_13.js b/search/all_13.js new file mode 100644 index 0000000..2aa87d7 --- /dev/null +++ b/search/all_13.js @@ -0,0 +1,16 @@ +var searchData= +[ + ['value',['value',['../classjmespath_1_1ast_1_1_variant_node.html#a50472ad7c685d8f3f13045ec2d39da42',1,'jmespath::ast::VariantNode']]], + ['values',['values',['../classjmespath_1_1interpreter_1_1_interpreter.html#a66fefafe7da0ab82e7bdeab03b9ac16c',1,'jmespath::interpreter::Interpreter::values(FunctionArgumentList &arguments)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a79e7f5086beb69818394416a260d4e86',1,'jmespath::interpreter::Interpreter::values(JsonT &&object)']]], + ['valuetype',['ValueType',['../classjmespath_1_1ast_1_1_variant_node.html#a9d5cd63bbec7fd4adcd197a9e367a82f',1,'jmespath::ast::VariantNode']]], + ['variantnode',['VariantNode',['../classjmespath_1_1ast_1_1_variant_node.html',1,'jmespath::ast']]], + ['variantnode',['VariantNode',['../classjmespath_1_1ast_1_1_variant_node.html#ae40ed25a5a341bf87493f3e7c44c6387',1,'jmespath::ast::VariantNode::VariantNode()'],['../classjmespath_1_1ast_1_1_variant_node.html#a35ce0abccdd8b4d89dac828246ccfd7d',1,'jmespath::ast::VariantNode::VariantNode(const VariantNode &)=default'],['../classjmespath_1_1ast_1_1_variant_node.html#a327440121a9012c739d2fd8a3fc5b7db',1,'jmespath::ast::VariantNode::VariantNode(const T &other)']]], + ['variantnode_2eh',['variantnode.h',['../variantnode_8h.html',1,'']]], + ['variantnode_3c_20boost_3a_3arecursive_5fwrapper_3c_20arrayitemnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20flattenoperatornode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20sliceexpressionnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20listwildcardnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20filterexpressionnode_20_3e_20_3e',['VariantNode< boost::recursive_wrapper< ArrayItemNode >, boost::recursive_wrapper< FlattenOperatorNode >, boost::recursive_wrapper< SliceExpressionNode >, boost::recursive_wrapper< ListWildcardNode >, boost::recursive_wrapper< FilterExpressionNode > >',['../classjmespath_1_1ast_1_1_variant_node.html',1,'jmespath::ast']]], + ['variantnode_3c_20boost_3a_3arecursive_5fwrapper_3c_20identifiernode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20rawstringnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20literalnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20subexpressionnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20indexexpressionnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20hashwildcardnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20multiselectlistnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20multiselecthashnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20notexpressionnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20comparatorexpressionnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20orexpressionnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20andexpressionnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20parenexpressionnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20pipeexpressionnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20currentnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20functionexpressionnode_20_3e_20_3e',['VariantNode< boost::recursive_wrapper< IdentifierNode >, boost::recursive_wrapper< RawStringNode >, boost::recursive_wrapper< LiteralNode >, boost::recursive_wrapper< SubexpressionNode >, boost::recursive_wrapper< IndexExpressionNode >, boost::recursive_wrapper< HashWildcardNode >, boost::recursive_wrapper< MultiselectListNode >, boost::recursive_wrapper< MultiselectHashNode >, boost::recursive_wrapper< NotExpressionNode >, boost::recursive_wrapper< ComparatorExpressionNode >, boost::recursive_wrapper< OrExpressionNode >, boost::recursive_wrapper< AndExpressionNode >, boost::recursive_wrapper< ParenExpressionNode >, boost::recursive_wrapper< PipeExpressionNode >, boost::recursive_wrapper< CurrentNode >, boost::recursive_wrapper< FunctionExpressionNode > >',['../classjmespath_1_1ast_1_1_variant_node.html',1,'jmespath::ast']]], + ['variantvisitoradaptor',['VariantVisitorAdaptor',['../classjmespath_1_1ast_1_1_variant_visitor_adaptor.html',1,'jmespath::ast']]], + ['variantvisitoradaptor',['VariantVisitorAdaptor',['../classjmespath_1_1ast_1_1_variant_visitor_adaptor.html#a46d2307197445206082e3818eaebdd43',1,'jmespath::ast::VariantVisitorAdaptor']]], + ['variantvisitoradaptor_2ecpp',['variantvisitoradaptor.cpp',['../variantvisitoradaptor_8cpp.html',1,'']]], + ['variantvisitoradaptor_2eh',['variantvisitoradaptor.h',['../variantvisitoradaptor_8h.html',1,'']]], + ['visit',['visit',['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#a2a9c3b9955eaa3c004e337b50158148e',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::AbstractNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#a45b8f812d20608086cec8d7ad2ddf1ed',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::ExpressionNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#adba3a896f642ed6912a73cef82d6b8f3',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::IdentifierNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#ae92fcd077dc2c09368072c6878e7753b',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::RawStringNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#ae047ff3dac7716cacba989b8bf7c4fff',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::LiteralNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#a7e46d293efa673225b5200b59dbe67fb',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::SubexpressionNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#ae44cf80204edb3119f3df848927bb74b',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::IndexExpressionNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#a910913bf607825065c2e36a379b9c3f2',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::ArrayItemNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#ab042a032ec35e5f89382dc23cc657207',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::FlattenOperatorNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#a33031ad1bc6700b00f00721c590a0c11',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::BracketSpecifierNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#adb4a68d5f77d9c8028299313df52386d',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::SliceExpressionNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#ac71c2ad40d5b59f26429ad9522ccf1d5',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::ListWildcardNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#a99a798ad1372ab4a73cc0ca4acc5436f',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::HashWildcardNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#a6d0a0166618bbfa1041d218ffdb9ca5a',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::MultiselectListNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#ae31e73806cb1677018a6f05bc18cc4e9',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::MultiselectHashNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#ad9f991c40bae7a56d062f5152d2470c3',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::NotExpressionNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#add15b2d544eac8d2bef1702206bb6b58',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::ComparatorExpressionNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#a1521620cf845a4936cf750e603aa32f2',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::OrExpressionNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#ae3e94031349c54baa636925c35bd91cb',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::AndExpressionNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#a609991cbea0eb03cf2af9055f20d0df0',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::ParenExpressionNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#af0e0ec021682ab870bb445ef15b3c49b',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::PipeExpressionNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#a00437ad0e3212593fed0abd14d127a23',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::CurrentNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#aa231d0ba6bdd2ca2d75807c70a8c38ec',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::FilterExpressionNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#aaf6d7394c237da4b0d0293d689324b2d',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::FunctionExpressionNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#aa2d6ada42ce0cb6a73a097588fd38829',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::ExpressionArgumentNode *node)=0'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a40dacec9e3aba6093b4dcafa72159713',1,'jmespath::interpreter::Interpreter::visit(const ast::AbstractNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a0988c0a10cdd6f7b5f249f196fb11fd4',1,'jmespath::interpreter::Interpreter::visit(const ast::ExpressionNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#ad885de001cbb36b616da904e45465be9',1,'jmespath::interpreter::Interpreter::visit(const ast::IdentifierNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#ace6b780f90297f8340ebf32b51b5007b',1,'jmespath::interpreter::Interpreter::visit(const ast::RawStringNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#aa8e3985c46b5b2ec3eea2df7f2addb8a',1,'jmespath::interpreter::Interpreter::visit(const ast::LiteralNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a58a20409b4eee23accc2e788c2b593d0',1,'jmespath::interpreter::Interpreter::visit(const ast::SubexpressionNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a2eaaf8427cd35c9881616f2e8fdb6781',1,'jmespath::interpreter::Interpreter::visit(const ast::IndexExpressionNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a613be8cdc28878118e32b48795279465',1,'jmespath::interpreter::Interpreter::visit(const ast::ArrayItemNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a3473c34c209e085721b0dc778b8d821e',1,'jmespath::interpreter::Interpreter::visit(const ast::FlattenOperatorNode *) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#ab4daf01792b532cbfb3c390c26a8f893',1,'jmespath::interpreter::Interpreter::visit(const ast::BracketSpecifierNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#acf4304f187a3a0f73137baddffbc4898',1,'jmespath::interpreter::Interpreter::visit(const ast::SliceExpressionNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#ae62a95594e3a9463afc380203b4de636',1,'jmespath::interpreter::Interpreter::visit(const ast::ListWildcardNode *) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a4fa462ef5d6a33a81184fdbee8b70ad1',1,'jmespath::interpreter::Interpreter::visit(const ast::HashWildcardNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#af9d7317ea4533379037bf4cc08c560d2',1,'jmespath::interpreter::Interpreter::visit(const ast::MultiselectListNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#ab6bd51efad3f63f427ecf66ef91a9c6b',1,'jmespath::interpreter::Interpreter::visit(const ast::MultiselectHashNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#ac2050b42d2dea1430c3e2bb8423dd32c',1,'jmespath::interpreter::Interpreter::visit(const ast::NotExpressionNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#ac09aec4c0324ba51f8c744c6eecca7b4',1,'jmespath::interpreter::Interpreter::visit(const ast::ComparatorExpressionNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a140f9eb4be35d55d274e9b4811ffbd42',1,'jmespath::interpreter::Interpreter::visit(const ast::OrExpressionNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a5c476925cdcdfbe33cf65b03c8e4c58c',1,'jmespath::interpreter::Interpreter::visit(const ast::AndExpressionNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a684f0cdb6eb0fa4da58d1706eeb4eb2a',1,'jmespath::interpreter::Interpreter::visit(const ast::ParenExpressionNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a58a2d8ec5df42b622d75d86edd5cf9b1',1,'jmespath::interpreter::Interpreter::visit(const ast::PipeExpressionNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#ab1ec2e7473b662195f16f01b3a922727',1,'jmespath::interpreter::Interpreter::visit(const ast::CurrentNode *) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a0328259a98ae3fdf178aa82af9ed3e7c',1,'jmespath::interpreter::Interpreter::visit(const ast::FilterExpressionNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a2742c4c7d37791f4cc9a0f49a2035e97',1,'jmespath::interpreter::Interpreter::visit(const ast::FunctionExpressionNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#ad52f9eb6f642b13595111f6151cd980f',1,'jmespath::interpreter::Interpreter::visit(const ast::ExpressionArgumentNode *) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#aa1560f312aed6e6d1ed5cff69387018a',1,'jmespath::interpreter::Interpreter::visit(const ast::IdentifierNode *node, JsonT &&context)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a0f9f1ff65fbe34c20f866b6eb7ed5bf6',1,'jmespath::interpreter::Interpreter::visit(const ast::ArrayItemNode *node, JsonT &&context)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a80702b76ca2d836c5fadaf1e6f64a06f',1,'jmespath::interpreter::Interpreter::visit(const ast::FlattenOperatorNode *node, JsonT &&context)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a30d45a764c099e357dca3b38e990d735',1,'jmespath::interpreter::Interpreter::visit(const ast::SliceExpressionNode *node, JsonT &&context)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a9084145d100b3f6a16d4aad0f41512f9',1,'jmespath::interpreter::Interpreter::visit(const ast::HashWildcardNode *node, JsonT &&context)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a2bc3b9a293d459d5054645acf34190f8',1,'jmespath::interpreter::Interpreter::visit(const ast::FilterExpressionNode *node, JsonT &&context)']]] +]; diff --git a/search/all_14.html b/search/all_14.html new file mode 100644 index 0000000..2ad638b --- /dev/null +++ b/search/all_14.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_14.js b/search/all_14.js new file mode 100644 index 0000000..828e13d --- /dev/null +++ b/search/all_14.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['_7eabstractnode',['~AbstractNode',['../classjmespath_1_1ast_1_1_abstract_node.html#a4b63ab1754e0530e0061cbf3acd080e5',1,'jmespath::ast::AbstractNode']]], + ['_7eabstractvisitor',['~AbstractVisitor',['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#a43ec1fb5d20ef31e41d39098f391c969',1,'jmespath::interpreter::AbstractVisitor']]], + ['_7eexpressionnode',['~ExpressionNode',['../classjmespath_1_1ast_1_1_expression_node.html#a92024cba2000a833135db7be93295740',1,'jmespath::ast::ExpressionNode']]] +]; diff --git a/search/all_2.html b/search/all_2.html new file mode 100644 index 0000000..95ded12 --- /dev/null +++ b/search/all_2.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_2.js b/search/all_2.js new file mode 100644 index 0000000..0df1f55 --- /dev/null +++ b/search/all_2.js @@ -0,0 +1,22 @@ +var searchData= +[ + ['ceil',['ceil',['../classjmespath_1_1interpreter_1_1_interpreter.html#a3058b197fcfb95bf6dc12aea304bffc2',1,'jmespath::interpreter::Interpreter']]], + ['char',['Char',['../namespacejmespath.html#abd11d46d1c6393b1b985e981eccdd5e3',1,'jmespath']]], + ['childnode',['childNode',['../classjmespath_1_1parser_1_1_left_child_extractor.html#a1a30d17a6c3eee8c3e6661506c9eda0d',1,'jmespath::parser::LeftChildExtractor::childNode(T *) const '],['../classjmespath_1_1parser_1_1_left_child_extractor.html#a3ba1f2f30a199ae3c36b83d2ea99ab65',1,'jmespath::parser::LeftChildExtractor::childNode(T *node) const '],['../classjmespath_1_1parser_1_1_left_child_extractor.html#a3ba1f2f30a199ae3c36b83d2ea99ab65',1,'jmespath::parser::LeftChildExtractor::childNode(T *node) const ']]], + ['comparator',['comparator',['../classjmespath_1_1ast_1_1_comparator_expression_node.html#a25b1f607d654b2ef3565dd5c5fae5d4c',1,'jmespath::ast::ComparatorExpressionNode::comparator()'],['../classjmespath_1_1ast_1_1_comparator_expression_node.html#a41659ba6a374723c6e6be7495b5b4db6',1,'jmespath::ast::ComparatorExpressionNode::Comparator()']]], + ['comparatorexpressionnode',['ComparatorExpressionNode',['../classjmespath_1_1ast_1_1_comparator_expression_node.html',1,'jmespath::ast']]], + ['comparatorexpressionnode',['ComparatorExpressionNode',['../classjmespath_1_1ast_1_1_comparator_expression_node.html#a64db9025fbe6fa67ca3587146dd8233b',1,'jmespath::ast::ComparatorExpressionNode::ComparatorExpressionNode()'],['../classjmespath_1_1ast_1_1_comparator_expression_node.html#a64098437270ea8cc766c021e2e5304c3',1,'jmespath::ast::ComparatorExpressionNode::ComparatorExpressionNode(const ExpressionNode &left, Comparator valueComparator, const ExpressionNode &right)']]], + ['comparatorexpressionnode_2ecpp',['comparatorexpressionnode.cpp',['../comparatorexpressionnode_8cpp.html',1,'']]], + ['comparatorexpressionnode_2eh',['comparatorexpressionnode.h',['../comparatorexpressionnode_8h.html',1,'']]], + ['contains',['contains',['../classjmespath_1_1interpreter_1_1_interpreter.html#a94e20d92e53234c6884667099c748f99',1,'jmespath::interpreter::Interpreter']]], + ['contextvalue',['ContextValue',['../namespacejmespath_1_1interpreter.html#abe4d41e7494a8369708f7c6044c29ffb',1,'jmespath::interpreter']]], + ['contextvaluevisitoradaptor',['ContextValueVisitorAdaptor',['../classjmespath_1_1interpreter_1_1_context_value_visitor_adaptor.html',1,'jmespath::interpreter']]], + ['contextvaluevisitoradaptor',['ContextValueVisitorAdaptor',['../classjmespath_1_1interpreter_1_1_context_value_visitor_adaptor.html#afedf79dc8daec85c5827159ec6486357',1,'jmespath::interpreter::ContextValueVisitorAdaptor']]], + ['contextvaluevisitoradaptor_2eh',['contextvaluevisitoradaptor.h',['../contextvaluevisitoradaptor_8h.html',1,'']]], + ['currentcontext',['currentContext',['../classjmespath_1_1interpreter_1_1_interpreter.html#a3fb7cf2cbec7d6251618f05253e82706',1,'jmespath::interpreter::Interpreter']]], + ['currentcontextvalue',['currentContextValue',['../classjmespath_1_1interpreter_1_1_interpreter.html#a2e9c07941378999e46d5343792d83c48',1,'jmespath::interpreter::Interpreter']]], + ['currentnode',['CurrentNode',['../classjmespath_1_1ast_1_1_current_node.html#a50634a8ef113df2f29b052fabdc17584',1,'jmespath::ast::CurrentNode']]], + ['currentnode',['CurrentNode',['../classjmespath_1_1ast_1_1_current_node.html',1,'jmespath::ast']]], + ['currentnode_2ecpp',['currentnode.cpp',['../currentnode_8cpp.html',1,'']]], + ['currentnode_2eh',['currentnode.h',['../currentnode_8h.html',1,'']]] +]; diff --git a/search/all_3.html b/search/all_3.html new file mode 100644 index 0000000..4d312d0 --- /dev/null +++ b/search/all_3.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_3.js b/search/all_3.js new file mode 100644 index 0000000..8ce7a14 --- /dev/null +++ b/search/all_3.js @@ -0,0 +1,30 @@ +var searchData= +[ + ['encodesurrogatepairaction',['EncodeSurrogatePairAction',['../classjmespath_1_1parser_1_1_encode_surrogate_pair_action.html',1,'jmespath::parser']]], + ['encodesurrogatepairaction_2eh',['encodesurrogatepairaction.h',['../encodesurrogatepairaction_8h.html',1,'']]], + ['endswith',['endsWith',['../classjmespath_1_1interpreter_1_1_interpreter.html#a41deb52533d5fbf12988529eb4edde58',1,'jmespath::interpreter::Interpreter']]], + ['equal',['Equal',['../classjmespath_1_1ast_1_1_comparator_expression_node.html#a41659ba6a374723c6e6be7495b5b4db6af5f286e73bda105e538310b3190f75c5',1,'jmespath::ast::ComparatorExpressionNode']]], + ['error_20info_20types',['Error info types',['../group__error__info.html',1,'']]], + ['escape_5ftype',['escape_type',['../classjmespath_1_1parser_1_1_append_escape_sequence_action.html#a44597d73e0e3e098770632ed6d8ab066',1,'jmespath::parser::AppendEscapeSequenceAction']]], + ['evaluatearguments',['evaluateArguments',['../classjmespath_1_1interpreter_1_1_interpreter.html#a7e796fe04c34a674479cd0d0df2d8919',1,'jmespath::interpreter::Interpreter']]], + ['evaluatelogicoperator',['evaluateLogicOperator',['../classjmespath_1_1interpreter_1_1_interpreter.html#a7a26d7c5b0f52965707dde33ba696e17',1,'jmespath::interpreter::Interpreter']]], + ['evaluateprojection',['evaluateProjection',['../classjmespath_1_1interpreter_1_1_interpreter.html#a263746c9977a37fb57aa5fd3a2bead34',1,'jmespath::interpreter::Interpreter::evaluateProjection(const ast::ExpressionNode *expression)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a972ad4fe49d47143fae4b3ee650bee81',1,'jmespath::interpreter::Interpreter::evaluateProjection(const ast::ExpressionNode *expression, JsonT &&context)']]], + ['exception',['Exception',['../group__exceptions.html#structjmespath_1_1_exception',1,'jmespath']]], + ['exception_20classes',['Exception classes',['../group__exceptions.html',1,'']]], + ['exceptions_2ecpp',['exceptions.cpp',['../exceptions_8cpp.html',1,'']]], + ['exceptions_2eh',['exceptions.h',['../exceptions_8h.html',1,'']]], + ['expression',['Expression',['../group__public.html#ac4327cea31ec68f570c861bf8d88e89a',1,'jmespath::Expression::Expression()'],['../group__public.html#a2760d66c7f4c11020b57ae44b2a4c44a',1,'jmespath::Expression::Expression(const Expression &other)'],['../group__public.html#a906ae5ffb3c75b2a8b84de826aef2f3d',1,'jmespath::Expression::Expression(Expression &&other)'],['../group__public.html#a793b768e187e0c3e6190c0264d473a3e',1,'jmespath::Expression::Expression(U &&expression)'],['../classjmespath_1_1ast_1_1_expression_argument_node.html#ad8854d9c8bfd577a9e93d96be679d6ae',1,'jmespath::ast::ExpressionArgumentNode::expression()'],['../classjmespath_1_1ast_1_1_filter_expression_node.html#ac4827008e602b290f86e16e42169d0fa',1,'jmespath::ast::FilterExpressionNode::expression()'],['../classjmespath_1_1ast_1_1_not_expression_node.html#a912a9e5b36fa8cb554d19f77864ecc6e',1,'jmespath::ast::NotExpressionNode::expression()'],['../classjmespath_1_1ast_1_1_paren_expression_node.html#accc751603b2141a91a2a4c32a5b6c8d1',1,'jmespath::ast::ParenExpressionNode::expression()']]], + ['expression',['Expression',['../group__public.html#classjmespath_1_1_expression',1,'jmespath']]], + ['expression_2ecpp',['expression.cpp',['../expression_8cpp.html',1,'']]], + ['expression_2eh',['expression.h',['../expression_8h.html',1,'']]], + ['expressionargumentnode',['ExpressionArgumentNode',['../classjmespath_1_1ast_1_1_expression_argument_node.html',1,'jmespath::ast']]], + ['expressionargumentnode',['ExpressionArgumentNode',['../classjmespath_1_1ast_1_1_expression_argument_node.html#aba340628c7b88cb7d5c6a93546c5bbbf',1,'jmespath::ast::ExpressionArgumentNode::ExpressionArgumentNode()'],['../classjmespath_1_1ast_1_1_expression_argument_node.html#a4c1fa1ee54cc9c157fa061812afea90e',1,'jmespath::ast::ExpressionArgumentNode::ExpressionArgumentNode(const ExpressionNode &subexpression)']]], + ['expressionargumentnode_2ecpp',['expressionargumentnode.cpp',['../expressionargumentnode_8cpp.html',1,'']]], + ['expressionargumentnode_2eh',['expressionargumentnode.h',['../expressionargumentnode_8h.html',1,'']]], + ['expressiondeleter',['ExpressionDeleter',['../structjmespath_1_1_expression_1_1_expression_deleter.html',1,'jmespath::Expression']]], + ['expressionnode',['ExpressionNode',['../classjmespath_1_1ast_1_1_expression_node.html#a1a76b21d72aa06b6f1f39347b0495bec',1,'jmespath::ast::ExpressionNode::ExpressionNode()'],['../classjmespath_1_1ast_1_1_expression_node.html#a22c05b524604c72cd6528b62805a8001',1,'jmespath::ast::ExpressionNode::ExpressionNode(const ExpressionNode &)=default'],['../classjmespath_1_1ast_1_1_expression_node.html#a461fee9412813cad4f4159226a972f2e',1,'jmespath::ast::ExpressionNode::ExpressionNode(const ValueType &expression)']]], + ['expressionnode',['ExpressionNode',['../classjmespath_1_1ast_1_1_expression_node.html',1,'jmespath::ast']]], + ['expressionnode_2ecpp',['expressionnode.cpp',['../expressionnode_8cpp.html',1,'']]], + ['expressionnode_2eh',['expressionnode.h',['../expressionnode_8h.html',1,'']]], + ['expressions',['expressions',['../classjmespath_1_1ast_1_1_multiselect_hash_node.html#a5359fa2bb9aea26cdbb2e60f172da813',1,'jmespath::ast::MultiselectHashNode::expressions()'],['../classjmespath_1_1ast_1_1_multiselect_list_node.html#a66d72f7b4a71a0807a6f904df1dda832',1,'jmespath::ast::MultiselectListNode::expressions()']]] +]; diff --git a/search/all_4.html b/search/all_4.html new file mode 100644 index 0000000..d72a910 --- /dev/null +++ b/search/all_4.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_4.js b/search/all_4.js new file mode 100644 index 0000000..97eda40 --- /dev/null +++ b/search/all_4.js @@ -0,0 +1,22 @@ +var searchData= +[ + ['filterexpressionnode',['FilterExpressionNode',['../classjmespath_1_1ast_1_1_filter_expression_node.html',1,'jmespath::ast']]], + ['filterexpressionnode',['FilterExpressionNode',['../classjmespath_1_1ast_1_1_filter_expression_node.html#a6ed992bd21a4d84dd4e579994f73fcbc',1,'jmespath::ast::FilterExpressionNode::FilterExpressionNode()'],['../classjmespath_1_1ast_1_1_filter_expression_node.html#a2038eba2bbb3f493f2993686574300c1',1,'jmespath::ast::FilterExpressionNode::FilterExpressionNode(const ExpressionNode &subexpression)']]], + ['filterexpressionnode_2ecpp',['filterexpressionnode.cpp',['../filterexpressionnode_8cpp.html',1,'']]], + ['filterexpressionnode_2eh',['filterexpressionnode.h',['../filterexpressionnode_8h.html',1,'']]], + ['flattenoperatornode',['FlattenOperatorNode',['../classjmespath_1_1ast_1_1_flatten_operator_node.html',1,'jmespath::ast']]], + ['flattenoperatornode',['FlattenOperatorNode',['../classjmespath_1_1ast_1_1_flatten_operator_node.html#acee1850ef1f8902f6812a03f2683cee7',1,'jmespath::ast::FlattenOperatorNode']]], + ['flattenoperatornode_2ecpp',['flattenoperatornode.cpp',['../flattenoperatornode_8cpp.html',1,'']]], + ['flattenoperatornode_2eh',['flattenoperatornode.h',['../flattenoperatornode_8h.html',1,'']]], + ['floor',['floor',['../classjmespath_1_1interpreter_1_1_interpreter.html#a842d2c4c92acb61e9be6e6cda4272f22',1,'jmespath::interpreter::Interpreter']]], + ['function',['Function',['../classjmespath_1_1interpreter_1_1_interpreter.html#a5cd4fe2aa98033286fdf860c26740f61',1,'jmespath::interpreter::Interpreter']]], + ['functionargument',['FunctionArgument',['../classjmespath_1_1interpreter_1_1_interpreter.html#ade6d22f67b5f5839e2224153935f8c35',1,'jmespath::interpreter::Interpreter']]], + ['functionargumentlist',['FunctionArgumentList',['../classjmespath_1_1interpreter_1_1_interpreter.html#a8709959582ae925ef300fa4bba603f58',1,'jmespath::interpreter::Interpreter']]], + ['functiondescriptor',['FunctionDescriptor',['../classjmespath_1_1interpreter_1_1_interpreter.html#a9cab23bd0d25cb6962f4ebc01718a5b7',1,'jmespath::interpreter::Interpreter']]], + ['functionexpressionargumentlist',['FunctionExpressionArgumentList',['../classjmespath_1_1interpreter_1_1_interpreter.html#aa7163dd65276e3fb76f368bca090e7d1',1,'jmespath::interpreter::Interpreter']]], + ['functionexpressionnode',['FunctionExpressionNode',['../classjmespath_1_1ast_1_1_function_expression_node.html#a61b69957f0d022201edd3b2d69df0dd4',1,'jmespath::ast::FunctionExpressionNode::FunctionExpressionNode()'],['../classjmespath_1_1ast_1_1_function_expression_node.html#afc6efb268e3b0c8a873ee527f2ec4f03',1,'jmespath::ast::FunctionExpressionNode::FunctionExpressionNode(const String &name, const std::initializer_list< ArgumentType > &argumentList={})']]], + ['functionexpressionnode',['FunctionExpressionNode',['../classjmespath_1_1ast_1_1_function_expression_node.html',1,'jmespath::ast']]], + ['functionexpressionnode_2ecpp',['functionexpressionnode.cpp',['../functionexpressionnode_8cpp.html',1,'']]], + ['functionexpressionnode_2eh',['functionexpressionnode.h',['../functionexpressionnode_8h.html',1,'']]], + ['functionname',['functionName',['../classjmespath_1_1ast_1_1_function_expression_node.html#a2d826658d25a5be63b44dfb3538e25cf',1,'jmespath::ast::FunctionExpressionNode']]] +]; diff --git a/search/all_5.html b/search/all_5.html new file mode 100644 index 0000000..99ef726 --- /dev/null +++ b/search/all_5.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_5.js b/search/all_5.js new file mode 100644 index 0000000..3690fe9 --- /dev/null +++ b/search/all_5.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['getargument',['getArgument',['../classjmespath_1_1interpreter_1_1_interpreter.html#ab17b18ff60d6785102ad47cd28d5e652',1,'jmespath::interpreter::Interpreter']]], + ['getjsonargument',['getJsonArgument',['../classjmespath_1_1interpreter_1_1_interpreter.html#ab9b4ae32cde3b501c014d26b9293dfe3',1,'jmespath::interpreter::Interpreter']]], + ['getjsonvalue',['getJsonValue',['../namespacejmespath_1_1interpreter.html#aff908d4ffba86979c0b616033d9c772b',1,'jmespath::interpreter']]], + ['grammar',['Grammar',['../classjmespath_1_1parser_1_1_grammar.html#a8e0827a7cadf69fad42a00a9749ec473',1,'jmespath::parser::Grammar']]], + ['grammar',['Grammar',['../classjmespath_1_1parser_1_1_grammar.html',1,'jmespath::parser']]], + ['grammar_2eh',['grammar.h',['../grammar_8h.html',1,'']]], + ['grammartype',['GrammarType',['../classjmespath_1_1parser_1_1_parser.html#acfb25cc509c94e3b31815c0b49c8564e',1,'jmespath::parser::Parser']]], + ['greater',['Greater',['../classjmespath_1_1ast_1_1_comparator_expression_node.html#a41659ba6a374723c6e6be7495b5b4db6a8768a6821cd735aea4f5b0df88c1fc6a',1,'jmespath::ast::ComparatorExpressionNode']]], + ['greaterorequal',['GreaterOrEqual',['../classjmespath_1_1ast_1_1_comparator_expression_node.html#a41659ba6a374723c6e6be7495b5b4db6a6f2f0aefb3d22da0f3839453add5f937',1,'jmespath::ast::ComparatorExpressionNode']]] +]; diff --git a/search/all_6.html b/search/all_6.html new file mode 100644 index 0000000..6133ab3 --- /dev/null +++ b/search/all_6.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_6.js b/search/all_6.js new file mode 100644 index 0000000..6582860 --- /dev/null +++ b/search/all_6.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['hashwildcardnode',['HashWildcardNode',['../classjmespath_1_1ast_1_1_hash_wildcard_node.html',1,'jmespath::ast']]], + ['hashwildcardnode',['HashWildcardNode',['../classjmespath_1_1ast_1_1_hash_wildcard_node.html#a3f9ba99580336904591c98b69e754a74',1,'jmespath::ast::HashWildcardNode::HashWildcardNode()'],['../classjmespath_1_1ast_1_1_hash_wildcard_node.html#a4e5438dceb21dea9b1a38048156b069e',1,'jmespath::ast::HashWildcardNode::HashWildcardNode(const ExpressionNode &leftExpression, const ExpressionNode &rightExpression)']]], + ['hashwildcardnode_2ecpp',['hashwildcardnode.cpp',['../hashwildcardnode_8cpp.html',1,'']]], + ['hashwildcardnode_2eh',['hashwildcardnode.h',['../hashwildcardnode_8h.html',1,'']]] +]; diff --git a/search/all_7.html b/search/all_7.html new file mode 100644 index 0000000..5748125 --- /dev/null +++ b/search/all_7.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_7.js b/search/all_7.js new file mode 100644 index 0000000..b70dcd2 --- /dev/null +++ b/search/all_7.js @@ -0,0 +1,33 @@ +var searchData= +[ + ['identifier',['identifier',['../classjmespath_1_1ast_1_1_identifier_node.html#a9429e81596a8b8814c01c58330d6639f',1,'jmespath::ast::IdentifierNode']]], + ['identifiernode',['IdentifierNode',['../classjmespath_1_1ast_1_1_identifier_node.html',1,'jmespath::ast']]], + ['identifiernode',['IdentifierNode',['../classjmespath_1_1ast_1_1_identifier_node.html#a35aa8447a8df3ba87eee06b7151d13e1',1,'jmespath::ast::IdentifierNode::IdentifierNode()'],['../classjmespath_1_1ast_1_1_identifier_node.html#affac04ad13b86ce819f0d628416a42c2',1,'jmespath::ast::IdentifierNode::IdentifierNode(const String &name)']]], + ['identifiernode_2ecpp',['identifiernode.cpp',['../identifiernode_8cpp.html',1,'']]], + ['identifiernode_2eh',['identifiernode.h',['../identifiernode_8h.html',1,'']]], + ['index',['index',['../classjmespath_1_1ast_1_1_array_item_node.html#a26bf60a36dfafc5a94fd42b67bdeaabe',1,'jmespath::ast::ArrayItemNode::index()'],['../namespacejmespath.html#a72109c29c8286d2cd07ef4f0a6709ba0',1,'jmespath::Index()']]], + ['indexexpressionnode',['IndexExpressionNode',['../classjmespath_1_1ast_1_1_index_expression_node.html',1,'jmespath::ast']]], + ['indexexpressionnode',['IndexExpressionNode',['../classjmespath_1_1ast_1_1_index_expression_node.html#ab60ce9af275b6b5de691269feae97a75',1,'jmespath::ast::IndexExpressionNode::IndexExpressionNode()'],['../classjmespath_1_1ast_1_1_index_expression_node.html#a0d596c2f1fe0e3392a2324495ae4046c',1,'jmespath::ast::IndexExpressionNode::IndexExpressionNode(const BracketSpecifierNode &bracketNode)'],['../classjmespath_1_1ast_1_1_index_expression_node.html#ac3251f51c28bb4aae73c423175eba403',1,'jmespath::ast::IndexExpressionNode::IndexExpressionNode(const ExpressionNode &left, const BracketSpecifierNode &bracketNode, const ExpressionNode &right={})']]], + ['indexexpressionnode_2ecpp',['indexexpressionnode.cpp',['../indexexpressionnode_8cpp.html',1,'']]], + ['indexexpressionnode_2eh',['indexexpressionnode.h',['../indexexpressionnode_8h.html',1,'']]], + ['indextype',['IndexType',['../classjmespath_1_1ast_1_1_slice_expression_node.html#a4beb1640ee6ec149d069b246447a3d1b',1,'jmespath::ast::SliceExpressionNode']]], + ['infofunctionname',['InfoFunctionName',['../group__error__info.html#gafcd4625404b11d9408560aac4edcea02',1,'jmespath']]], + ['infosearchexpression',['InfoSearchExpression',['../group__error__info.html#ga30e12ff4caf9281023481c7b7920e7d7',1,'jmespath']]], + ['infosyntaxerrorlocation',['InfoSyntaxErrorLocation',['../group__error__info.html#gaabc448e7bd9f6a57cd2f3889850f8c55',1,'jmespath']]], + ['insertnodeaction',['InsertNodeAction',['../classjmespath_1_1parser_1_1_insert_node_action.html',1,'jmespath::parser']]], + ['insertnodeaction_2eh',['insertnodeaction.h',['../insertnodeaction_8h.html',1,'']]], + ['installation_20and_20integration',['Installation and integration',['../install.html',1,'']]], + ['interpreter',['Interpreter',['../classjmespath_1_1interpreter_1_1_interpreter.html',1,'jmespath::interpreter']]], + ['interpreter',['Interpreter',['../classjmespath_1_1interpreter_1_1_interpreter.html#a0b415c6fd62de979edb32e5091f76c93',1,'jmespath::interpreter::Interpreter']]], + ['interpreter_2ecpp',['interpreter.cpp',['../interpreter_8cpp.html',1,'']]], + ['interpreter_2eh',['interpreter.h',['../interpreter_8h.html',1,'']]], + ['invalidagrument',['InvalidAgrument',['../group__exceptions.html#structjmespath_1_1_invalid_agrument',1,'jmespath']]], + ['invalidfunctionargumentarity',['InvalidFunctionArgumentArity',['../group__exceptions.html#structjmespath_1_1_invalid_function_argument_arity',1,'jmespath']]], + ['invalidfunctionargumenttype',['InvalidFunctionArgumentType',['../group__exceptions.html#structjmespath_1_1_invalid_function_argument_type',1,'jmespath']]], + ['invalidvalue',['InvalidValue',['../group__exceptions.html#structjmespath_1_1_invalid_value',1,'jmespath']]], + ['iscomparablearray',['isComparableArray',['../classjmespath_1_1interpreter_1_1_interpreter.html#a61353bef52c7b291cdd290cd5956ce2b',1,'jmespath::interpreter::Interpreter']]], + ['isempty',['isEmpty',['../group__public.html#ae24e9bd6c0870f1a9e5ed44d3ae4c43f',1,'jmespath::Expression']]], + ['isnull',['isNull',['../classjmespath_1_1ast_1_1_variant_node.html#a31041225ecdf9761b938b0a2b07adf25',1,'jmespath::ast::VariantNode']]], + ['isprojection',['isProjection',['../classjmespath_1_1ast_1_1_and_expression_node.html#a57ffe78c897bae1857756cbb2b6a5808',1,'jmespath::ast::AndExpressionNode::isProjection()'],['../classjmespath_1_1ast_1_1_binary_expression_node.html#ae255673d63f6c0ceced7580fa1359f63',1,'jmespath::ast::BinaryExpressionNode::isProjection()'],['../classjmespath_1_1ast_1_1_bracket_specifier_node.html#a1ee9a6091093bf6a48f12dc847582116',1,'jmespath::ast::BracketSpecifierNode::isProjection()'],['../classjmespath_1_1ast_1_1_comparator_expression_node.html#a61fc944c156918d78cb9434b1b0f70f2',1,'jmespath::ast::ComparatorExpressionNode::isProjection()'],['../classjmespath_1_1ast_1_1_hash_wildcard_node.html#a3e8236bce38697802d036c15d517f311',1,'jmespath::ast::HashWildcardNode::isProjection()'],['../classjmespath_1_1ast_1_1_index_expression_node.html#a11e9273594da527661d9316badbfa581',1,'jmespath::ast::IndexExpressionNode::isProjection()'],['../classjmespath_1_1ast_1_1_or_expression_node.html#ad507619af1902e7b5d1fcf1575436c14',1,'jmespath::ast::OrExpressionNode::isProjection()'],['../classjmespath_1_1ast_1_1_pipe_expression_node.html#ab5b4b0354aa15afe2829ddfcdb6fb2b7',1,'jmespath::ast::PipeExpressionNode::isProjection()'],['../classjmespath_1_1ast_1_1_subexpression_node.html#afb51bb71541720e0594a1ee565b62887',1,'jmespath::ast::SubexpressionNode::isProjection()']]], + ['iteratortype',['IteratorType',['../classjmespath_1_1parser_1_1_parser.html#af8b6d33cc193b4a0c5a044e220af8c4c',1,'jmespath::parser::Parser']]] +]; diff --git a/search/all_8.html b/search/all_8.html new file mode 100644 index 0000000..0179bdd --- /dev/null +++ b/search/all_8.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_8.js b/search/all_8.js new file mode 100644 index 0000000..6e443b7 --- /dev/null +++ b/search/all_8.js @@ -0,0 +1,14 @@ +var searchData= +[ + ['ast',['ast',['../namespacejmespath_1_1ast.html',1,'jmespath']]], + ['interpreter',['interpreter',['../namespacejmespath_1_1interpreter.html',1,'jmespath']]], + ['jmespath',['jmespath',['../namespacejmespath.html',1,'']]], + ['jmespath_2ecpp',['jmespath.cpp',['../jmespath_8cpp.html',1,'']]], + ['jmespath_2eh',['jmespath.h',['../jmespath_8h.html',1,'']]], + ['join',['join',['../classjmespath_1_1interpreter_1_1_interpreter.html#a1c436d67d4a5a596c7bbb05924538110',1,'jmespath::interpreter::Interpreter']]], + ['json',['Json',['../namespacejmespath.html#a6fbd10116b7258d0ca24137ff82ce9fe',1,'jmespath']]], + ['jsoncomparator',['JsonComparator',['../classjmespath_1_1interpreter_1_1_interpreter.html#aa03e0830b5f46d8f821ea44d5862089b',1,'jmespath::interpreter::Interpreter']]], + ['jsonref',['JsonRef',['../namespacejmespath_1_1interpreter.html#aa99ccdfcaabe43e5762b22741b23b444',1,'jmespath::interpreter']]], + ['literals',['literals',['../namespacejmespath_1_1literals.html',1,'jmespath']]], + ['parser',['parser',['../namespacejmespath_1_1parser.html',1,'jmespath']]] +]; diff --git a/search/all_9.html b/search/all_9.html new file mode 100644 index 0000000..cd46d44 --- /dev/null +++ b/search/all_9.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_9.js b/search/all_9.js new file mode 100644 index 0000000..eb482cf --- /dev/null +++ b/search/all_9.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['keys',['keys',['../classjmespath_1_1interpreter_1_1_interpreter.html#a2ea0f3f77ac7533fef61fb332ba8ad74',1,'jmespath::interpreter::Interpreter']]], + ['keyvaluepairtype',['KeyValuePairType',['../classjmespath_1_1ast_1_1_multiselect_hash_node.html#a293dcf9375c47aaeb6e8ba39981a94f5',1,'jmespath::ast::MultiselectHashNode']]] +]; diff --git a/search/all_a.html b/search/all_a.html new file mode 100644 index 0000000..eab6553 --- /dev/null +++ b/search/all_a.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_a.js b/search/all_a.js new file mode 100644 index 0000000..8db7360 --- /dev/null +++ b/search/all_a.js @@ -0,0 +1,21 @@ +var searchData= +[ + ['leftchildextractor',['LeftChildExtractor',['../classjmespath_1_1parser_1_1_left_child_extractor.html',1,'jmespath::parser']]], + ['leftchildextractor_2eh',['leftchildextractor.h',['../leftchildextractor_8h.html',1,'']]], + ['leftedgeiterator',['LeftEdgeIterator',['../classjmespath_1_1parser_1_1_left_edge_iterator.html',1,'jmespath::parser']]], + ['leftedgeiterator',['LeftEdgeIterator',['../classjmespath_1_1parser_1_1_left_edge_iterator.html#a47d6341d9a60a0a1ce5411033a60539f',1,'jmespath::parser::LeftEdgeIterator::LeftEdgeIterator()'],['../classjmespath_1_1parser_1_1_left_edge_iterator.html#a370a6aacfe2b79cd272ee7b6a236f649',1,'jmespath::parser::LeftEdgeIterator::LeftEdgeIterator(ast::ExpressionNode &node)']]], + ['leftedgeiterator_2eh',['leftedgeiterator.h',['../leftedgeiterator_8h.html',1,'']]], + ['leftexpression',['leftExpression',['../classjmespath_1_1ast_1_1_binary_expression_node.html#aaaa649eaaea0c4877a4c76298f9791a8',1,'jmespath::ast::BinaryExpressionNode']]], + ['length',['length',['../classjmespath_1_1interpreter_1_1_interpreter.html#a7719b9faa182978444b7eacadf442a93',1,'jmespath::interpreter::Interpreter']]], + ['less',['Less',['../classjmespath_1_1ast_1_1_comparator_expression_node.html#a41659ba6a374723c6e6be7495b5b4db6a1cfdf0e8d0c87a228c1f40d9bee7888b',1,'jmespath::ast::ComparatorExpressionNode']]], + ['lessorequal',['LessOrEqual',['../classjmespath_1_1ast_1_1_comparator_expression_node.html#a41659ba6a374723c6e6be7495b5b4db6aa4cbdbb6070a5abb35fc95ecf1e22c14',1,'jmespath::ast::ComparatorExpressionNode']]], + ['listwildcardnode',['ListWildcardNode',['../classjmespath_1_1ast_1_1_list_wildcard_node.html#a95b272aeb77afa462bdba33da7013266',1,'jmespath::ast::ListWildcardNode']]], + ['listwildcardnode',['ListWildcardNode',['../classjmespath_1_1ast_1_1_list_wildcard_node.html',1,'jmespath::ast']]], + ['listwildcardnode_2ecpp',['listwildcardnode.cpp',['../listwildcardnode_8cpp.html',1,'']]], + ['listwildcardnode_2eh',['listwildcardnode.h',['../listwildcardnode_8h.html',1,'']]], + ['literal',['literal',['../classjmespath_1_1ast_1_1_literal_node.html#abf770d1eeff3d64d5a4f1988a9e3485a',1,'jmespath::ast::LiteralNode']]], + ['literalnode',['LiteralNode',['../classjmespath_1_1ast_1_1_literal_node.html#a55e5b1470ee74efe9688ea8ea96a2cf5',1,'jmespath::ast::LiteralNode::LiteralNode()'],['../classjmespath_1_1ast_1_1_literal_node.html#a7f477c9fb546229c75184df6ec66671d',1,'jmespath::ast::LiteralNode::LiteralNode(const String &value)']]], + ['literalnode',['LiteralNode',['../classjmespath_1_1ast_1_1_literal_node.html',1,'jmespath::ast']]], + ['literalnode_2ecpp',['literalnode.cpp',['../literalnode_8cpp.html',1,'']]], + ['literalnode_2eh',['literalnode.h',['../literalnode_8h.html',1,'']]] +]; diff --git a/search/all_b.html b/search/all_b.html new file mode 100644 index 0000000..a2c161e --- /dev/null +++ b/search/all_b.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_b.js b/search/all_b.js new file mode 100644 index 0000000..394d952 --- /dev/null +++ b/search/all_b.js @@ -0,0 +1,72 @@ +var searchData= +[ + ['m_5fandexpressionrule',['m_andExpressionRule',['../classjmespath_1_1parser_1_1_grammar.html#a4bae60238a60666c89342969e58c04ce',1,'jmespath::parser::Grammar']]], + ['m_5farrayitemrule',['m_arrayItemRule',['../classjmespath_1_1parser_1_1_grammar.html#a2b854507d22b7e00cdf822980d3f7613',1,'jmespath::parser::Grammar']]], + ['m_5fastroot',['m_astRoot',['../group__public.html#aa6be50285213e0f4c26a59b08e99cc70',1,'jmespath::Expression']]], + ['m_5fbracketspecifierrule',['m_bracketSpecifierRule',['../classjmespath_1_1parser_1_1_grammar.html#ad9288475f2f3c89c8fbe164adfe671ba',1,'jmespath::parser::Grammar']]], + ['m_5fchildextractor',['m_childExtractor',['../classjmespath_1_1parser_1_1_left_edge_iterator.html#a1cc094cfc22e758862b1286cca4a59c0',1,'jmespath::parser::LeftEdgeIterator']]], + ['m_5fcomparatorexpressionrule',['m_comparatorExpressionRule',['../classjmespath_1_1parser_1_1_grammar.html#ac787e63a36381337e69d0dd72cc4c000',1,'jmespath::parser::Grammar']]], + ['m_5fcomparatorsymbols',['m_comparatorSymbols',['../classjmespath_1_1parser_1_1_grammar.html#a0e4d2807f511eba2eb19f3f20d93bb9c',1,'jmespath::parser::Grammar']]], + ['m_5fcontext',['m_context',['../classjmespath_1_1interpreter_1_1_interpreter.html#a37f9e546e6904209393d869e55ca1b2d',1,'jmespath::interpreter::Interpreter']]], + ['m_5fcontrolcharactersymbols',['m_controlCharacterSymbols',['../classjmespath_1_1parser_1_1_grammar.html#af10b0545aca507b336cf24d9c9dac932',1,'jmespath::parser::Grammar']]], + ['m_5fcurrentnoderule',['m_currentNodeRule',['../classjmespath_1_1parser_1_1_grammar.html#a9854d5dcf219cd10b1a1f1d874f6d575',1,'jmespath::parser::Grammar']]], + ['m_5fescapedcharrule',['m_escapedCharRule',['../classjmespath_1_1parser_1_1_grammar.html#a005148709648c411312d16085d3143a1',1,'jmespath::parser::Grammar']]], + ['m_5fescaperule',['m_escapeRule',['../classjmespath_1_1parser_1_1_grammar.html#a2854947d9b1b48668a12e9964c49d0ca',1,'jmespath::parser::Grammar']]], + ['m_5fexpressionargumentrule',['m_expressionArgumentRule',['../classjmespath_1_1parser_1_1_grammar.html#aa345e0cd4917e9fe3e189b83116e6a79',1,'jmespath::parser::Grammar']]], + ['m_5fexpressionrule',['m_expressionRule',['../classjmespath_1_1parser_1_1_grammar.html#a8b5d307cf42d025c8c284022fa726e74',1,'jmespath::parser::Grammar']]], + ['m_5fexpressionstring',['m_expressionString',['../group__public.html#a6ad33240a1cfec8c8dfd1c1100ff2974',1,'jmespath::Expression']]], + ['m_5ffilterexpressionrule',['m_filterExpressionRule',['../classjmespath_1_1parser_1_1_grammar.html#a4585ec2bf895bdcfd7f3573dde894d9d',1,'jmespath::parser::Grammar']]], + ['m_5fflattenoperatorrule',['m_flattenOperatorRule',['../classjmespath_1_1parser_1_1_grammar.html#a357bc70d7c7e1e0c076c7cec7c3fc1dd',1,'jmespath::parser::Grammar']]], + ['m_5ffunctionargumentlistrule',['m_functionArgumentListRule',['../classjmespath_1_1parser_1_1_grammar.html#ac80a05f16fe210c946fbb26ee892ca16',1,'jmespath::parser::Grammar']]], + ['m_5ffunctionargumentrule',['m_functionArgumentRule',['../classjmespath_1_1parser_1_1_grammar.html#a4331b62abe804aa163d70c96cb795832',1,'jmespath::parser::Grammar']]], + ['m_5ffunctionexpressionrule',['m_functionExpressionRule',['../classjmespath_1_1parser_1_1_grammar.html#a191b6bede44a64f680e9b21cea456b69',1,'jmespath::parser::Grammar']]], + ['m_5ffunctionmap',['m_functionMap',['../classjmespath_1_1interpreter_1_1_interpreter.html#a7aca42bfb5d4d01952076acccd1f0914',1,'jmespath::interpreter::Interpreter']]], + ['m_5fgrammar',['m_grammar',['../classjmespath_1_1parser_1_1_parser.html#a28adbfa70faf7345642d58ef607a14fc',1,'jmespath::parser::Parser']]], + ['m_5fhashwildcardrule',['m_hashWildcardRule',['../classjmespath_1_1parser_1_1_grammar.html#a84c5d5fa1903edbec56110d42daaa4da',1,'jmespath::parser::Grammar']]], + ['m_5fhashwildcardsubexpressionrule',['m_hashWildcardSubexpressionRule',['../classjmespath_1_1parser_1_1_grammar.html#a2019dc10c77360fa285a30659a1a17dc',1,'jmespath::parser::Grammar']]], + ['m_5fidentifierrule',['m_identifierRule',['../classjmespath_1_1parser_1_1_grammar.html#af08b345d1514ca78c52320a550e24bab',1,'jmespath::parser::Grammar']]], + ['m_5findexexpressionrule',['m_indexExpressionRule',['../classjmespath_1_1parser_1_1_grammar.html#afbc75ff41ea5b9ec6b3a7460bf1366cc',1,'jmespath::parser::Grammar']]], + ['m_5findexrule',['m_indexRule',['../classjmespath_1_1parser_1_1_grammar.html#a7408d8b17f1a0c78136dcb082c6f612f',1,'jmespath::parser::Grammar']]], + ['m_5finsertcondition',['m_insertCondition',['../classjmespath_1_1parser_1_1_insert_node_action.html#a4b223359791ae3058b1f5fa5d06bab04',1,'jmespath::parser::InsertNodeAction']]], + ['m_5fkeyvaluepairrule',['m_keyValuePairRule',['../classjmespath_1_1parser_1_1_grammar.html#a57bdad936db4256ace17db6dc6071f93',1,'jmespath::parser::Grammar']]], + ['m_5flistwildcardrule',['m_listWildcardRule',['../classjmespath_1_1parser_1_1_grammar.html#a02b65b8c5833024f27a3c287974edfd9',1,'jmespath::parser::Grammar']]], + ['m_5fliteralcharrule',['m_literalCharRule',['../classjmespath_1_1parser_1_1_grammar.html#a7217e0e58ed7f290e5f040a4c7b6cca5',1,'jmespath::parser::Grammar']]], + ['m_5fliteralescaperule',['m_literalEscapeRule',['../classjmespath_1_1parser_1_1_grammar.html#a8e8ef35677fbbf1973ea3b50c135c121',1,'jmespath::parser::Grammar']]], + ['m_5fliteralrule',['m_literalRule',['../classjmespath_1_1parser_1_1_grammar.html#afe95cc9f5990ce355d5150035d4c32f2',1,'jmespath::parser::Grammar']]], + ['m_5fmultiselecthashrule',['m_multiselectHashRule',['../classjmespath_1_1parser_1_1_grammar.html#a3a29c351459793c284734fbde8f3df7f',1,'jmespath::parser::Grammar']]], + ['m_5fmultiselectlistrule',['m_multiselectListRule',['../classjmespath_1_1parser_1_1_grammar.html#a3e6224c29d28fcd7b4c7d640512e4048',1,'jmespath::parser::Grammar']]], + ['m_5fnode',['m_node',['../classjmespath_1_1parser_1_1_left_edge_iterator.html#a6b161822ec783759e448e8f6684a17e7',1,'jmespath::parser::LeftEdgeIterator']]], + ['m_5fnodeinserter',['m_nodeInserter',['../classjmespath_1_1parser_1_1_insert_node_action.html#a890dd17e954f5ae81109393f892213b1',1,'jmespath::parser::InsertNodeAction']]], + ['m_5fnotexpressionrule',['m_notExpressionRule',['../classjmespath_1_1parser_1_1_grammar.html#aa78e5929ee821f859008dd844bb3d4d6',1,'jmespath::parser::Grammar']]], + ['m_5forexpressionrule',['m_orExpressionRule',['../classjmespath_1_1parser_1_1_grammar.html#a1f1ff03d0ed1f7415725eff1a396bc7b',1,'jmespath::parser::Grammar']]], + ['m_5fparenexpressionrule',['m_parenExpressionRule',['../classjmespath_1_1parser_1_1_grammar.html#a3dcbcc90fcec3e212495fb26e8d08f5b',1,'jmespath::parser::Grammar']]], + ['m_5fpipeexpressionrule',['m_pipeExpressionRule',['../classjmespath_1_1parser_1_1_grammar.html#a2f1f8d0e6edb1b7bf917cb005ad0a535',1,'jmespath::parser::Grammar']]], + ['m_5fquotedstringrule',['m_quotedStringRule',['../classjmespath_1_1parser_1_1_grammar.html#a9376d78c53934c5b77fe4bac65abd5af',1,'jmespath::parser::Grammar']]], + ['m_5fquoterule',['m_quoteRule',['../classjmespath_1_1parser_1_1_grammar.html#a7054cd7a19e41f7e1829b2523c21f52b',1,'jmespath::parser::Grammar']]], + ['m_5frawstringcharrule',['m_rawStringCharRule',['../classjmespath_1_1parser_1_1_grammar.html#a7ec9cacc1526f7a5b7e37ca306f4471e',1,'jmespath::parser::Grammar']]], + ['m_5frawstringescaperule',['m_rawStringEscapeRule',['../classjmespath_1_1parser_1_1_grammar.html#a8b2e07b372e9b91d2f63f486e653d1a9',1,'jmespath::parser::Grammar']]], + ['m_5frawstringrule',['m_rawStringRule',['../classjmespath_1_1parser_1_1_grammar.html#add5865f4affe149d2bbb029a96551204',1,'jmespath::parser::Grammar']]], + ['m_5fsliceexpressionrule',['m_sliceExpressionRule',['../classjmespath_1_1parser_1_1_grammar.html#ac153c2b91efbc93c598a1f3cc9161ac0',1,'jmespath::parser::Grammar']]], + ['m_5fsubexpressionrule',['m_subexpressionRule',['../classjmespath_1_1parser_1_1_grammar.html#ad46a08f4c85caac6049521ad1604b3dc',1,'jmespath::parser::Grammar']]], + ['m_5fsurrogatepaircharacterrule',['m_surrogatePairCharacterRule',['../classjmespath_1_1parser_1_1_grammar.html#a3cea8d5c31fbbe0156aa8d585878ba3d',1,'jmespath::parser::Grammar']]], + ['m_5ftoplevelexpressionrule',['m_topLevelExpressionRule',['../classjmespath_1_1parser_1_1_grammar.html#a570fbfabd73c7285be61bc9d728ffc22',1,'jmespath::parser::Grammar']]], + ['m_5funescapedcharrule',['m_unescapedCharRule',['../classjmespath_1_1parser_1_1_grammar.html#ae950edbd2dba98d90fdf5f8a85cb3211',1,'jmespath::parser::Grammar']]], + ['m_5funicodecharrule',['m_unicodeCharRule',['../classjmespath_1_1parser_1_1_grammar.html#a3a4b4b73810d63fd529a48a1e7002ec8',1,'jmespath::parser::Grammar']]], + ['m_5funquotedstringrule',['m_unquotedStringRule',['../classjmespath_1_1parser_1_1_grammar.html#aa04b82517349f1e2b202e0d6f888e970',1,'jmespath::parser::Grammar']]], + ['m_5fvisitor',['m_visitor',['../classjmespath_1_1ast_1_1_variant_visitor_adaptor.html#a30a5005b64faf22155d0d6e169dc5074',1,'jmespath::ast::VariantVisitorAdaptor::m_visitor()'],['../classjmespath_1_1interpreter_1_1_context_value_visitor_adaptor.html#a5b9e59f9a08b02367656a41d365d6e78',1,'jmespath::interpreter::ContextValueVisitorAdaptor::m_visitor()']]], + ['makemoveonlyvisitor',['makeMoveOnlyVisitor',['../namespacejmespath_1_1interpreter.html#a474c94398106b52926d422f3470d720d',1,'jmespath::interpreter']]], + ['makevisitor',['makeVisitor',['../namespacejmespath_1_1interpreter.html#a92bc11a10898d88e41f867883a53ff4f',1,'jmespath::interpreter']]], + ['map',['map',['../classjmespath_1_1interpreter_1_1_interpreter.html#a0699e8088fece2a09685f8ebc24b79e9',1,'jmespath::interpreter::Interpreter::map(FunctionArgumentList &arguments)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#aff6543afe32dcf2f710be49391c49788',1,'jmespath::interpreter::Interpreter::map(const ast::ExpressionNode *node, JsonT &&array)']]], + ['max',['max',['../classjmespath_1_1interpreter_1_1_interpreter.html#ad40bc89bd4d008e8198d451c8f824746',1,'jmespath::interpreter::Interpreter::max(FunctionArgumentList &arguments, const JsonComparator &comparator)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a8da961ce5032414929fb5bb21ec6f487',1,'jmespath::interpreter::Interpreter::max(const JsonComparator *comparator, JsonT &&array)']]], + ['maxby',['maxBy',['../classjmespath_1_1interpreter_1_1_interpreter.html#a9079458dcfbad951c930515743c22025',1,'jmespath::interpreter::Interpreter::maxBy(FunctionArgumentList &arguments, const JsonComparator &comparator=std::less< Json >{})'],['../classjmespath_1_1interpreter_1_1_interpreter.html#ae950db3152ccc09629982f2aa5430aba',1,'jmespath::interpreter::Interpreter::maxBy(const ast::ExpressionNode *expression, const JsonComparator *comparator, JsonT &&array)']]], + ['merge',['merge',['../classjmespath_1_1interpreter_1_1_interpreter.html#a24dfdc1c00c14e2612d0919116892695',1,'jmespath::interpreter::Interpreter']]], + ['mergeobject',['mergeObject',['../classjmespath_1_1interpreter_1_1_interpreter.html#ab8ff4fef4cb1aa0f583715149a755fc8',1,'jmespath::interpreter::Interpreter']]], + ['multiselecthashnode',['MultiselectHashNode',['../classjmespath_1_1ast_1_1_multiselect_hash_node.html#aec66e96590389636510ec70a46a9e9a8',1,'jmespath::ast::MultiselectHashNode::MultiselectHashNode()'],['../classjmespath_1_1ast_1_1_multiselect_hash_node.html#adab7e89c8c689242aa0f5b7c66710f05',1,'jmespath::ast::MultiselectHashNode::MultiselectHashNode(const std::vector< KeyValuePairType > &subexpressions)'],['../classjmespath_1_1ast_1_1_multiselect_hash_node.html#a4a8da4056527aa582ea9c4c9b3035415',1,'jmespath::ast::MultiselectHashNode::MultiselectHashNode(const std::initializer_list< KeyValuePairType > &subexpressions)']]], + ['multiselecthashnode',['MultiselectHashNode',['../classjmespath_1_1ast_1_1_multiselect_hash_node.html',1,'jmespath::ast']]], + ['multiselecthashnode_2ecpp',['multiselecthashnode.cpp',['../multiselecthashnode_8cpp.html',1,'']]], + ['multiselecthashnode_2eh',['multiselecthashnode.h',['../multiselecthashnode_8h.html',1,'']]], + ['multiselectlistnode',['MultiselectListNode',['../classjmespath_1_1ast_1_1_multiselect_list_node.html',1,'jmespath::ast']]], + ['multiselectlistnode',['MultiselectListNode',['../classjmespath_1_1ast_1_1_multiselect_list_node.html#ad838864c8aee5b89356e0639be548770',1,'jmespath::ast::MultiselectListNode::MultiselectListNode()'],['../classjmespath_1_1ast_1_1_multiselect_list_node.html#a4b143e8984f73663e1266d0443a222d7',1,'jmespath::ast::MultiselectListNode::MultiselectListNode(const std::vector< ExpressionNode > &subexpressions)'],['../classjmespath_1_1ast_1_1_multiselect_list_node.html#aee263fc0b3052ffa79fbdc0945067680',1,'jmespath::ast::MultiselectListNode::MultiselectListNode(const std::initializer_list< ExpressionNode > &subexpressions)']]], + ['multiselectlistnode_2ecpp',['multiselectlistnode.cpp',['../multiselectlistnode_8cpp.html',1,'']]], + ['multiselectlistnode_2eh',['multiselectlistnode.h',['../multiselectlistnode_8h.html',1,'']]] +]; diff --git a/search/all_c.html b/search/all_c.html new file mode 100644 index 0000000..bdd3ee2 --- /dev/null +++ b/search/all_c.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_c.js b/search/all_c.js new file mode 100644 index 0000000..550e21e --- /dev/null +++ b/search/all_c.js @@ -0,0 +1,15 @@ +var searchData= +[ + ['nodeinsertcondition',['NodeInsertCondition',['../classjmespath_1_1parser_1_1_node_insert_condition.html',1,'jmespath::parser']]], + ['nodeinsertcondition_2eh',['nodeinsertcondition.h',['../nodeinsertcondition_8h.html',1,'']]], + ['nodeinsertpolicy',['NodeInsertPolicy',['../classjmespath_1_1parser_1_1_node_insert_policy.html',1,'jmespath::parser']]], + ['nodeinsertpolicy_2eh',['nodeinsertpolicy.h',['../nodeinsertpolicy_8h.html',1,'']]], + ['noderank',['nodeRank',['../namespacejmespath_1_1parser.html#a4bd02ea3fec09ee5893509a24a2f4f2b',1,'jmespath::parser::nodeRank(const T &)'],['../namespacejmespath_1_1parser.html#a3c434ed1cdaf59b4da44ca5c7cefb2fe',1,'jmespath::parser::nodeRank(const boost::variant< Args...> &variant)'],['../namespacejmespath_1_1parser.html#aed7a15e5a67dc671b92d81c862d6d51d',1,'jmespath::parser::nodeRank(const ast::ExpressionNode &node)'],['../namespacejmespath_1_1parser.html#abcfb7e6f94c45a50f8395d21e5f05689',1,'jmespath::parser::nodeRank(const ast::SubexpressionNode &)'],['../namespacejmespath_1_1parser.html#ae35b7e4b5efc548d282bfb17cb37d35b',1,'jmespath::parser::nodeRank(const ast::BracketSpecifierNode &node)'],['../namespacejmespath_1_1parser.html#a0e6c779e4aade4a3ef357225834a076d',1,'jmespath::parser::nodeRank(const ast::IndexExpressionNode &node)'],['../namespacejmespath_1_1parser.html#a1b050e88d3744d85229400662976908e',1,'jmespath::parser::nodeRank(const ast::ArrayItemNode &)'],['../namespacejmespath_1_1parser.html#aa66d4994f91a01dc36f2723a3b24f8fb',1,'jmespath::parser::nodeRank(const ast::FlattenOperatorNode &)'],['../namespacejmespath_1_1parser.html#aea8d57a63691d81324e4c5bf8eb89eff',1,'jmespath::parser::nodeRank(const ast::SliceExpressionNode &)'],['../namespacejmespath_1_1parser.html#a7924ecd8f4beedda2c7487f869298731',1,'jmespath::parser::nodeRank(const ast::ListWildcardNode &)'],['../namespacejmespath_1_1parser.html#add63a5dd3f9be1ed8ed156b924a3ed19',1,'jmespath::parser::nodeRank(const ast::HashWildcardNode &)'],['../namespacejmespath_1_1parser.html#afcdacd2a49f744a64c902d3c8090b20f',1,'jmespath::parser::nodeRank(const ast::FilterExpressionNode &)'],['../namespacejmespath_1_1parser.html#a903504cad271af10f24526b4de200ea3',1,'jmespath::parser::nodeRank(const ast::NotExpressionNode &)'],['../namespacejmespath_1_1parser.html#a123a30c6518ea3b81b686bb7a1934420',1,'jmespath::parser::nodeRank(const ast::ComparatorExpressionNode &)'],['../namespacejmespath_1_1parser.html#aad11decbee66e882112c8409d45e0111',1,'jmespath::parser::nodeRank(const ast::AndExpressionNode &)'],['../namespacejmespath_1_1parser.html#ae52ec47e828b60cbc73be52f1a5f68e7',1,'jmespath::parser::nodeRank(const ast::OrExpressionNode &)'],['../namespacejmespath_1_1parser.html#af3342e61a434a36d11638612b8ffb20d',1,'jmespath::parser::nodeRank(const ast::PipeExpressionNode &)']]], + ['noderank_2eh',['noderank.h',['../noderank_8h.html',1,'']]], + ['notequal',['NotEqual',['../classjmespath_1_1ast_1_1_comparator_expression_node.html#a41659ba6a374723c6e6be7495b5b4db6a19bb0af2c3c530538cb41aff7f235b96',1,'jmespath::ast::ComparatorExpressionNode']]], + ['notexpressionnode',['NotExpressionNode',['../classjmespath_1_1ast_1_1_not_expression_node.html#a4f98980b2f9224e4323870f32b1ee15c',1,'jmespath::ast::NotExpressionNode::NotExpressionNode()'],['../classjmespath_1_1ast_1_1_not_expression_node.html#afdca721a7df4699bc12ec37dcb394a7e',1,'jmespath::ast::NotExpressionNode::NotExpressionNode(const ExpressionNode &subexpression)']]], + ['notexpressionnode',['NotExpressionNode',['../classjmespath_1_1ast_1_1_not_expression_node.html',1,'jmespath::ast']]], + ['notexpressionnode_2ecpp',['notexpressionnode.cpp',['../notexpressionnode_8cpp.html',1,'']]], + ['notexpressionnode_2eh',['notexpressionnode.h',['../notexpressionnode_8h.html',1,'']]], + ['notnull',['notNull',['../classjmespath_1_1interpreter_1_1_interpreter.html#a64dcc2eb95b59d5a6a11b5c0cf45bd38',1,'jmespath::interpreter::Interpreter']]] +]; diff --git a/search/all_d.html b/search/all_d.html new file mode 100644 index 0000000..d510933 --- /dev/null +++ b/search/all_d.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_d.js b/search/all_d.js new file mode 100644 index 0000000..4a00556 --- /dev/null +++ b/search/all_d.js @@ -0,0 +1,15 @@ +var searchData= +[ + ['operator_21_3d',['operator!=',['../classjmespath_1_1parser_1_1_left_edge_iterator.html#a06756e4e5de8bd0180396e9ec3a4c603',1,'jmespath::parser::LeftEdgeIterator']]], + ['operator_22_22_5fjmespath',['operator""_jmespath',['../namespacejmespath_1_1literals.html#adb9d1473cccee8dd50779a2b103f3a09',1,'jmespath::literals']]], + ['operator_28_29',['operator()',['../classjmespath_1_1ast_1_1_variant_visitor_adaptor.html#ad704ff4912ba412c9470ff1c83318643',1,'jmespath::ast::VariantVisitorAdaptor::operator()(const T &variant) const '],['../classjmespath_1_1ast_1_1_variant_visitor_adaptor.html#add0b0effe70267d9f97bdb8fe81dc45b',1,'jmespath::ast::VariantVisitorAdaptor::operator()(const boost::blank &) const '],['../classjmespath_1_1parser_1_1_append_escape_sequence_action.html#aea3a47419b00304c94aef4dc21a86ee6',1,'jmespath::parser::AppendEscapeSequenceAction::operator()()'],['../classjmespath_1_1parser_1_1_append_utf8_action.html#a7d1dc781e31d7ec2489c0ecf8504b37c',1,'jmespath::parser::AppendUtf8Action::operator()()'],['../classjmespath_1_1parser_1_1_encode_surrogate_pair_action.html#a3dc69a3f314356bd9b4be3d9dae0ee76',1,'jmespath::parser::EncodeSurrogatePairAction::operator()()'],['../classjmespath_1_1parser_1_1_insert_node_action.html#ac39f2ca6e28241af13a8ff94b31ba4cc',1,'jmespath::parser::InsertNodeAction::operator()()'],['../classjmespath_1_1parser_1_1_left_child_extractor.html#aeef21634d2c976c384ae139aff9b2d19',1,'jmespath::parser::LeftChildExtractor::operator()(ast::ExpressionNode *node) const '],['../classjmespath_1_1parser_1_1_left_child_extractor.html#af185f2bd6a48678c79181143ffe7d221',1,'jmespath::parser::LeftChildExtractor::operator()(T &node) const '],['../classjmespath_1_1parser_1_1_node_insert_condition.html#a68260835ffbac77f8992e7dbdb9abbd6',1,'jmespath::parser::NodeInsertCondition::operator()(const ast::ExpressionNode &targetNode, const T &node) const '],['../classjmespath_1_1parser_1_1_node_insert_condition.html#a68260835ffbac77f8992e7dbdb9abbd6',1,'jmespath::parser::NodeInsertCondition::operator()(const ast::ExpressionNode &targetNode, const T &node) const '],['../classjmespath_1_1parser_1_1_node_insert_policy.html#afd8e2e7fc784e427902b9dc0c8b864c3',1,'jmespath::parser::NodeInsertPolicy::operator()(ast::ExpressionNode &targetNode, T &node) const '],['../classjmespath_1_1parser_1_1_node_insert_policy.html#afd8e2e7fc784e427902b9dc0c8b864c3',1,'jmespath::parser::NodeInsertPolicy::operator()(ast::ExpressionNode &targetNode, T &node) const '],['../classjmespath_1_1parser_1_1_node_insert_policy.html#afd8e2e7fc784e427902b9dc0c8b864c3',1,'jmespath::parser::NodeInsertPolicy::operator()(ast::ExpressionNode &targetNode, T &node) const '],['../structjmespath_1_1_expression_1_1_expression_deleter.html#a1658b0f2215fb09e2879685b5a53cde4',1,'jmespath::Expression::ExpressionDeleter::operator()()']]], + ['operator_2a',['operator*',['../classjmespath_1_1parser_1_1_left_edge_iterator.html#afaa410cc5deaf10e57049b8254d088d7',1,'jmespath::parser::LeftEdgeIterator']]], + ['operator_2b_2b',['operator++',['../classjmespath_1_1parser_1_1_left_edge_iterator.html#a8d70aa3f9e2113d02050f004b5fc3b1f',1,'jmespath::parser::LeftEdgeIterator::operator++()'],['../classjmespath_1_1parser_1_1_left_edge_iterator.html#acc14ed8ee24b3277a6316a0080581081',1,'jmespath::parser::LeftEdgeIterator::operator++(int)']]], + ['operator_2d_3e',['operator->',['../classjmespath_1_1parser_1_1_left_edge_iterator.html#a67036ca2cb4a8d5bd583ed434943f60b',1,'jmespath::parser::LeftEdgeIterator']]], + ['operator_3d',['operator=',['../classjmespath_1_1ast_1_1_abstract_node.html#abb140c6016ea790d1cd156fca1f0b2da',1,'jmespath::ast::AbstractNode::operator=()'],['../classjmespath_1_1ast_1_1_expression_node.html#a94afba7ab4cd83b1a0d7247b981a6fa6',1,'jmespath::ast::ExpressionNode::operator=(const ExpressionNode &other)'],['../classjmespath_1_1ast_1_1_expression_node.html#ac1d0853daff9d8d130fce3ca837e0f72',1,'jmespath::ast::ExpressionNode::operator=(const ValueType &expression)'],['../classjmespath_1_1ast_1_1_variant_node.html#aa3eafdbf7a6a9efded528da08273fcb8',1,'jmespath::ast::VariantNode::operator=(const VariantNode &other)'],['../classjmespath_1_1ast_1_1_variant_node.html#a68e87b8e070557ac131ec0121d17d6f9',1,'jmespath::ast::VariantNode::operator=(const T &other)'],['../group__public.html#a92db0119ac38dfa1d31c4b059e48a79f',1,'jmespath::Expression::operator=(const Expression &other)'],['../group__public.html#a5dd5fe5045a001413cbb1aa9c33f5479',1,'jmespath::Expression::operator=(Expression &&other)']]], + ['operator_3d_3d',['operator==',['../classjmespath_1_1ast_1_1_array_item_node.html#ae8c3315bedb8a26f468f888c4f65d284',1,'jmespath::ast::ArrayItemNode::operator==()'],['../classjmespath_1_1ast_1_1_binary_expression_node.html#a9ccbab352fc8fd17ed60a165cf171064',1,'jmespath::ast::BinaryExpressionNode::operator==()'],['../classjmespath_1_1ast_1_1_comparator_expression_node.html#ac86d9f68a201eba2502bb84b6e8b063f',1,'jmespath::ast::ComparatorExpressionNode::operator==()'],['../classjmespath_1_1ast_1_1_current_node.html#ac570f227e032754cb41005f23fb485d0',1,'jmespath::ast::CurrentNode::operator==()'],['../classjmespath_1_1ast_1_1_expression_argument_node.html#af1429c8ad18f4ec2ca7d36798a35f7c5',1,'jmespath::ast::ExpressionArgumentNode::operator==()'],['../classjmespath_1_1ast_1_1_filter_expression_node.html#a9c59c2e93f6adc8e1547aefb718967b6',1,'jmespath::ast::FilterExpressionNode::operator==()'],['../classjmespath_1_1ast_1_1_flatten_operator_node.html#afc832f806342b7f2ed117bf758fa53eb',1,'jmespath::ast::FlattenOperatorNode::operator==()'],['../classjmespath_1_1ast_1_1_function_expression_node.html#a36a739689ee9c9ffa651a9af864ffb9c',1,'jmespath::ast::FunctionExpressionNode::operator==()'],['../classjmespath_1_1ast_1_1_identifier_node.html#af74579f1b11dee73fd58d553e0feb83f',1,'jmespath::ast::IdentifierNode::operator==()'],['../classjmespath_1_1ast_1_1_index_expression_node.html#aab35877f35ed852b31bea030464aeb1e',1,'jmespath::ast::IndexExpressionNode::operator==()'],['../classjmespath_1_1ast_1_1_list_wildcard_node.html#a19a3c1b244a79b7817fc8b8dfb25674f',1,'jmespath::ast::ListWildcardNode::operator==()'],['../classjmespath_1_1ast_1_1_literal_node.html#ab410c955437f60d77c0d8ddd38e72e85',1,'jmespath::ast::LiteralNode::operator==()'],['../classjmespath_1_1ast_1_1_multiselect_hash_node.html#a70b4a738ce66bde77735beba02e96b00',1,'jmespath::ast::MultiselectHashNode::operator==()'],['../classjmespath_1_1ast_1_1_multiselect_list_node.html#a14394c7dfcc0a065c2b40955382e2eea',1,'jmespath::ast::MultiselectListNode::operator==()'],['../classjmespath_1_1ast_1_1_not_expression_node.html#ab5ade1f58e9ef621ed18df3a4a19cd8f',1,'jmespath::ast::NotExpressionNode::operator==()'],['../classjmespath_1_1ast_1_1_paren_expression_node.html#a6818cd8aca3c83a2572ca9ce100747b1',1,'jmespath::ast::ParenExpressionNode::operator==()'],['../classjmespath_1_1ast_1_1_raw_string_node.html#a2ad4a6bab2f7d4beef8fd5bbb34d1d03',1,'jmespath::ast::RawStringNode::operator==()'],['../classjmespath_1_1ast_1_1_slice_expression_node.html#aa1d019636f074b83c2cfb8f6a77d1503',1,'jmespath::ast::SliceExpressionNode::operator==()'],['../classjmespath_1_1ast_1_1_variant_node.html#aee396cac8777d20b95165831cb9f1b23',1,'jmespath::ast::VariantNode::operator==()'],['../group__public.html#a3df9e33707a4230d09a8f849b20ad5d7',1,'jmespath::Expression::operator==()']]], + ['orexpressionnode',['OrExpressionNode',['../classjmespath_1_1ast_1_1_or_expression_node.html',1,'jmespath::ast']]], + ['orexpressionnode',['OrExpressionNode',['../classjmespath_1_1ast_1_1_or_expression_node.html#adf8d218884aa2b64d385b884037faaca',1,'jmespath::ast::OrExpressionNode::OrExpressionNode()'],['../classjmespath_1_1ast_1_1_or_expression_node.html#a0197a946894112458d322134c06b0370',1,'jmespath::ast::OrExpressionNode::OrExpressionNode(const ExpressionNode &leftExpression, const ExpressionNode &rightExpression)']]], + ['orexpressionnode_2ecpp',['orexpressionnode.cpp',['../orexpressionnode_8cpp.html',1,'']]], + ['orexpressionnode_2eh',['orexpressionnode.h',['../orexpressionnode_8h.html',1,'']]] +]; diff --git a/search/all_e.html b/search/all_e.html new file mode 100644 index 0000000..3cda017 --- /dev/null +++ b/search/all_e.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_e.js b/search/all_e.js new file mode 100644 index 0000000..ac59e40 --- /dev/null +++ b/search/all_e.js @@ -0,0 +1,15 @@ +var searchData= +[ + ['parenexpressionnode',['ParenExpressionNode',['../classjmespath_1_1ast_1_1_paren_expression_node.html',1,'jmespath::ast']]], + ['parenexpressionnode',['ParenExpressionNode',['../classjmespath_1_1ast_1_1_paren_expression_node.html#a0b6d45d3c06d13f1de8af0130c5661db',1,'jmespath::ast::ParenExpressionNode::ParenExpressionNode()'],['../classjmespath_1_1ast_1_1_paren_expression_node.html#a545fdabc4a01b29da4a29fc92d4fb13e',1,'jmespath::ast::ParenExpressionNode::ParenExpressionNode(const ExpressionNode &subexpression)']]], + ['parenexpressionnode_2ecpp',['parenexpressionnode.cpp',['../parenexpressionnode_8cpp.html',1,'']]], + ['parenexpressionnode_2eh',['parenexpressionnode.h',['../parenexpressionnode_8h.html',1,'']]], + ['parse',['parse',['../classjmespath_1_1parser_1_1_parser.html#a8767a75d1aeac92d21be16d8c0a87a5c',1,'jmespath::parser::Parser']]], + ['parseexpression',['parseExpression',['../group__public.html#a51f74c85755ffcadd85ea26f42fbb209',1,'jmespath::Expression']]], + ['parser',['Parser',['../classjmespath_1_1parser_1_1_parser.html',1,'jmespath::parser']]], + ['parser_2eh',['parser.h',['../parser_8h.html',1,'']]], + ['pipeexpressionnode',['PipeExpressionNode',['../classjmespath_1_1ast_1_1_pipe_expression_node.html#ac0041625cfc38ddba8abc3bb85acd2a9',1,'jmespath::ast::PipeExpressionNode::PipeExpressionNode()'],['../classjmespath_1_1ast_1_1_pipe_expression_node.html#ab6f40911b4ad33f781364d583cd8c485',1,'jmespath::ast::PipeExpressionNode::PipeExpressionNode(const ExpressionNode &leftExpression, const ExpressionNode &rightExpression)']]], + ['pipeexpressionnode',['PipeExpressionNode',['../classjmespath_1_1ast_1_1_pipe_expression_node.html',1,'jmespath::ast']]], + ['pipeexpressionnode_2ecpp',['pipeexpressionnode.cpp',['../pipeexpressionnode_8cpp.html',1,'']]], + ['pipeexpressionnode_2eh',['pipeexpressionnode.h',['../pipeexpressionnode_8h.html',1,'']]] +]; diff --git a/search/all_f.html b/search/all_f.html new file mode 100644 index 0000000..7419b02 --- /dev/null +++ b/search/all_f.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/all_f.js b/search/all_f.js new file mode 100644 index 0000000..ffb3868 --- /dev/null +++ b/search/all_f.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['rawstring',['rawString',['../classjmespath_1_1ast_1_1_raw_string_node.html#afac0d2bc770db4fba5e856c3a1d3b6d3',1,'jmespath::ast::RawStringNode']]], + ['rawstringnode',['RawStringNode',['../classjmespath_1_1ast_1_1_raw_string_node.html',1,'jmespath::ast']]], + ['rawstringnode',['RawStringNode',['../classjmespath_1_1ast_1_1_raw_string_node.html#a898f3fc6dd782ed007f517b08b1a4982',1,'jmespath::ast::RawStringNode::RawStringNode()'],['../classjmespath_1_1ast_1_1_raw_string_node.html#ae6a9ce2a4bcbd417f76f942ad55fff7f',1,'jmespath::ast::RawStringNode::RawStringNode(const String &string)']]], + ['rawstringnode_2ecpp',['rawstringnode.cpp',['../rawstringnode_8cpp.html',1,'']]], + ['rawstringnode_2eh',['rawstringnode.h',['../rawstringnode_8h.html',1,'']]], + ['result_5ftype',['result_type',['../classjmespath_1_1parser_1_1_append_escape_sequence_action.html#a4fae13b5272f029b2d8ac353451531cc',1,'jmespath::parser::AppendEscapeSequenceAction::result_type()'],['../classjmespath_1_1parser_1_1_append_utf8_action.html#a33fd88a95e54eb63975476f997bdd9a9',1,'jmespath::parser::AppendUtf8Action::result_type()'],['../classjmespath_1_1parser_1_1_encode_surrogate_pair_action.html#a6de9d134a4d29da9fedfe6454ce7d834',1,'jmespath::parser::EncodeSurrogatePairAction::result_type()'],['../classjmespath_1_1parser_1_1_insert_node_action.html#a52fc8cdc7ade7d53bff40c2239a18cfa',1,'jmespath::parser::InsertNodeAction::result_type()'],['../classjmespath_1_1parser_1_1_node_insert_condition.html#a29e020262f4e3e3a99e53299a9bffc8f',1,'jmespath::parser::NodeInsertCondition::result_type()'],['../classjmespath_1_1parser_1_1_node_insert_policy.html#a72e7dc410c49d137cec82d477130432e',1,'jmespath::parser::NodeInsertPolicy::result_type()']]], + ['resulttype',['ResultType',['../classjmespath_1_1parser_1_1_parser.html#a2b30cf7e3f1471212d87cdd40197394e',1,'jmespath::parser::Parser']]], + ['reverse',['reverse',['../classjmespath_1_1interpreter_1_1_interpreter.html#a60d979e88397c3a166a6a2ddaf729469',1,'jmespath::interpreter::Interpreter::reverse(FunctionArgumentList &arguments)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#ad041b36c99d3fa03cc5ae00f376d1630',1,'jmespath::interpreter::Interpreter::reverse(Json &&subject)']]], + ['rightexpression',['rightExpression',['../classjmespath_1_1ast_1_1_binary_expression_node.html#a98bc4e3d2605413fc3f750af7b896abb',1,'jmespath::ast::BinaryExpressionNode']]] +]; diff --git a/search/classes_0.html b/search/classes_0.html new file mode 100644 index 0000000..fabdc03 --- /dev/null +++ b/search/classes_0.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/classes_0.js b/search/classes_0.js new file mode 100644 index 0000000..f508008 --- /dev/null +++ b/search/classes_0.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['abstractnode',['AbstractNode',['../classjmespath_1_1ast_1_1_abstract_node.html',1,'jmespath::ast']]], + ['abstractvisitor',['AbstractVisitor',['../classjmespath_1_1interpreter_1_1_abstract_visitor.html',1,'jmespath::interpreter']]], + ['andexpressionnode',['AndExpressionNode',['../classjmespath_1_1ast_1_1_and_expression_node.html',1,'jmespath::ast']]], + ['appendescapesequenceaction',['AppendEscapeSequenceAction',['../classjmespath_1_1parser_1_1_append_escape_sequence_action.html',1,'jmespath::parser']]], + ['appendutf8action',['AppendUtf8Action',['../classjmespath_1_1parser_1_1_append_utf8_action.html',1,'jmespath::parser']]], + ['arrayitemnode',['ArrayItemNode',['../classjmespath_1_1ast_1_1_array_item_node.html',1,'jmespath::ast']]] +]; diff --git a/search/classes_1.html b/search/classes_1.html new file mode 100644 index 0000000..800b6ae --- /dev/null +++ b/search/classes_1.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/classes_1.js b/search/classes_1.js new file mode 100644 index 0000000..7516a07 --- /dev/null +++ b/search/classes_1.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['binaryexpressionnode',['BinaryExpressionNode',['../classjmespath_1_1ast_1_1_binary_expression_node.html',1,'jmespath::ast']]], + ['bracketspecifiernode',['BracketSpecifierNode',['../classjmespath_1_1ast_1_1_bracket_specifier_node.html',1,'jmespath::ast']]] +]; diff --git a/search/classes_10.html b/search/classes_10.html new file mode 100644 index 0000000..e03af79 --- /dev/null +++ b/search/classes_10.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/classes_10.js b/search/classes_10.js new file mode 100644 index 0000000..d42a5ea --- /dev/null +++ b/search/classes_10.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['variantnode',['VariantNode',['../classjmespath_1_1ast_1_1_variant_node.html',1,'jmespath::ast']]], + ['variantnode_3c_20boost_3a_3arecursive_5fwrapper_3c_20arrayitemnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20flattenoperatornode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20sliceexpressionnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20listwildcardnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20filterexpressionnode_20_3e_20_3e',['VariantNode< boost::recursive_wrapper< ArrayItemNode >, boost::recursive_wrapper< FlattenOperatorNode >, boost::recursive_wrapper< SliceExpressionNode >, boost::recursive_wrapper< ListWildcardNode >, boost::recursive_wrapper< FilterExpressionNode > >',['../classjmespath_1_1ast_1_1_variant_node.html',1,'jmespath::ast']]], + ['variantnode_3c_20boost_3a_3arecursive_5fwrapper_3c_20identifiernode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20rawstringnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20literalnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20subexpressionnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20indexexpressionnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20hashwildcardnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20multiselectlistnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20multiselecthashnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20notexpressionnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20comparatorexpressionnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20orexpressionnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20andexpressionnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20parenexpressionnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20pipeexpressionnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20currentnode_20_3e_2c_20boost_3a_3arecursive_5fwrapper_3c_20functionexpressionnode_20_3e_20_3e',['VariantNode< boost::recursive_wrapper< IdentifierNode >, boost::recursive_wrapper< RawStringNode >, boost::recursive_wrapper< LiteralNode >, boost::recursive_wrapper< SubexpressionNode >, boost::recursive_wrapper< IndexExpressionNode >, boost::recursive_wrapper< HashWildcardNode >, boost::recursive_wrapper< MultiselectListNode >, boost::recursive_wrapper< MultiselectHashNode >, boost::recursive_wrapper< NotExpressionNode >, boost::recursive_wrapper< ComparatorExpressionNode >, boost::recursive_wrapper< OrExpressionNode >, boost::recursive_wrapper< AndExpressionNode >, boost::recursive_wrapper< ParenExpressionNode >, boost::recursive_wrapper< PipeExpressionNode >, boost::recursive_wrapper< CurrentNode >, boost::recursive_wrapper< FunctionExpressionNode > >',['../classjmespath_1_1ast_1_1_variant_node.html',1,'jmespath::ast']]], + ['variantvisitoradaptor',['VariantVisitorAdaptor',['../classjmespath_1_1ast_1_1_variant_visitor_adaptor.html',1,'jmespath::ast']]] +]; diff --git a/search/classes_2.html b/search/classes_2.html new file mode 100644 index 0000000..f65d263 --- /dev/null +++ b/search/classes_2.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/classes_2.js b/search/classes_2.js new file mode 100644 index 0000000..f7a88da --- /dev/null +++ b/search/classes_2.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['comparatorexpressionnode',['ComparatorExpressionNode',['../classjmespath_1_1ast_1_1_comparator_expression_node.html',1,'jmespath::ast']]], + ['contextvaluevisitoradaptor',['ContextValueVisitorAdaptor',['../classjmespath_1_1interpreter_1_1_context_value_visitor_adaptor.html',1,'jmespath::interpreter']]], + ['currentnode',['CurrentNode',['../classjmespath_1_1ast_1_1_current_node.html',1,'jmespath::ast']]] +]; diff --git a/search/classes_3.html b/search/classes_3.html new file mode 100644 index 0000000..927e837 --- /dev/null +++ b/search/classes_3.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/classes_3.js b/search/classes_3.js new file mode 100644 index 0000000..d9ace9b --- /dev/null +++ b/search/classes_3.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['encodesurrogatepairaction',['EncodeSurrogatePairAction',['../classjmespath_1_1parser_1_1_encode_surrogate_pair_action.html',1,'jmespath::parser']]], + ['exception',['Exception',['../group__exceptions.html#structjmespath_1_1_exception',1,'jmespath']]], + ['expression',['Expression',['../group__public.html#classjmespath_1_1_expression',1,'jmespath']]], + ['expressionargumentnode',['ExpressionArgumentNode',['../classjmespath_1_1ast_1_1_expression_argument_node.html',1,'jmespath::ast']]], + ['expressiondeleter',['ExpressionDeleter',['../structjmespath_1_1_expression_1_1_expression_deleter.html',1,'jmespath::Expression']]], + ['expressionnode',['ExpressionNode',['../classjmespath_1_1ast_1_1_expression_node.html',1,'jmespath::ast']]] +]; diff --git a/search/classes_4.html b/search/classes_4.html new file mode 100644 index 0000000..a447290 --- /dev/null +++ b/search/classes_4.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/classes_4.js b/search/classes_4.js new file mode 100644 index 0000000..9e760f7 --- /dev/null +++ b/search/classes_4.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['filterexpressionnode',['FilterExpressionNode',['../classjmespath_1_1ast_1_1_filter_expression_node.html',1,'jmespath::ast']]], + ['flattenoperatornode',['FlattenOperatorNode',['../classjmespath_1_1ast_1_1_flatten_operator_node.html',1,'jmespath::ast']]], + ['functionexpressionnode',['FunctionExpressionNode',['../classjmespath_1_1ast_1_1_function_expression_node.html',1,'jmespath::ast']]] +]; diff --git a/search/classes_5.html b/search/classes_5.html new file mode 100644 index 0000000..63484c4 --- /dev/null +++ b/search/classes_5.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/classes_5.js b/search/classes_5.js new file mode 100644 index 0000000..16f8f54 --- /dev/null +++ b/search/classes_5.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['grammar',['Grammar',['../classjmespath_1_1parser_1_1_grammar.html',1,'jmespath::parser']]] +]; diff --git a/search/classes_6.html b/search/classes_6.html new file mode 100644 index 0000000..f3d7035 --- /dev/null +++ b/search/classes_6.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/classes_6.js b/search/classes_6.js new file mode 100644 index 0000000..2da0c8f --- /dev/null +++ b/search/classes_6.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['hashwildcardnode',['HashWildcardNode',['../classjmespath_1_1ast_1_1_hash_wildcard_node.html',1,'jmespath::ast']]] +]; diff --git a/search/classes_7.html b/search/classes_7.html new file mode 100644 index 0000000..9e5f5c9 --- /dev/null +++ b/search/classes_7.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/classes_7.js b/search/classes_7.js new file mode 100644 index 0000000..5b28ee7 --- /dev/null +++ b/search/classes_7.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['identifiernode',['IdentifierNode',['../classjmespath_1_1ast_1_1_identifier_node.html',1,'jmespath::ast']]], + ['indexexpressionnode',['IndexExpressionNode',['../classjmespath_1_1ast_1_1_index_expression_node.html',1,'jmespath::ast']]], + ['insertnodeaction',['InsertNodeAction',['../classjmespath_1_1parser_1_1_insert_node_action.html',1,'jmespath::parser']]], + ['interpreter',['Interpreter',['../classjmespath_1_1interpreter_1_1_interpreter.html',1,'jmespath::interpreter']]], + ['invalidagrument',['InvalidAgrument',['../group__exceptions.html#structjmespath_1_1_invalid_agrument',1,'jmespath']]], + ['invalidfunctionargumentarity',['InvalidFunctionArgumentArity',['../group__exceptions.html#structjmespath_1_1_invalid_function_argument_arity',1,'jmespath']]], + ['invalidfunctionargumenttype',['InvalidFunctionArgumentType',['../group__exceptions.html#structjmespath_1_1_invalid_function_argument_type',1,'jmespath']]], + ['invalidvalue',['InvalidValue',['../group__exceptions.html#structjmespath_1_1_invalid_value',1,'jmespath']]] +]; diff --git a/search/classes_8.html b/search/classes_8.html new file mode 100644 index 0000000..82c35b3 --- /dev/null +++ b/search/classes_8.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/classes_8.js b/search/classes_8.js new file mode 100644 index 0000000..3b8b81c --- /dev/null +++ b/search/classes_8.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['leftchildextractor',['LeftChildExtractor',['../classjmespath_1_1parser_1_1_left_child_extractor.html',1,'jmespath::parser']]], + ['leftedgeiterator',['LeftEdgeIterator',['../classjmespath_1_1parser_1_1_left_edge_iterator.html',1,'jmespath::parser']]], + ['listwildcardnode',['ListWildcardNode',['../classjmespath_1_1ast_1_1_list_wildcard_node.html',1,'jmespath::ast']]], + ['literalnode',['LiteralNode',['../classjmespath_1_1ast_1_1_literal_node.html',1,'jmespath::ast']]] +]; diff --git a/search/classes_9.html b/search/classes_9.html new file mode 100644 index 0000000..4e83ac8 --- /dev/null +++ b/search/classes_9.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/classes_9.js b/search/classes_9.js new file mode 100644 index 0000000..ff036c5 --- /dev/null +++ b/search/classes_9.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['multiselecthashnode',['MultiselectHashNode',['../classjmespath_1_1ast_1_1_multiselect_hash_node.html',1,'jmespath::ast']]], + ['multiselectlistnode',['MultiselectListNode',['../classjmespath_1_1ast_1_1_multiselect_list_node.html',1,'jmespath::ast']]] +]; diff --git a/search/classes_a.html b/search/classes_a.html new file mode 100644 index 0000000..616feb6 --- /dev/null +++ b/search/classes_a.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/classes_a.js b/search/classes_a.js new file mode 100644 index 0000000..4e7b856 --- /dev/null +++ b/search/classes_a.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['nodeinsertcondition',['NodeInsertCondition',['../classjmespath_1_1parser_1_1_node_insert_condition.html',1,'jmespath::parser']]], + ['nodeinsertpolicy',['NodeInsertPolicy',['../classjmespath_1_1parser_1_1_node_insert_policy.html',1,'jmespath::parser']]], + ['notexpressionnode',['NotExpressionNode',['../classjmespath_1_1ast_1_1_not_expression_node.html',1,'jmespath::ast']]] +]; diff --git a/search/classes_b.html b/search/classes_b.html new file mode 100644 index 0000000..4461152 --- /dev/null +++ b/search/classes_b.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/classes_b.js b/search/classes_b.js new file mode 100644 index 0000000..5f3ad2c --- /dev/null +++ b/search/classes_b.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['orexpressionnode',['OrExpressionNode',['../classjmespath_1_1ast_1_1_or_expression_node.html',1,'jmespath::ast']]] +]; diff --git a/search/classes_c.html b/search/classes_c.html new file mode 100644 index 0000000..8f92c86 --- /dev/null +++ b/search/classes_c.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/classes_c.js b/search/classes_c.js new file mode 100644 index 0000000..a5deef8 --- /dev/null +++ b/search/classes_c.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['parenexpressionnode',['ParenExpressionNode',['../classjmespath_1_1ast_1_1_paren_expression_node.html',1,'jmespath::ast']]], + ['parser',['Parser',['../classjmespath_1_1parser_1_1_parser.html',1,'jmespath::parser']]], + ['pipeexpressionnode',['PipeExpressionNode',['../classjmespath_1_1ast_1_1_pipe_expression_node.html',1,'jmespath::ast']]] +]; diff --git a/search/classes_d.html b/search/classes_d.html new file mode 100644 index 0000000..9690cf0 --- /dev/null +++ b/search/classes_d.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/classes_d.js b/search/classes_d.js new file mode 100644 index 0000000..4854855 --- /dev/null +++ b/search/classes_d.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['rawstringnode',['RawStringNode',['../classjmespath_1_1ast_1_1_raw_string_node.html',1,'jmespath::ast']]] +]; diff --git a/search/classes_e.html b/search/classes_e.html new file mode 100644 index 0000000..24a3ef3 --- /dev/null +++ b/search/classes_e.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/classes_e.js b/search/classes_e.js new file mode 100644 index 0000000..44d89fb --- /dev/null +++ b/search/classes_e.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['sliceexpressionnode',['SliceExpressionNode',['../classjmespath_1_1ast_1_1_slice_expression_node.html',1,'jmespath::ast']]], + ['subexpressionnode',['SubexpressionNode',['../classjmespath_1_1ast_1_1_subexpression_node.html',1,'jmespath::ast']]], + ['syntaxerror',['SyntaxError',['../group__exceptions.html#structjmespath_1_1_syntax_error',1,'jmespath']]] +]; diff --git a/search/classes_f.html b/search/classes_f.html new file mode 100644 index 0000000..cee523a --- /dev/null +++ b/search/classes_f.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/classes_f.js b/search/classes_f.js new file mode 100644 index 0000000..76b3df8 --- /dev/null +++ b/search/classes_f.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['unknownfunction',['UnknownFunction',['../group__exceptions.html#structjmespath_1_1_unknown_function',1,'jmespath']]] +]; diff --git a/search/close.png b/search/close.png new file mode 100644 index 0000000000000000000000000000000000000000..9342d3dfeea7b7c4ee610987e717804b5a42ceb9 GIT binary patch literal 273 zcmV+s0q*{ZP)4(RlMby96)VwnbG{ zbe&}^BDn7x>$<{ck4zAK-=nT;=hHG)kmplIF${xqm8db3oX6wT3bvp`TE@m0cg;b) zBuSL}5?N7O(iZLdAlz@)b)Rd~DnSsSX&P5qC`XwuFwcAYLC+d2>+1(8on;wpt8QIC X2MT$R4iQDd00000NkvXXu0mjfia~GN literal 0 HcmV?d00001 diff --git a/search/enums_0.html b/search/enums_0.html new file mode 100644 index 0000000..b4cbe1e --- /dev/null +++ b/search/enums_0.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/enums_0.js b/search/enums_0.js new file mode 100644 index 0000000..6068413 --- /dev/null +++ b/search/enums_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['comparator',['Comparator',['../classjmespath_1_1ast_1_1_comparator_expression_node.html#a41659ba6a374723c6e6be7495b5b4db6',1,'jmespath::ast::ComparatorExpressionNode']]] +]; diff --git a/search/enumvalues_0.html b/search/enumvalues_0.html new file mode 100644 index 0000000..3e00fcf --- /dev/null +++ b/search/enumvalues_0.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/enumvalues_0.js b/search/enumvalues_0.js new file mode 100644 index 0000000..f2521d9 --- /dev/null +++ b/search/enumvalues_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['equal',['Equal',['../classjmespath_1_1ast_1_1_comparator_expression_node.html#a41659ba6a374723c6e6be7495b5b4db6af5f286e73bda105e538310b3190f75c5',1,'jmespath::ast::ComparatorExpressionNode']]] +]; diff --git a/search/enumvalues_1.html b/search/enumvalues_1.html new file mode 100644 index 0000000..0e575c9 --- /dev/null +++ b/search/enumvalues_1.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/enumvalues_1.js b/search/enumvalues_1.js new file mode 100644 index 0000000..ee1d15a --- /dev/null +++ b/search/enumvalues_1.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['greater',['Greater',['../classjmespath_1_1ast_1_1_comparator_expression_node.html#a41659ba6a374723c6e6be7495b5b4db6a8768a6821cd735aea4f5b0df88c1fc6a',1,'jmespath::ast::ComparatorExpressionNode']]], + ['greaterorequal',['GreaterOrEqual',['../classjmespath_1_1ast_1_1_comparator_expression_node.html#a41659ba6a374723c6e6be7495b5b4db6a6f2f0aefb3d22da0f3839453add5f937',1,'jmespath::ast::ComparatorExpressionNode']]] +]; diff --git a/search/enumvalues_2.html b/search/enumvalues_2.html new file mode 100644 index 0000000..e59f4ac --- /dev/null +++ b/search/enumvalues_2.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/enumvalues_2.js b/search/enumvalues_2.js new file mode 100644 index 0000000..1c4b13a --- /dev/null +++ b/search/enumvalues_2.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['less',['Less',['../classjmespath_1_1ast_1_1_comparator_expression_node.html#a41659ba6a374723c6e6be7495b5b4db6a1cfdf0e8d0c87a228c1f40d9bee7888b',1,'jmespath::ast::ComparatorExpressionNode']]], + ['lessorequal',['LessOrEqual',['../classjmespath_1_1ast_1_1_comparator_expression_node.html#a41659ba6a374723c6e6be7495b5b4db6aa4cbdbb6070a5abb35fc95ecf1e22c14',1,'jmespath::ast::ComparatorExpressionNode']]] +]; diff --git a/search/enumvalues_3.html b/search/enumvalues_3.html new file mode 100644 index 0000000..0a2d754 --- /dev/null +++ b/search/enumvalues_3.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/enumvalues_3.js b/search/enumvalues_3.js new file mode 100644 index 0000000..e4fd63e --- /dev/null +++ b/search/enumvalues_3.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['notequal',['NotEqual',['../classjmespath_1_1ast_1_1_comparator_expression_node.html#a41659ba6a374723c6e6be7495b5b4db6a19bb0af2c3c530538cb41aff7f235b96',1,'jmespath::ast::ComparatorExpressionNode']]] +]; diff --git a/search/enumvalues_4.html b/search/enumvalues_4.html new file mode 100644 index 0000000..1258082 --- /dev/null +++ b/search/enumvalues_4.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/enumvalues_4.js b/search/enumvalues_4.js new file mode 100644 index 0000000..282137e --- /dev/null +++ b/search/enumvalues_4.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['unknown',['Unknown',['../classjmespath_1_1ast_1_1_comparator_expression_node.html#a41659ba6a374723c6e6be7495b5b4db6a88183b946cc5f0e8c96b2e66e1c74a7e',1,'jmespath::ast::ComparatorExpressionNode']]] +]; diff --git a/search/files_0.html b/search/files_0.html new file mode 100644 index 0000000..c7aa36c --- /dev/null +++ b/search/files_0.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/files_0.js b/search/files_0.js new file mode 100644 index 0000000..ea3ead2 --- /dev/null +++ b/search/files_0.js @@ -0,0 +1,14 @@ +var searchData= +[ + ['abstractnode_2ecpp',['abstractnode.cpp',['../abstractnode_8cpp.html',1,'']]], + ['abstractnode_2eh',['abstractnode.h',['../abstractnode_8h.html',1,'']]], + ['abstractvisitor_2ecpp',['abstractvisitor.cpp',['../abstractvisitor_8cpp.html',1,'']]], + ['abstractvisitor_2eh',['abstractvisitor.h',['../abstractvisitor_8h.html',1,'']]], + ['allnodes_2eh',['allnodes.h',['../allnodes_8h.html',1,'']]], + ['andexpressionnode_2ecpp',['andexpressionnode.cpp',['../andexpressionnode_8cpp.html',1,'']]], + ['andexpressionnode_2eh',['andexpressionnode.h',['../andexpressionnode_8h.html',1,'']]], + ['appendescapesequenceaction_2eh',['appendescapesequenceaction.h',['../appendescapesequenceaction_8h.html',1,'']]], + ['appendutf8action_2eh',['appendutf8action.h',['../appendutf8action_8h.html',1,'']]], + ['arrayitemnode_2ecpp',['arrayitemnode.cpp',['../arrayitemnode_8cpp.html',1,'']]], + ['arrayitemnode_2eh',['arrayitemnode.h',['../arrayitemnode_8h.html',1,'']]] +]; diff --git a/search/files_1.html b/search/files_1.html new file mode 100644 index 0000000..eca1c80 --- /dev/null +++ b/search/files_1.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/files_1.js b/search/files_1.js new file mode 100644 index 0000000..e320192 --- /dev/null +++ b/search/files_1.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['binaryexpressionnode_2ecpp',['binaryexpressionnode.cpp',['../binaryexpressionnode_8cpp.html',1,'']]], + ['binaryexpressionnode_2eh',['binaryexpressionnode.h',['../binaryexpressionnode_8h.html',1,'']]], + ['bracketspecifiernode_2ecpp',['bracketspecifiernode.cpp',['../bracketspecifiernode_8cpp.html',1,'']]], + ['bracketspecifiernode_2eh',['bracketspecifiernode.h',['../bracketspecifiernode_8h.html',1,'']]] +]; diff --git a/search/files_10.html b/search/files_10.html new file mode 100644 index 0000000..4ac316c --- /dev/null +++ b/search/files_10.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/files_10.js b/search/files_10.js new file mode 100644 index 0000000..e47c8e7 --- /dev/null +++ b/search/files_10.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['types_2eh',['types.h',['../types_8h.html',1,'']]] +]; diff --git a/search/files_11.html b/search/files_11.html new file mode 100644 index 0000000..afd2311 --- /dev/null +++ b/search/files_11.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/files_11.js b/search/files_11.js new file mode 100644 index 0000000..7251c0c --- /dev/null +++ b/search/files_11.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['variantnode_2eh',['variantnode.h',['../variantnode_8h.html',1,'']]], + ['variantvisitoradaptor_2ecpp',['variantvisitoradaptor.cpp',['../variantvisitoradaptor_8cpp.html',1,'']]], + ['variantvisitoradaptor_2eh',['variantvisitoradaptor.h',['../variantvisitoradaptor_8h.html',1,'']]] +]; diff --git a/search/files_2.html b/search/files_2.html new file mode 100644 index 0000000..04a8a46 --- /dev/null +++ b/search/files_2.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/files_2.js b/search/files_2.js new file mode 100644 index 0000000..a8a2241 --- /dev/null +++ b/search/files_2.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['comparatorexpressionnode_2ecpp',['comparatorexpressionnode.cpp',['../comparatorexpressionnode_8cpp.html',1,'']]], + ['comparatorexpressionnode_2eh',['comparatorexpressionnode.h',['../comparatorexpressionnode_8h.html',1,'']]], + ['contextvaluevisitoradaptor_2eh',['contextvaluevisitoradaptor.h',['../contextvaluevisitoradaptor_8h.html',1,'']]], + ['currentnode_2ecpp',['currentnode.cpp',['../currentnode_8cpp.html',1,'']]], + ['currentnode_2eh',['currentnode.h',['../currentnode_8h.html',1,'']]] +]; diff --git a/search/files_3.html b/search/files_3.html new file mode 100644 index 0000000..0dc9a56 --- /dev/null +++ b/search/files_3.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/files_3.js b/search/files_3.js new file mode 100644 index 0000000..ee5ad01 --- /dev/null +++ b/search/files_3.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['encodesurrogatepairaction_2eh',['encodesurrogatepairaction.h',['../encodesurrogatepairaction_8h.html',1,'']]], + ['exceptions_2ecpp',['exceptions.cpp',['../exceptions_8cpp.html',1,'']]], + ['exceptions_2eh',['exceptions.h',['../exceptions_8h.html',1,'']]], + ['expression_2ecpp',['expression.cpp',['../expression_8cpp.html',1,'']]], + ['expression_2eh',['expression.h',['../expression_8h.html',1,'']]], + ['expressionargumentnode_2ecpp',['expressionargumentnode.cpp',['../expressionargumentnode_8cpp.html',1,'']]], + ['expressionargumentnode_2eh',['expressionargumentnode.h',['../expressionargumentnode_8h.html',1,'']]], + ['expressionnode_2ecpp',['expressionnode.cpp',['../expressionnode_8cpp.html',1,'']]], + ['expressionnode_2eh',['expressionnode.h',['../expressionnode_8h.html',1,'']]] +]; diff --git a/search/files_4.html b/search/files_4.html new file mode 100644 index 0000000..891b5da --- /dev/null +++ b/search/files_4.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/files_4.js b/search/files_4.js new file mode 100644 index 0000000..7482fe4 --- /dev/null +++ b/search/files_4.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['filterexpressionnode_2ecpp',['filterexpressionnode.cpp',['../filterexpressionnode_8cpp.html',1,'']]], + ['filterexpressionnode_2eh',['filterexpressionnode.h',['../filterexpressionnode_8h.html',1,'']]], + ['flattenoperatornode_2ecpp',['flattenoperatornode.cpp',['../flattenoperatornode_8cpp.html',1,'']]], + ['flattenoperatornode_2eh',['flattenoperatornode.h',['../flattenoperatornode_8h.html',1,'']]], + ['functionexpressionnode_2ecpp',['functionexpressionnode.cpp',['../functionexpressionnode_8cpp.html',1,'']]], + ['functionexpressionnode_2eh',['functionexpressionnode.h',['../functionexpressionnode_8h.html',1,'']]] +]; diff --git a/search/files_5.html b/search/files_5.html new file mode 100644 index 0000000..1741195 --- /dev/null +++ b/search/files_5.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/files_5.js b/search/files_5.js new file mode 100644 index 0000000..bf56bfc --- /dev/null +++ b/search/files_5.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['grammar_2eh',['grammar.h',['../grammar_8h.html',1,'']]] +]; diff --git a/search/files_6.html b/search/files_6.html new file mode 100644 index 0000000..262d3da --- /dev/null +++ b/search/files_6.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/files_6.js b/search/files_6.js new file mode 100644 index 0000000..0e7f37c --- /dev/null +++ b/search/files_6.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['hashwildcardnode_2ecpp',['hashwildcardnode.cpp',['../hashwildcardnode_8cpp.html',1,'']]], + ['hashwildcardnode_2eh',['hashwildcardnode.h',['../hashwildcardnode_8h.html',1,'']]] +]; diff --git a/search/files_7.html b/search/files_7.html new file mode 100644 index 0000000..c535572 --- /dev/null +++ b/search/files_7.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/files_7.js b/search/files_7.js new file mode 100644 index 0000000..5ad0ddc --- /dev/null +++ b/search/files_7.js @@ -0,0 +1,10 @@ +var searchData= +[ + ['identifiernode_2ecpp',['identifiernode.cpp',['../identifiernode_8cpp.html',1,'']]], + ['identifiernode_2eh',['identifiernode.h',['../identifiernode_8h.html',1,'']]], + ['indexexpressionnode_2ecpp',['indexexpressionnode.cpp',['../indexexpressionnode_8cpp.html',1,'']]], + ['indexexpressionnode_2eh',['indexexpressionnode.h',['../indexexpressionnode_8h.html',1,'']]], + ['insertnodeaction_2eh',['insertnodeaction.h',['../insertnodeaction_8h.html',1,'']]], + ['interpreter_2ecpp',['interpreter.cpp',['../interpreter_8cpp.html',1,'']]], + ['interpreter_2eh',['interpreter.h',['../interpreter_8h.html',1,'']]] +]; diff --git a/search/files_8.html b/search/files_8.html new file mode 100644 index 0000000..21c328a --- /dev/null +++ b/search/files_8.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/files_8.js b/search/files_8.js new file mode 100644 index 0000000..cf14c7e --- /dev/null +++ b/search/files_8.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['jmespath_2ecpp',['jmespath.cpp',['../jmespath_8cpp.html',1,'']]], + ['jmespath_2eh',['jmespath.h',['../jmespath_8h.html',1,'']]] +]; diff --git a/search/files_9.html b/search/files_9.html new file mode 100644 index 0000000..00a5201 --- /dev/null +++ b/search/files_9.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/files_9.js b/search/files_9.js new file mode 100644 index 0000000..8f649f5 --- /dev/null +++ b/search/files_9.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['leftchildextractor_2eh',['leftchildextractor.h',['../leftchildextractor_8h.html',1,'']]], + ['leftedgeiterator_2eh',['leftedgeiterator.h',['../leftedgeiterator_8h.html',1,'']]], + ['listwildcardnode_2ecpp',['listwildcardnode.cpp',['../listwildcardnode_8cpp.html',1,'']]], + ['listwildcardnode_2eh',['listwildcardnode.h',['../listwildcardnode_8h.html',1,'']]], + ['literalnode_2ecpp',['literalnode.cpp',['../literalnode_8cpp.html',1,'']]], + ['literalnode_2eh',['literalnode.h',['../literalnode_8h.html',1,'']]] +]; diff --git a/search/files_a.html b/search/files_a.html new file mode 100644 index 0000000..ab04755 --- /dev/null +++ b/search/files_a.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/files_a.js b/search/files_a.js new file mode 100644 index 0000000..232e336 --- /dev/null +++ b/search/files_a.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['multiselecthashnode_2ecpp',['multiselecthashnode.cpp',['../multiselecthashnode_8cpp.html',1,'']]], + ['multiselecthashnode_2eh',['multiselecthashnode.h',['../multiselecthashnode_8h.html',1,'']]], + ['multiselectlistnode_2ecpp',['multiselectlistnode.cpp',['../multiselectlistnode_8cpp.html',1,'']]], + ['multiselectlistnode_2eh',['multiselectlistnode.h',['../multiselectlistnode_8h.html',1,'']]] +]; diff --git a/search/files_b.html b/search/files_b.html new file mode 100644 index 0000000..11010e1 --- /dev/null +++ b/search/files_b.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/files_b.js b/search/files_b.js new file mode 100644 index 0000000..058a5cb --- /dev/null +++ b/search/files_b.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['nodeinsertcondition_2eh',['nodeinsertcondition.h',['../nodeinsertcondition_8h.html',1,'']]], + ['nodeinsertpolicy_2eh',['nodeinsertpolicy.h',['../nodeinsertpolicy_8h.html',1,'']]], + ['noderank_2eh',['noderank.h',['../noderank_8h.html',1,'']]], + ['notexpressionnode_2ecpp',['notexpressionnode.cpp',['../notexpressionnode_8cpp.html',1,'']]], + ['notexpressionnode_2eh',['notexpressionnode.h',['../notexpressionnode_8h.html',1,'']]] +]; diff --git a/search/files_c.html b/search/files_c.html new file mode 100644 index 0000000..6fbd135 --- /dev/null +++ b/search/files_c.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/files_c.js b/search/files_c.js new file mode 100644 index 0000000..c0a8b96 --- /dev/null +++ b/search/files_c.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['orexpressionnode_2ecpp',['orexpressionnode.cpp',['../orexpressionnode_8cpp.html',1,'']]], + ['orexpressionnode_2eh',['orexpressionnode.h',['../orexpressionnode_8h.html',1,'']]] +]; diff --git a/search/files_d.html b/search/files_d.html new file mode 100644 index 0000000..1201a33 --- /dev/null +++ b/search/files_d.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/files_d.js b/search/files_d.js new file mode 100644 index 0000000..5d6de5d --- /dev/null +++ b/search/files_d.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['parenexpressionnode_2ecpp',['parenexpressionnode.cpp',['../parenexpressionnode_8cpp.html',1,'']]], + ['parenexpressionnode_2eh',['parenexpressionnode.h',['../parenexpressionnode_8h.html',1,'']]], + ['parser_2eh',['parser.h',['../parser_8h.html',1,'']]], + ['pipeexpressionnode_2ecpp',['pipeexpressionnode.cpp',['../pipeexpressionnode_8cpp.html',1,'']]], + ['pipeexpressionnode_2eh',['pipeexpressionnode.h',['../pipeexpressionnode_8h.html',1,'']]] +]; diff --git a/search/files_e.html b/search/files_e.html new file mode 100644 index 0000000..2d91997 --- /dev/null +++ b/search/files_e.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/files_e.js b/search/files_e.js new file mode 100644 index 0000000..fad2df3 --- /dev/null +++ b/search/files_e.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['rawstringnode_2ecpp',['rawstringnode.cpp',['../rawstringnode_8cpp.html',1,'']]], + ['rawstringnode_2eh',['rawstringnode.h',['../rawstringnode_8h.html',1,'']]] +]; diff --git a/search/files_f.html b/search/files_f.html new file mode 100644 index 0000000..95985b3 --- /dev/null +++ b/search/files_f.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/files_f.js b/search/files_f.js new file mode 100644 index 0000000..37b9b3a --- /dev/null +++ b/search/files_f.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['sliceexpressionnode_2ecpp',['sliceexpressionnode.cpp',['../sliceexpressionnode_8cpp.html',1,'']]], + ['sliceexpressionnode_2eh',['sliceexpressionnode.h',['../sliceexpressionnode_8h.html',1,'']]], + ['subexpressionnode_2ecpp',['subexpressionnode.cpp',['../subexpressionnode_8cpp.html',1,'']]], + ['subexpressionnode_2eh',['subexpressionnode.h',['../subexpressionnode_8h.html',1,'']]] +]; diff --git a/search/functions_0.html b/search/functions_0.html new file mode 100644 index 0000000..16a5a52 --- /dev/null +++ b/search/functions_0.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_0.js b/search/functions_0.js new file mode 100644 index 0000000..16bd27d --- /dev/null +++ b/search/functions_0.js @@ -0,0 +1,13 @@ +var searchData= +[ + ['abs',['abs',['../classjmespath_1_1interpreter_1_1_interpreter.html#a055e816d0cb67f04fb1d8b482d6fa3d1',1,'jmespath::interpreter::Interpreter']]], + ['abstractnode',['AbstractNode',['../classjmespath_1_1ast_1_1_abstract_node.html#a5caa1d6562417f6c9e9269bac406dd7d',1,'jmespath::ast::AbstractNode::AbstractNode()=default'],['../classjmespath_1_1ast_1_1_abstract_node.html#ae3220ad3bf0fc6f8f6007af5feee82eb',1,'jmespath::ast::AbstractNode::AbstractNode(const AbstractNode &)=default']]], + ['accept',['accept',['../classjmespath_1_1ast_1_1_abstract_node.html#a629a34664e74545820cd0a1baeee7058',1,'jmespath::ast::AbstractNode::accept()'],['../classjmespath_1_1ast_1_1_and_expression_node.html#a8fd82ec77740adc1f1bc371029cdc61d',1,'jmespath::ast::AndExpressionNode::accept()'],['../classjmespath_1_1ast_1_1_array_item_node.html#a7125bf687c30332b32240e1f10ce1dda',1,'jmespath::ast::ArrayItemNode::accept()'],['../classjmespath_1_1ast_1_1_binary_expression_node.html#a56041d6e19f470ac7d42b1931d2bde91',1,'jmespath::ast::BinaryExpressionNode::accept()'],['../classjmespath_1_1ast_1_1_comparator_expression_node.html#af2a58c0debf9aa0a2799c2b75f52154f',1,'jmespath::ast::ComparatorExpressionNode::accept()'],['../classjmespath_1_1ast_1_1_current_node.html#a42b316ad0c3fceae2d281b11b1455147',1,'jmespath::ast::CurrentNode::accept()'],['../classjmespath_1_1ast_1_1_expression_argument_node.html#a093787d9b359929b345afcaa822e552b',1,'jmespath::ast::ExpressionArgumentNode::accept()'],['../classjmespath_1_1ast_1_1_filter_expression_node.html#aec97ce9c0930fb5fc29067cd7c01df01',1,'jmespath::ast::FilterExpressionNode::accept()'],['../classjmespath_1_1ast_1_1_flatten_operator_node.html#a4b6818f101c06effafde46547e173c7a',1,'jmespath::ast::FlattenOperatorNode::accept()'],['../classjmespath_1_1ast_1_1_function_expression_node.html#a67512a70bbca7fe403d973e3c2a0e2a3',1,'jmespath::ast::FunctionExpressionNode::accept()'],['../classjmespath_1_1ast_1_1_hash_wildcard_node.html#ab399e99846d6b0b38f48b1dfaf3292e2',1,'jmespath::ast::HashWildcardNode::accept()'],['../classjmespath_1_1ast_1_1_identifier_node.html#a0daf16d2e28aa4f247f98a6859fde36c',1,'jmespath::ast::IdentifierNode::accept()'],['../classjmespath_1_1ast_1_1_index_expression_node.html#a1e9d3d83b2ec8481db72198af61ca9bf',1,'jmespath::ast::IndexExpressionNode::accept()'],['../classjmespath_1_1ast_1_1_list_wildcard_node.html#a60f2d0e46ad8c87d2b770d02fc1a4728',1,'jmespath::ast::ListWildcardNode::accept()'],['../classjmespath_1_1ast_1_1_literal_node.html#a3bd52fb115d1af74370dc20a957e984d',1,'jmespath::ast::LiteralNode::accept()'],['../classjmespath_1_1ast_1_1_multiselect_hash_node.html#aec853618dbc1d00579a8b1901d4f1979',1,'jmespath::ast::MultiselectHashNode::accept()'],['../classjmespath_1_1ast_1_1_multiselect_list_node.html#a878494e4158892fbdffb1d9e296a8f32',1,'jmespath::ast::MultiselectListNode::accept()'],['../classjmespath_1_1ast_1_1_not_expression_node.html#a42132de1915cf0a2072e4965d9d13a5a',1,'jmespath::ast::NotExpressionNode::accept()'],['../classjmespath_1_1ast_1_1_or_expression_node.html#a3daa5e19c005de1c6b739f9824f5fc37',1,'jmespath::ast::OrExpressionNode::accept()'],['../classjmespath_1_1ast_1_1_paren_expression_node.html#a91fc1fc1019dbb79dd1a6e8a1e524cae',1,'jmespath::ast::ParenExpressionNode::accept()'],['../classjmespath_1_1ast_1_1_pipe_expression_node.html#a956d4736e50a2510c73f37652bbee832',1,'jmespath::ast::PipeExpressionNode::accept()'],['../classjmespath_1_1ast_1_1_raw_string_node.html#a0cd4a2019e675c218ec3e4f555f6b1c9',1,'jmespath::ast::RawStringNode::accept()'],['../classjmespath_1_1ast_1_1_slice_expression_node.html#a8b24d1e01b1efa9638f5ce8892900c5e',1,'jmespath::ast::SliceExpressionNode::accept()'],['../classjmespath_1_1ast_1_1_variant_node.html#afcccfaed818e41c1ea09511cc25d541e',1,'jmespath::ast::VariantNode::accept()']]], + ['adjustsliceendpoint',['adjustSliceEndpoint',['../classjmespath_1_1interpreter_1_1_interpreter.html#a8dd7b2b8edd9c46ab2b406b806e8bf68',1,'jmespath::interpreter::Interpreter']]], + ['anchor',['anchor',['../classjmespath_1_1ast_1_1_bracket_specifier_node.html#a06150a5c9daff9a2f315445ba6ddea8a',1,'jmespath::ast::BracketSpecifierNode::anchor()'],['../group__exceptions.html#aeb724f4ff79dad28930b71d2d49ba298',1,'jmespath::Exception::anchor()'],['../group__exceptions.html#a5edfb4cbe1df585d65f67471427021d4',1,'jmespath::SyntaxError::anchor()'],['../group__exceptions.html#a3331ca881be8b10a504f8d07a45049b7',1,'jmespath::InvalidAgrument::anchor()'],['../group__exceptions.html#a847ab426138e54f6023a044fbf483209',1,'jmespath::InvalidValue::anchor()'],['../group__exceptions.html#a5644adc5743a28077c7814f35105af0e',1,'jmespath::UnknownFunction::anchor()'],['../group__exceptions.html#af25fe8caa7344ac8ff15d81cc78ed85b',1,'jmespath::InvalidFunctionArgumentArity::anchor()'],['../group__exceptions.html#a4b95ecbe4149e65afdcb54c4e4f38101',1,'jmespath::InvalidFunctionArgumentType::anchor()']]], + ['andexpressionnode',['AndExpressionNode',['../classjmespath_1_1ast_1_1_and_expression_node.html#a93c4a5585c1a5f750f0ce71a89e42e29',1,'jmespath::ast::AndExpressionNode::AndExpressionNode()'],['../classjmespath_1_1ast_1_1_and_expression_node.html#acd0f3d76b4a2c2e2ad06397e66bd9292',1,'jmespath::ast::AndExpressionNode::AndExpressionNode(const ExpressionNode &leftExpression, const ExpressionNode &rightExpression)']]], + ['arrayitemnode',['ArrayItemNode',['../classjmespath_1_1ast_1_1_array_item_node.html#a9ef25f514638059e7906d1f7d9a86a79',1,'jmespath::ast::ArrayItemNode::ArrayItemNode()'],['../classjmespath_1_1ast_1_1_array_item_node.html#aa62e3e8cf2f82856793c3d509921b9ce',1,'jmespath::ast::ArrayItemNode::ArrayItemNode(Index itemIndex)']]], + ['assigncontextvalue',['assignContextValue',['../namespacejmespath_1_1interpreter.html#a40841c02a3fe19752807242535bc840c',1,'jmespath::interpreter::assignContextValue(Json &&value)'],['../namespacejmespath_1_1interpreter.html#a84ff43d4f17c3e41927cf40a6ed62849',1,'jmespath::interpreter::assignContextValue(const Json &value)']]], + ['astroot',['astRoot',['../group__public.html#ad5c2ef2db4ef41c7fe6804ebcb2f011e',1,'jmespath::Expression']]], + ['avg',['avg',['../classjmespath_1_1interpreter_1_1_interpreter.html#adbeadae2f2706ac9f4f6c27f90631bdf',1,'jmespath::interpreter::Interpreter']]] +]; diff --git a/search/functions_1.html b/search/functions_1.html new file mode 100644 index 0000000..3b4eacf --- /dev/null +++ b/search/functions_1.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_1.js b/search/functions_1.js new file mode 100644 index 0000000..33c266a --- /dev/null +++ b/search/functions_1.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['binaryexpressionnode',['BinaryExpressionNode',['../classjmespath_1_1ast_1_1_binary_expression_node.html#ae1ede34adad2e1da823b8deb76a15452',1,'jmespath::ast::BinaryExpressionNode::BinaryExpressionNode()'],['../classjmespath_1_1ast_1_1_binary_expression_node.html#a19615b683a707076bc345dcdbe247783',1,'jmespath::ast::BinaryExpressionNode::BinaryExpressionNode(const ExpressionNode &left, const ExpressionNode &right)']]], + ['bracketspecifiernode',['BracketSpecifierNode',['../classjmespath_1_1ast_1_1_bracket_specifier_node.html#a047d85af8ffa5d2a3ff09646711fb1ef',1,'jmespath::ast::BracketSpecifierNode::BracketSpecifierNode()'],['../classjmespath_1_1ast_1_1_bracket_specifier_node.html#a1b5af260323113a1fb55e4e889ac8c0f',1,'jmespath::ast::BracketSpecifierNode::BracketSpecifierNode(const ValueType &expression)']]] +]; diff --git a/search/functions_10.html b/search/functions_10.html new file mode 100644 index 0000000..52cb0d3 --- /dev/null +++ b/search/functions_10.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_10.js b/search/functions_10.js new file mode 100644 index 0000000..acec990 --- /dev/null +++ b/search/functions_10.js @@ -0,0 +1,15 @@ +var searchData= +[ + ['search',['search',['../group__public.html#ga6df94674a4b7617fbd14a0c59f123dc6',1,'jmespath']]], + ['search_3c_20const_20json_20_26_20_3e',['search< const Json & >',['../namespacejmespath.html#a133b8541fb21b54b98b4008d171daeda',1,'jmespath']]], + ['search_3c_20json_20_26_20_3e',['search< Json & >',['../namespacejmespath.html#a561c9705166e454e85a2b52942b69a0d',1,'jmespath']]], + ['search_3c_20json_20_3e',['search< Json >',['../namespacejmespath.html#a27c0b44635c9d95c157a474be688cbc6',1,'jmespath']]], + ['setcontext',['setContext',['../classjmespath_1_1interpreter_1_1_interpreter.html#a79f98e341474b65ec9cce68fed2a4d20',1,'jmespath::interpreter::Interpreter']]], + ['sliceexpressionnode',['SliceExpressionNode',['../classjmespath_1_1ast_1_1_slice_expression_node.html#ae43160208183ea536185f7788b649f77',1,'jmespath::ast::SliceExpressionNode']]], + ['sort',['sort',['../classjmespath_1_1interpreter_1_1_interpreter.html#ac14ac0f815365173feb5b2370db72619',1,'jmespath::interpreter::Interpreter::sort(FunctionArgumentList &arguments)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a52fdde020a1709ed8e55903ff2f93ee5',1,'jmespath::interpreter::Interpreter::sort(Json &&array)']]], + ['sortby',['sortBy',['../classjmespath_1_1interpreter_1_1_interpreter.html#aad2b1ac8df5b01a4f2efed15a349b327',1,'jmespath::interpreter::Interpreter::sortBy(FunctionArgumentList &arguments)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#abfd1f3877221af3183e08785195cbe94',1,'jmespath::interpreter::Interpreter::sortBy(const ast::ExpressionNode *expression, Json &&array)']]], + ['startswith',['startsWith',['../classjmespath_1_1interpreter_1_1_interpreter.html#a5d33ef82e21134b447efc83497966c18',1,'jmespath::interpreter::Interpreter']]], + ['stopsprojection',['stopsProjection',['../classjmespath_1_1ast_1_1_and_expression_node.html#ae9e9d81854589d07a73ffebc8e7bad85',1,'jmespath::ast::AndExpressionNode::stopsProjection()'],['../classjmespath_1_1ast_1_1_binary_expression_node.html#a3c80b0c5b21b0a03992c943cc775b317',1,'jmespath::ast::BinaryExpressionNode::stopsProjection()'],['../classjmespath_1_1ast_1_1_bracket_specifier_node.html#aaff4f383e7b0aebcd8dae83831adb5a1',1,'jmespath::ast::BracketSpecifierNode::stopsProjection()'],['../classjmespath_1_1ast_1_1_comparator_expression_node.html#acb3f51b3130a1514815b7ac098d1f6df',1,'jmespath::ast::ComparatorExpressionNode::stopsProjection()'],['../classjmespath_1_1ast_1_1_hash_wildcard_node.html#a4f82169bb3b3a29ab46adeef241ee284',1,'jmespath::ast::HashWildcardNode::stopsProjection()'],['../classjmespath_1_1ast_1_1_index_expression_node.html#a2767fa2f58a876c87c88a983ac648660',1,'jmespath::ast::IndexExpressionNode::stopsProjection()'],['../classjmespath_1_1ast_1_1_or_expression_node.html#a44673e60565b908cf69df5fee5177e85',1,'jmespath::ast::OrExpressionNode::stopsProjection()'],['../classjmespath_1_1ast_1_1_pipe_expression_node.html#a2a4aee22c531c12d82e5137ebc72b0a5',1,'jmespath::ast::PipeExpressionNode::stopsProjection()'],['../classjmespath_1_1ast_1_1_subexpression_node.html#a060601e46c6cd9435a018be8c301357c',1,'jmespath::ast::SubexpressionNode::stopsProjection()']]], + ['subexpressionnode',['SubexpressionNode',['../classjmespath_1_1ast_1_1_subexpression_node.html#a866523d011d89b18a9a25bff340a4eb8',1,'jmespath::ast::SubexpressionNode::SubexpressionNode()'],['../classjmespath_1_1ast_1_1_subexpression_node.html#a0d0c7ede8c786c6a29c8d22376c766c0',1,'jmespath::ast::SubexpressionNode::SubexpressionNode(const ExpressionNode &expression, const ExpressionNode &subexpression={})']]], + ['sum',['sum',['../classjmespath_1_1interpreter_1_1_interpreter.html#ae19c4cb62717b133788483d16f9edaa1',1,'jmespath::interpreter::Interpreter']]] +]; diff --git a/search/functions_11.html b/search/functions_11.html new file mode 100644 index 0000000..5e91b09 --- /dev/null +++ b/search/functions_11.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_11.js b/search/functions_11.js new file mode 100644 index 0000000..4c1dda3 --- /dev/null +++ b/search/functions_11.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['toarray',['toArray',['../classjmespath_1_1interpreter_1_1_interpreter.html#a591bf888dc0076333b9654928c335e49',1,'jmespath::interpreter::Interpreter::toArray(FunctionArgumentList &arguments)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a4cb3e4cf97fb7e8109bf42d1f7de3d26',1,'jmespath::interpreter::Interpreter::toArray(JsonT &&value)']]], + ['toboolean',['toBoolean',['../classjmespath_1_1interpreter_1_1_interpreter.html#a6b9c860895bda8083b06c8f8cc2c5c7a',1,'jmespath::interpreter::Interpreter']]], + ['tonumber',['toNumber',['../classjmespath_1_1interpreter_1_1_interpreter.html#a3d75ed5fb8a3fe2d0c3317cf2f42e453',1,'jmespath::interpreter::Interpreter::toNumber(FunctionArgumentList &arguments)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a4bbbe8af7773986af8beb5b2d1c0ffa4',1,'jmespath::interpreter::Interpreter::toNumber(JsonT &&value)']]], + ['tostring',['toString',['../classjmespath_1_1interpreter_1_1_interpreter.html#a418c0ba5ae28f84d68886ce9444d1c42',1,'jmespath::interpreter::Interpreter::toString(FunctionArgumentList &arguments)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a9e1442e650f3a6093113d86508e64381',1,'jmespath::interpreter::Interpreter::toString(JsonT &&value)'],['../group__public.html#a4d366bff973fc49648331988aebd271a',1,'jmespath::Expression::toString()']]], + ['type',['type',['../classjmespath_1_1interpreter_1_1_interpreter.html#a4bb569a4240c75a31925185e4f044ae6',1,'jmespath::interpreter::Interpreter']]] +]; diff --git a/search/functions_12.html b/search/functions_12.html new file mode 100644 index 0000000..1ab0742 --- /dev/null +++ b/search/functions_12.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_12.js b/search/functions_12.js new file mode 100644 index 0000000..52321e1 --- /dev/null +++ b/search/functions_12.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['values',['values',['../classjmespath_1_1interpreter_1_1_interpreter.html#a66fefafe7da0ab82e7bdeab03b9ac16c',1,'jmespath::interpreter::Interpreter::values(FunctionArgumentList &arguments)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a79e7f5086beb69818394416a260d4e86',1,'jmespath::interpreter::Interpreter::values(JsonT &&object)']]], + ['variantnode',['VariantNode',['../classjmespath_1_1ast_1_1_variant_node.html#ae40ed25a5a341bf87493f3e7c44c6387',1,'jmespath::ast::VariantNode::VariantNode()'],['../classjmespath_1_1ast_1_1_variant_node.html#a35ce0abccdd8b4d89dac828246ccfd7d',1,'jmespath::ast::VariantNode::VariantNode(const VariantNode &)=default'],['../classjmespath_1_1ast_1_1_variant_node.html#a327440121a9012c739d2fd8a3fc5b7db',1,'jmespath::ast::VariantNode::VariantNode(const T &other)']]], + ['variantvisitoradaptor',['VariantVisitorAdaptor',['../classjmespath_1_1ast_1_1_variant_visitor_adaptor.html#a46d2307197445206082e3818eaebdd43',1,'jmespath::ast::VariantVisitorAdaptor']]], + ['visit',['visit',['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#a2a9c3b9955eaa3c004e337b50158148e',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::AbstractNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#a45b8f812d20608086cec8d7ad2ddf1ed',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::ExpressionNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#adba3a896f642ed6912a73cef82d6b8f3',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::IdentifierNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#ae92fcd077dc2c09368072c6878e7753b',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::RawStringNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#ae047ff3dac7716cacba989b8bf7c4fff',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::LiteralNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#a7e46d293efa673225b5200b59dbe67fb',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::SubexpressionNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#ae44cf80204edb3119f3df848927bb74b',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::IndexExpressionNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#a910913bf607825065c2e36a379b9c3f2',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::ArrayItemNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#ab042a032ec35e5f89382dc23cc657207',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::FlattenOperatorNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#a33031ad1bc6700b00f00721c590a0c11',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::BracketSpecifierNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#adb4a68d5f77d9c8028299313df52386d',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::SliceExpressionNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#ac71c2ad40d5b59f26429ad9522ccf1d5',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::ListWildcardNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#a99a798ad1372ab4a73cc0ca4acc5436f',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::HashWildcardNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#a6d0a0166618bbfa1041d218ffdb9ca5a',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::MultiselectListNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#ae31e73806cb1677018a6f05bc18cc4e9',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::MultiselectHashNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#ad9f991c40bae7a56d062f5152d2470c3',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::NotExpressionNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#add15b2d544eac8d2bef1702206bb6b58',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::ComparatorExpressionNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#a1521620cf845a4936cf750e603aa32f2',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::OrExpressionNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#ae3e94031349c54baa636925c35bd91cb',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::AndExpressionNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#a609991cbea0eb03cf2af9055f20d0df0',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::ParenExpressionNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#af0e0ec021682ab870bb445ef15b3c49b',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::PipeExpressionNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#a00437ad0e3212593fed0abd14d127a23',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::CurrentNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#aa231d0ba6bdd2ca2d75807c70a8c38ec',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::FilterExpressionNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#aaf6d7394c237da4b0d0293d689324b2d',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::FunctionExpressionNode *node)=0'],['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#aa2d6ada42ce0cb6a73a097588fd38829',1,'jmespath::interpreter::AbstractVisitor::visit(const ast::ExpressionArgumentNode *node)=0'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a40dacec9e3aba6093b4dcafa72159713',1,'jmespath::interpreter::Interpreter::visit(const ast::AbstractNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a0988c0a10cdd6f7b5f249f196fb11fd4',1,'jmespath::interpreter::Interpreter::visit(const ast::ExpressionNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#ad885de001cbb36b616da904e45465be9',1,'jmespath::interpreter::Interpreter::visit(const ast::IdentifierNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#ace6b780f90297f8340ebf32b51b5007b',1,'jmespath::interpreter::Interpreter::visit(const ast::RawStringNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#aa8e3985c46b5b2ec3eea2df7f2addb8a',1,'jmespath::interpreter::Interpreter::visit(const ast::LiteralNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a58a20409b4eee23accc2e788c2b593d0',1,'jmespath::interpreter::Interpreter::visit(const ast::SubexpressionNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a2eaaf8427cd35c9881616f2e8fdb6781',1,'jmespath::interpreter::Interpreter::visit(const ast::IndexExpressionNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a613be8cdc28878118e32b48795279465',1,'jmespath::interpreter::Interpreter::visit(const ast::ArrayItemNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a3473c34c209e085721b0dc778b8d821e',1,'jmespath::interpreter::Interpreter::visit(const ast::FlattenOperatorNode *) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#ab4daf01792b532cbfb3c390c26a8f893',1,'jmespath::interpreter::Interpreter::visit(const ast::BracketSpecifierNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#acf4304f187a3a0f73137baddffbc4898',1,'jmespath::interpreter::Interpreter::visit(const ast::SliceExpressionNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#ae62a95594e3a9463afc380203b4de636',1,'jmespath::interpreter::Interpreter::visit(const ast::ListWildcardNode *) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a4fa462ef5d6a33a81184fdbee8b70ad1',1,'jmespath::interpreter::Interpreter::visit(const ast::HashWildcardNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#af9d7317ea4533379037bf4cc08c560d2',1,'jmespath::interpreter::Interpreter::visit(const ast::MultiselectListNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#ab6bd51efad3f63f427ecf66ef91a9c6b',1,'jmespath::interpreter::Interpreter::visit(const ast::MultiselectHashNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#ac2050b42d2dea1430c3e2bb8423dd32c',1,'jmespath::interpreter::Interpreter::visit(const ast::NotExpressionNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#ac09aec4c0324ba51f8c744c6eecca7b4',1,'jmespath::interpreter::Interpreter::visit(const ast::ComparatorExpressionNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a140f9eb4be35d55d274e9b4811ffbd42',1,'jmespath::interpreter::Interpreter::visit(const ast::OrExpressionNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a5c476925cdcdfbe33cf65b03c8e4c58c',1,'jmespath::interpreter::Interpreter::visit(const ast::AndExpressionNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a684f0cdb6eb0fa4da58d1706eeb4eb2a',1,'jmespath::interpreter::Interpreter::visit(const ast::ParenExpressionNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a58a2d8ec5df42b622d75d86edd5cf9b1',1,'jmespath::interpreter::Interpreter::visit(const ast::PipeExpressionNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#ab1ec2e7473b662195f16f01b3a922727',1,'jmespath::interpreter::Interpreter::visit(const ast::CurrentNode *) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a0328259a98ae3fdf178aa82af9ed3e7c',1,'jmespath::interpreter::Interpreter::visit(const ast::FilterExpressionNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a2742c4c7d37791f4cc9a0f49a2035e97',1,'jmespath::interpreter::Interpreter::visit(const ast::FunctionExpressionNode *node) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#ad52f9eb6f642b13595111f6151cd980f',1,'jmespath::interpreter::Interpreter::visit(const ast::ExpressionArgumentNode *) override'],['../classjmespath_1_1interpreter_1_1_interpreter.html#aa1560f312aed6e6d1ed5cff69387018a',1,'jmespath::interpreter::Interpreter::visit(const ast::IdentifierNode *node, JsonT &&context)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a0f9f1ff65fbe34c20f866b6eb7ed5bf6',1,'jmespath::interpreter::Interpreter::visit(const ast::ArrayItemNode *node, JsonT &&context)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a80702b76ca2d836c5fadaf1e6f64a06f',1,'jmespath::interpreter::Interpreter::visit(const ast::FlattenOperatorNode *node, JsonT &&context)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a30d45a764c099e357dca3b38e990d735',1,'jmespath::interpreter::Interpreter::visit(const ast::SliceExpressionNode *node, JsonT &&context)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a9084145d100b3f6a16d4aad0f41512f9',1,'jmespath::interpreter::Interpreter::visit(const ast::HashWildcardNode *node, JsonT &&context)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a2bc3b9a293d459d5054645acf34190f8',1,'jmespath::interpreter::Interpreter::visit(const ast::FilterExpressionNode *node, JsonT &&context)']]] +]; diff --git a/search/functions_13.html b/search/functions_13.html new file mode 100644 index 0000000..724f5c1 --- /dev/null +++ b/search/functions_13.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_13.js b/search/functions_13.js new file mode 100644 index 0000000..828e13d --- /dev/null +++ b/search/functions_13.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['_7eabstractnode',['~AbstractNode',['../classjmespath_1_1ast_1_1_abstract_node.html#a4b63ab1754e0530e0061cbf3acd080e5',1,'jmespath::ast::AbstractNode']]], + ['_7eabstractvisitor',['~AbstractVisitor',['../classjmespath_1_1interpreter_1_1_abstract_visitor.html#a43ec1fb5d20ef31e41d39098f391c969',1,'jmespath::interpreter::AbstractVisitor']]], + ['_7eexpressionnode',['~ExpressionNode',['../classjmespath_1_1ast_1_1_expression_node.html#a92024cba2000a833135db7be93295740',1,'jmespath::ast::ExpressionNode']]] +]; diff --git a/search/functions_2.html b/search/functions_2.html new file mode 100644 index 0000000..78be8b4 --- /dev/null +++ b/search/functions_2.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_2.js b/search/functions_2.js new file mode 100644 index 0000000..036c3d5 --- /dev/null +++ b/search/functions_2.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['ceil',['ceil',['../classjmespath_1_1interpreter_1_1_interpreter.html#a3058b197fcfb95bf6dc12aea304bffc2',1,'jmespath::interpreter::Interpreter']]], + ['childnode',['childNode',['../classjmespath_1_1parser_1_1_left_child_extractor.html#a1a30d17a6c3eee8c3e6661506c9eda0d',1,'jmespath::parser::LeftChildExtractor::childNode(T *) const '],['../classjmespath_1_1parser_1_1_left_child_extractor.html#a3ba1f2f30a199ae3c36b83d2ea99ab65',1,'jmespath::parser::LeftChildExtractor::childNode(T *node) const '],['../classjmespath_1_1parser_1_1_left_child_extractor.html#a3ba1f2f30a199ae3c36b83d2ea99ab65',1,'jmespath::parser::LeftChildExtractor::childNode(T *node) const ']]], + ['comparatorexpressionnode',['ComparatorExpressionNode',['../classjmespath_1_1ast_1_1_comparator_expression_node.html#a64db9025fbe6fa67ca3587146dd8233b',1,'jmespath::ast::ComparatorExpressionNode::ComparatorExpressionNode()'],['../classjmespath_1_1ast_1_1_comparator_expression_node.html#a64098437270ea8cc766c021e2e5304c3',1,'jmespath::ast::ComparatorExpressionNode::ComparatorExpressionNode(const ExpressionNode &left, Comparator valueComparator, const ExpressionNode &right)']]], + ['contains',['contains',['../classjmespath_1_1interpreter_1_1_interpreter.html#a94e20d92e53234c6884667099c748f99',1,'jmespath::interpreter::Interpreter']]], + ['contextvaluevisitoradaptor',['ContextValueVisitorAdaptor',['../classjmespath_1_1interpreter_1_1_context_value_visitor_adaptor.html#afedf79dc8daec85c5827159ec6486357',1,'jmespath::interpreter::ContextValueVisitorAdaptor']]], + ['currentcontext',['currentContext',['../classjmespath_1_1interpreter_1_1_interpreter.html#a3fb7cf2cbec7d6251618f05253e82706',1,'jmespath::interpreter::Interpreter']]], + ['currentcontextvalue',['currentContextValue',['../classjmespath_1_1interpreter_1_1_interpreter.html#a2e9c07941378999e46d5343792d83c48',1,'jmespath::interpreter::Interpreter']]], + ['currentnode',['CurrentNode',['../classjmespath_1_1ast_1_1_current_node.html#a50634a8ef113df2f29b052fabdc17584',1,'jmespath::ast::CurrentNode']]] +]; diff --git a/search/functions_3.html b/search/functions_3.html new file mode 100644 index 0000000..ebf2eeb --- /dev/null +++ b/search/functions_3.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_3.js b/search/functions_3.js new file mode 100644 index 0000000..ba4c25e --- /dev/null +++ b/search/functions_3.js @@ -0,0 +1,10 @@ +var searchData= +[ + ['endswith',['endsWith',['../classjmespath_1_1interpreter_1_1_interpreter.html#a41deb52533d5fbf12988529eb4edde58',1,'jmespath::interpreter::Interpreter']]], + ['evaluatearguments',['evaluateArguments',['../classjmespath_1_1interpreter_1_1_interpreter.html#a7e796fe04c34a674479cd0d0df2d8919',1,'jmespath::interpreter::Interpreter']]], + ['evaluatelogicoperator',['evaluateLogicOperator',['../classjmespath_1_1interpreter_1_1_interpreter.html#a7a26d7c5b0f52965707dde33ba696e17',1,'jmespath::interpreter::Interpreter']]], + ['evaluateprojection',['evaluateProjection',['../classjmespath_1_1interpreter_1_1_interpreter.html#a263746c9977a37fb57aa5fd3a2bead34',1,'jmespath::interpreter::Interpreter::evaluateProjection(const ast::ExpressionNode *expression)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a972ad4fe49d47143fae4b3ee650bee81',1,'jmespath::interpreter::Interpreter::evaluateProjection(const ast::ExpressionNode *expression, JsonT &&context)']]], + ['expression',['Expression',['../group__public.html#ac4327cea31ec68f570c861bf8d88e89a',1,'jmespath::Expression::Expression()'],['../group__public.html#a2760d66c7f4c11020b57ae44b2a4c44a',1,'jmespath::Expression::Expression(const Expression &other)'],['../group__public.html#a906ae5ffb3c75b2a8b84de826aef2f3d',1,'jmespath::Expression::Expression(Expression &&other)'],['../group__public.html#a793b768e187e0c3e6190c0264d473a3e',1,'jmespath::Expression::Expression(U &&expression)']]], + ['expressionargumentnode',['ExpressionArgumentNode',['../classjmespath_1_1ast_1_1_expression_argument_node.html#aba340628c7b88cb7d5c6a93546c5bbbf',1,'jmespath::ast::ExpressionArgumentNode::ExpressionArgumentNode()'],['../classjmespath_1_1ast_1_1_expression_argument_node.html#a4c1fa1ee54cc9c157fa061812afea90e',1,'jmespath::ast::ExpressionArgumentNode::ExpressionArgumentNode(const ExpressionNode &subexpression)']]], + ['expressionnode',['ExpressionNode',['../classjmespath_1_1ast_1_1_expression_node.html#a1a76b21d72aa06b6f1f39347b0495bec',1,'jmespath::ast::ExpressionNode::ExpressionNode()'],['../classjmespath_1_1ast_1_1_expression_node.html#a22c05b524604c72cd6528b62805a8001',1,'jmespath::ast::ExpressionNode::ExpressionNode(const ExpressionNode &)=default'],['../classjmespath_1_1ast_1_1_expression_node.html#a461fee9412813cad4f4159226a972f2e',1,'jmespath::ast::ExpressionNode::ExpressionNode(const ValueType &expression)']]] +]; diff --git a/search/functions_4.html b/search/functions_4.html new file mode 100644 index 0000000..7317ea9 --- /dev/null +++ b/search/functions_4.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_4.js b/search/functions_4.js new file mode 100644 index 0000000..14b3f99 --- /dev/null +++ b/search/functions_4.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['filterexpressionnode',['FilterExpressionNode',['../classjmespath_1_1ast_1_1_filter_expression_node.html#a6ed992bd21a4d84dd4e579994f73fcbc',1,'jmespath::ast::FilterExpressionNode::FilterExpressionNode()'],['../classjmespath_1_1ast_1_1_filter_expression_node.html#a2038eba2bbb3f493f2993686574300c1',1,'jmespath::ast::FilterExpressionNode::FilterExpressionNode(const ExpressionNode &subexpression)']]], + ['flattenoperatornode',['FlattenOperatorNode',['../classjmespath_1_1ast_1_1_flatten_operator_node.html#acee1850ef1f8902f6812a03f2683cee7',1,'jmespath::ast::FlattenOperatorNode']]], + ['floor',['floor',['../classjmespath_1_1interpreter_1_1_interpreter.html#a842d2c4c92acb61e9be6e6cda4272f22',1,'jmespath::interpreter::Interpreter']]], + ['functionexpressionnode',['FunctionExpressionNode',['../classjmespath_1_1ast_1_1_function_expression_node.html#a61b69957f0d022201edd3b2d69df0dd4',1,'jmespath::ast::FunctionExpressionNode::FunctionExpressionNode()'],['../classjmespath_1_1ast_1_1_function_expression_node.html#afc6efb268e3b0c8a873ee527f2ec4f03',1,'jmespath::ast::FunctionExpressionNode::FunctionExpressionNode(const String &name, const std::initializer_list< ArgumentType > &argumentList={})']]] +]; diff --git a/search/functions_5.html b/search/functions_5.html new file mode 100644 index 0000000..1f1d9ce --- /dev/null +++ b/search/functions_5.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_5.js b/search/functions_5.js new file mode 100644 index 0000000..fa07b82 --- /dev/null +++ b/search/functions_5.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['getargument',['getArgument',['../classjmespath_1_1interpreter_1_1_interpreter.html#ab17b18ff60d6785102ad47cd28d5e652',1,'jmespath::interpreter::Interpreter']]], + ['getjsonargument',['getJsonArgument',['../classjmespath_1_1interpreter_1_1_interpreter.html#ab9b4ae32cde3b501c014d26b9293dfe3',1,'jmespath::interpreter::Interpreter']]], + ['getjsonvalue',['getJsonValue',['../namespacejmespath_1_1interpreter.html#aff908d4ffba86979c0b616033d9c772b',1,'jmespath::interpreter']]], + ['grammar',['Grammar',['../classjmespath_1_1parser_1_1_grammar.html#a8e0827a7cadf69fad42a00a9749ec473',1,'jmespath::parser::Grammar']]] +]; diff --git a/search/functions_6.html b/search/functions_6.html new file mode 100644 index 0000000..c9faaa6 --- /dev/null +++ b/search/functions_6.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_6.js b/search/functions_6.js new file mode 100644 index 0000000..30165a1 --- /dev/null +++ b/search/functions_6.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['hashwildcardnode',['HashWildcardNode',['../classjmespath_1_1ast_1_1_hash_wildcard_node.html#a3f9ba99580336904591c98b69e754a74',1,'jmespath::ast::HashWildcardNode::HashWildcardNode()'],['../classjmespath_1_1ast_1_1_hash_wildcard_node.html#a4e5438dceb21dea9b1a38048156b069e',1,'jmespath::ast::HashWildcardNode::HashWildcardNode(const ExpressionNode &leftExpression, const ExpressionNode &rightExpression)']]] +]; diff --git a/search/functions_7.html b/search/functions_7.html new file mode 100644 index 0000000..ec330da --- /dev/null +++ b/search/functions_7.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_7.js b/search/functions_7.js new file mode 100644 index 0000000..53cd8de --- /dev/null +++ b/search/functions_7.js @@ -0,0 +1,10 @@ +var searchData= +[ + ['identifiernode',['IdentifierNode',['../classjmespath_1_1ast_1_1_identifier_node.html#a35aa8447a8df3ba87eee06b7151d13e1',1,'jmespath::ast::IdentifierNode::IdentifierNode()'],['../classjmespath_1_1ast_1_1_identifier_node.html#affac04ad13b86ce819f0d628416a42c2',1,'jmespath::ast::IdentifierNode::IdentifierNode(const String &name)']]], + ['indexexpressionnode',['IndexExpressionNode',['../classjmespath_1_1ast_1_1_index_expression_node.html#ab60ce9af275b6b5de691269feae97a75',1,'jmespath::ast::IndexExpressionNode::IndexExpressionNode()'],['../classjmespath_1_1ast_1_1_index_expression_node.html#a0d596c2f1fe0e3392a2324495ae4046c',1,'jmespath::ast::IndexExpressionNode::IndexExpressionNode(const BracketSpecifierNode &bracketNode)'],['../classjmespath_1_1ast_1_1_index_expression_node.html#ac3251f51c28bb4aae73c423175eba403',1,'jmespath::ast::IndexExpressionNode::IndexExpressionNode(const ExpressionNode &left, const BracketSpecifierNode &bracketNode, const ExpressionNode &right={})']]], + ['interpreter',['Interpreter',['../classjmespath_1_1interpreter_1_1_interpreter.html#a0b415c6fd62de979edb32e5091f76c93',1,'jmespath::interpreter::Interpreter']]], + ['iscomparablearray',['isComparableArray',['../classjmespath_1_1interpreter_1_1_interpreter.html#a61353bef52c7b291cdd290cd5956ce2b',1,'jmespath::interpreter::Interpreter']]], + ['isempty',['isEmpty',['../group__public.html#ae24e9bd6c0870f1a9e5ed44d3ae4c43f',1,'jmespath::Expression']]], + ['isnull',['isNull',['../classjmespath_1_1ast_1_1_variant_node.html#a31041225ecdf9761b938b0a2b07adf25',1,'jmespath::ast::VariantNode']]], + ['isprojection',['isProjection',['../classjmespath_1_1ast_1_1_and_expression_node.html#a57ffe78c897bae1857756cbb2b6a5808',1,'jmespath::ast::AndExpressionNode::isProjection()'],['../classjmespath_1_1ast_1_1_binary_expression_node.html#ae255673d63f6c0ceced7580fa1359f63',1,'jmespath::ast::BinaryExpressionNode::isProjection()'],['../classjmespath_1_1ast_1_1_bracket_specifier_node.html#a1ee9a6091093bf6a48f12dc847582116',1,'jmespath::ast::BracketSpecifierNode::isProjection()'],['../classjmespath_1_1ast_1_1_comparator_expression_node.html#a61fc944c156918d78cb9434b1b0f70f2',1,'jmespath::ast::ComparatorExpressionNode::isProjection()'],['../classjmespath_1_1ast_1_1_hash_wildcard_node.html#a3e8236bce38697802d036c15d517f311',1,'jmespath::ast::HashWildcardNode::isProjection()'],['../classjmespath_1_1ast_1_1_index_expression_node.html#a11e9273594da527661d9316badbfa581',1,'jmespath::ast::IndexExpressionNode::isProjection()'],['../classjmespath_1_1ast_1_1_or_expression_node.html#ad507619af1902e7b5d1fcf1575436c14',1,'jmespath::ast::OrExpressionNode::isProjection()'],['../classjmespath_1_1ast_1_1_pipe_expression_node.html#ab5b4b0354aa15afe2829ddfcdb6fb2b7',1,'jmespath::ast::PipeExpressionNode::isProjection()'],['../classjmespath_1_1ast_1_1_subexpression_node.html#afb51bb71541720e0594a1ee565b62887',1,'jmespath::ast::SubexpressionNode::isProjection()']]] +]; diff --git a/search/functions_8.html b/search/functions_8.html new file mode 100644 index 0000000..afd4fac --- /dev/null +++ b/search/functions_8.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_8.js b/search/functions_8.js new file mode 100644 index 0000000..15249dc --- /dev/null +++ b/search/functions_8.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['join',['join',['../classjmespath_1_1interpreter_1_1_interpreter.html#a1c436d67d4a5a596c7bbb05924538110',1,'jmespath::interpreter::Interpreter']]] +]; diff --git a/search/functions_9.html b/search/functions_9.html new file mode 100644 index 0000000..542b9e0 --- /dev/null +++ b/search/functions_9.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_9.js b/search/functions_9.js new file mode 100644 index 0000000..c31712e --- /dev/null +++ b/search/functions_9.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['keys',['keys',['../classjmespath_1_1interpreter_1_1_interpreter.html#a2ea0f3f77ac7533fef61fb332ba8ad74',1,'jmespath::interpreter::Interpreter']]] +]; diff --git a/search/functions_a.html b/search/functions_a.html new file mode 100644 index 0000000..94fd395 --- /dev/null +++ b/search/functions_a.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_a.js b/search/functions_a.js new file mode 100644 index 0000000..3511ae4 --- /dev/null +++ b/search/functions_a.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['leftedgeiterator',['LeftEdgeIterator',['../classjmespath_1_1parser_1_1_left_edge_iterator.html#a47d6341d9a60a0a1ce5411033a60539f',1,'jmespath::parser::LeftEdgeIterator::LeftEdgeIterator()'],['../classjmespath_1_1parser_1_1_left_edge_iterator.html#a370a6aacfe2b79cd272ee7b6a236f649',1,'jmespath::parser::LeftEdgeIterator::LeftEdgeIterator(ast::ExpressionNode &node)']]], + ['length',['length',['../classjmespath_1_1interpreter_1_1_interpreter.html#a7719b9faa182978444b7eacadf442a93',1,'jmespath::interpreter::Interpreter']]], + ['listwildcardnode',['ListWildcardNode',['../classjmespath_1_1ast_1_1_list_wildcard_node.html#a95b272aeb77afa462bdba33da7013266',1,'jmespath::ast::ListWildcardNode']]], + ['literalnode',['LiteralNode',['../classjmespath_1_1ast_1_1_literal_node.html#a55e5b1470ee74efe9688ea8ea96a2cf5',1,'jmespath::ast::LiteralNode::LiteralNode()'],['../classjmespath_1_1ast_1_1_literal_node.html#a7f477c9fb546229c75184df6ec66671d',1,'jmespath::ast::LiteralNode::LiteralNode(const String &value)']]] +]; diff --git a/search/functions_b.html b/search/functions_b.html new file mode 100644 index 0000000..1a03617 --- /dev/null +++ b/search/functions_b.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_b.js b/search/functions_b.js new file mode 100644 index 0000000..3ca9057 --- /dev/null +++ b/search/functions_b.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['makemoveonlyvisitor',['makeMoveOnlyVisitor',['../namespacejmespath_1_1interpreter.html#a474c94398106b52926d422f3470d720d',1,'jmespath::interpreter']]], + ['makevisitor',['makeVisitor',['../namespacejmespath_1_1interpreter.html#a92bc11a10898d88e41f867883a53ff4f',1,'jmespath::interpreter']]], + ['map',['map',['../classjmespath_1_1interpreter_1_1_interpreter.html#a0699e8088fece2a09685f8ebc24b79e9',1,'jmespath::interpreter::Interpreter::map(FunctionArgumentList &arguments)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#aff6543afe32dcf2f710be49391c49788',1,'jmespath::interpreter::Interpreter::map(const ast::ExpressionNode *node, JsonT &&array)']]], + ['max',['max',['../classjmespath_1_1interpreter_1_1_interpreter.html#ad40bc89bd4d008e8198d451c8f824746',1,'jmespath::interpreter::Interpreter::max(FunctionArgumentList &arguments, const JsonComparator &comparator)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#a8da961ce5032414929fb5bb21ec6f487',1,'jmespath::interpreter::Interpreter::max(const JsonComparator *comparator, JsonT &&array)']]], + ['maxby',['maxBy',['../classjmespath_1_1interpreter_1_1_interpreter.html#a9079458dcfbad951c930515743c22025',1,'jmespath::interpreter::Interpreter::maxBy(FunctionArgumentList &arguments, const JsonComparator &comparator=std::less< Json >{})'],['../classjmespath_1_1interpreter_1_1_interpreter.html#ae950db3152ccc09629982f2aa5430aba',1,'jmespath::interpreter::Interpreter::maxBy(const ast::ExpressionNode *expression, const JsonComparator *comparator, JsonT &&array)']]], + ['merge',['merge',['../classjmespath_1_1interpreter_1_1_interpreter.html#a24dfdc1c00c14e2612d0919116892695',1,'jmespath::interpreter::Interpreter']]], + ['mergeobject',['mergeObject',['../classjmespath_1_1interpreter_1_1_interpreter.html#ab8ff4fef4cb1aa0f583715149a755fc8',1,'jmespath::interpreter::Interpreter']]], + ['multiselecthashnode',['MultiselectHashNode',['../classjmespath_1_1ast_1_1_multiselect_hash_node.html#aec66e96590389636510ec70a46a9e9a8',1,'jmespath::ast::MultiselectHashNode::MultiselectHashNode()'],['../classjmespath_1_1ast_1_1_multiselect_hash_node.html#adab7e89c8c689242aa0f5b7c66710f05',1,'jmespath::ast::MultiselectHashNode::MultiselectHashNode(const std::vector< KeyValuePairType > &subexpressions)'],['../classjmespath_1_1ast_1_1_multiselect_hash_node.html#a4a8da4056527aa582ea9c4c9b3035415',1,'jmespath::ast::MultiselectHashNode::MultiselectHashNode(const std::initializer_list< KeyValuePairType > &subexpressions)']]], + ['multiselectlistnode',['MultiselectListNode',['../classjmespath_1_1ast_1_1_multiselect_list_node.html#ad838864c8aee5b89356e0639be548770',1,'jmespath::ast::MultiselectListNode::MultiselectListNode()'],['../classjmespath_1_1ast_1_1_multiselect_list_node.html#a4b143e8984f73663e1266d0443a222d7',1,'jmespath::ast::MultiselectListNode::MultiselectListNode(const std::vector< ExpressionNode > &subexpressions)'],['../classjmespath_1_1ast_1_1_multiselect_list_node.html#aee263fc0b3052ffa79fbdc0945067680',1,'jmespath::ast::MultiselectListNode::MultiselectListNode(const std::initializer_list< ExpressionNode > &subexpressions)']]] +]; diff --git a/search/functions_c.html b/search/functions_c.html new file mode 100644 index 0000000..a6536e9 --- /dev/null +++ b/search/functions_c.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_c.js b/search/functions_c.js new file mode 100644 index 0000000..f04bd58 --- /dev/null +++ b/search/functions_c.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['noderank',['nodeRank',['../namespacejmespath_1_1parser.html#a4bd02ea3fec09ee5893509a24a2f4f2b',1,'jmespath::parser::nodeRank(const T &)'],['../namespacejmespath_1_1parser.html#a3c434ed1cdaf59b4da44ca5c7cefb2fe',1,'jmespath::parser::nodeRank(const boost::variant< Args...> &variant)'],['../namespacejmespath_1_1parser.html#aed7a15e5a67dc671b92d81c862d6d51d',1,'jmespath::parser::nodeRank(const ast::ExpressionNode &node)'],['../namespacejmespath_1_1parser.html#abcfb7e6f94c45a50f8395d21e5f05689',1,'jmespath::parser::nodeRank(const ast::SubexpressionNode &)'],['../namespacejmespath_1_1parser.html#ae35b7e4b5efc548d282bfb17cb37d35b',1,'jmespath::parser::nodeRank(const ast::BracketSpecifierNode &node)'],['../namespacejmespath_1_1parser.html#a0e6c779e4aade4a3ef357225834a076d',1,'jmespath::parser::nodeRank(const ast::IndexExpressionNode &node)'],['../namespacejmespath_1_1parser.html#a1b050e88d3744d85229400662976908e',1,'jmespath::parser::nodeRank(const ast::ArrayItemNode &)'],['../namespacejmespath_1_1parser.html#aa66d4994f91a01dc36f2723a3b24f8fb',1,'jmespath::parser::nodeRank(const ast::FlattenOperatorNode &)'],['../namespacejmespath_1_1parser.html#aea8d57a63691d81324e4c5bf8eb89eff',1,'jmespath::parser::nodeRank(const ast::SliceExpressionNode &)'],['../namespacejmespath_1_1parser.html#a7924ecd8f4beedda2c7487f869298731',1,'jmespath::parser::nodeRank(const ast::ListWildcardNode &)'],['../namespacejmespath_1_1parser.html#add63a5dd3f9be1ed8ed156b924a3ed19',1,'jmespath::parser::nodeRank(const ast::HashWildcardNode &)'],['../namespacejmespath_1_1parser.html#afcdacd2a49f744a64c902d3c8090b20f',1,'jmespath::parser::nodeRank(const ast::FilterExpressionNode &)'],['../namespacejmespath_1_1parser.html#a903504cad271af10f24526b4de200ea3',1,'jmespath::parser::nodeRank(const ast::NotExpressionNode &)'],['../namespacejmespath_1_1parser.html#a123a30c6518ea3b81b686bb7a1934420',1,'jmespath::parser::nodeRank(const ast::ComparatorExpressionNode &)'],['../namespacejmespath_1_1parser.html#aad11decbee66e882112c8409d45e0111',1,'jmespath::parser::nodeRank(const ast::AndExpressionNode &)'],['../namespacejmespath_1_1parser.html#ae52ec47e828b60cbc73be52f1a5f68e7',1,'jmespath::parser::nodeRank(const ast::OrExpressionNode &)'],['../namespacejmespath_1_1parser.html#af3342e61a434a36d11638612b8ffb20d',1,'jmespath::parser::nodeRank(const ast::PipeExpressionNode &)']]], + ['notexpressionnode',['NotExpressionNode',['../classjmespath_1_1ast_1_1_not_expression_node.html#a4f98980b2f9224e4323870f32b1ee15c',1,'jmespath::ast::NotExpressionNode::NotExpressionNode()'],['../classjmespath_1_1ast_1_1_not_expression_node.html#afdca721a7df4699bc12ec37dcb394a7e',1,'jmespath::ast::NotExpressionNode::NotExpressionNode(const ExpressionNode &subexpression)']]], + ['notnull',['notNull',['../classjmespath_1_1interpreter_1_1_interpreter.html#a64dcc2eb95b59d5a6a11b5c0cf45bd38',1,'jmespath::interpreter::Interpreter']]] +]; diff --git a/search/functions_d.html b/search/functions_d.html new file mode 100644 index 0000000..8cdcc06 --- /dev/null +++ b/search/functions_d.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_d.js b/search/functions_d.js new file mode 100644 index 0000000..8039c51 --- /dev/null +++ b/search/functions_d.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['operator_21_3d',['operator!=',['../classjmespath_1_1parser_1_1_left_edge_iterator.html#a06756e4e5de8bd0180396e9ec3a4c603',1,'jmespath::parser::LeftEdgeIterator']]], + ['operator_22_22_5fjmespath',['operator""_jmespath',['../namespacejmespath_1_1literals.html#adb9d1473cccee8dd50779a2b103f3a09',1,'jmespath::literals']]], + ['operator_28_29',['operator()',['../classjmespath_1_1ast_1_1_variant_visitor_adaptor.html#ad704ff4912ba412c9470ff1c83318643',1,'jmespath::ast::VariantVisitorAdaptor::operator()(const T &variant) const '],['../classjmespath_1_1ast_1_1_variant_visitor_adaptor.html#add0b0effe70267d9f97bdb8fe81dc45b',1,'jmespath::ast::VariantVisitorAdaptor::operator()(const boost::blank &) const '],['../classjmespath_1_1parser_1_1_append_escape_sequence_action.html#aea3a47419b00304c94aef4dc21a86ee6',1,'jmespath::parser::AppendEscapeSequenceAction::operator()()'],['../classjmespath_1_1parser_1_1_append_utf8_action.html#a7d1dc781e31d7ec2489c0ecf8504b37c',1,'jmespath::parser::AppendUtf8Action::operator()()'],['../classjmespath_1_1parser_1_1_encode_surrogate_pair_action.html#a3dc69a3f314356bd9b4be3d9dae0ee76',1,'jmespath::parser::EncodeSurrogatePairAction::operator()()'],['../classjmespath_1_1parser_1_1_insert_node_action.html#ac39f2ca6e28241af13a8ff94b31ba4cc',1,'jmespath::parser::InsertNodeAction::operator()()'],['../classjmespath_1_1parser_1_1_left_child_extractor.html#aeef21634d2c976c384ae139aff9b2d19',1,'jmespath::parser::LeftChildExtractor::operator()(ast::ExpressionNode *node) const '],['../classjmespath_1_1parser_1_1_left_child_extractor.html#af185f2bd6a48678c79181143ffe7d221',1,'jmespath::parser::LeftChildExtractor::operator()(T &node) const '],['../classjmespath_1_1parser_1_1_node_insert_condition.html#a68260835ffbac77f8992e7dbdb9abbd6',1,'jmespath::parser::NodeInsertCondition::operator()(const ast::ExpressionNode &targetNode, const T &node) const '],['../classjmespath_1_1parser_1_1_node_insert_condition.html#a68260835ffbac77f8992e7dbdb9abbd6',1,'jmespath::parser::NodeInsertCondition::operator()(const ast::ExpressionNode &targetNode, const T &node) const '],['../classjmespath_1_1parser_1_1_node_insert_policy.html#afd8e2e7fc784e427902b9dc0c8b864c3',1,'jmespath::parser::NodeInsertPolicy::operator()(ast::ExpressionNode &targetNode, T &node) const '],['../classjmespath_1_1parser_1_1_node_insert_policy.html#afd8e2e7fc784e427902b9dc0c8b864c3',1,'jmespath::parser::NodeInsertPolicy::operator()(ast::ExpressionNode &targetNode, T &node) const '],['../classjmespath_1_1parser_1_1_node_insert_policy.html#afd8e2e7fc784e427902b9dc0c8b864c3',1,'jmespath::parser::NodeInsertPolicy::operator()(ast::ExpressionNode &targetNode, T &node) const '],['../structjmespath_1_1_expression_1_1_expression_deleter.html#a1658b0f2215fb09e2879685b5a53cde4',1,'jmespath::Expression::ExpressionDeleter::operator()()']]], + ['operator_2a',['operator*',['../classjmespath_1_1parser_1_1_left_edge_iterator.html#afaa410cc5deaf10e57049b8254d088d7',1,'jmespath::parser::LeftEdgeIterator']]], + ['operator_2b_2b',['operator++',['../classjmespath_1_1parser_1_1_left_edge_iterator.html#a8d70aa3f9e2113d02050f004b5fc3b1f',1,'jmespath::parser::LeftEdgeIterator::operator++()'],['../classjmespath_1_1parser_1_1_left_edge_iterator.html#acc14ed8ee24b3277a6316a0080581081',1,'jmespath::parser::LeftEdgeIterator::operator++(int)']]], + ['operator_2d_3e',['operator->',['../classjmespath_1_1parser_1_1_left_edge_iterator.html#a67036ca2cb4a8d5bd583ed434943f60b',1,'jmespath::parser::LeftEdgeIterator']]], + ['operator_3d',['operator=',['../classjmespath_1_1ast_1_1_abstract_node.html#abb140c6016ea790d1cd156fca1f0b2da',1,'jmespath::ast::AbstractNode::operator=()'],['../classjmespath_1_1ast_1_1_expression_node.html#a94afba7ab4cd83b1a0d7247b981a6fa6',1,'jmespath::ast::ExpressionNode::operator=(const ExpressionNode &other)'],['../classjmespath_1_1ast_1_1_expression_node.html#ac1d0853daff9d8d130fce3ca837e0f72',1,'jmespath::ast::ExpressionNode::operator=(const ValueType &expression)'],['../classjmespath_1_1ast_1_1_variant_node.html#aa3eafdbf7a6a9efded528da08273fcb8',1,'jmespath::ast::VariantNode::operator=(const VariantNode &other)'],['../classjmespath_1_1ast_1_1_variant_node.html#a68e87b8e070557ac131ec0121d17d6f9',1,'jmespath::ast::VariantNode::operator=(const T &other)'],['../group__public.html#a92db0119ac38dfa1d31c4b059e48a79f',1,'jmespath::Expression::operator=(const Expression &other)'],['../group__public.html#a5dd5fe5045a001413cbb1aa9c33f5479',1,'jmespath::Expression::operator=(Expression &&other)']]], + ['operator_3d_3d',['operator==',['../classjmespath_1_1ast_1_1_array_item_node.html#ae8c3315bedb8a26f468f888c4f65d284',1,'jmespath::ast::ArrayItemNode::operator==()'],['../classjmespath_1_1ast_1_1_binary_expression_node.html#a9ccbab352fc8fd17ed60a165cf171064',1,'jmespath::ast::BinaryExpressionNode::operator==()'],['../classjmespath_1_1ast_1_1_comparator_expression_node.html#ac86d9f68a201eba2502bb84b6e8b063f',1,'jmespath::ast::ComparatorExpressionNode::operator==()'],['../classjmespath_1_1ast_1_1_current_node.html#ac570f227e032754cb41005f23fb485d0',1,'jmespath::ast::CurrentNode::operator==()'],['../classjmespath_1_1ast_1_1_expression_argument_node.html#af1429c8ad18f4ec2ca7d36798a35f7c5',1,'jmespath::ast::ExpressionArgumentNode::operator==()'],['../classjmespath_1_1ast_1_1_filter_expression_node.html#a9c59c2e93f6adc8e1547aefb718967b6',1,'jmespath::ast::FilterExpressionNode::operator==()'],['../classjmespath_1_1ast_1_1_flatten_operator_node.html#afc832f806342b7f2ed117bf758fa53eb',1,'jmespath::ast::FlattenOperatorNode::operator==()'],['../classjmespath_1_1ast_1_1_function_expression_node.html#a36a739689ee9c9ffa651a9af864ffb9c',1,'jmespath::ast::FunctionExpressionNode::operator==()'],['../classjmespath_1_1ast_1_1_identifier_node.html#af74579f1b11dee73fd58d553e0feb83f',1,'jmespath::ast::IdentifierNode::operator==()'],['../classjmespath_1_1ast_1_1_index_expression_node.html#aab35877f35ed852b31bea030464aeb1e',1,'jmespath::ast::IndexExpressionNode::operator==()'],['../classjmespath_1_1ast_1_1_list_wildcard_node.html#a19a3c1b244a79b7817fc8b8dfb25674f',1,'jmespath::ast::ListWildcardNode::operator==()'],['../classjmespath_1_1ast_1_1_literal_node.html#ab410c955437f60d77c0d8ddd38e72e85',1,'jmespath::ast::LiteralNode::operator==()'],['../classjmespath_1_1ast_1_1_multiselect_hash_node.html#a70b4a738ce66bde77735beba02e96b00',1,'jmespath::ast::MultiselectHashNode::operator==()'],['../classjmespath_1_1ast_1_1_multiselect_list_node.html#a14394c7dfcc0a065c2b40955382e2eea',1,'jmespath::ast::MultiselectListNode::operator==()'],['../classjmespath_1_1ast_1_1_not_expression_node.html#ab5ade1f58e9ef621ed18df3a4a19cd8f',1,'jmespath::ast::NotExpressionNode::operator==()'],['../classjmespath_1_1ast_1_1_paren_expression_node.html#a6818cd8aca3c83a2572ca9ce100747b1',1,'jmespath::ast::ParenExpressionNode::operator==()'],['../classjmespath_1_1ast_1_1_raw_string_node.html#a2ad4a6bab2f7d4beef8fd5bbb34d1d03',1,'jmespath::ast::RawStringNode::operator==()'],['../classjmespath_1_1ast_1_1_slice_expression_node.html#aa1d019636f074b83c2cfb8f6a77d1503',1,'jmespath::ast::SliceExpressionNode::operator==()'],['../classjmespath_1_1ast_1_1_variant_node.html#aee396cac8777d20b95165831cb9f1b23',1,'jmespath::ast::VariantNode::operator==()'],['../group__public.html#a3df9e33707a4230d09a8f849b20ad5d7',1,'jmespath::Expression::operator==()']]], + ['orexpressionnode',['OrExpressionNode',['../classjmespath_1_1ast_1_1_or_expression_node.html#adf8d218884aa2b64d385b884037faaca',1,'jmespath::ast::OrExpressionNode::OrExpressionNode()'],['../classjmespath_1_1ast_1_1_or_expression_node.html#a0197a946894112458d322134c06b0370',1,'jmespath::ast::OrExpressionNode::OrExpressionNode(const ExpressionNode &leftExpression, const ExpressionNode &rightExpression)']]] +]; diff --git a/search/functions_e.html b/search/functions_e.html new file mode 100644 index 0000000..649b2c9 --- /dev/null +++ b/search/functions_e.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_e.js b/search/functions_e.js new file mode 100644 index 0000000..e149d16 --- /dev/null +++ b/search/functions_e.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['parenexpressionnode',['ParenExpressionNode',['../classjmespath_1_1ast_1_1_paren_expression_node.html#a0b6d45d3c06d13f1de8af0130c5661db',1,'jmespath::ast::ParenExpressionNode::ParenExpressionNode()'],['../classjmespath_1_1ast_1_1_paren_expression_node.html#a545fdabc4a01b29da4a29fc92d4fb13e',1,'jmespath::ast::ParenExpressionNode::ParenExpressionNode(const ExpressionNode &subexpression)']]], + ['parse',['parse',['../classjmespath_1_1parser_1_1_parser.html#a8767a75d1aeac92d21be16d8c0a87a5c',1,'jmespath::parser::Parser']]], + ['parseexpression',['parseExpression',['../group__public.html#a51f74c85755ffcadd85ea26f42fbb209',1,'jmespath::Expression']]], + ['pipeexpressionnode',['PipeExpressionNode',['../classjmespath_1_1ast_1_1_pipe_expression_node.html#ac0041625cfc38ddba8abc3bb85acd2a9',1,'jmespath::ast::PipeExpressionNode::PipeExpressionNode()'],['../classjmespath_1_1ast_1_1_pipe_expression_node.html#ab6f40911b4ad33f781364d583cd8c485',1,'jmespath::ast::PipeExpressionNode::PipeExpressionNode(const ExpressionNode &leftExpression, const ExpressionNode &rightExpression)']]] +]; diff --git a/search/functions_f.html b/search/functions_f.html new file mode 100644 index 0000000..386c7d4 --- /dev/null +++ b/search/functions_f.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/functions_f.js b/search/functions_f.js new file mode 100644 index 0000000..17ca058 --- /dev/null +++ b/search/functions_f.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['rawstringnode',['RawStringNode',['../classjmespath_1_1ast_1_1_raw_string_node.html#a898f3fc6dd782ed007f517b08b1a4982',1,'jmespath::ast::RawStringNode::RawStringNode()'],['../classjmespath_1_1ast_1_1_raw_string_node.html#ae6a9ce2a4bcbd417f76f942ad55fff7f',1,'jmespath::ast::RawStringNode::RawStringNode(const String &string)']]], + ['reverse',['reverse',['../classjmespath_1_1interpreter_1_1_interpreter.html#a60d979e88397c3a166a6a2ddaf729469',1,'jmespath::interpreter::Interpreter::reverse(FunctionArgumentList &arguments)'],['../classjmespath_1_1interpreter_1_1_interpreter.html#ad041b36c99d3fa03cc5ae00f376d1630',1,'jmespath::interpreter::Interpreter::reverse(Json &&subject)']]] +]; diff --git a/search/groups_0.html b/search/groups_0.html new file mode 100644 index 0000000..2090afa --- /dev/null +++ b/search/groups_0.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/groups_0.js b/search/groups_0.js new file mode 100644 index 0000000..8e352fd --- /dev/null +++ b/search/groups_0.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['error_20info_20types',['Error info types',['../group__error__info.html',1,'']]], + ['exception_20classes',['Exception classes',['../group__exceptions.html',1,'']]] +]; diff --git a/search/groups_1.html b/search/groups_1.html new file mode 100644 index 0000000..3ad8a3b --- /dev/null +++ b/search/groups_1.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/groups_1.js b/search/groups_1.js new file mode 100644 index 0000000..685dfa6 --- /dev/null +++ b/search/groups_1.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['the_20public_20api_20of_20the_20library',['The public API of the library',['../group__public.html',1,'']]] +]; diff --git a/search/mag_sel.png b/search/mag_sel.png new file mode 100644 index 0000000000000000000000000000000000000000..81f6040a2092402b4d98f9ffa8855d12a0d4ca17 GIT binary patch literal 563 zcmV-30?hr1P)zxx&tqG15pu7)IiiXFflOc2k;dXd>%13GZAy? zRz!q0=|E6a6vV)&ZBS~G9oe0kbqyw1*gvY`{Pop2oKq#FlzgXt@Xh-7fxh>}`Fxg> z$%N%{$!4=5nM{(;=c!aG1Ofr^Do{u%Ih{^&Fc@H2)+a-?TBXrw5DW&z%Nb6mQ!L9O zl}b@6mB?f=tX3;#vl)}ggh(Vpyh(IK z(Mb0D{l{U$FsRjP;!{($+bsaaVi8T#1c0V#qEIOCYa9@UVLV`f__E81L;?WEaRA;Y zUH;rZ;vb;mk7JX|$=i3O~&If0O@oZfLg8gfIjW=dcBsz;gI=!{-r4# z4%6v$&~;q^j7Fo67yJ(NJWuX+I~I!tj^nW3?}^9bq|<3^+vapS5sgM^x7!cs(+mMT z&y%j};&~po+YO)3hoUH4E*E;e9>?R6SS&`X)p`njycAVcg{rEb41T{~Hk(bl-7eSb zmFxA2uIqo#@R?lKm50ND`~6Nfn|-b1|L6O98vt3Tx@gKz#isxO002ovPDHLkV1kyW B_l^Jn literal 0 HcmV?d00001 diff --git a/search/namespaces_0.html b/search/namespaces_0.html new file mode 100644 index 0000000..dc60686 --- /dev/null +++ b/search/namespaces_0.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/namespaces_0.js b/search/namespaces_0.js new file mode 100644 index 0000000..fb7da43 --- /dev/null +++ b/search/namespaces_0.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['ast',['ast',['../namespacejmespath_1_1ast.html',1,'jmespath']]], + ['interpreter',['interpreter',['../namespacejmespath_1_1interpreter.html',1,'jmespath']]], + ['jmespath',['jmespath',['../namespacejmespath.html',1,'']]], + ['literals',['literals',['../namespacejmespath_1_1literals.html',1,'jmespath']]], + ['parser',['parser',['../namespacejmespath_1_1parser.html',1,'jmespath']]] +]; diff --git a/search/nomatches.html b/search/nomatches.html new file mode 100644 index 0000000..b1ded27 --- /dev/null +++ b/search/nomatches.html @@ -0,0 +1,12 @@ + + + + + + + +
+
No Matches
+
+ + diff --git a/search/pages_0.html b/search/pages_0.html new file mode 100644 index 0000000..c51c834 --- /dev/null +++ b/search/pages_0.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/pages_0.js b/search/pages_0.js new file mode 100644 index 0000000..157f274 --- /dev/null +++ b/search/pages_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['installation_20and_20integration',['Installation and integration',['../install.html',1,'']]] +]; diff --git a/search/search.css b/search/search.css new file mode 100644 index 0000000..4d7612f --- /dev/null +++ b/search/search.css @@ -0,0 +1,271 @@ +/*---------------- Search Box */ + +#FSearchBox { + float: left; +} + +#MSearchBox { + white-space : nowrap; + position: absolute; + float: none; + display: inline; + margin-top: 8px; + right: 0px; + width: 170px; + z-index: 102; + background-color: white; +} + +#MSearchBox .left +{ + display:block; + position:absolute; + left:10px; + width:20px; + height:19px; + background:url('search_l.png') no-repeat; + background-position:right; +} + +#MSearchSelect { + display:block; + position:absolute; + width:20px; + height:19px; +} + +.left #MSearchSelect { + left:4px; +} + +.right #MSearchSelect { + right:5px; +} + +#MSearchField { + display:block; + position:absolute; + height:19px; + background:url('search_m.png') repeat-x; + border:none; + width:111px; + margin-left:20px; + padding-left:4px; + color: #909090; + outline: none; + font: 9pt Arial, Verdana, sans-serif; +} + +#FSearchBox #MSearchField { + margin-left:15px; +} + +#MSearchBox .right { + display:block; + position:absolute; + right:10px; + top:0px; + width:20px; + height:19px; + background:url('search_r.png') no-repeat; + background-position:left; +} + +#MSearchClose { + display: none; + position: absolute; + top: 4px; + background : none; + border: none; + margin: 0px 4px 0px 0px; + padding: 0px 0px; + outline: none; +} + +.left #MSearchClose { + left: 6px; +} + +.right #MSearchClose { + right: 2px; +} + +.MSearchBoxActive #MSearchField { + color: #000000; +} + +/*---------------- Search filter selection */ + +#MSearchSelectWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #90A5CE; + background-color: #F9FAFC; + z-index: 1; + padding-top: 4px; + padding-bottom: 4px; + -moz-border-radius: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +.SelectItem { + font: 8pt Arial, Verdana, sans-serif; + padding-left: 2px; + padding-right: 12px; + border: 0px; +} + +span.SelectionMark { + margin-right: 4px; + font-family: monospace; + outline-style: none; + text-decoration: none; +} + +a.SelectItem { + display: block; + outline-style: none; + color: #000000; + text-decoration: none; + padding-left: 6px; + padding-right: 12px; +} + +a.SelectItem:focus, +a.SelectItem:active { + color: #000000; + outline-style: none; + text-decoration: none; +} + +a.SelectItem:hover { + color: #FFFFFF; + background-color: #3D578C; + outline-style: none; + text-decoration: none; + cursor: pointer; + display: block; +} + +/*---------------- Search results window */ + +iframe#MSearchResults { + width: 60ex; + height: 15em; +} + +#MSearchResultsWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #000; + background-color: #EEF1F7; +} + +/* ----------------------------------- */ + + +#SRIndex { + clear:both; + padding-bottom: 15px; +} + +.SREntry { + font-size: 10pt; + padding-left: 1ex; +} + +.SRPage .SREntry { + font-size: 8pt; + padding: 1px 5px; +} + +body.SRPage { + margin: 5px 2px; +} + +.SRChildren { + padding-left: 3ex; padding-bottom: .5em +} + +.SRPage .SRChildren { + display: none; +} + +.SRSymbol { + font-weight: bold; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRScope { + display: block; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRSymbol:focus, a.SRSymbol:active, +a.SRScope:focus, a.SRScope:active { + text-decoration: underline; +} + +span.SRScope { + padding-left: 4px; +} + +.SRPage .SRStatus { + padding: 2px 5px; + font-size: 8pt; + font-style: italic; +} + +.SRResult { + display: none; +} + +DIV.searchresults { + margin-left: 10px; + margin-right: 10px; +} + +/*---------------- External search page results */ + +.searchresult { + background-color: #F0F3F8; +} + +.pages b { + color: white; + padding: 5px 5px 3px 5px; + background-image: url("../tab_a.png"); + background-repeat: repeat-x; + text-shadow: 0 1px 1px #000000; +} + +.pages { + line-height: 17px; + margin-left: 4px; + text-decoration: none; +} + +.hl { + font-weight: bold; +} + +#searchresults { + margin-bottom: 20px; +} + +.searchpages { + margin-top: 10px; +} + diff --git a/search/search.js b/search/search.js new file mode 100644 index 0000000..da75e62 --- /dev/null +++ b/search/search.js @@ -0,0 +1,813 @@ +// Search script generated by doxygen +// Copyright (C) 2009 by Dimitri van Heesch. + +// The code in this file is loosly based on main.js, part of Natural Docs, +// which is Copyright (C) 2003-2008 Greg Valure +// Natural Docs is licensed under the GPL. + +var indexSectionsWithContent = +{ + 0: "abcefghijklmnoprstuv~", + 1: "abcefghilmnoprsuv", + 2: "j", + 3: "abcefghijlmnoprstv", + 4: "abcefghijklmnoprstv~", + 5: "abcefilmrsv", + 6: "acefgijkrsuv", + 7: "c", + 8: "eglnu", + 9: "et", + 10: "i" +}; + +var indexSectionNames = +{ + 0: "all", + 1: "classes", + 2: "namespaces", + 3: "files", + 4: "functions", + 5: "variables", + 6: "typedefs", + 7: "enums", + 8: "enumvalues", + 9: "groups", + 10: "pages" +}; + +function convertToId(search) +{ + var result = ''; + for (i=0;i do a search + { + this.Search(); + } + } + + this.OnSearchSelectKey = function(evt) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==40 && this.searchIndex0) // Up + { + this.searchIndex--; + this.OnSelectItem(this.searchIndex); + } + else if (e.keyCode==13 || e.keyCode==27) + { + this.OnSelectItem(this.searchIndex); + this.CloseSelectionWindow(); + this.DOMSearchField().focus(); + } + return false; + } + + // --------- Actions + + // Closes the results window. + this.CloseResultsWindow = function() + { + this.DOMPopupSearchResultsWindow().style.display = 'none'; + this.DOMSearchClose().style.display = 'none'; + this.Activate(false); + } + + this.CloseSelectionWindow = function() + { + this.DOMSearchSelectWindow().style.display = 'none'; + } + + // Performs a search. + this.Search = function() + { + this.keyTimeout = 0; + + // strip leading whitespace + var searchValue = this.DOMSearchField().value.replace(/^ +/, ""); + + var code = searchValue.toLowerCase().charCodeAt(0); + var idxChar = searchValue.substr(0, 1).toLowerCase(); + if ( 0xD800 <= code && code <= 0xDBFF && searchValue > 1) // surrogate pair + { + idxChar = searchValue.substr(0, 2); + } + + var resultsPage; + var resultsPageWithSearch; + var hasResultsPage; + + var idx = indexSectionsWithContent[this.searchIndex].indexOf(idxChar); + if (idx!=-1) + { + var hexCode=idx.toString(16); + resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + '.html'; + resultsPageWithSearch = resultsPage+'?'+escape(searchValue); + hasResultsPage = true; + } + else // nothing available for this search term + { + resultsPage = this.resultsPath + '/nomatches.html'; + resultsPageWithSearch = resultsPage; + hasResultsPage = false; + } + + window.frames.MSearchResults.location = resultsPageWithSearch; + var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow(); + + if (domPopupSearchResultsWindow.style.display!='block') + { + var domSearchBox = this.DOMSearchBox(); + this.DOMSearchClose().style.display = 'inline'; + if (this.insideFrame) + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + domPopupSearchResultsWindow.style.position = 'relative'; + domPopupSearchResultsWindow.style.display = 'block'; + var width = document.body.clientWidth - 8; // the -8 is for IE :-( + domPopupSearchResultsWindow.style.width = width + 'px'; + domPopupSearchResults.style.width = width + 'px'; + } + else + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth; + var top = getYPos(domSearchBox) + 20; // domSearchBox.offsetHeight + 1; + domPopupSearchResultsWindow.style.display = 'block'; + left -= domPopupSearchResults.offsetWidth; + domPopupSearchResultsWindow.style.top = top + 'px'; + domPopupSearchResultsWindow.style.left = left + 'px'; + } + } + + this.lastSearchValue = searchValue; + this.lastResultsPage = resultsPage; + } + + // -------- Activation Functions + + // Activates or deactivates the search panel, resetting things to + // their default values if necessary. + this.Activate = function(isActive) + { + if (isActive || // open it + this.DOMPopupSearchResultsWindow().style.display == 'block' + ) + { + this.DOMSearchBox().className = 'MSearchBoxActive'; + + var searchField = this.DOMSearchField(); + + if (searchField.value == this.searchLabel) // clear "Search" term upon entry + { + searchField.value = ''; + this.searchActive = true; + } + } + else if (!isActive) // directly remove the panel + { + this.DOMSearchBox().className = 'MSearchBoxInactive'; + this.DOMSearchField().value = this.searchLabel; + this.searchActive = false; + this.lastSearchValue = '' + this.lastResultsPage = ''; + } + } +} + +// ----------------------------------------------------------------------- + +// The class that handles everything on the search results page. +function SearchResults(name) +{ + // The number of matches from the last run of . + this.lastMatchCount = 0; + this.lastKey = 0; + this.repeatOn = false; + + // Toggles the visibility of the passed element ID. + this.FindChildElement = function(id) + { + var parentElement = document.getElementById(id); + var element = parentElement.firstChild; + + while (element && element!=parentElement) + { + if (element.nodeName == 'DIV' && element.className == 'SRChildren') + { + return element; + } + + if (element.nodeName == 'DIV' && element.hasChildNodes()) + { + element = element.firstChild; + } + else if (element.nextSibling) + { + element = element.nextSibling; + } + else + { + do + { + element = element.parentNode; + } + while (element && element!=parentElement && !element.nextSibling); + + if (element && element!=parentElement) + { + element = element.nextSibling; + } + } + } + } + + this.Toggle = function(id) + { + var element = this.FindChildElement(id); + if (element) + { + if (element.style.display == 'block') + { + element.style.display = 'none'; + } + else + { + element.style.display = 'block'; + } + } + } + + // Searches for the passed string. If there is no parameter, + // it takes it from the URL query. + // + // Always returns true, since other documents may try to call it + // and that may or may not be possible. + this.Search = function(search) + { + if (!search) // get search word from URL + { + search = window.location.search; + search = search.substring(1); // Remove the leading '?' + search = unescape(search); + } + + search = search.replace(/^ +/, ""); // strip leading spaces + search = search.replace(/ +$/, ""); // strip trailing spaces + search = search.toLowerCase(); + search = convertToId(search); + + var resultRows = document.getElementsByTagName("div"); + var matches = 0; + + var i = 0; + while (i < resultRows.length) + { + var row = resultRows.item(i); + if (row.className == "SRResult") + { + var rowMatchName = row.id.toLowerCase(); + rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_' + + if (search.length<=rowMatchName.length && + rowMatchName.substr(0, search.length)==search) + { + row.style.display = 'block'; + matches++; + } + else + { + row.style.display = 'none'; + } + } + i++; + } + document.getElementById("Searching").style.display='none'; + if (matches == 0) // no results + { + document.getElementById("NoMatches").style.display='block'; + } + else // at least one result + { + document.getElementById("NoMatches").style.display='none'; + } + this.lastMatchCount = matches; + return true; + } + + // return the first item with index index or higher that is visible + this.NavNext = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index++; + } + return focusItem; + } + + this.NavPrev = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index--; + } + return focusItem; + } + + this.ProcessKeys = function(e) + { + if (e.type == "keydown") + { + this.repeatOn = false; + this.lastKey = e.keyCode; + } + else if (e.type == "keypress") + { + if (!this.repeatOn) + { + if (this.lastKey) this.repeatOn = true; + return false; // ignore first keypress after keydown + } + } + else if (e.type == "keyup") + { + this.lastKey = 0; + this.repeatOn = false; + } + return this.lastKey!=0; + } + + this.Nav = function(evt,itemIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + var newIndex = itemIndex-1; + var focusItem = this.NavPrev(newIndex); + if (focusItem) + { + var child = this.FindChildElement(focusItem.parentNode.parentNode.id); + if (child && child.style.display == 'block') // children visible + { + var n=0; + var tmpElem; + while (1) // search for last child + { + tmpElem = document.getElementById('Item'+newIndex+'_c'+n); + if (tmpElem) + { + focusItem = tmpElem; + } + else // found it! + { + break; + } + n++; + } + } + } + if (focusItem) + { + focusItem.focus(); + } + else // return focus to search field + { + parent.document.getElementById("MSearchField").focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = itemIndex+1; + var focusItem; + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem && elem.style.display == 'block') // children visible + { + focusItem = document.getElementById('Item'+itemIndex+'_c0'); + } + if (!focusItem) focusItem = this.NavNext(newIndex); + if (focusItem) focusItem.focus(); + } + else if (this.lastKey==39) // Right + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'block'; + } + else if (this.lastKey==37) // Left + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'none'; + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } + + this.NavChild = function(evt,itemIndex,childIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + if (childIndex>0) + { + var newIndex = childIndex-1; + document.getElementById('Item'+itemIndex+'_c'+newIndex).focus(); + } + else // already at first child, jump to parent + { + document.getElementById('Item'+itemIndex).focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = childIndex+1; + var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex); + if (!elem) // last child, jump to parent next parent + { + elem = this.NavNext(itemIndex+1); + } + if (elem) + { + elem.focus(); + } + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } +} + +function setKeyActions(elem,action) +{ + elem.setAttribute('onkeydown',action); + elem.setAttribute('onkeypress',action); + elem.setAttribute('onkeyup',action); +} + +function setClassAttr(elem,attr) +{ + elem.setAttribute('class',attr); + elem.setAttribute('className',attr); +} + +function createResults() +{ + var results = document.getElementById("SRResults"); + for (var e=0; ek7RCwB~R6VQOP#AvB$vH7i{6H{96zot$7cZT<7246EF5Np6N}+$IbiG6W zg#87A+NFaX+=_^xM1#gCtshC=E{%9^uQX_%?YwXvo{#q&MnpJ8uh(O?ZRc&~_1%^SsPxG@rfElJg-?U zm!Cz-IOn(qJP3kDp-^~qt+FGbl=5jNli^Wj_xIBG{Rc0en{!oFvyoNC7{V~T8}b>| z=jL2WIReZzX(YN(_9fV;BBD$VXQIxNasAL8ATvEu822WQ%mvv4FO#qs` BFGc_W literal 0 HcmV?d00001 diff --git a/search/search_r.png b/search/search_r.png new file mode 100644 index 0000000000000000000000000000000000000000..97ee8b439687084201b79c6f776a41f495c6392a GIT binary patch literal 612 zcmV-q0-ODbP)PbXFRCwB?)W514K@j&X?z2*SxFI6-@HT2E2K=9X9%Pb zEK*!TBw&g(DMC;|A)uGlRkOS9vd-?zNs%bR4d$w+ox_iFnE8fvIvv7^5<(>Te12Li z7C)9srCzmK{ZcNM{YIl9j{DePFgOWiS%xG@5CnnnJa4nvY<^glbz7^|-ZY!dUkAwd z{gaTC@_>b5h~;ug#R0wRL0>o5!hxm*s0VW?8dr}O#zXTRTnrQm_Z7z1Mrnx>&p zD4qifUjzLvbVVWi?l?rUzwt^sdb~d!f_LEhsRVIXZtQ=qSxuxqm zEX#tf>$?M_Y1-LSDT)HqG?`%-%ZpY!#{N!rcNIiL;G7F0`l?)mNGTD9;f9F5Up3Kg zw}a<-JylhG&;=!>B+fZaCX+?C+kHYrP%c?X2!Zu_olK|GcS4A70HEy;vn)I0>0kLH z`jc(WIaaHc7!HS@f*^R^Znx8W=_jIl2oWJoQ*h1^$FX!>*PqR1J8k|fw}w_y}TpE>7m8DqDO<3z`OzXt$ccSejbEZCg@0000 + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/typedefs_0.js b/search/typedefs_0.js new file mode 100644 index 0000000..011cde5 --- /dev/null +++ b/search/typedefs_0.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['argumentarityvalidator',['ArgumentArityValidator',['../classjmespath_1_1interpreter_1_1_interpreter.html#a2e0a73594f7107917465635275b68cc4',1,'jmespath::interpreter::Interpreter']]], + ['argumenttype',['ArgumentType',['../classjmespath_1_1ast_1_1_function_expression_node.html#abe0dfade0179a9b6212bc6ec4acfbd05',1,'jmespath::ast::FunctionExpressionNode']]] +]; diff --git a/search/typedefs_1.html b/search/typedefs_1.html new file mode 100644 index 0000000..455fe2b --- /dev/null +++ b/search/typedefs_1.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/typedefs_1.js b/search/typedefs_1.js new file mode 100644 index 0000000..1bef9ba --- /dev/null +++ b/search/typedefs_1.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['char',['Char',['../namespacejmespath.html#abd11d46d1c6393b1b985e981eccdd5e3',1,'jmespath']]], + ['contextvalue',['ContextValue',['../namespacejmespath_1_1interpreter.html#abe4d41e7494a8369708f7c6044c29ffb',1,'jmespath::interpreter']]] +]; diff --git a/search/typedefs_2.html b/search/typedefs_2.html new file mode 100644 index 0000000..fac5dba --- /dev/null +++ b/search/typedefs_2.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/typedefs_2.js b/search/typedefs_2.js new file mode 100644 index 0000000..45df642 --- /dev/null +++ b/search/typedefs_2.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['escape_5ftype',['escape_type',['../classjmespath_1_1parser_1_1_append_escape_sequence_action.html#a44597d73e0e3e098770632ed6d8ab066',1,'jmespath::parser::AppendEscapeSequenceAction']]] +]; diff --git a/search/typedefs_3.html b/search/typedefs_3.html new file mode 100644 index 0000000..9cb52e4 --- /dev/null +++ b/search/typedefs_3.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/typedefs_3.js b/search/typedefs_3.js new file mode 100644 index 0000000..7849a91 --- /dev/null +++ b/search/typedefs_3.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['function',['Function',['../classjmespath_1_1interpreter_1_1_interpreter.html#a5cd4fe2aa98033286fdf860c26740f61',1,'jmespath::interpreter::Interpreter']]], + ['functionargument',['FunctionArgument',['../classjmespath_1_1interpreter_1_1_interpreter.html#ade6d22f67b5f5839e2224153935f8c35',1,'jmespath::interpreter::Interpreter']]], + ['functionargumentlist',['FunctionArgumentList',['../classjmespath_1_1interpreter_1_1_interpreter.html#a8709959582ae925ef300fa4bba603f58',1,'jmespath::interpreter::Interpreter']]], + ['functiondescriptor',['FunctionDescriptor',['../classjmespath_1_1interpreter_1_1_interpreter.html#a9cab23bd0d25cb6962f4ebc01718a5b7',1,'jmespath::interpreter::Interpreter']]], + ['functionexpressionargumentlist',['FunctionExpressionArgumentList',['../classjmespath_1_1interpreter_1_1_interpreter.html#aa7163dd65276e3fb76f368bca090e7d1',1,'jmespath::interpreter::Interpreter']]] +]; diff --git a/search/typedefs_4.html b/search/typedefs_4.html new file mode 100644 index 0000000..64c6cce --- /dev/null +++ b/search/typedefs_4.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/typedefs_4.js b/search/typedefs_4.js new file mode 100644 index 0000000..f9d06c5 --- /dev/null +++ b/search/typedefs_4.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['grammartype',['GrammarType',['../classjmespath_1_1parser_1_1_parser.html#acfb25cc509c94e3b31815c0b49c8564e',1,'jmespath::parser::Parser']]] +]; diff --git a/search/typedefs_5.html b/search/typedefs_5.html new file mode 100644 index 0000000..e014348 --- /dev/null +++ b/search/typedefs_5.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/typedefs_5.js b/search/typedefs_5.js new file mode 100644 index 0000000..c4439b1 --- /dev/null +++ b/search/typedefs_5.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['index',['Index',['../namespacejmespath.html#a72109c29c8286d2cd07ef4f0a6709ba0',1,'jmespath']]], + ['indextype',['IndexType',['../classjmespath_1_1ast_1_1_slice_expression_node.html#a4beb1640ee6ec149d069b246447a3d1b',1,'jmespath::ast::SliceExpressionNode']]], + ['infofunctionname',['InfoFunctionName',['../group__error__info.html#gafcd4625404b11d9408560aac4edcea02',1,'jmespath']]], + ['infosearchexpression',['InfoSearchExpression',['../group__error__info.html#ga30e12ff4caf9281023481c7b7920e7d7',1,'jmespath']]], + ['infosyntaxerrorlocation',['InfoSyntaxErrorLocation',['../group__error__info.html#gaabc448e7bd9f6a57cd2f3889850f8c55',1,'jmespath']]], + ['iteratortype',['IteratorType',['../classjmespath_1_1parser_1_1_parser.html#af8b6d33cc193b4a0c5a044e220af8c4c',1,'jmespath::parser::Parser']]] +]; diff --git a/search/typedefs_6.html b/search/typedefs_6.html new file mode 100644 index 0000000..25d6aef --- /dev/null +++ b/search/typedefs_6.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/typedefs_6.js b/search/typedefs_6.js new file mode 100644 index 0000000..7c6f4c7 --- /dev/null +++ b/search/typedefs_6.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['json',['Json',['../namespacejmespath.html#a6fbd10116b7258d0ca24137ff82ce9fe',1,'jmespath']]], + ['jsoncomparator',['JsonComparator',['../classjmespath_1_1interpreter_1_1_interpreter.html#aa03e0830b5f46d8f821ea44d5862089b',1,'jmespath::interpreter::Interpreter']]], + ['jsonref',['JsonRef',['../namespacejmespath_1_1interpreter.html#aa99ccdfcaabe43e5762b22741b23b444',1,'jmespath::interpreter']]] +]; diff --git a/search/typedefs_7.html b/search/typedefs_7.html new file mode 100644 index 0000000..77c1930 --- /dev/null +++ b/search/typedefs_7.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/typedefs_7.js b/search/typedefs_7.js new file mode 100644 index 0000000..b1da560 --- /dev/null +++ b/search/typedefs_7.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['keyvaluepairtype',['KeyValuePairType',['../classjmespath_1_1ast_1_1_multiselect_hash_node.html#a293dcf9375c47aaeb6e8ba39981a94f5',1,'jmespath::ast::MultiselectHashNode']]] +]; diff --git a/search/typedefs_8.html b/search/typedefs_8.html new file mode 100644 index 0000000..9ed4ee3 --- /dev/null +++ b/search/typedefs_8.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/typedefs_8.js b/search/typedefs_8.js new file mode 100644 index 0000000..6202286 --- /dev/null +++ b/search/typedefs_8.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['result_5ftype',['result_type',['../classjmespath_1_1parser_1_1_append_escape_sequence_action.html#a4fae13b5272f029b2d8ac353451531cc',1,'jmespath::parser::AppendEscapeSequenceAction::result_type()'],['../classjmespath_1_1parser_1_1_append_utf8_action.html#a33fd88a95e54eb63975476f997bdd9a9',1,'jmespath::parser::AppendUtf8Action::result_type()'],['../classjmespath_1_1parser_1_1_encode_surrogate_pair_action.html#a6de9d134a4d29da9fedfe6454ce7d834',1,'jmespath::parser::EncodeSurrogatePairAction::result_type()'],['../classjmespath_1_1parser_1_1_insert_node_action.html#a52fc8cdc7ade7d53bff40c2239a18cfa',1,'jmespath::parser::InsertNodeAction::result_type()'],['../classjmespath_1_1parser_1_1_node_insert_condition.html#a29e020262f4e3e3a99e53299a9bffc8f',1,'jmespath::parser::NodeInsertCondition::result_type()'],['../classjmespath_1_1parser_1_1_node_insert_policy.html#a72e7dc410c49d137cec82d477130432e',1,'jmespath::parser::NodeInsertPolicy::result_type()']]], + ['resulttype',['ResultType',['../classjmespath_1_1parser_1_1_parser.html#a2b30cf7e3f1471212d87cdd40197394e',1,'jmespath::parser::Parser']]] +]; diff --git a/search/typedefs_9.html b/search/typedefs_9.html new file mode 100644 index 0000000..83eeb27 --- /dev/null +++ b/search/typedefs_9.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/typedefs_9.js b/search/typedefs_9.js new file mode 100644 index 0000000..de6bae9 --- /dev/null +++ b/search/typedefs_9.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['string',['String',['../namespacejmespath.html#ab178b37f05f638534caa4d585b767dfa',1,'jmespath']]], + ['stringiteratoradaptor',['StringIteratorAdaptor',['../namespacejmespath.html#ac2f18d8bf73fe1cdb5d72ab9e3765256',1,'jmespath']]] +]; diff --git a/search/typedefs_a.html b/search/typedefs_a.html new file mode 100644 index 0000000..6e5cb06 --- /dev/null +++ b/search/typedefs_a.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/typedefs_a.js b/search/typedefs_a.js new file mode 100644 index 0000000..ccf13d3 --- /dev/null +++ b/search/typedefs_a.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['unicodechar',['UnicodeChar',['../namespacejmespath.html#a0e5eb6047dedbe647b4a69021d6193e7',1,'jmespath']]], + ['unicodeiteratoradaptor',['UnicodeIteratorAdaptor',['../namespacejmespath.html#a041615dd23e73a1e8bd7661d2355843b',1,'jmespath']]], + ['unicodestring',['UnicodeString',['../namespacejmespath.html#ad594dcfde4a9039a84292e1ff0ed1104',1,'jmespath']]] +]; diff --git a/search/typedefs_b.html b/search/typedefs_b.html new file mode 100644 index 0000000..f4efd76 --- /dev/null +++ b/search/typedefs_b.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/typedefs_b.js b/search/typedefs_b.js new file mode 100644 index 0000000..b883353 --- /dev/null +++ b/search/typedefs_b.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['valuetype',['ValueType',['../classjmespath_1_1ast_1_1_variant_node.html#a9d5cd63bbec7fd4adcd197a9e367a82f',1,'jmespath::ast::VariantNode']]] +]; diff --git a/search/variables_0.html b/search/variables_0.html new file mode 100644 index 0000000..1b8adc9 --- /dev/null +++ b/search/variables_0.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_0.js b/search/variables_0.js new file mode 100644 index 0000000..9bc4b8d --- /dev/null +++ b/search/variables_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['arguments',['arguments',['../classjmespath_1_1ast_1_1_function_expression_node.html#ab930aed9fdf3374b1dc6a313a8937224',1,'jmespath::ast::FunctionExpressionNode']]] +]; diff --git a/search/variables_1.html b/search/variables_1.html new file mode 100644 index 0000000..78f63cd --- /dev/null +++ b/search/variables_1.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_1.js b/search/variables_1.js new file mode 100644 index 0000000..00ca862 --- /dev/null +++ b/search/variables_1.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['bracketspecifier',['bracketSpecifier',['../classjmespath_1_1ast_1_1_index_expression_node.html#a09e0daed81a1e77f51396200ce0d1863',1,'jmespath::ast::IndexExpressionNode']]] +]; diff --git a/search/variables_2.html b/search/variables_2.html new file mode 100644 index 0000000..ea80d20 --- /dev/null +++ b/search/variables_2.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_2.js b/search/variables_2.js new file mode 100644 index 0000000..6b10c71 --- /dev/null +++ b/search/variables_2.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['comparator',['comparator',['../classjmespath_1_1ast_1_1_comparator_expression_node.html#a25b1f607d654b2ef3565dd5c5fae5d4c',1,'jmespath::ast::ComparatorExpressionNode']]] +]; diff --git a/search/variables_3.html b/search/variables_3.html new file mode 100644 index 0000000..0dca26f --- /dev/null +++ b/search/variables_3.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_3.js b/search/variables_3.js new file mode 100644 index 0000000..bce6240 --- /dev/null +++ b/search/variables_3.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['expression',['expression',['../classjmespath_1_1ast_1_1_expression_argument_node.html#ad8854d9c8bfd577a9e93d96be679d6ae',1,'jmespath::ast::ExpressionArgumentNode::expression()'],['../classjmespath_1_1ast_1_1_filter_expression_node.html#ac4827008e602b290f86e16e42169d0fa',1,'jmespath::ast::FilterExpressionNode::expression()'],['../classjmespath_1_1ast_1_1_not_expression_node.html#a912a9e5b36fa8cb554d19f77864ecc6e',1,'jmespath::ast::NotExpressionNode::expression()'],['../classjmespath_1_1ast_1_1_paren_expression_node.html#accc751603b2141a91a2a4c32a5b6c8d1',1,'jmespath::ast::ParenExpressionNode::expression()']]], + ['expressions',['expressions',['../classjmespath_1_1ast_1_1_multiselect_hash_node.html#a5359fa2bb9aea26cdbb2e60f172da813',1,'jmespath::ast::MultiselectHashNode::expressions()'],['../classjmespath_1_1ast_1_1_multiselect_list_node.html#a66d72f7b4a71a0807a6f904df1dda832',1,'jmespath::ast::MultiselectListNode::expressions()']]] +]; diff --git a/search/variables_4.html b/search/variables_4.html new file mode 100644 index 0000000..400e8e9 --- /dev/null +++ b/search/variables_4.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_4.js b/search/variables_4.js new file mode 100644 index 0000000..3abb0cc --- /dev/null +++ b/search/variables_4.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['functionname',['functionName',['../classjmespath_1_1ast_1_1_function_expression_node.html#a2d826658d25a5be63b44dfb3538e25cf',1,'jmespath::ast::FunctionExpressionNode']]] +]; diff --git a/search/variables_5.html b/search/variables_5.html new file mode 100644 index 0000000..7f1241f --- /dev/null +++ b/search/variables_5.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_5.js b/search/variables_5.js new file mode 100644 index 0000000..35992a2 --- /dev/null +++ b/search/variables_5.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['identifier',['identifier',['../classjmespath_1_1ast_1_1_identifier_node.html#a9429e81596a8b8814c01c58330d6639f',1,'jmespath::ast::IdentifierNode']]], + ['index',['index',['../classjmespath_1_1ast_1_1_array_item_node.html#a26bf60a36dfafc5a94fd42b67bdeaabe',1,'jmespath::ast::ArrayItemNode']]] +]; diff --git a/search/variables_6.html b/search/variables_6.html new file mode 100644 index 0000000..7536df8 --- /dev/null +++ b/search/variables_6.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_6.js b/search/variables_6.js new file mode 100644 index 0000000..652a1ee --- /dev/null +++ b/search/variables_6.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['leftexpression',['leftExpression',['../classjmespath_1_1ast_1_1_binary_expression_node.html#aaaa649eaaea0c4877a4c76298f9791a8',1,'jmespath::ast::BinaryExpressionNode']]], + ['literal',['literal',['../classjmespath_1_1ast_1_1_literal_node.html#abf770d1eeff3d64d5a4f1988a9e3485a',1,'jmespath::ast::LiteralNode']]] +]; diff --git a/search/variables_7.html b/search/variables_7.html new file mode 100644 index 0000000..66186a6 --- /dev/null +++ b/search/variables_7.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_7.js b/search/variables_7.js new file mode 100644 index 0000000..1c0459a --- /dev/null +++ b/search/variables_7.js @@ -0,0 +1,57 @@ +var searchData= +[ + ['m_5fandexpressionrule',['m_andExpressionRule',['../classjmespath_1_1parser_1_1_grammar.html#a4bae60238a60666c89342969e58c04ce',1,'jmespath::parser::Grammar']]], + ['m_5farrayitemrule',['m_arrayItemRule',['../classjmespath_1_1parser_1_1_grammar.html#a2b854507d22b7e00cdf822980d3f7613',1,'jmespath::parser::Grammar']]], + ['m_5fastroot',['m_astRoot',['../group__public.html#aa6be50285213e0f4c26a59b08e99cc70',1,'jmespath::Expression']]], + ['m_5fbracketspecifierrule',['m_bracketSpecifierRule',['../classjmespath_1_1parser_1_1_grammar.html#ad9288475f2f3c89c8fbe164adfe671ba',1,'jmespath::parser::Grammar']]], + ['m_5fchildextractor',['m_childExtractor',['../classjmespath_1_1parser_1_1_left_edge_iterator.html#a1cc094cfc22e758862b1286cca4a59c0',1,'jmespath::parser::LeftEdgeIterator']]], + ['m_5fcomparatorexpressionrule',['m_comparatorExpressionRule',['../classjmespath_1_1parser_1_1_grammar.html#ac787e63a36381337e69d0dd72cc4c000',1,'jmespath::parser::Grammar']]], + ['m_5fcomparatorsymbols',['m_comparatorSymbols',['../classjmespath_1_1parser_1_1_grammar.html#a0e4d2807f511eba2eb19f3f20d93bb9c',1,'jmespath::parser::Grammar']]], + ['m_5fcontext',['m_context',['../classjmespath_1_1interpreter_1_1_interpreter.html#a37f9e546e6904209393d869e55ca1b2d',1,'jmespath::interpreter::Interpreter']]], + ['m_5fcontrolcharactersymbols',['m_controlCharacterSymbols',['../classjmespath_1_1parser_1_1_grammar.html#af10b0545aca507b336cf24d9c9dac932',1,'jmespath::parser::Grammar']]], + ['m_5fcurrentnoderule',['m_currentNodeRule',['../classjmespath_1_1parser_1_1_grammar.html#a9854d5dcf219cd10b1a1f1d874f6d575',1,'jmespath::parser::Grammar']]], + ['m_5fescapedcharrule',['m_escapedCharRule',['../classjmespath_1_1parser_1_1_grammar.html#a005148709648c411312d16085d3143a1',1,'jmespath::parser::Grammar']]], + ['m_5fescaperule',['m_escapeRule',['../classjmespath_1_1parser_1_1_grammar.html#a2854947d9b1b48668a12e9964c49d0ca',1,'jmespath::parser::Grammar']]], + ['m_5fexpressionargumentrule',['m_expressionArgumentRule',['../classjmespath_1_1parser_1_1_grammar.html#aa345e0cd4917e9fe3e189b83116e6a79',1,'jmespath::parser::Grammar']]], + ['m_5fexpressionrule',['m_expressionRule',['../classjmespath_1_1parser_1_1_grammar.html#a8b5d307cf42d025c8c284022fa726e74',1,'jmespath::parser::Grammar']]], + ['m_5fexpressionstring',['m_expressionString',['../group__public.html#a6ad33240a1cfec8c8dfd1c1100ff2974',1,'jmespath::Expression']]], + ['m_5ffilterexpressionrule',['m_filterExpressionRule',['../classjmespath_1_1parser_1_1_grammar.html#a4585ec2bf895bdcfd7f3573dde894d9d',1,'jmespath::parser::Grammar']]], + ['m_5fflattenoperatorrule',['m_flattenOperatorRule',['../classjmespath_1_1parser_1_1_grammar.html#a357bc70d7c7e1e0c076c7cec7c3fc1dd',1,'jmespath::parser::Grammar']]], + ['m_5ffunctionargumentlistrule',['m_functionArgumentListRule',['../classjmespath_1_1parser_1_1_grammar.html#ac80a05f16fe210c946fbb26ee892ca16',1,'jmespath::parser::Grammar']]], + ['m_5ffunctionargumentrule',['m_functionArgumentRule',['../classjmespath_1_1parser_1_1_grammar.html#a4331b62abe804aa163d70c96cb795832',1,'jmespath::parser::Grammar']]], + ['m_5ffunctionexpressionrule',['m_functionExpressionRule',['../classjmespath_1_1parser_1_1_grammar.html#a191b6bede44a64f680e9b21cea456b69',1,'jmespath::parser::Grammar']]], + ['m_5ffunctionmap',['m_functionMap',['../classjmespath_1_1interpreter_1_1_interpreter.html#a7aca42bfb5d4d01952076acccd1f0914',1,'jmespath::interpreter::Interpreter']]], + ['m_5fgrammar',['m_grammar',['../classjmespath_1_1parser_1_1_parser.html#a28adbfa70faf7345642d58ef607a14fc',1,'jmespath::parser::Parser']]], + ['m_5fhashwildcardrule',['m_hashWildcardRule',['../classjmespath_1_1parser_1_1_grammar.html#a84c5d5fa1903edbec56110d42daaa4da',1,'jmespath::parser::Grammar']]], + ['m_5fhashwildcardsubexpressionrule',['m_hashWildcardSubexpressionRule',['../classjmespath_1_1parser_1_1_grammar.html#a2019dc10c77360fa285a30659a1a17dc',1,'jmespath::parser::Grammar']]], + ['m_5fidentifierrule',['m_identifierRule',['../classjmespath_1_1parser_1_1_grammar.html#af08b345d1514ca78c52320a550e24bab',1,'jmespath::parser::Grammar']]], + ['m_5findexexpressionrule',['m_indexExpressionRule',['../classjmespath_1_1parser_1_1_grammar.html#afbc75ff41ea5b9ec6b3a7460bf1366cc',1,'jmespath::parser::Grammar']]], + ['m_5findexrule',['m_indexRule',['../classjmespath_1_1parser_1_1_grammar.html#a7408d8b17f1a0c78136dcb082c6f612f',1,'jmespath::parser::Grammar']]], + ['m_5finsertcondition',['m_insertCondition',['../classjmespath_1_1parser_1_1_insert_node_action.html#a4b223359791ae3058b1f5fa5d06bab04',1,'jmespath::parser::InsertNodeAction']]], + ['m_5fkeyvaluepairrule',['m_keyValuePairRule',['../classjmespath_1_1parser_1_1_grammar.html#a57bdad936db4256ace17db6dc6071f93',1,'jmespath::parser::Grammar']]], + ['m_5flistwildcardrule',['m_listWildcardRule',['../classjmespath_1_1parser_1_1_grammar.html#a02b65b8c5833024f27a3c287974edfd9',1,'jmespath::parser::Grammar']]], + ['m_5fliteralcharrule',['m_literalCharRule',['../classjmespath_1_1parser_1_1_grammar.html#a7217e0e58ed7f290e5f040a4c7b6cca5',1,'jmespath::parser::Grammar']]], + ['m_5fliteralescaperule',['m_literalEscapeRule',['../classjmespath_1_1parser_1_1_grammar.html#a8e8ef35677fbbf1973ea3b50c135c121',1,'jmespath::parser::Grammar']]], + ['m_5fliteralrule',['m_literalRule',['../classjmespath_1_1parser_1_1_grammar.html#afe95cc9f5990ce355d5150035d4c32f2',1,'jmespath::parser::Grammar']]], + ['m_5fmultiselecthashrule',['m_multiselectHashRule',['../classjmespath_1_1parser_1_1_grammar.html#a3a29c351459793c284734fbde8f3df7f',1,'jmespath::parser::Grammar']]], + ['m_5fmultiselectlistrule',['m_multiselectListRule',['../classjmespath_1_1parser_1_1_grammar.html#a3e6224c29d28fcd7b4c7d640512e4048',1,'jmespath::parser::Grammar']]], + ['m_5fnode',['m_node',['../classjmespath_1_1parser_1_1_left_edge_iterator.html#a6b161822ec783759e448e8f6684a17e7',1,'jmespath::parser::LeftEdgeIterator']]], + ['m_5fnodeinserter',['m_nodeInserter',['../classjmespath_1_1parser_1_1_insert_node_action.html#a890dd17e954f5ae81109393f892213b1',1,'jmespath::parser::InsertNodeAction']]], + ['m_5fnotexpressionrule',['m_notExpressionRule',['../classjmespath_1_1parser_1_1_grammar.html#aa78e5929ee821f859008dd844bb3d4d6',1,'jmespath::parser::Grammar']]], + ['m_5forexpressionrule',['m_orExpressionRule',['../classjmespath_1_1parser_1_1_grammar.html#a1f1ff03d0ed1f7415725eff1a396bc7b',1,'jmespath::parser::Grammar']]], + ['m_5fparenexpressionrule',['m_parenExpressionRule',['../classjmespath_1_1parser_1_1_grammar.html#a3dcbcc90fcec3e212495fb26e8d08f5b',1,'jmespath::parser::Grammar']]], + ['m_5fpipeexpressionrule',['m_pipeExpressionRule',['../classjmespath_1_1parser_1_1_grammar.html#a2f1f8d0e6edb1b7bf917cb005ad0a535',1,'jmespath::parser::Grammar']]], + ['m_5fquotedstringrule',['m_quotedStringRule',['../classjmespath_1_1parser_1_1_grammar.html#a9376d78c53934c5b77fe4bac65abd5af',1,'jmespath::parser::Grammar']]], + ['m_5fquoterule',['m_quoteRule',['../classjmespath_1_1parser_1_1_grammar.html#a7054cd7a19e41f7e1829b2523c21f52b',1,'jmespath::parser::Grammar']]], + ['m_5frawstringcharrule',['m_rawStringCharRule',['../classjmespath_1_1parser_1_1_grammar.html#a7ec9cacc1526f7a5b7e37ca306f4471e',1,'jmespath::parser::Grammar']]], + ['m_5frawstringescaperule',['m_rawStringEscapeRule',['../classjmespath_1_1parser_1_1_grammar.html#a8b2e07b372e9b91d2f63f486e653d1a9',1,'jmespath::parser::Grammar']]], + ['m_5frawstringrule',['m_rawStringRule',['../classjmespath_1_1parser_1_1_grammar.html#add5865f4affe149d2bbb029a96551204',1,'jmespath::parser::Grammar']]], + ['m_5fsliceexpressionrule',['m_sliceExpressionRule',['../classjmespath_1_1parser_1_1_grammar.html#ac153c2b91efbc93c598a1f3cc9161ac0',1,'jmespath::parser::Grammar']]], + ['m_5fsubexpressionrule',['m_subexpressionRule',['../classjmespath_1_1parser_1_1_grammar.html#ad46a08f4c85caac6049521ad1604b3dc',1,'jmespath::parser::Grammar']]], + ['m_5fsurrogatepaircharacterrule',['m_surrogatePairCharacterRule',['../classjmespath_1_1parser_1_1_grammar.html#a3cea8d5c31fbbe0156aa8d585878ba3d',1,'jmespath::parser::Grammar']]], + ['m_5ftoplevelexpressionrule',['m_topLevelExpressionRule',['../classjmespath_1_1parser_1_1_grammar.html#a570fbfabd73c7285be61bc9d728ffc22',1,'jmespath::parser::Grammar']]], + ['m_5funescapedcharrule',['m_unescapedCharRule',['../classjmespath_1_1parser_1_1_grammar.html#ae950edbd2dba98d90fdf5f8a85cb3211',1,'jmespath::parser::Grammar']]], + ['m_5funicodecharrule',['m_unicodeCharRule',['../classjmespath_1_1parser_1_1_grammar.html#a3a4b4b73810d63fd529a48a1e7002ec8',1,'jmespath::parser::Grammar']]], + ['m_5funquotedstringrule',['m_unquotedStringRule',['../classjmespath_1_1parser_1_1_grammar.html#aa04b82517349f1e2b202e0d6f888e970',1,'jmespath::parser::Grammar']]], + ['m_5fvisitor',['m_visitor',['../classjmespath_1_1ast_1_1_variant_visitor_adaptor.html#a30a5005b64faf22155d0d6e169dc5074',1,'jmespath::ast::VariantVisitorAdaptor::m_visitor()'],['../classjmespath_1_1interpreter_1_1_context_value_visitor_adaptor.html#a5b9e59f9a08b02367656a41d365d6e78',1,'jmespath::interpreter::ContextValueVisitorAdaptor::m_visitor()']]] +]; diff --git a/search/variables_8.html b/search/variables_8.html new file mode 100644 index 0000000..aa13bf2 --- /dev/null +++ b/search/variables_8.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_8.js b/search/variables_8.js new file mode 100644 index 0000000..7e5054c --- /dev/null +++ b/search/variables_8.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['rawstring',['rawString',['../classjmespath_1_1ast_1_1_raw_string_node.html#afac0d2bc770db4fba5e856c3a1d3b6d3',1,'jmespath::ast::RawStringNode']]], + ['rightexpression',['rightExpression',['../classjmespath_1_1ast_1_1_binary_expression_node.html#a98bc4e3d2605413fc3f750af7b896abb',1,'jmespath::ast::BinaryExpressionNode']]] +]; diff --git a/search/variables_9.html b/search/variables_9.html new file mode 100644 index 0000000..78cc249 --- /dev/null +++ b/search/variables_9.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_9.js b/search/variables_9.js new file mode 100644 index 0000000..aff5c76 --- /dev/null +++ b/search/variables_9.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['start',['start',['../classjmespath_1_1ast_1_1_slice_expression_node.html#aebcc622ffeb5d48ea37164db576af234',1,'jmespath::ast::SliceExpressionNode']]], + ['step',['step',['../classjmespath_1_1ast_1_1_slice_expression_node.html#a1e4d27f4875e42addb62dabb62776846',1,'jmespath::ast::SliceExpressionNode']]], + ['stop',['stop',['../classjmespath_1_1ast_1_1_slice_expression_node.html#a03ea56e003a1d1054e483e9deba88792',1,'jmespath::ast::SliceExpressionNode']]] +]; diff --git a/search/variables_a.html b/search/variables_a.html new file mode 100644 index 0000000..592abaa --- /dev/null +++ b/search/variables_a.html @@ -0,0 +1,26 @@ + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/search/variables_a.js b/search/variables_a.js new file mode 100644 index 0000000..0863c94 --- /dev/null +++ b/search/variables_a.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['value',['value',['../classjmespath_1_1ast_1_1_variant_node.html#a50472ad7c685d8f3f13045ec2d39da42',1,'jmespath::ast::VariantNode']]] +]; diff --git a/sliceexpressionnode_8cpp.html b/sliceexpressionnode_8cpp.html new file mode 100644 index 0000000..940d3a8 --- /dev/null +++ b/sliceexpressionnode_8cpp.html @@ -0,0 +1,115 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/sliceexpressionnode.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
sliceexpressionnode.cpp File Reference
+
+
+ + + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/sliceexpressionnode_8h.html b/sliceexpressionnode_8h.html new file mode 100644 index 0000000..a0d1ed1 --- /dev/null +++ b/sliceexpressionnode_8h.html @@ -0,0 +1,127 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/sliceexpressionnode.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
sliceexpressionnode.h File Reference
+
+
+
#include "src/ast/abstractnode.h"
+#include "jmespath/types.h"
+#include "src/interpreter/abstractvisitor.h"
+#include <boost/fusion/include/adapt_struct.hpp>
+#include <boost/optional.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::ast::SliceExpressionNode
 The SliceExpressionNode class represents a JMESPath slice expression. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/sliceexpressionnode_8h_source.html b/sliceexpressionnode_8h_source.html new file mode 100644 index 0000000..af6e5f1 --- /dev/null +++ b/sliceexpressionnode_8h_source.html @@ -0,0 +1,173 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/sliceexpressionnode.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
sliceexpressionnode.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef SLICEEXPRESSIONNODE_H
+
29 #define SLICEEXPRESSIONNODE_H
+
30 #include "src/ast/abstractnode.h"
+
31 #include "jmespath/types.h"
+ +
33 #include <boost/fusion/include/adapt_struct.hpp>
+
34 #include <boost/optional.hpp>
+
35 
+
36 namespace jmespath { namespace ast {
+
37 
+ +
42 {
+
43 public:
+
44  using IndexType = boost::optional<Index>;
+
52  SliceExpressionNode(const IndexType& startIndex = boost::none,
+
53  const IndexType& stopIndex = boost::none,
+
54  const IndexType& stepIndex = boost::none);
+
60  void accept(interpreter::AbstractVisitor* visitor) const override;
+
67  bool operator==(const SliceExpressionNode& other) const;
+ + + +
80 };
+
81 }} // namespace jmespath::ast
+
82 
+
83 BOOST_FUSION_ADAPT_STRUCT(
+ + + + +
88 )
+
89 #endif // SLICEEXPRESSIONNODE_H
+ +
boost::optional< Index > IndexType
Definition: sliceexpressionnode.h:44
+
The SliceExpressionNode class represents a JMESPath slice expression.
Definition: sliceexpressionnode.h:41
+
IndexType step
Step index.
Definition: sliceexpressionnode.h:79
+
bool operator==(const SliceExpressionNode &other) const
Equality compares this node to the other.
Definition: sliceexpressionnode.cpp:48
+
IndexType start
Inclusive start index.
Definition: sliceexpressionnode.h:71
+ +
void accept(interpreter::AbstractVisitor *visitor) const override
Calls the visit method of the given visitor with the dynamic type of the node.
Definition: sliceexpressionnode.cpp:43
+
SliceExpressionNode(const IndexType &startIndex=boost::none, const IndexType &stopIndex=boost::none, const IndexType &stepIndex=boost::none)
Constructs a SliceExpressionNode object with the given index values.
Definition: sliceexpressionnode.cpp:33
+
The AbstractVisitor class is an interface which defines the member functions required to visit every ...
Definition: abstractvisitor.h:71
+ +
IndexType stop
Exclusive end index.
Definition: sliceexpressionnode.h:75
+
The AbstractNode class is the common interface class for all AST node types.
Definition: abstractnode.h:45
+
+ + + + diff --git a/structjmespath_1_1_expression_1_1_expression_deleter-members.html b/structjmespath_1_1_expression_1_1_expression_deleter-members.html new file mode 100644 index 0000000..8ab5f79 --- /dev/null +++ b/structjmespath_1_1_expression_1_1_expression_deleter-members.html @@ -0,0 +1,108 @@ + + + + + + +jmespath.cpp: Member List + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
jmespath::Expression::ExpressionDeleter Member List
+
+
+ +

This is the complete list of members for jmespath::Expression::ExpressionDeleter, including all inherited members.

+ + +
operator()(ast::ExpressionNode *node) const jmespath::Expression::ExpressionDeleter
+ + + + diff --git a/structjmespath_1_1_expression_1_1_expression_deleter.html b/structjmespath_1_1_expression_1_1_expression_deleter.html new file mode 100644 index 0000000..da91a82 --- /dev/null +++ b/structjmespath_1_1_expression_1_1_expression_deleter.html @@ -0,0 +1,149 @@ + + + + + + +jmespath.cpp: jmespath::Expression::ExpressionDeleter Struct Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
jmespath::Expression::ExpressionDeleter Struct Reference
+
+
+ +

The ExpressionDeleter struct is a custom destruction policy for deleting ast::ExpressionNode objects. + More...

+ + + + + +

+Public Member Functions

void operator() (ast::ExpressionNode *node) const
 operator () Destroys the given node object. More...
 
+

Detailed Description

+

The ExpressionDeleter struct is a custom destruction policy for deleting ast::ExpressionNode objects.

+

Unlike std::default_deleter it can be used to delete forward declared ast::ExpressionNode.

+

Member Function Documentation

+ +
+
+ + + + + + + + +
void jmespath::Expression::ExpressionDeleter::operator() (ast::ExpressionNodenode) const
+
+ +

operator () Destroys the given node object.

+
Parameters
+ + +
nodeAn instance of ast::ExpressionNode
+
+
+ +
+
+
The documentation for this struct was generated from the following files:
    +
  • /home/travis/build/robertmrk/jmespath.cpp/include/jmespath/expression.h
  • +
  • /home/travis/build/robertmrk/jmespath.cpp/src/expression.cpp
  • +
+
+ + + + diff --git a/subexpressionnode_8cpp.html b/subexpressionnode_8cpp.html new file mode 100644 index 0000000..dc504b0 --- /dev/null +++ b/subexpressionnode_8cpp.html @@ -0,0 +1,114 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/subexpressionnode.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
subexpressionnode.cpp File Reference
+
+
+
#include "src/ast/allnodes.h"
+
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/subexpressionnode_8h.html b/subexpressionnode_8h.html new file mode 100644 index 0000000..a3dc37c --- /dev/null +++ b/subexpressionnode_8h.html @@ -0,0 +1,123 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/subexpressionnode.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
subexpressionnode.h File Reference
+
+
+ +

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::ast::SubexpressionNode
 The SubexpressionNode class represents a JMESPath subexpression. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/subexpressionnode_8h_source.html b/subexpressionnode_8h_source.html new file mode 100644 index 0000000..a57f09d --- /dev/null +++ b/subexpressionnode_8h_source.html @@ -0,0 +1,158 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/subexpressionnode.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
subexpressionnode.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef SUBEXPRESSIONNODE_H
+
29 #define SUBEXPRESSIONNODE_H
+ +
31 
+
32 namespace jmespath { namespace ast {
+
33 
+ +
38 {
+
39 public:
+ +
50  SubexpressionNode(const ExpressionNode& expression,
+
51  const ExpressionNode& subexpression = {});
+
57  bool isProjection() const override;
+
64  bool stopsProjection() const override;
+
65 };
+
66 }} // namespace jmespath::ast
+
67 
+
68 BOOST_FUSION_ADAPT_STRUCT(
+ +
70  (jmespath::ast::ExpressionNode, leftExpression)
+
71  (jmespath::ast::ExpressionNode, rightExpression)
+
72 )
+
73 #endif // SUBEXPRESSIONNODE_H
+ +
SubexpressionNode()
Constructs an empty SubexpressionNode object.
Definition: subexpressionnode.cpp:32
+
The BinaryExpressionNode class is the base class for all node types which consist of a left and a rig...
Definition: binaryexpressionnode.h:39
+
The SubexpressionNode class represents a JMESPath subexpression.
Definition: subexpressionnode.h:37
+
The ExpressionNode class represents a JMESPath expression.
Definition: expressionnode.h:56
+
bool isProjection() const override
Returns whather this expression requires the projection of subsequent expressions.
Definition: subexpressionnode.cpp:43
+
bool stopsProjection() const override
Reports whether the node should stop an ongoing projection or not.
Definition: subexpressionnode.cpp:48
+
+ + + + diff --git a/sync_off.png b/sync_off.png new file mode 100644 index 0000000000000000000000000000000000000000..3b443fc62892114406e3d399421b2a881b897acc GIT binary patch literal 853 zcmV-b1FHOqP)oT|#XixUYy%lpuf3i8{fX!o zUyDD0jOrAiT^tq>fLSOOABs-#u{dV^F$b{L9&!2=9&RmV;;8s^x&UqB$PCj4FdKbh zoB1WTskPUPu05XzFbA}=KZ-GP1fPpAfSs>6AHb12UlR%-i&uOlTpFNS7{jm@mkU1V zh`nrXr~+^lsV-s1dkZOaI|kYyVj3WBpPCY{n~yd%u%e+d=f%`N0FItMPtdgBb@py; zq@v6NVArhyTC7)ULw-Jy8y42S1~4n(3LkrW8mW(F-4oXUP3E`e#g**YyqI7h-J2zK zK{m9##m4ri!7N>CqQqCcnI3hqo1I;Yh&QLNY4T`*ptiQGozK>FF$!$+84Z`xwmeMh zJ0WT+OH$WYFALEaGj2_l+#DC3t7_S`vHpSivNeFbP6+r50cO8iu)`7i%Z4BTPh@_m3Tk!nAm^)5Bqnr%Ov|Baunj#&RPtRuK& z4RGz|D5HNrW83-#ydk}tVKJrNmyYt-sTxLGlJY5nc&Re zU4SgHNPx8~Yxwr$bsju?4q&%T1874xxzq+_%?h8_ofw~(bld=o3iC)LUNR*BY%c0y zWd_jX{Y8`l%z+ol1$@Qa?Cy!(0CVIEeYpKZ`(9{z>3$CIe;pJDQk$m3p}$>xBm4lb zKo{4S)`wdU9Ba9jJbVJ0C=SOefZe%d$8=2r={nu<_^a3~>c#t_U6dye5)JrR(_a^E f@}b6j1K9lwFJq@>o)+Ry00000NkvXXu0mjfWa5j* literal 0 HcmV?d00001 diff --git a/sync_on.png b/sync_on.png new file mode 100644 index 0000000000000000000000000000000000000000..e08320fb64e6fa33b573005ed6d8fe294e19db76 GIT binary patch literal 845 zcmV-T1G4;yP)Y;xxyHF2B5Wzm| zOOGupOTn@c(JmBOl)e;XMNnZuiTJP>rM8<|Q`7I_))aP?*T)ow&n59{}X4$3Goat zgjs?*aasfbrokzG5cT4K=uG`E14xZl@z)F={P0Y^?$4t z>v!teRnNZym<6h{7sLyF1V0HsfEl+l6TrZpsfr1}luH~F7L}ktXu|*uVX^RG$L0`K zWs3j|0tIvVe(N%_?2{(iCPFGf#B6Hjy6o&}D$A%W%jfO8_W%ZO#-mh}EM$LMn7joJ z05dHr!5Y92g+31l<%i1(=L1a1pXX+OYnalY>31V4K}BjyRe3)9n#;-cCVRD_IG1fT zOKGeNY8q;TL@K{dj@D^scf&VCs*-Jb>8b>|`b*osv52-!A?BpbYtTQBns5EAU**$m zSnVSm(teh>tQi*S*A>#ySc=n;`BHz`DuG4&g4Kf8lLhca+zvZ7t7RflD6-i-mcK=M z!=^P$*u2)bkY5asG4gsss!Hn%u~>}kIW`vMs%lJLH+u*9<4PaV_c6U`KqWXQH%+Nu zTv41O(^ZVi@qhjQdG!fbZw&y+2o!iYymO^?ud3{P*HdoX83YV*Uu_HB=?U&W9%AU# z80}k1SS-CXTU7dcQlsm<^oYLxVSseqY6NO}dc`Nj?8vrhNuCdm@^{a3AQ_>6myOj+ z`1RsLUXF|dm|3k7s2jD(B{rzE>WI2scH8i1;=O5Cc9xB3^aJk%fQjqsu+kH#0=_5a z0nCE8@dbQa-|YIuUVvG0L_IwHMEhOj$Mj4Uq05 X8=0q~qBNan00000NkvXXu0mjfptF>5 literal 0 HcmV?d00001 diff --git a/tab_a.png b/tab_a.png new file mode 100644 index 0000000000000000000000000000000000000000..3b725c41c5a527a3a3e40097077d0e206a681247 GIT binary patch literal 142 zcmeAS@N?(olHy`uVBq!ia0vp^j6kfy!2~3aiye;!QlXwMjv*C{Z|8b*H5dputLHD# z=<0|*y7z(Vor?d;H&?EG&cXR}?!j-Lm&u1OOI7AIF5&c)RFE;&p0MYK>*Kl@eiymD r@|NpwKX@^z+;{u_Z~trSBfrMKa%3`zocFjEXaR$#tDnm{r-UW|TZ1%4 literal 0 HcmV?d00001 diff --git a/tab_b.png b/tab_b.png new file mode 100644 index 0000000000000000000000000000000000000000..e2b4a8638cb3496a016eaed9e16ffc12846dea18 GIT binary patch literal 169 zcmeAS@N?(olHy`uVBq!ia0vp^j6kfy!2~3aiye;!QU#tajv*C{Z}0l@H7kg?K0Lnr z!j&C6_(~HV9oQ0Pa6x{-v0AGV_E?vLn=ZI-;YrdjIl`U`uzuDWSP?o#Dmo{%SgM#oan kX~E1%D-|#H#QbHoIja2U-MgvsK&LQxy85}Sb4q9e0Efg%P5=M^ literal 0 HcmV?d00001 diff --git a/tabs.css b/tabs.css new file mode 100644 index 0000000..9cf578f --- /dev/null +++ b/tabs.css @@ -0,0 +1,60 @@ +.tabs, .tabs2, .tabs3 { + background-image: url('tab_b.png'); + width: 100%; + z-index: 101; + font-size: 13px; + font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; +} + +.tabs2 { + font-size: 10px; +} +.tabs3 { + font-size: 9px; +} + +.tablist { + margin: 0; + padding: 0; + display: table; +} + +.tablist li { + float: left; + display: table-cell; + background-image: url('tab_b.png'); + line-height: 36px; + list-style: none; +} + +.tablist a { + display: block; + padding: 0 20px; + font-weight: bold; + background-image:url('tab_s.png'); + background-repeat:no-repeat; + background-position:right; + color: #283A5D; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; + outline: none; +} + +.tabs3 .tablist a { + padding: 0 10px; +} + +.tablist a:hover { + background-image: url('tab_h.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); + text-decoration: none; +} + +.tablist li.current a { + background-image: url('tab_a.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +} diff --git a/types_8h.html b/types_8h.html new file mode 100644 index 0000000..06d20f8 --- /dev/null +++ b/types_8h.html @@ -0,0 +1,145 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/include/jmespath/types.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
types.h File Reference
+
+
+
#include <string>
+#include <limits>
+#include <boost/regex/pending/unicode_iterator.hpp>
+#include <boost/multiprecision/cpp_int.hpp>
+#include <nlohmann/json.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Typedefs

using jmespath::Char = char
 8 bit character type More...
 
using jmespath::String = std::basic_string< Char >
 UTF-8 encoded string type. More...
 
using jmespath::UnicodeChar = char32_t
 32 bit character type More...
 
using jmespath::UnicodeString = std::basic_string< UnicodeChar >
 UTF-32 encoded string type. More...
 
using jmespath::UnicodeIteratorAdaptor = boost::u8_to_u32_iterator< String::const_iterator >
 UTF-32 string iterator adaptor. More...
 
using jmespath::StringIteratorAdaptor = boost::u32_to_u8_iterator< UnicodeString::const_iterator >
 UTF-8 string iterator adaptor. More...
 
using jmespath::Json = nlohmann::json
 JSON data type. More...
 
using jmespath::Index = boost::multiprecision::number< boost::multiprecision::cpp_int_backend< std::numeric_limits< size_t >::digits, std::numeric_limits< size_t >::digits, boost::multiprecision::signed_magnitude, boost::multiprecision::checked, void > >
 Signed integer type that can hold all values in the range of numeric_limits<size_t>::max() * -1 ... numeric_limits<size_t>::max() More...
 
+
+ + + + diff --git a/types_8h_source.html b/types_8h_source.html new file mode 100644 index 0000000..f775dd7 --- /dev/null +++ b/types_8h_source.html @@ -0,0 +1,163 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/include/jmespath/types.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
types.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef TYPES_H
+
29 #define TYPES_H
+
30 #include <string>
+
31 #include <limits>
+
32 #include <boost/regex/pending/unicode_iterator.hpp>
+
33 #include <boost/multiprecision/cpp_int.hpp>
+
34 #include <nlohmann/json.hpp>
+
35 
+
36 namespace jmespath {
+
40 using Char = char;
+
44 using String = std::basic_string<Char>;
+
48 using UnicodeChar = char32_t;
+
52 using UnicodeString = std::basic_string<UnicodeChar>;
+ +
57  = boost::u8_to_u32_iterator<String::const_iterator>;
+ +
62  = boost::u32_to_u8_iterator<UnicodeString::const_iterator>;
+
66 using Json = nlohmann::json;
+
71 using Index = boost::multiprecision::number<
+
72  boost::multiprecision::cpp_int_backend<
+
73  std::numeric_limits<size_t>::digits,
+
74  std::numeric_limits<size_t>::digits,
+
75  boost::multiprecision::signed_magnitude,
+
76  boost::multiprecision::checked,
+
77  void> >;
+
78 } // namespace jmespath
+
79 #endif // TYPES_H
+
nlohmann::json Json
JSON data type.
Definition: types.h:66
+
boost::u32_to_u8_iterator< UnicodeString::const_iterator > StringIteratorAdaptor
UTF-8 string iterator adaptor.
Definition: types.h:62
+
std::basic_string< Char > String
UTF-8 encoded string type.
Definition: types.h:44
+
boost::multiprecision::number< boost::multiprecision::cpp_int_backend< std::numeric_limits< size_t >::digits, std::numeric_limits< size_t >::digits, boost::multiprecision::signed_magnitude, boost::multiprecision::checked, void > > Index
Signed integer type that can hold all values in the range of numeric_limits<size_t>::max() * -1 ...
Definition: types.h:77
+
std::basic_string< UnicodeChar > UnicodeString
UTF-32 encoded string type.
Definition: types.h:52
+
char32_t UnicodeChar
32 bit character type
Definition: types.h:48
+
char Char
8 bit character type
Definition: types.h:40
+
boost::u8_to_u32_iterator< String::const_iterator > UnicodeIteratorAdaptor
UTF-32 string iterator adaptor.
Definition: types.h:57
+
+ + + + diff --git a/variantnode_8h.html b/variantnode_8h.html new file mode 100644 index 0000000..c7b94ab --- /dev/null +++ b/variantnode_8h.html @@ -0,0 +1,125 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/variantnode.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
variantnode.h File Reference
+
+
+
#include "src/ast/abstractnode.h"
+#include "src/ast/variantvisitoradaptor.h"
+#include <boost/variant.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::ast::VariantNode< VariantT >
 The VariantNode class serves as a container node which can represent either one of the node types specified in the classes template argument list. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/variantnode_8h_source.html b/variantnode_8h_source.html new file mode 100644 index 0000000..9415fb7 --- /dev/null +++ b/variantnode_8h_source.html @@ -0,0 +1,202 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/variantnode.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
variantnode.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef VARIANTNODE_H
+
29 #define VARIANTNODE_H
+
30 #include "src/ast/abstractnode.h"
+ +
32 #include <boost/variant.hpp>
+
33 
+
34 namespace jmespath{ namespace ast{
+
35 
+
41 template <typename ...VariantT>
+
42 class VariantNode : public AbstractNode
+
43 {
+
44 public:
+
49  using ValueType = boost::variant<boost::blank, VariantT...>;
+ +
54  : AbstractNode()
+
55  {
+
56  }
+
60  VariantNode(const VariantNode&) = default;
+
66  template <typename T>
+
67  VariantNode(const T& other)
+
68  : AbstractNode()
+
69  {
+
70  *this = other;
+
71  }
+
77  VariantNode<VariantT...>& operator=(const VariantNode& other)
+
78  {
+
79  if (this != &other)
+
80  {
+
81  value = other.value;
+
82  }
+
83  return *this;
+
84  }
+
89  template <typename T>
+
90  VariantNode<VariantT...>& operator=(const T& other)
+
91  {
+
92  value = other;
+
93  return *this;
+
94  }
+
101  bool operator==(const VariantNode& other) const
+
102  {
+
103  if (this != &other)
+
104  {
+
105  return value == other.value;
+
106  }
+
107  return true;
+
108  }
+
114  bool isNull() const
+
115  {
+
116  return value.type() == typeid(boost::blank);
+
117  }
+
118 
+
119  void accept(interpreter::AbstractVisitor *visitor) const override
+
120  {
+
121  boost::apply_visitor(VariantVisitorAdaptor(visitor), value);
+
122  }
+ +
127 };
+
128 }} // namespace jmespath::ast
+
129 #endif // VARIANTNODE_H
+
VariantNode()
Constructs an empty VariantNode object.
Definition: variantnode.h:53
+
ValueType value
The variable which stores the node that this object represents.
Definition: variantnode.h:126
+
VariantNode(const T &other)
Copy constructs a VariantNode object if T is VariantNode or constructs a VariantNode object with T as...
Definition: variantnode.h:67
+ + + +
VariantNode< VariantT...> & operator=(const T &other)
Assigns the value of the other object to this object's internal variant making it the node that this ...
Definition: variantnode.h:90
+
The AbstractVisitor class is an interface which defines the member functions required to visit every ...
Definition: abstractvisitor.h:71
+
The VariantNode class serves as a container node which can represent either one of the node types spe...
Definition: variantnode.h:42
+
bool isNull() const
Returns whether this object has been initialized.
Definition: variantnode.h:114
+
VariantNode< VariantT...> & operator=(const VariantNode &other)
Assigns the other object's value to this object.
Definition: variantnode.h:77
+
bool operator==(const VariantNode &other) const
Equality compares this node to the other.
Definition: variantnode.h:101
+
The VariantVisitorAdaptor class adapts an AbstractVisitor implementation to the boost::static_visitor...
Definition: variantvisitoradaptor.h:40
+
void accept(interpreter::AbstractVisitor *visitor) const override
Accepts the given visitor object.
Definition: variantnode.h:119
+
The AbstractNode class is the common interface class for all AST node types.
Definition: abstractnode.h:45
+
+ + + + diff --git a/variantvisitoradaptor_8cpp.html b/variantvisitoradaptor_8cpp.html new file mode 100644 index 0000000..819a735 --- /dev/null +++ b/variantvisitoradaptor_8cpp.html @@ -0,0 +1,115 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/variantvisitoradaptor.cpp File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
variantvisitoradaptor.cpp File Reference
+
+
+ + + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/variantvisitoradaptor_8h.html b/variantvisitoradaptor_8h.html new file mode 100644 index 0000000..b40b2d8 --- /dev/null +++ b/variantvisitoradaptor_8h.html @@ -0,0 +1,124 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/variantvisitoradaptor.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+ +
+
variantvisitoradaptor.h File Reference
+
+
+
#include "src/interpreter/abstractvisitor.h"
+#include <boost/variant.hpp>
+
+

Go to the source code of this file.

+ + + + + +

+Classes

class  jmespath::ast::VariantVisitorAdaptor
 The VariantVisitorAdaptor class adapts an AbstractVisitor implementation to the boost::static_visitor interface, so it can be used to visit boost::variant objects. More...
 
+ + + + + + + +

+Namespaces

 jmespath
 The top level namespace which contains the public functions of the library.
 
 jmespath::ast
 Classes which represent the AST nodes.
 
+
+ + + + diff --git a/variantvisitoradaptor_8h_source.html b/variantvisitoradaptor_8h_source.html new file mode 100644 index 0000000..58e76f5 --- /dev/null +++ b/variantvisitoradaptor_8h_source.html @@ -0,0 +1,160 @@ + + + + + + +jmespath.cpp: /home/travis/build/robertmrk/jmespath.cpp/src/ast/variantvisitoradaptor.h Source File + + + + + + + + + +
+
+ + + + + + +
+
jmespath.cpp +
+
C++ implementation of JMESPath, a query language for JSON http://jmespath.org
+
+
+ + + + + + + + + +
+ +
+ + +
+
+
+
variantvisitoradaptor.h
+
+
+Go to the documentation of this file.
1 /****************************************************************************
+
2 **
+
3 ** Author: Róbert Márki <gsmiko@gmail.com>
+
4 ** Copyright (c) 2016 Róbert Márki
+
5 **
+
6 ** This file is part of the jmespath.cpp project which is distributed under
+
7 ** the MIT License (MIT).
+
8 **
+
9 ** Permission is hereby granted, free of charge, to any person obtaining a copy
+
10 ** of this software and associated documentation files (the "Software"), to
+
11 ** deal in the Software without restriction, including without limitation the
+
12 ** rights to use, copy, modify, merge, publish, distribute, sublicense, and/or
+
13 ** sell copies of the Software, and to permit persons to whom the Software is
+
14 ** furnished to do so, subject to the following conditions:
+
15 **
+
16 ** The above copyright notice and this permission notice shall be included in
+
17 ** all copies or substantial portions of the Software.
+
18 **
+
19 ** THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
+
20 ** IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
+
21 ** FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
+
22 ** AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
+
23 ** LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
+
24 ** FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
+
25 ** DEALINGS IN THE SOFTWARE.
+
26 **
+
27 ****************************************************************************/
+
28 #ifndef VARIANTVISITOR_H
+
29 #define VARIANTVISITOR_H
+ +
31 #include <boost/variant.hpp>
+
32 
+
33 namespace jmespath{ namespace ast {
+
34 
+
40 class VariantVisitorAdaptor : public boost::static_visitor<>
+
41 {
+
42 public:
+ +
55  template <typename T>
+
56  void operator() (const T& variant) const
+
57  {
+
58  m_visitor->visit(&variant);
+
59  }
+
64  void operator() (const boost::blank&) const
+
65  {
+
66  }
+
67 
+
68 private:
+ +
73 };
+
74 }} // namespace jmespath::ast
+
75 #endif // VARIANTVISITOR_H
+
virtual void visit(const ast::AbstractNode *node)=0
Visits the given node.
+
void operator()(const T &variant) const
Calls the appropriate visit method of the visitor object with the address of the variant object...
Definition: variantvisitoradaptor.h:56
+
VariantVisitorAdaptor(interpreter::AbstractVisitor *visitor)
Constructs a VariantVisitorAdaptor object with the given visitor.
Definition: variantvisitoradaptor.cpp:33
+
The AbstractVisitor class is an interface which defines the member functions required to visit every ...
Definition: abstractvisitor.h:71
+ +
The VariantVisitorAdaptor class adapts an AbstractVisitor implementation to the boost::static_visitor...
Definition: variantvisitoradaptor.h:40
+
interpreter::AbstractVisitor * m_visitor
The visitor object to which the visit calls will be forwarded.
Definition: variantvisitoradaptor.h:72
+
+ + + + From d5e4f23e551501954ad73b8a4462594be5f7d307 Mon Sep 17 00:00:00 2001 From: "Deployment Bot (from Travis CI)" Date: Thu, 21 Feb 2019 14:50:58 +0000 Subject: [PATCH 3/4] Deploy robertmrk/jmespath.cpp to github.com/robertmrk/jmespath.cpp.git:gh-pages --- install.html | 19 +++++++++++++------ jmespath_8h_source.html | 22 +++++++++++----------- 2 files changed, 24 insertions(+), 17 deletions(-) diff --git a/install.html b/install.html index 637d559..1ca4320 100644 --- a/install.html +++ b/install.html @@ -88,7 +88,7 @@

Supported compilers

jmespath.cpp needs a compiler that supports at least the c++14 standard. The currently supported and tested compilers are:

    -
  • g++ versions: 5, 6, 7, 8
  • +
  • g++ versions: 6, 7, 8
  • Clang versions: 4.0, 5.0, 6.0, 7
  • XCode versions: 9.0, 9.3, 10.1
  • Visual Studio 2017
  • @@ -99,8 +99,10 @@

  • boost version 1.65 or later
  • nlohmann_json version 3.4.0 or later
-

-Build and install

+

+Install from source

+

+Build and install

To get the source code of the library either clone it from github

git clone https://github.com/robertmrk/jmespath.cpp.git

or download the latest release and extract it.

@@ -111,8 +113,8 @@

cd build
cmake .. -G"Unix Makefiles" -DCMAKE_BUILD_TYPE=Release -DJMESPATH_BUILD_TESTS=OFF
sudo cmake --build . --target install
-

-Integration

+

+Integration

To use the library in your CMake project you should find the library with "find_package" and link your target with "jmespath::jmespath":

cmake_minimum_required(VERSION 3.0)
project(example)
@@ -122,7 +124,12 @@

add_executable(${PROJECT_NAME} main.cpp)
target_link_libraries(${PROJECT_NAME} jmespath::jmespath)
target_compile_features(${PROJECT_NAME} PUBLIC cxx_std_14)
-

+

+Install with Conan

+

If you are using Conan to manage your dependencies, then add the followng remote:

+
conan remote add robertmrk https://api.bintray.com/conan/robertmrk/conan
+

and add jmespath.cpp/x.y.z@robertmrk/stable to your conanfile.py's requires, where x.y.z is the release version you want to use. Please file issues here if you experience problems with the packages.

+