From 073039295dd9dadd87457c4ece1f3ae6741e25c5 Mon Sep 17 00:00:00 2001 From: apio Date: Sat, 2 Jul 2022 12:03:06 +0200 Subject: [PATCH] updates --- docs/html/_a_s_t_node_8cpp.html | 102 + docs/html/_a_s_t_node_8h.html | 112 + docs/html/_a_s_t_node_8h_source.html | 113 + docs/html/_arguments_8cpp.html | 133 + docs/html/_arguments_8cpp.js | 4 + docs/html/_arguments_8h.html | 113 + docs/html/_arguments_8h_source.html | 129 + docs/html/_binary_op_node_8cpp.html | 102 + docs/html/_binary_op_node_8h.html | 112 + docs/html/_binary_op_node_8h_source.html | 121 + docs/html/_error_8cpp.html | 106 + docs/html/_error_8h.html | 126 + docs/html/_error_8h.js | 8 + docs/html/_error_8h_source.html | 125 + docs/html/_expr_node_8cpp.html | 102 + docs/html/_expr_node_8h.html | 112 + docs/html/_expr_node_8h_source.html | 118 + docs/html/_file_i_o_8cpp.html | 108 + docs/html/_file_i_o_8h.html | 122 + docs/html/_file_i_o_8h.js | 6 + docs/html/_file_i_o_8h_source.html | 119 + docs/html/_format_string_8hpp.html | 202 ++ docs/html/_format_string_8hpp.js | 6 + docs/html/_format_string_8hpp_source.html | 148 ++ docs/html/_importer_8cpp.html | 131 + docs/html/_importer_8cpp.js | 4 + docs/html/_importer_8h.html | 131 + docs/html/_importer_8h.js | 8 + docs/html/_importer_8h_source.html | 122 + docs/html/_lexer_8cpp.html | 175 ++ docs/html/_lexer_8cpp.js | 7 + docs/html/_lexer_8h.html | 156 ++ docs/html/_lexer_8h.js | 6 + docs/html/_lexer_8h_source.html | 165 ++ docs/html/_location_8cpp.html | 103 + docs/html/_location_8h.html | 112 + docs/html/_location_8h_source.html | 149 ++ docs/html/_mul_node_8cpp.html | 102 + docs/html/_mul_node_8h.html | 112 + docs/html/_mul_node_8h_source.html | 119 + docs/html/_normalizer_8cpp.html | 103 + docs/html/_normalizer_8h.html | 119 + docs/html/_normalizer_8h.js | 4 + docs/html/_normalizer_8h_source.html | 120 + docs/html/_number_node_8cpp.html | 102 + docs/html/_number_node_8h.html | 113 + docs/html/_number_node_8h_source.html | 116 + docs/html/_parser_8cpp.html | 102 + docs/html/_parser_8h.html | 115 + docs/html/_parser_8h_source.html | 184 ++ docs/html/_statement_node_8cpp.html | 102 + docs/html/_statement_node_8h.html | 112 + docs/html/_statement_node_8h_source.html | 117 + docs/html/_sum_node_8cpp.html | 102 + docs/html/_sum_node_8h.html | 112 + docs/html/_sum_node_8h_source.html | 119 + docs/html/_token_8cpp.html | 134 ++ docs/html/_token_8cpp.js | 4 + docs/html/_token_8h.html | 277 +++ docs/html/_token_8h.js | 48 + docs/html/_token_8h_source.html | 267 +++ docs/html/annotated.html | 50 +- docs/html/annotated_dup.js | 16 + .../class____benchmark__impl-members.html | 45 +- docs/html/class____benchmark__impl.html | 166 +- docs/html/class____benchmark__impl.js | 5 + docs/html/class_a_s_t_node-members.html | 105 + docs/html/class_a_s_t_node.html | 167 ++ docs/html/class_a_s_t_node.js | 5 + docs/html/class_a_s_t_node.png | Bin 0 -> 1616 bytes docs/html/class_binary_op_node-members.html | 112 + docs/html/class_binary_op_node.html | 241 ++ docs/html/class_binary_op_node.js | 7 + docs/html/class_binary_op_node.png | Bin 0 -> 1123 bytes docs/html/class_expr_node-members.html | 108 + docs/html/class_expr_node.html | 191 ++ docs/html/class_expr_node.js | 6 + docs/html/class_expr_node.png | Bin 0 -> 1262 bytes docs/html/class_lexer-members.html | 108 + docs/html/class_lexer.html | 256 ++ docs/html/class_lexer.js | 5 + docs/html/class_mul_node-members.html | 114 + docs/html/class_mul_node.html | 206 ++ docs/html/class_mul_node.js | 5 + docs/html/class_mul_node.png | Bin 0 -> 842 bytes docs/html/class_number_node-members.html | 110 + docs/html/class_number_node.html | 175 ++ docs/html/class_number_node.js | 5 + docs/html/class_number_node.png | Bin 0 -> 586 bytes docs/html/class_parser-members.html | 106 + docs/html/class_parser.html | 187 ++ docs/html/class_parser.js | 5 + docs/html/class_statement_node-members.html | 107 + docs/html/class_statement_node.html | 168 ++ docs/html/class_statement_node.js | 5 + docs/html/class_statement_node.png | Bin 0 -> 488 bytes docs/html/class_sum_node-members.html | 114 + docs/html/class_sum_node.html | 206 ++ docs/html/class_sum_node.js | 5 + docs/html/class_sum_node.png | Bin 0 -> 858 bytes docs/html/classes.html | 60 +- .../dir_2753544c6f01c90a87473366a10a4997.html | 133 + .../dir_2753544c6f01c90a87473366a10a4997.js | 31 + .../dir_68267d1309a1af8e8297ef4c3efbcdba.html | 95 +- .../dir_68267d1309a1af8e8297ef4c3efbcdba.js | 33 + .../dir_ab56abf3846346f4195c14ed00ef0a8f.html | 107 + .../dir_ab56abf3846346f4195c14ed00ef0a8f.js | 4 + docs/html/doxygen-awesome-sidebar-only.css | 113 + docs/html/doxygen-awesome.css | 2135 +++++++++++++++++ docs/html/files.html | 87 +- docs/html/files_dup.js | 4 + docs/html/functions.html | 345 +++ docs/html/functions_func.html | 284 +++ docs/html/functions_vars.html | 149 ++ docs/html/globals.html | 308 +++ docs/html/globals_defs.html | 119 + docs/html/globals_enum.html | 101 + docs/html/globals_eval.html | 220 ++ docs/html/globals_func.html | 118 + docs/html/globals_type.html | 102 + docs/html/globals_vars.html | 102 + docs/html/hierarchy.html | 117 + docs/html/hierarchy.js | 19 + docs/html/index.html | 33 +- docs/html/menudata.js | 67 +- docs/html/namespace_error.html | 266 ++ docs/html/namespace_file_i_o.html | 178 ++ docs/html/namespace_importer.html | 225 ++ docs/html/namespace_normalizer.html | 128 + docs/html/namespacemembers.html | 140 ++ docs/html/namespacemembers_func.html | 131 + docs/html/namespacemembers_vars.html | 107 + docs/html/namespaces.html | 108 + docs/html/namespaces_dup.js | 25 + docs/html/navtree.css | 146 ++ docs/html/navtree.js | 546 +++++ docs/html/navtreedata.js | 67 + docs/html/navtreeindex0.js | 240 ++ docs/html/resize.js | 140 ++ docs/html/sapphire_8cpp.html | 145 ++ docs/html/sapphire_8cpp.js | 4 + docs/html/sapphirepch_8h.html | 110 + docs/html/sapphirepch_8h_source.html | 42 +- docs/html/search/all_0.js | 2 +- docs/html/search/all_1.js | 9 +- docs/html/search/all_10.html | 37 + docs/html/search/all_10.js | 5 + docs/html/search/all_11.html | 37 + docs/html/search/all_11.js | 6 + docs/html/search/all_12.html | 37 + docs/html/search/all_12.js | 15 + docs/html/search/all_2.js | 6 +- docs/html/search/all_3.js | 6 +- docs/html/search/all_4.js | 3 +- docs/html/search/all_5.html | 37 + docs/html/search/all_5.js | 12 + docs/html/search/all_6.html | 37 + docs/html/search/all_6.js | 11 + docs/html/search/all_7.html | 37 + docs/html/search/all_7.js | 13 + docs/html/search/all_8.html | 37 + docs/html/search/all_8.js | 14 + docs/html/search/all_9.html | 37 + docs/html/search/all_9.js | 11 + docs/html/search/all_a.html | 37 + docs/html/search/all_a.js | 11 + docs/html/search/all_b.html | 37 + docs/html/search/all_b.js | 5 + docs/html/search/all_c.html | 37 + docs/html/search/all_c.js | 10 + docs/html/search/all_d.html | 37 + docs/html/search/all_d.js | 7 + docs/html/search/all_e.html | 37 + docs/html/search/all_e.js | 15 + docs/html/search/all_f.html | 37 + docs/html/search/all_f.js | 57 + docs/html/search/classes_0.js | 2 +- docs/html/search/classes_1.js | 3 +- docs/html/search/classes_2.js | 3 +- docs/html/search/classes_3.js | 2 +- docs/html/search/classes_4.js | 3 +- docs/html/search/classes_5.html | 37 + docs/html/search/classes_5.js | 4 + docs/html/search/classes_6.html | 37 + docs/html/search/classes_6.js | 4 + docs/html/search/classes_7.html | 37 + docs/html/search/classes_7.js | 4 + docs/html/search/classes_8.html | 37 + docs/html/search/classes_8.js | 5 + docs/html/search/classes_9.html | 37 + docs/html/search/classes_9.js | 4 + docs/html/search/defines_0.html | 37 + docs/html/search/defines_0.js | 4 + docs/html/search/defines_1.html | 37 + docs/html/search/defines_1.js | 4 + docs/html/search/defines_2.html | 37 + docs/html/search/defines_2.js | 4 + docs/html/search/defines_3.html | 37 + docs/html/search/defines_3.js | 4 + docs/html/search/defines_4.html | 37 + docs/html/search/defines_4.js | 4 + docs/html/search/defines_5.html | 37 + docs/html/search/defines_5.js | 4 + docs/html/search/defines_6.html | 37 + docs/html/search/defines_6.js | 4 + docs/html/search/enums_0.html | 37 + docs/html/search/enums_0.js | 4 + docs/html/search/enumvalues_0.html | 37 + docs/html/search/enumvalues_0.js | 43 + docs/html/search/files_0.html | 37 + docs/html/search/files_0.js | 7 + docs/html/search/files_1.html | 37 + docs/html/search/files_1.js | 5 + docs/html/search/files_2.html | 37 + docs/html/search/files_2.js | 7 + docs/html/search/files_3.html | 37 + docs/html/search/files_3.js | 6 + docs/html/search/files_4.html | 37 + docs/html/search/files_4.js | 5 + docs/html/search/files_5.html | 37 + docs/html/search/files_5.js | 7 + docs/html/search/files_6.html | 37 + docs/html/search/files_6.js | 5 + docs/html/search/files_7.html | 37 + docs/html/search/files_7.js | 7 + docs/html/search/files_8.html | 37 + docs/html/search/files_8.js | 5 + docs/html/search/files_9.html | 37 + docs/html/search/files_9.js | 9 + docs/html/search/files_a.html | 37 + docs/html/search/files_a.js | 5 + docs/html/search/files_b.html | 37 + docs/html/search/files_b.js | 5 + docs/html/search/functions_0.html | 37 + docs/html/search/functions_0.js | 4 + docs/html/search/functions_1.html | 37 + docs/html/search/functions_1.js | 6 + docs/html/search/functions_10.html | 37 + docs/html/search/functions_10.js | 4 + docs/html/search/functions_11.html | 37 + docs/html/search/functions_11.js | 15 + docs/html/search/functions_2.html | 37 + docs/html/search/functions_2.js | 4 + docs/html/search/functions_3.html | 37 + docs/html/search/functions_3.js | 6 + docs/html/search/functions_4.html | 37 + docs/html/search/functions_4.js | 4 + docs/html/search/functions_5.html | 37 + docs/html/search/functions_5.js | 7 + docs/html/search/functions_6.html | 37 + docs/html/search/functions_6.js | 5 + docs/html/search/functions_7.html | 37 + docs/html/search/functions_7.js | 4 + docs/html/search/functions_8.html | 37 + docs/html/search/functions_8.js | 6 + docs/html/search/functions_9.html | 37 + docs/html/search/functions_9.js | 8 + docs/html/search/functions_a.html | 37 + docs/html/search/functions_a.js | 6 + docs/html/search/functions_b.html | 37 + docs/html/search/functions_b.js | 4 + docs/html/search/functions_c.html | 37 + docs/html/search/functions_c.js | 6 + docs/html/search/functions_d.html | 37 + docs/html/search/functions_d.js | 6 + docs/html/search/functions_e.html | 37 + docs/html/search/functions_e.js | 8 + docs/html/search/functions_f.html | 37 + docs/html/search/functions_f.js | 8 + docs/html/search/namespaces_0.html | 37 + docs/html/search/namespaces_0.js | 4 + docs/html/search/namespaces_1.html | 37 + docs/html/search/namespaces_1.js | 4 + docs/html/search/namespaces_2.html | 37 + docs/html/search/namespaces_2.js | 4 + docs/html/search/namespaces_3.html | 37 + docs/html/search/namespaces_3.js | 4 + docs/html/search/searchdata.js | 32 +- docs/html/search/typedefs_0.html | 37 + docs/html/search/typedefs_0.js | 4 + docs/html/search/variables_0.html | 37 + docs/html/search/variables_0.js | 5 + docs/html/search/variables_1.html | 37 + docs/html/search/variables_1.js | 5 + docs/html/search/variables_2.html | 37 + docs/html/search/variables_2.js | 8 + docs/html/search/variables_3.html | 37 + docs/html/search/variables_3.js | 6 + docs/html/search/variables_4.html | 37 + docs/html/search/variables_4.js | 4 + docs/html/search/variables_5.html | 37 + docs/html/search/variables_5.js | 4 + docs/html/search/variables_6.html | 37 + docs/html/search/variables_6.js | 4 + docs/html/search/variables_7.html | 37 + docs/html/search/variables_7.js | 4 + docs/html/search/variables_8.html | 37 + docs/html/search/variables_8.js | 7 + docs/html/search/variables_9.html | 37 + docs/html/search/variables_9.js | 4 + docs/html/struct_arguments-members.html | 109 + docs/html/struct_arguments.html | 278 +++ docs/html/struct_location-members.html | 115 + docs/html/struct_location.html | 357 +++ docs/html/struct_location.js | 15 + docs/html/struct_token-members.html | 122 + docs/html/struct_token.html | 600 +++++ docs/html/struct_token.js | 19 + docs/html/utils_8cpp.html | 186 ++ docs/html/utils_8cpp.js | 6 + docs/html/utils_8h.html | 195 ++ docs/html/utils_8h.js | 7 + docs/html/utils_8h_source.html | 73 +- docs/latex/_a_s_t_node_8cpp.tex | 3 + docs/latex/_a_s_t_node_8h.tex | 8 + docs/latex/_arguments_8cpp.tex | 21 + docs/latex/_arguments_8h.tex | 9 + docs/latex/_binary_op_node_8cpp.tex | 3 + docs/latex/_binary_op_node_8h.tex | 8 + docs/latex/_error_8cpp.tex | 7 + docs/latex/_error_8h.tex | 21 + docs/latex/_expr_node_8cpp.tex | 3 + docs/latex/_expr_node_8h.tex | 8 + docs/latex/_file_i_o_8cpp.tex | 9 + docs/latex/_file_i_o_8h.tex | 17 + docs/latex/_format_string_8hpp.tex | 38 + docs/latex/_importer_8cpp.tex | 23 + docs/latex/_importer_8h.tex | 25 + docs/latex/_lexer_8cpp.tex | 43 + docs/latex/_lexer_8h.tex | 38 + docs/latex/_location_8cpp.tex | 4 + docs/latex/_location_8h.tex | 8 + docs/latex/_mul_node_8cpp.tex | 3 + docs/latex/_mul_node_8h.tex | 8 + docs/latex/_normalizer_8cpp.tex | 4 + docs/latex/_normalizer_8h.tex | 14 + docs/latex/_number_node_8cpp.tex | 3 + docs/latex/_number_node_8h.tex | 9 + docs/latex/_parser_8cpp.tex | 3 + docs/latex/_parser_8h.tex | 11 + docs/latex/_statement_node_8cpp.tex | 3 + docs/latex/_statement_node_8h.tex | 8 + docs/latex/_sum_node_8cpp.tex | 3 + docs/latex/_sum_node_8h.tex | 8 + docs/latex/_token_8cpp.tex | 30 + docs/latex/_token_8h.tex | 263 ++ docs/latex/annotated.tex | 17 +- docs/latex/class____benchmark__impl.tex | 58 +- docs/latex/class_a_s_t_node.eps | 227 ++ docs/latex/class_a_s_t_node.pdf | Bin 0 -> 6511 bytes docs/latex/class_a_s_t_node.tex | 40 + docs/latex/class_binary_op_node.eps | 215 ++ docs/latex/class_binary_op_node.pdf | Bin 0 -> 6206 bytes docs/latex/class_binary_op_node.tex | 62 + docs/latex/class_expr_node.eps | 221 ++ docs/latex/class_expr_node.pdf | Bin 0 -> 6352 bytes docs/latex/class_expr_node.tex | 48 + docs/latex/class_lexer.tex | 76 + docs/latex/class_mul_node.eps | 209 ++ docs/latex/class_mul_node.pdf | Bin 0 -> 5978 bytes docs/latex/class_mul_node.tex | 41 + docs/latex/class_number_node.eps | 203 ++ docs/latex/class_number_node.pdf | Bin 0 -> 5219 bytes docs/latex/class_number_node.tex | 40 + docs/latex/class_parser.tex | 48 + docs/latex/class_statement_node.eps | 197 ++ docs/latex/class_statement_node.pdf | Bin 0 -> 4794 bytes docs/latex/class_statement_node.tex | 40 + docs/latex/class_sum_node.eps | 209 ++ docs/latex/class_sum_node.pdf | Bin 0 -> 5988 bytes docs/latex/class_sum_node.tex | 41 + .../dir_2753544c6f01c90a87473366a10a4997.tex | 33 + .../dir_68267d1309a1af8e8297ef4c3efbcdba.tex | 56 + .../dir_ab56abf3846346f4195c14ed00ef0a8f.tex | 7 + docs/latex/files.tex | 40 + docs/latex/hierarchy.tex | 22 + docs/latex/namespace_error.tex | 48 + docs/latex/namespace_file_i_o.tex | 32 + docs/latex/namespace_importer.tex | 54 + docs/latex/namespace_normalizer.tex | 16 + docs/latex/namespaces.tex | 7 + docs/latex/refman.tex | 66 +- docs/latex/sapphire_8cpp.tex | 23 + docs/latex/sapphirepch_8h.tex | 9 + docs/latex/struct_arguments.tex | 72 + docs/latex/struct_location.tex | 123 + docs/latex/struct_token.tex | 182 ++ docs/latex/utils_8cpp.tex | 34 + docs/latex/utils_8h.tex | 40 + external/doxygen-awesome-css | 2 +- 390 files changed, 26046 insertions(+), 143 deletions(-) create mode 100644 docs/html/_a_s_t_node_8cpp.html create mode 100644 docs/html/_a_s_t_node_8h.html create mode 100644 docs/html/_a_s_t_node_8h_source.html create mode 100644 docs/html/_arguments_8cpp.html create mode 100644 docs/html/_arguments_8cpp.js create mode 100644 docs/html/_arguments_8h.html create mode 100644 docs/html/_arguments_8h_source.html create mode 100644 docs/html/_binary_op_node_8cpp.html create mode 100644 docs/html/_binary_op_node_8h.html create mode 100644 docs/html/_binary_op_node_8h_source.html create mode 100644 docs/html/_error_8cpp.html create mode 100644 docs/html/_error_8h.html create mode 100644 docs/html/_error_8h.js create mode 100644 docs/html/_error_8h_source.html create mode 100644 docs/html/_expr_node_8cpp.html create mode 100644 docs/html/_expr_node_8h.html create mode 100644 docs/html/_expr_node_8h_source.html create mode 100644 docs/html/_file_i_o_8cpp.html create mode 100644 docs/html/_file_i_o_8h.html create mode 100644 docs/html/_file_i_o_8h.js create mode 100644 docs/html/_file_i_o_8h_source.html create mode 100644 docs/html/_format_string_8hpp.html create mode 100644 docs/html/_format_string_8hpp.js create mode 100644 docs/html/_format_string_8hpp_source.html create mode 100644 docs/html/_importer_8cpp.html create mode 100644 docs/html/_importer_8cpp.js create mode 100644 docs/html/_importer_8h.html create mode 100644 docs/html/_importer_8h.js create mode 100644 docs/html/_importer_8h_source.html create mode 100644 docs/html/_lexer_8cpp.html create mode 100644 docs/html/_lexer_8cpp.js create mode 100644 docs/html/_lexer_8h.html create mode 100644 docs/html/_lexer_8h.js create mode 100644 docs/html/_lexer_8h_source.html create mode 100644 docs/html/_location_8cpp.html create mode 100644 docs/html/_location_8h.html create mode 100644 docs/html/_location_8h_source.html create mode 100644 docs/html/_mul_node_8cpp.html create mode 100644 docs/html/_mul_node_8h.html create mode 100644 docs/html/_mul_node_8h_source.html create mode 100644 docs/html/_normalizer_8cpp.html create mode 100644 docs/html/_normalizer_8h.html create mode 100644 docs/html/_normalizer_8h.js create mode 100644 docs/html/_normalizer_8h_source.html create mode 100644 docs/html/_number_node_8cpp.html create mode 100644 docs/html/_number_node_8h.html create mode 100644 docs/html/_number_node_8h_source.html create mode 100644 docs/html/_parser_8cpp.html create mode 100644 docs/html/_parser_8h.html create mode 100644 docs/html/_parser_8h_source.html create mode 100644 docs/html/_statement_node_8cpp.html create mode 100644 docs/html/_statement_node_8h.html create mode 100644 docs/html/_statement_node_8h_source.html create mode 100644 docs/html/_sum_node_8cpp.html create mode 100644 docs/html/_sum_node_8h.html create mode 100644 docs/html/_sum_node_8h_source.html create mode 100644 docs/html/_token_8cpp.html create mode 100644 docs/html/_token_8cpp.js create mode 100644 docs/html/_token_8h.html create mode 100644 docs/html/_token_8h.js create mode 100644 docs/html/_token_8h_source.html create mode 100644 docs/html/annotated_dup.js create mode 100644 docs/html/class____benchmark__impl.js create mode 100644 docs/html/class_a_s_t_node-members.html create mode 100644 docs/html/class_a_s_t_node.html create mode 100644 docs/html/class_a_s_t_node.js create mode 100644 docs/html/class_a_s_t_node.png create mode 100644 docs/html/class_binary_op_node-members.html create mode 100644 docs/html/class_binary_op_node.html create mode 100644 docs/html/class_binary_op_node.js create mode 100644 docs/html/class_binary_op_node.png create mode 100644 docs/html/class_expr_node-members.html create mode 100644 docs/html/class_expr_node.html create mode 100644 docs/html/class_expr_node.js create mode 100644 docs/html/class_expr_node.png create mode 100644 docs/html/class_lexer-members.html create mode 100644 docs/html/class_lexer.html create mode 100644 docs/html/class_lexer.js create mode 100644 docs/html/class_mul_node-members.html create mode 100644 docs/html/class_mul_node.html create mode 100644 docs/html/class_mul_node.js create mode 100644 docs/html/class_mul_node.png create mode 100644 docs/html/class_number_node-members.html create mode 100644 docs/html/class_number_node.html create mode 100644 docs/html/class_number_node.js create mode 100644 docs/html/class_number_node.png create mode 100644 docs/html/class_parser-members.html create mode 100644 docs/html/class_parser.html create mode 100644 docs/html/class_parser.js create mode 100644 docs/html/class_statement_node-members.html create mode 100644 docs/html/class_statement_node.html create mode 100644 docs/html/class_statement_node.js create mode 100644 docs/html/class_statement_node.png create mode 100644 docs/html/class_sum_node-members.html create mode 100644 docs/html/class_sum_node.html create mode 100644 docs/html/class_sum_node.js create mode 100644 docs/html/class_sum_node.png create mode 100644 docs/html/dir_2753544c6f01c90a87473366a10a4997.html create mode 100644 docs/html/dir_2753544c6f01c90a87473366a10a4997.js create mode 100644 docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.js create mode 100644 docs/html/dir_ab56abf3846346f4195c14ed00ef0a8f.html create mode 100644 docs/html/dir_ab56abf3846346f4195c14ed00ef0a8f.js create mode 100644 docs/html/doxygen-awesome-sidebar-only.css create mode 100644 docs/html/doxygen-awesome.css create mode 100644 docs/html/files_dup.js create mode 100644 docs/html/functions.html create mode 100644 docs/html/functions_func.html create mode 100644 docs/html/functions_vars.html create mode 100644 docs/html/globals.html create mode 100644 docs/html/globals_defs.html create mode 100644 docs/html/globals_enum.html create mode 100644 docs/html/globals_eval.html create mode 100644 docs/html/globals_func.html create mode 100644 docs/html/globals_type.html create mode 100644 docs/html/globals_vars.html create mode 100644 docs/html/hierarchy.html create mode 100644 docs/html/hierarchy.js create mode 100644 docs/html/namespace_error.html create mode 100644 docs/html/namespace_file_i_o.html create mode 100644 docs/html/namespace_importer.html create mode 100644 docs/html/namespace_normalizer.html create mode 100644 docs/html/namespacemembers.html create mode 100644 docs/html/namespacemembers_func.html create mode 100644 docs/html/namespacemembers_vars.html create mode 100644 docs/html/namespaces.html create mode 100644 docs/html/namespaces_dup.js create mode 100644 docs/html/navtree.css create mode 100644 docs/html/navtree.js create mode 100644 docs/html/navtreedata.js create mode 100644 docs/html/navtreeindex0.js create mode 100644 docs/html/resize.js create mode 100644 docs/html/sapphire_8cpp.html create mode 100644 docs/html/sapphire_8cpp.js create mode 100644 docs/html/sapphirepch_8h.html create mode 100644 docs/html/search/all_10.html create mode 100644 docs/html/search/all_10.js create mode 100644 docs/html/search/all_11.html create mode 100644 docs/html/search/all_11.js create mode 100644 docs/html/search/all_12.html create mode 100644 docs/html/search/all_12.js create mode 100644 docs/html/search/all_5.html create mode 100644 docs/html/search/all_5.js create mode 100644 docs/html/search/all_6.html create mode 100644 docs/html/search/all_6.js create mode 100644 docs/html/search/all_7.html create mode 100644 docs/html/search/all_7.js create mode 100644 docs/html/search/all_8.html create mode 100644 docs/html/search/all_8.js create mode 100644 docs/html/search/all_9.html create mode 100644 docs/html/search/all_9.js create mode 100644 docs/html/search/all_a.html create mode 100644 docs/html/search/all_a.js create mode 100644 docs/html/search/all_b.html create mode 100644 docs/html/search/all_b.js create mode 100644 docs/html/search/all_c.html create mode 100644 docs/html/search/all_c.js create mode 100644 docs/html/search/all_d.html create mode 100644 docs/html/search/all_d.js create mode 100644 docs/html/search/all_e.html create mode 100644 docs/html/search/all_e.js create mode 100644 docs/html/search/all_f.html create mode 100644 docs/html/search/all_f.js create mode 100644 docs/html/search/classes_5.html create mode 100644 docs/html/search/classes_5.js create mode 100644 docs/html/search/classes_6.html create mode 100644 docs/html/search/classes_6.js create mode 100644 docs/html/search/classes_7.html create mode 100644 docs/html/search/classes_7.js create mode 100644 docs/html/search/classes_8.html create mode 100644 docs/html/search/classes_8.js create mode 100644 docs/html/search/classes_9.html create mode 100644 docs/html/search/classes_9.js create mode 100644 docs/html/search/defines_0.html create mode 100644 docs/html/search/defines_0.js create mode 100644 docs/html/search/defines_1.html create mode 100644 docs/html/search/defines_1.js create mode 100644 docs/html/search/defines_2.html create mode 100644 docs/html/search/defines_2.js create mode 100644 docs/html/search/defines_3.html create mode 100644 docs/html/search/defines_3.js create mode 100644 docs/html/search/defines_4.html create mode 100644 docs/html/search/defines_4.js create mode 100644 docs/html/search/defines_5.html create mode 100644 docs/html/search/defines_5.js create mode 100644 docs/html/search/defines_6.html create mode 100644 docs/html/search/defines_6.js create mode 100644 docs/html/search/enums_0.html create mode 100644 docs/html/search/enums_0.js create mode 100644 docs/html/search/enumvalues_0.html create mode 100644 docs/html/search/enumvalues_0.js create mode 100644 docs/html/search/files_0.html create mode 100644 docs/html/search/files_0.js create mode 100644 docs/html/search/files_1.html create mode 100644 docs/html/search/files_1.js create mode 100644 docs/html/search/files_2.html create mode 100644 docs/html/search/files_2.js create mode 100644 docs/html/search/files_3.html create mode 100644 docs/html/search/files_3.js create mode 100644 docs/html/search/files_4.html create mode 100644 docs/html/search/files_4.js create mode 100644 docs/html/search/files_5.html create mode 100644 docs/html/search/files_5.js create mode 100644 docs/html/search/files_6.html create mode 100644 docs/html/search/files_6.js create mode 100644 docs/html/search/files_7.html create mode 100644 docs/html/search/files_7.js create mode 100644 docs/html/search/files_8.html create mode 100644 docs/html/search/files_8.js create mode 100644 docs/html/search/files_9.html create mode 100644 docs/html/search/files_9.js create mode 100644 docs/html/search/files_a.html create mode 100644 docs/html/search/files_a.js create mode 100644 docs/html/search/files_b.html create mode 100644 docs/html/search/files_b.js create mode 100644 docs/html/search/functions_0.html create mode 100644 docs/html/search/functions_0.js create mode 100644 docs/html/search/functions_1.html create mode 100644 docs/html/search/functions_1.js create mode 100644 docs/html/search/functions_10.html create mode 100644 docs/html/search/functions_10.js create mode 100644 docs/html/search/functions_11.html create mode 100644 docs/html/search/functions_11.js create mode 100644 docs/html/search/functions_2.html create mode 100644 docs/html/search/functions_2.js create mode 100644 docs/html/search/functions_3.html create mode 100644 docs/html/search/functions_3.js create mode 100644 docs/html/search/functions_4.html create mode 100644 docs/html/search/functions_4.js create mode 100644 docs/html/search/functions_5.html create mode 100644 docs/html/search/functions_5.js create mode 100644 docs/html/search/functions_6.html create mode 100644 docs/html/search/functions_6.js create mode 100644 docs/html/search/functions_7.html create mode 100644 docs/html/search/functions_7.js create mode 100644 docs/html/search/functions_8.html create mode 100644 docs/html/search/functions_8.js create mode 100644 docs/html/search/functions_9.html create mode 100644 docs/html/search/functions_9.js create mode 100644 docs/html/search/functions_a.html create mode 100644 docs/html/search/functions_a.js create mode 100644 docs/html/search/functions_b.html create mode 100644 docs/html/search/functions_b.js create mode 100644 docs/html/search/functions_c.html create mode 100644 docs/html/search/functions_c.js create mode 100644 docs/html/search/functions_d.html create mode 100644 docs/html/search/functions_d.js create mode 100644 docs/html/search/functions_e.html create mode 100644 docs/html/search/functions_e.js create mode 100644 docs/html/search/functions_f.html create mode 100644 docs/html/search/functions_f.js create mode 100644 docs/html/search/namespaces_0.html create mode 100644 docs/html/search/namespaces_0.js create mode 100644 docs/html/search/namespaces_1.html create mode 100644 docs/html/search/namespaces_1.js create mode 100644 docs/html/search/namespaces_2.html create mode 100644 docs/html/search/namespaces_2.js create mode 100644 docs/html/search/namespaces_3.html create mode 100644 docs/html/search/namespaces_3.js create mode 100644 docs/html/search/typedefs_0.html create mode 100644 docs/html/search/typedefs_0.js create mode 100644 docs/html/search/variables_0.html create mode 100644 docs/html/search/variables_0.js create mode 100644 docs/html/search/variables_1.html create mode 100644 docs/html/search/variables_1.js create mode 100644 docs/html/search/variables_2.html create mode 100644 docs/html/search/variables_2.js create mode 100644 docs/html/search/variables_3.html create mode 100644 docs/html/search/variables_3.js create mode 100644 docs/html/search/variables_4.html create mode 100644 docs/html/search/variables_4.js create mode 100644 docs/html/search/variables_5.html create mode 100644 docs/html/search/variables_5.js create mode 100644 docs/html/search/variables_6.html create mode 100644 docs/html/search/variables_6.js create mode 100644 docs/html/search/variables_7.html create mode 100644 docs/html/search/variables_7.js create mode 100644 docs/html/search/variables_8.html create mode 100644 docs/html/search/variables_8.js create mode 100644 docs/html/search/variables_9.html create mode 100644 docs/html/search/variables_9.js create mode 100644 docs/html/struct_arguments-members.html create mode 100644 docs/html/struct_arguments.html create mode 100644 docs/html/struct_location-members.html create mode 100644 docs/html/struct_location.html create mode 100644 docs/html/struct_location.js create mode 100644 docs/html/struct_token-members.html create mode 100644 docs/html/struct_token.html create mode 100644 docs/html/struct_token.js create mode 100644 docs/html/utils_8cpp.html create mode 100644 docs/html/utils_8cpp.js create mode 100644 docs/html/utils_8h.html create mode 100644 docs/html/utils_8h.js create mode 100644 docs/latex/_a_s_t_node_8cpp.tex create mode 100644 docs/latex/_a_s_t_node_8h.tex create mode 100644 docs/latex/_arguments_8cpp.tex create mode 100644 docs/latex/_arguments_8h.tex create mode 100644 docs/latex/_binary_op_node_8cpp.tex create mode 100644 docs/latex/_binary_op_node_8h.tex create mode 100644 docs/latex/_error_8cpp.tex create mode 100644 docs/latex/_error_8h.tex create mode 100644 docs/latex/_expr_node_8cpp.tex create mode 100644 docs/latex/_expr_node_8h.tex create mode 100644 docs/latex/_file_i_o_8cpp.tex create mode 100644 docs/latex/_file_i_o_8h.tex create mode 100644 docs/latex/_format_string_8hpp.tex create mode 100644 docs/latex/_importer_8cpp.tex create mode 100644 docs/latex/_importer_8h.tex create mode 100644 docs/latex/_lexer_8cpp.tex create mode 100644 docs/latex/_lexer_8h.tex create mode 100644 docs/latex/_location_8cpp.tex create mode 100644 docs/latex/_location_8h.tex create mode 100644 docs/latex/_mul_node_8cpp.tex create mode 100644 docs/latex/_mul_node_8h.tex create mode 100644 docs/latex/_normalizer_8cpp.tex create mode 100644 docs/latex/_normalizer_8h.tex create mode 100644 docs/latex/_number_node_8cpp.tex create mode 100644 docs/latex/_number_node_8h.tex create mode 100644 docs/latex/_parser_8cpp.tex create mode 100644 docs/latex/_parser_8h.tex create mode 100644 docs/latex/_statement_node_8cpp.tex create mode 100644 docs/latex/_statement_node_8h.tex create mode 100644 docs/latex/_sum_node_8cpp.tex create mode 100644 docs/latex/_sum_node_8h.tex create mode 100644 docs/latex/_token_8cpp.tex create mode 100644 docs/latex/_token_8h.tex create mode 100644 docs/latex/class_a_s_t_node.eps create mode 100644 docs/latex/class_a_s_t_node.pdf create mode 100644 docs/latex/class_a_s_t_node.tex create mode 100644 docs/latex/class_binary_op_node.eps create mode 100644 docs/latex/class_binary_op_node.pdf create mode 100644 docs/latex/class_binary_op_node.tex create mode 100644 docs/latex/class_expr_node.eps create mode 100644 docs/latex/class_expr_node.pdf create mode 100644 docs/latex/class_expr_node.tex create mode 100644 docs/latex/class_lexer.tex create mode 100644 docs/latex/class_mul_node.eps create mode 100644 docs/latex/class_mul_node.pdf create mode 100644 docs/latex/class_mul_node.tex create mode 100644 docs/latex/class_number_node.eps create mode 100644 docs/latex/class_number_node.pdf create mode 100644 docs/latex/class_number_node.tex create mode 100644 docs/latex/class_parser.tex create mode 100644 docs/latex/class_statement_node.eps create mode 100644 docs/latex/class_statement_node.pdf create mode 100644 docs/latex/class_statement_node.tex create mode 100644 docs/latex/class_sum_node.eps create mode 100644 docs/latex/class_sum_node.pdf create mode 100644 docs/latex/class_sum_node.tex create mode 100644 docs/latex/dir_2753544c6f01c90a87473366a10a4997.tex create mode 100644 docs/latex/dir_68267d1309a1af8e8297ef4c3efbcdba.tex create mode 100644 docs/latex/dir_ab56abf3846346f4195c14ed00ef0a8f.tex create mode 100644 docs/latex/files.tex create mode 100644 docs/latex/hierarchy.tex create mode 100644 docs/latex/namespace_error.tex create mode 100644 docs/latex/namespace_file_i_o.tex create mode 100644 docs/latex/namespace_importer.tex create mode 100644 docs/latex/namespace_normalizer.tex create mode 100644 docs/latex/namespaces.tex create mode 100644 docs/latex/sapphire_8cpp.tex create mode 100644 docs/latex/sapphirepch_8h.tex create mode 100644 docs/latex/struct_arguments.tex create mode 100644 docs/latex/struct_location.tex create mode 100644 docs/latex/struct_token.tex create mode 100644 docs/latex/utils_8cpp.tex create mode 100644 docs/latex/utils_8h.tex diff --git a/docs/html/_a_s_t_node_8cpp.html b/docs/html/_a_s_t_node_8cpp.html new file mode 100644 index 0000000..4a90466 --- /dev/null +++ b/docs/html/_a_s_t_node_8cpp.html @@ -0,0 +1,102 @@ + + + + + + + +sapphirec: src/AST/ASTNode.cpp File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ASTNode.cpp File Reference
+
+
+
#include "ASTNode.h"
+
+
+ + + + diff --git a/docs/html/_a_s_t_node_8h.html b/docs/html/_a_s_t_node_8h.html new file mode 100644 index 0000000..ab6aef6 --- /dev/null +++ b/docs/html/_a_s_t_node_8h.html @@ -0,0 +1,112 @@ + + + + + + + +sapphirec: src/AST/ASTNode.h File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ASTNode.h File Reference
+
+
+
#include <memory>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  ASTNode
 
+
+
+ + + + diff --git a/docs/html/_a_s_t_node_8h_source.html b/docs/html/_a_s_t_node_8h_source.html new file mode 100644 index 0000000..cd938fc --- /dev/null +++ b/docs/html/_a_s_t_node_8h_source.html @@ -0,0 +1,113 @@ + + + + + + + +sapphirec: src/AST/ASTNode.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ASTNode.h
+
+
+Go to the documentation of this file.
1 #pragma once
+
2 #include <memory>
+
3 
+
4 class ASTNode
+
5 {
+
6  public:
+
7  ASTNode();
+
8  ~ASTNode();
+
9 };
+
Definition: ASTNode.h:5
+
ASTNode()
Definition: ASTNode.cpp:3
+
~ASTNode()
Definition: ASTNode.cpp:7
+
+
+ + + + diff --git a/docs/html/_arguments_8cpp.html b/docs/html/_arguments_8cpp.html new file mode 100644 index 0000000..54e289b --- /dev/null +++ b/docs/html/_arguments_8cpp.html @@ -0,0 +1,133 @@ + + + + + + + +sapphirec: src/Arguments.cpp File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Arguments.cpp File Reference
+
+
+
#include "Arguments.h"
+#include "Error.h"
+#include "tclap/CmdLine.h"
+#include "utils.h"
+#include "llvm/Support/Host.h"
+
+ + + +

+Macros

#define benchmark(message)   __benchmark_impl __benchmark_impl_timer(message)
 
+

Macro Definition Documentation

+ +

◆ benchmark

+ +
+
+ + + + + + + + +
#define benchmark( message)   __benchmark_impl __benchmark_impl_timer(message)
+
+ +
+
+
+
+ + + + diff --git a/docs/html/_arguments_8cpp.js b/docs/html/_arguments_8cpp.js new file mode 100644 index 0000000..81b17d3 --- /dev/null +++ b/docs/html/_arguments_8cpp.js @@ -0,0 +1,4 @@ +var _arguments_8cpp = +[ + [ "benchmark", "_arguments_8cpp.html#ab219e0457ba1898f28a0a8ca1c22bb33", null ] +]; \ No newline at end of file diff --git a/docs/html/_arguments_8h.html b/docs/html/_arguments_8h.html new file mode 100644 index 0000000..f13aebc --- /dev/null +++ b/docs/html/_arguments_8h.html @@ -0,0 +1,113 @@ + + + + + + + +sapphirec: src/Arguments.h File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Arguments.h File Reference
+
+
+
#include "sapphirepch.h"
+#include <llvm/ADT/Triple.h>
+
+

Go to the source code of this file.

+ + + + +

+Classes

struct  Arguments
 
+
+
+ + + + diff --git a/docs/html/_arguments_8h_source.html b/docs/html/_arguments_8h_source.html new file mode 100644 index 0000000..c9dd84c --- /dev/null +++ b/docs/html/_arguments_8h_source.html @@ -0,0 +1,129 @@ + + + + + + + +sapphirec: src/Arguments.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Arguments.h
+
+
+Go to the documentation of this file.
1 #pragma once
+
2 #include "sapphirepch.h"
+
3 #include <llvm/ADT/Triple.h>
+
4 
+
5 struct Arguments
+
6 {
+
7  static void parse(int argc, char** argv);
+
8 
+
9  static std::string input_fname;
+
10  static std::string output_fname;
+
11 
+
12  static bool wimport;
+
13 
+
14  static std::string cpu;
+
15 
+
16  static llvm::Triple TargetTriple;
+
17 
+
18  private:
+
19  static void setTriple(const std::string& arch, const std::string& system);
+
20 };
+ +
Definition: Arguments.h:6
+
static bool wimport
Definition: Arguments.h:12
+
static std::string cpu
Definition: Arguments.h:14
+
static std::string input_fname
Definition: Arguments.h:9
+
static void parse(int argc, char **argv)
Definition: Arguments.cpp:13
+
static llvm::Triple TargetTriple
Definition: Arguments.h:16
+
static std::string output_fname
Definition: Arguments.h:10
+
+
+ + + + diff --git a/docs/html/_binary_op_node_8cpp.html b/docs/html/_binary_op_node_8cpp.html new file mode 100644 index 0000000..f13618a --- /dev/null +++ b/docs/html/_binary_op_node_8cpp.html @@ -0,0 +1,102 @@ + + + + + + + +sapphirec: src/AST/BinaryOpNode.cpp File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
BinaryOpNode.cpp File Reference
+
+
+
#include "BinaryOpNode.h"
+
+
+ + + + diff --git a/docs/html/_binary_op_node_8h.html b/docs/html/_binary_op_node_8h.html new file mode 100644 index 0000000..38f8514 --- /dev/null +++ b/docs/html/_binary_op_node_8h.html @@ -0,0 +1,112 @@ + + + + + + + +sapphirec: src/AST/BinaryOpNode.h File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
BinaryOpNode.h File Reference
+
+
+
#include "ExprNode.h"
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  BinaryOpNode
 
+
+
+ + + + diff --git a/docs/html/_binary_op_node_8h_source.html b/docs/html/_binary_op_node_8h_source.html new file mode 100644 index 0000000..59ef07a --- /dev/null +++ b/docs/html/_binary_op_node_8h_source.html @@ -0,0 +1,121 @@ + + + + + + + +sapphirec: src/AST/BinaryOpNode.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
BinaryOpNode.h
+
+
+Go to the documentation of this file.
1 #pragma once
+
2 #include "ExprNode.h"
+
3 
+
4 class BinaryOpNode : public ExprNode
+
5 {
+
6  protected:
+
7  std::shared_ptr<ExprNode> left;
+
8  std::shared_ptr<ExprNode> right;
+
9 
+
10  public:
+
11  BinaryOpNode(std::shared_ptr<ExprNode> left, std::shared_ptr<ExprNode> right);
+
12  ~BinaryOpNode();
+
13 };
+ +
Definition: BinaryOpNode.h:5
+
BinaryOpNode(std::shared_ptr< ExprNode > left, std::shared_ptr< ExprNode > right)
Definition: BinaryOpNode.cpp:3
+
~BinaryOpNode()
Definition: BinaryOpNode.cpp:8
+
std::shared_ptr< ExprNode > left
Definition: BinaryOpNode.h:7
+
std::shared_ptr< ExprNode > right
Definition: BinaryOpNode.h:8
+
Definition: ExprNode.h:5
+
+
+ + + + diff --git a/docs/html/_error_8cpp.html b/docs/html/_error_8cpp.html new file mode 100644 index 0000000..c9ee85e --- /dev/null +++ b/docs/html/_error_8cpp.html @@ -0,0 +1,106 @@ + + + + + + + +sapphirec: src/Error.cpp File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Error.cpp File Reference
+
+
+
#include "Error.h"
+#include "Importer.h"
+#include "utils.h"
+#include <algorithm>
+#include <iostream>
+
+
+ + + + diff --git a/docs/html/_error_8h.html b/docs/html/_error_8h.html new file mode 100644 index 0000000..13f71f0 --- /dev/null +++ b/docs/html/_error_8h.html @@ -0,0 +1,126 @@ + + + + + + + +sapphirec: src/Error.h File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Error.h File Reference
+
+
+
#include "Location.h"
+
+

Go to the source code of this file.

+ + + + +

+Namespaces

 Error
 
+ + + + + + + + + + + +

+Functions

void Error::show_import_line (const Location &loc, std::ostream &output_stream)
 
void Error::throw_error (const Location &loc, const std::string line_text, const std::string &details)
 
void Error::throw_error_without_location (const std::string &details)
 
void Error::throw_warning (const Location &loc, const std::string line_text, const std::string &details)
 
void Error::show_import_lines (const Location &loc, void(*import_line_printer)(const Location &, std::ostream &), std::ostream &stream)
 
+
+
+ + + + diff --git a/docs/html/_error_8h.js b/docs/html/_error_8h.js new file mode 100644 index 0000000..9f888b1 --- /dev/null +++ b/docs/html/_error_8h.js @@ -0,0 +1,8 @@ +var _error_8h = +[ + [ "show_import_line", "_error_8h.html#aa3680909596c6ac37bc0579385b59632", null ], + [ "show_import_lines", "_error_8h.html#a938494fd39f939d79cd611b5bd2f2b67", null ], + [ "throw_error", "_error_8h.html#a52e79c9d3b4d7280ffee959c4646675f", null ], + [ "throw_error_without_location", "_error_8h.html#a97056e92a18863fb0f490c73bc089fbe", null ], + [ "throw_warning", "_error_8h.html#ab62bae2c735ea379eab3a8039c2c1ade", null ] +]; \ No newline at end of file diff --git a/docs/html/_error_8h_source.html b/docs/html/_error_8h_source.html new file mode 100644 index 0000000..8326382 --- /dev/null +++ b/docs/html/_error_8h_source.html @@ -0,0 +1,125 @@ + + + + + + + +sapphirec: src/Error.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Error.h
+
+
+Go to the documentation of this file.
1 #pragma once
+
2 #include "Location.h"
+
3 
+
4 namespace Error
+
5 {
+
6 void show_import_line(const Location& loc, std::ostream& output_stream);
+
7 
+
8 [[noreturn]] void throw_error(const Location& loc, const std::string line_text, const std::string& details);
+
9 
+
10 [[noreturn]] void throw_error_without_location(const std::string& details);
+
11 
+
12 void throw_warning(const Location& loc, const std::string line_text, const std::string& details);
+
13 
+
14 void show_import_lines(const Location& loc, void (*import_line_printer)(const Location&, std::ostream&),
+
15  std::ostream& stream);
+
16 } // namespace Error
+ +
Definition: Error.h:5
+
void throw_error(const Location &loc, const std::string line_text, const std::string &details)
Definition: Error.cpp:41
+
void show_import_lines(const Location &loc, void(*import_line_printer)(const Location &, std::ostream &), std::ostream &stream)
Definition: Error.cpp:21
+
void throw_error_without_location(const std::string &details)
Definition: Error.cpp:74
+
void show_import_line(const Location &loc, std::ostream &output_stream)
Definition: Error.cpp:7
+
void throw_warning(const Location &loc, const std::string line_text, const std::string &details)
Definition: Error.cpp:88
+
Definition: Location.h:6
+
+
+ + + + diff --git a/docs/html/_expr_node_8cpp.html b/docs/html/_expr_node_8cpp.html new file mode 100644 index 0000000..8b6b60c --- /dev/null +++ b/docs/html/_expr_node_8cpp.html @@ -0,0 +1,102 @@ + + + + + + + +sapphirec: src/AST/ExprNode.cpp File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ExprNode.cpp File Reference
+
+
+
#include "ExprNode.h"
+
+
+ + + + diff --git a/docs/html/_expr_node_8h.html b/docs/html/_expr_node_8h.html new file mode 100644 index 0000000..c025f22 --- /dev/null +++ b/docs/html/_expr_node_8h.html @@ -0,0 +1,112 @@ + + + + + + + +sapphirec: src/AST/ExprNode.h File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ExprNode.h File Reference
+
+
+
#include "ASTNode.h"
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  ExprNode
 
+
+
+ + + + diff --git a/docs/html/_expr_node_8h_source.html b/docs/html/_expr_node_8h_source.html new file mode 100644 index 0000000..1381ca3 --- /dev/null +++ b/docs/html/_expr_node_8h_source.html @@ -0,0 +1,118 @@ + + + + + + + +sapphirec: src/AST/ExprNode.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ExprNode.h
+
+
+Go to the documentation of this file.
1 #pragma once
+
2 #include "ASTNode.h"
+
3 
+
4 class ExprNode : public ASTNode
+
5 {
+
6  std::shared_ptr<ExprNode> child;
+
7 
+
8  public:
+
9  ExprNode(std::shared_ptr<ExprNode> child);
+
10  ExprNode();
+
11  ~ExprNode();
+
12 };
+ +
Definition: ASTNode.h:5
+
Definition: ExprNode.h:5
+
~ExprNode()
Definition: ExprNode.cpp:11
+
ExprNode()
Definition: ExprNode.cpp:7
+
+
+ + + + diff --git a/docs/html/_file_i_o_8cpp.html b/docs/html/_file_i_o_8cpp.html new file mode 100644 index 0000000..0a8141c --- /dev/null +++ b/docs/html/_file_i_o_8cpp.html @@ -0,0 +1,108 @@ + + + + + + + +sapphirec: src/FileIO.cpp File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
FileIO.cpp File Reference
+
+
+
#include "FileIO.h"
+#include "Error.h"
+#include "sapphirepch.h"
+#include <cstring>
+#include <errno.h>
+#include <filesystem>
+#include <fstream>
+
+
+ + + + diff --git a/docs/html/_file_i_o_8h.html b/docs/html/_file_i_o_8h.html new file mode 100644 index 0000000..d2d6784 --- /dev/null +++ b/docs/html/_file_i_o_8h.html @@ -0,0 +1,122 @@ + + + + + + + +sapphirec: src/FileIO.h File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
FileIO.h File Reference
+
+
+
#include "sapphirepch.h"
+
+

Go to the source code of this file.

+ + + + +

+Namespaces

 FileIO
 
+ + + + + + + +

+Functions

std::string FileIO::read_all (const std::string &filename)
 
void FileIO::write_all (const std::string &filename, const std::string &contents)
 
std::string FileIO::remove_file_extension (const std::string &filename)
 
+
+
+ + + + diff --git a/docs/html/_file_i_o_8h.js b/docs/html/_file_i_o_8h.js new file mode 100644 index 0000000..48970aa --- /dev/null +++ b/docs/html/_file_i_o_8h.js @@ -0,0 +1,6 @@ +var _file_i_o_8h = +[ + [ "read_all", "_file_i_o_8h.html#ab49a427f3ddb1f750b4314dfdb17be2b", null ], + [ "remove_file_extension", "_file_i_o_8h.html#a3aa60357e37b7acc57f3e89e80d6e7a4", null ], + [ "write_all", "_file_i_o_8h.html#a84b962dcd17d16c361902d8b179d3b47", null ] +]; \ No newline at end of file diff --git a/docs/html/_file_i_o_8h_source.html b/docs/html/_file_i_o_8h_source.html new file mode 100644 index 0000000..5a87b39 --- /dev/null +++ b/docs/html/_file_i_o_8h_source.html @@ -0,0 +1,119 @@ + + + + + + + +sapphirec: src/FileIO.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
FileIO.h
+
+
+Go to the documentation of this file.
1 #pragma once
+
2 #include "sapphirepch.h"
+
3 
+
4 /* Namespace for simple file operations. */
+
5 namespace FileIO
+
6 {
+
7 /* Helper function to read all of a file's contents. */
+
8 std::string read_all(const std::string& filename);
+
9 /* Helper function to write a string to a file. */
+
10 void write_all(const std::string& filename, const std::string& contents);
+
11 /* Return a filename without its extension. */
+
12 std::string remove_file_extension(const std::string& filename);
+
13 } // namespace FileIO
+
Definition: FileIO.h:6
+
std::string remove_file_extension(const std::string &filename)
Definition: FileIO.cpp:42
+
void write_all(const std::string &filename, const std::string &contents)
Definition: FileIO.cpp:35
+
std::string read_all(const std::string &filename)
Definition: FileIO.cpp:9
+ +
+
+ + + + diff --git a/docs/html/_format_string_8hpp.html b/docs/html/_format_string_8hpp.html new file mode 100644 index 0000000..5a2b61c --- /dev/null +++ b/docs/html/_format_string_8hpp.html @@ -0,0 +1,202 @@ + + + + + + + +sapphirec: src/FormatString/FormatString.hpp File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
FormatString.hpp File Reference
+
+
+
#include <memory>
+#include <string>
+#include <cstdio>
+
+

Go to the source code of this file.

+ + + + + + + + + + + +

+Functions

template<typename T >
auto convert (T &&t)
 
template<typename... Args>
std::string format_string_internal (const std::string &format, Args &&... args)
 
template<typename... Args>
std::string format_string (const std::string &format, Args &&... args)
 
+

Function Documentation

+ +

◆ convert()

+ +
+
+
+template<typename T >
+ + + + + + + + +
auto convert (T && t)
+
+ +
+
+ +

◆ format_string()

+ +
+
+
+template<typename... Args>
+ + + + + + + + + + + + + + + + + + +
std::string format_string (const std::string & format,
Args &&... args 
)
+
+ +
+
+ +

◆ format_string_internal()

+ +
+
+
+template<typename... Args>
+ + + + + + + + + + + + + + + + + + +
std::string format_string_internal (const std::string & format,
Args &&... args 
)
+
+ +
+
+
+
+ + + + diff --git a/docs/html/_format_string_8hpp.js b/docs/html/_format_string_8hpp.js new file mode 100644 index 0000000..1f4da36 --- /dev/null +++ b/docs/html/_format_string_8hpp.js @@ -0,0 +1,6 @@ +var _format_string_8hpp = +[ + [ "convert", "_format_string_8hpp.html#a207942ebe626457e5847d109dce89ffc", null ], + [ "format_string", "_format_string_8hpp.html#ac54251dfd9c366f92c8bf00086dc5764", null ], + [ "format_string_internal", "_format_string_8hpp.html#a01af0cba6af7f12e6608cd28d0af0091", null ] +]; \ No newline at end of file diff --git a/docs/html/_format_string_8hpp_source.html b/docs/html/_format_string_8hpp_source.html new file mode 100644 index 0000000..845f7e9 --- /dev/null +++ b/docs/html/_format_string_8hpp_source.html @@ -0,0 +1,148 @@ + + + + + + + +sapphirec: src/FormatString/FormatString.hpp Source File + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
FormatString.hpp
+
+
+Go to the documentation of this file.
1 // Taken from https://github.com/InversePalindrome/Blog/blob/master/FormatString/FormatString.hpp
+
2 
+
3 /*
+
4 Copyright (c) 2019 Inverse Palindrome
+
5 Blog - FormatString.hpp
+
6 https://inversepalindrome.com/
+
7 */
+
8 
+
9 #pragma once
+
10 
+
11 #include <memory>
+
12 #include <string>
+
13 #include <cstdio>
+
14 
+
15 
+
16 template<typename T>
+
17 auto convert(T&& t)
+
18 {
+
19  if constexpr (std::is_same<std::remove_cv_t<std::remove_reference_t<T>>, std::string>::value)
+
20  {
+
21  return std::forward<T>(t).c_str();
+
22  }
+
23  else
+
24  {
+
25  return std::forward<T>(t);
+
26  }
+
27 }
+
28 
+
29 template<typename... Args>
+
30 std::string format_string_internal(const std::string& format, Args&& ... args)
+
31 {
+
32  const auto size = std::snprintf(nullptr, 0, format.c_str(), std::forward<Args>(args)...) + 1;
+
33  const auto buffer = std::make_unique<char[]>(size);
+
34 
+
35  std::snprintf(buffer.get(), size, format.c_str(), std::forward<Args>(args)...);
+
36 
+
37  return std::string(buffer.get(), buffer.get() + size - 1);
+
38 }
+
39 
+
40 template<typename... Args>
+
41 std::string format_string(const std::string& format, Args&& ... args)
+
42 {
+
43  return format_string_internal(format, convert(std::forward<Args>(args))...);
+
44 }
+
std::string format_string_internal(const std::string &format, Args &&... args)
Definition: FormatString.hpp:30
+
auto convert(T &&t)
Definition: FormatString.hpp:17
+
std::string format_string(const std::string &format, Args &&... args)
Definition: FormatString.hpp:41
+
+
+ + + + diff --git a/docs/html/_importer_8cpp.html b/docs/html/_importer_8cpp.html new file mode 100644 index 0000000..fffaa61 --- /dev/null +++ b/docs/html/_importer_8cpp.html @@ -0,0 +1,131 @@ + + + + + + + +sapphirec: src/Importer.cpp File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Importer.cpp File Reference
+
+
+
#include "Importer.h"
+#include "Arguments.h"
+#include "Error.h"
+#include "FileIO.h"
+#include "sapphirepch.h"
+#include "utils.h"
+#include <fstream>
+
+ + + +

+Macros

#define MAX_IMPORTS   100
 
+

Macro Definition Documentation

+ +

◆ MAX_IMPORTS

+ +
+
+ + + + +
#define MAX_IMPORTS   100
+
+ +
+
+
+
+ + + + diff --git a/docs/html/_importer_8cpp.js b/docs/html/_importer_8cpp.js new file mode 100644 index 0000000..e43a2eb --- /dev/null +++ b/docs/html/_importer_8cpp.js @@ -0,0 +1,4 @@ +var _importer_8cpp = +[ + [ "MAX_IMPORTS", "_importer_8cpp.html#add187787253a083baba7238223a93a45", null ] +]; \ No newline at end of file diff --git a/docs/html/_importer_8h.html b/docs/html/_importer_8h.html new file mode 100644 index 0000000..25bfe18 --- /dev/null +++ b/docs/html/_importer_8h.html @@ -0,0 +1,131 @@ + + + + + + + +sapphirec: src/Importer.h File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Importer.h File Reference
+
+
+
#include "Lexer.h"
+#include "Token.h"
+
+

Go to the source code of this file.

+ + + + +

+Namespaces

 Importer
 
+ + + + + +

+Functions

TokenStream Importer::evaluate (const TokenStream &original)
 
void Importer::init (std::string init_file)
 
+ + + + + + + +

+Variables

int Importer::import_count = 0
 
std::vector< std::shared_ptr< Location > > Importer::import_stack
 
std::vector< std::string > Importer::imported_files
 
+
+
+ + + + diff --git a/docs/html/_importer_8h.js b/docs/html/_importer_8h.js new file mode 100644 index 0000000..15b8b88 --- /dev/null +++ b/docs/html/_importer_8h.js @@ -0,0 +1,8 @@ +var _importer_8h = +[ + [ "evaluate", "_importer_8h.html#ae5e2ed66024ff80241bd740c66745bd6", null ], + [ "init", "_importer_8h.html#abd3407990e0fe2e71bb95782791ee1c9", null ], + [ "import_count", "_importer_8h.html#a868c1a6abdf06ce496f3b66e62a6d5f0", null ], + [ "import_stack", "_importer_8h.html#a15ee91166a2ddf7756aec26590c5ce93", null ], + [ "imported_files", "_importer_8h.html#a9525c45990838226b598b1e618bdb94d", null ] +]; \ No newline at end of file diff --git a/docs/html/_importer_8h_source.html b/docs/html/_importer_8h_source.html new file mode 100644 index 0000000..c11643d --- /dev/null +++ b/docs/html/_importer_8h_source.html @@ -0,0 +1,122 @@ + + + + + + + +sapphirec: src/Importer.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Importer.h
+
+
+Go to the documentation of this file.
1 #pragma once
+
2 #include "Lexer.h"
+
3 #include "Token.h"
+
4 
+
5 namespace Importer
+
6 {
+
7 extern int import_count;
+
8 extern std::vector<std::shared_ptr<Location>> import_stack;
+
9 extern std::vector<std::string> imported_files;
+
10 TokenStream evaluate(const TokenStream& original);
+
11 void init(std::string init_file);
+
12 } // namespace Importer
+ +
std::vector< Token > TokenStream
Definition: Lexer.h:7
+ +
Definition: Importer.h:6
+
std::vector< std::shared_ptr< Location > > import_stack
Definition: Importer.cpp:12
+
int import_count
Definition: Importer.cpp:10
+
std::vector< std::string > imported_files
Definition: Importer.cpp:13
+
void init(std::string init_file)
Definition: Importer.cpp:165
+
TokenStream evaluate(const TokenStream &original)
Definition: Importer.cpp:15
+
+
+ + + + diff --git a/docs/html/_lexer_8cpp.html b/docs/html/_lexer_8cpp.html new file mode 100644 index 0000000..7f4b86c --- /dev/null +++ b/docs/html/_lexer_8cpp.html @@ -0,0 +1,175 @@ + + + + + + + +sapphirec: src/Lexer.cpp File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Lexer.cpp File Reference
+
+
+
#include "Lexer.h"
+#include "Error.h"
+#include "utils.h"
+
+ + + + + + + + + +

+Macros

#define WHITESPACE   "\t \n"
 
#define LETTERS   "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWYZ_"
 
#define IDENTIFIERS   "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWYZ_0123456789"
 
#define DIGITS   "0123456789"
 
+

Macro Definition Documentation

+ +

◆ DIGITS

+ +
+
+ + + + +
#define DIGITS   "0123456789"
+
+ +
+
+ +

◆ IDENTIFIERS

+ +
+
+ + + + +
#define IDENTIFIERS   "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWYZ_0123456789"
+
+ +
+
+ +

◆ LETTERS

+ +
+
+ + + + +
#define LETTERS   "abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWYZ_"
+
+ +
+
+ +

◆ WHITESPACE

+ +
+
+ + + + +
#define WHITESPACE   "\t \n"
+
+ +
+
+
+
+ + + + diff --git a/docs/html/_lexer_8cpp.js b/docs/html/_lexer_8cpp.js new file mode 100644 index 0000000..5f434c7 --- /dev/null +++ b/docs/html/_lexer_8cpp.js @@ -0,0 +1,7 @@ +var _lexer_8cpp = +[ + [ "DIGITS", "_lexer_8cpp.html#a28c8bd90ea71ec24e5f43f413a9ee8b4", null ], + [ "IDENTIFIERS", "_lexer_8cpp.html#a2f45e4037b2089a3c1ac9f7ad664d2f6", null ], + [ "LETTERS", "_lexer_8cpp.html#ab19b99692e802c4a2e44884ec87713bb", null ], + [ "WHITESPACE", "_lexer_8cpp.html#abfa0d183e035eb9705b5faec98294d0f", null ] +]; \ No newline at end of file diff --git a/docs/html/_lexer_8h.html b/docs/html/_lexer_8h.html new file mode 100644 index 0000000..9f0d7dd --- /dev/null +++ b/docs/html/_lexer_8h.html @@ -0,0 +1,156 @@ + + + + + + + +sapphirec: src/Lexer.h File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Lexer.h File Reference
+
+
+
#include "Token.h"
+#include "sapphirepch.h"
+#include <array>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  Lexer
 
+ + + +

+Macros

#define TYPE_COUNT   14
 
+ + + +

+Typedefs

typedef std::vector< TokenTokenStream
 
+

Macro Definition Documentation

+ +

◆ TYPE_COUNT

+ +
+
+ + + + +
#define TYPE_COUNT   14
+
+ +
+
+

Typedef Documentation

+ +

◆ TokenStream

+ +
+
+ + + + +
typedef std::vector<Token> TokenStream
+
+ +
+
+
+
+ + + + diff --git a/docs/html/_lexer_8h.js b/docs/html/_lexer_8h.js new file mode 100644 index 0000000..d64233a --- /dev/null +++ b/docs/html/_lexer_8h.js @@ -0,0 +1,6 @@ +var _lexer_8h = +[ + [ "Lexer", "class_lexer.html", "class_lexer" ], + [ "TYPE_COUNT", "_lexer_8h.html#a5aa140c2c2e64a57331d450a98077834", null ], + [ "TokenStream", "_lexer_8h.html#a43f892d4a347a32f8602cfbcff2e237e", null ] +]; \ No newline at end of file diff --git a/docs/html/_lexer_8h_source.html b/docs/html/_lexer_8h_source.html new file mode 100644 index 0000000..ea340e0 --- /dev/null +++ b/docs/html/_lexer_8h_source.html @@ -0,0 +1,165 @@ + + + + + + + +sapphirec: src/Lexer.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Lexer.h
+
+
+Go to the documentation of this file.
1 #pragma once
+
2 #include "Token.h"
+
3 #include "sapphirepch.h"
+
4 #include <array>
+
5 
+
6 /* Let's redefine TokenStream, as if it wasn't already defined in Token.h*/
+
7 typedef std::vector<Token> TokenStream;
+
8 /* The number of data types currently in Sapphire. */
+
9 #define TYPE_COUNT 14
+
10 
+
11 /* The Lexer for the Sapphire compiler. A Lexer reads source code from a file, and turns it into a stream of tokens the
+
12  * compiler can understand. */
+
13 class Lexer
+
14 {
+
15  private:
+
16  Location loc;
+
17  Location prev_loc;
+
18 
+
19  int advance();
+
20  int rewind();
+
21  char current_char;
+
22  int index;
+
23 
+
24  Lexer(const std::string& fname);
+
25 
+
26  std::string current_line_text;
+
27  std::string previous_line_text;
+
28 
+
29  std::string current_lexed_text;
+
30 
+
31  std::string recalculate_current_line(const std::string& text);
+
32 
+
33  Token create_string();
+
34  Token create_number();
+
35  Token create_identifier();
+
36 
+
37  bool is_in_string(const std::string& string, const char& character);
+
38 
+
39  public:
+
40  /* An array containing Sapphire's current data types. */
+
41  static const std::array<std::string, TYPE_COUNT> types;
+
42 
+
43  ~Lexer();
+
44 
+
45  /* Lex the given text, turning it into a stream of tokens. */
+
46  TokenStream lex(const std::string& text);
+
47 
+
48  /* Create a new Lexer and return a pointer to it. */
+
49  static std::unique_ptr<Lexer> make_lexer(const std::string& fname);
+
50 
+
51  /* If the Lexer is lexing an impòrted file, give it the location in the parent file at which it was imported. */
+
52  static void assign_parent_location(std::unique_ptr<Lexer>& lexer, const std::shared_ptr<Location>& loc);
+
53 };
+
std::vector< Token > TokenStream
Definition: Lexer.h:7
+ +
Definition: Lexer.h:14
+
static std::unique_ptr< Lexer > make_lexer(const std::string &fname)
Definition: Lexer.cpp:63
+
static const std::array< std::string, TYPE_COUNT > types
Definition: Lexer.h:41
+
static void assign_parent_location(std::unique_ptr< Lexer > &lexer, const std::shared_ptr< Location > &loc)
Definition: Lexer.cpp:68
+
TokenStream lex(const std::string &text)
Definition: Lexer.cpp:78
+
~Lexer()
Definition: Lexer.cpp:17
+ +
Definition: Location.h:6
+
Definition: Token.h:54
+
+
+ + + + diff --git a/docs/html/_location_8cpp.html b/docs/html/_location_8cpp.html new file mode 100644 index 0000000..cb3e16a --- /dev/null +++ b/docs/html/_location_8cpp.html @@ -0,0 +1,103 @@ + + + + + + + +sapphirec: src/Location.cpp File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Location.cpp File Reference
+
+
+
#include "Location.h"
+#include <sstream>
+
+
+ + + + diff --git a/docs/html/_location_8h.html b/docs/html/_location_8h.html new file mode 100644 index 0000000..f31ac5a --- /dev/null +++ b/docs/html/_location_8h.html @@ -0,0 +1,112 @@ + + + + + + + +sapphirec: src/Location.h File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Location.h File Reference
+
+
+
#include "sapphirepch.h"
+
+

Go to the source code of this file.

+ + + + +

+Classes

struct  Location
 
+
+
+ + + + diff --git a/docs/html/_location_8h_source.html b/docs/html/_location_8h_source.html new file mode 100644 index 0000000..7f697ac --- /dev/null +++ b/docs/html/_location_8h_source.html @@ -0,0 +1,149 @@ + + + + + + + +sapphirec: src/Location.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Location.h
+
+
+Go to the documentation of this file.
1 #pragma once
+
2 #include "sapphirepch.h"
+
3 
+
4 /* Struct to represent a location in a file. */
+
5 struct Location
+
6 {
+
7  int line;
+
8  int column;
+
9  std::string fname;
+
10 
+
11  /* The location at which this location was imported, for error traces in imported files. */
+
12  std::shared_ptr<Location> parent = nullptr;
+
13 
+
14  /* Creates a Location with the given parameters. */
+
15  Location(int ln, int col, std::string file);
+
16 
+
17  ~Location();
+
18 
+
19  /* Returns a string of the format FILE:LINE:COL. */
+
20  std::string str() const;
+
21  /* Returns a string of the format (FILE:LINE:COL). */
+
22  std::string paren_str() const;
+
23 
+
24  /* Advance to the next column in the file. */
+
25  void advance();
+
26 
+
27  /* Advance to the next line if provided a newline. */
+
28  void pos_from_char(const char& character);
+
29 
+
30  void operator=(const Location& other);
+
31 
+
32  /* Copies the other location into this one. */
+
33  void copy(const Location& other);
+
34 };
+ +
Definition: Location.h:6
+
int line
Definition: Location.h:7
+
void advance()
Definition: Location.cpp:24
+
void copy(const Location &other)
Definition: Location.cpp:46
+
std::string fname
Definition: Location.h:9
+
Location(int ln, int col, std::string file)
Definition: Location.cpp:4
+
void operator=(const Location &other)
Definition: Location.cpp:38
+
std::string paren_str() const
Definition: Location.cpp:19
+
void pos_from_char(const char &character)
Definition: Location.cpp:29
+
std::string str() const
Definition: Location.cpp:12
+
int column
Definition: Location.h:8
+
std::shared_ptr< Location > parent
Definition: Location.h:12
+
~Location()
Definition: Location.cpp:8
+
+
+ + + + diff --git a/docs/html/_mul_node_8cpp.html b/docs/html/_mul_node_8cpp.html new file mode 100644 index 0000000..06b2f1b --- /dev/null +++ b/docs/html/_mul_node_8cpp.html @@ -0,0 +1,102 @@ + + + + + + + +sapphirec: src/AST/MulNode.cpp File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
MulNode.cpp File Reference
+
+
+
#include "MulNode.h"
+
+
+ + + + diff --git a/docs/html/_mul_node_8h.html b/docs/html/_mul_node_8h.html new file mode 100644 index 0000000..19dce17 --- /dev/null +++ b/docs/html/_mul_node_8h.html @@ -0,0 +1,112 @@ + + + + + + + +sapphirec: src/AST/MulNode.h File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
MulNode.h File Reference
+
+
+
#include "BinaryOpNode.h"
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  MulNode
 
+
+
+ + + + diff --git a/docs/html/_mul_node_8h_source.html b/docs/html/_mul_node_8h_source.html new file mode 100644 index 0000000..67e0827 --- /dev/null +++ b/docs/html/_mul_node_8h_source.html @@ -0,0 +1,119 @@ + + + + + + + +sapphirec: src/AST/MulNode.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
MulNode.h
+
+
+Go to the documentation of this file.
1 #pragma once
+
2 #include "BinaryOpNode.h"
+
3 
+
4 class MulNode final : public BinaryOpNode
+
5 {
+
6  char op;
+
7 
+
8  public:
+
9  MulNode(std::shared_ptr<ExprNode> left, std::shared_ptr<ExprNode> right, char op);
+
10  ~MulNode();
+
11 };
+ +
Definition: BinaryOpNode.h:5
+
std::shared_ptr< ExprNode > left
Definition: BinaryOpNode.h:7
+
std::shared_ptr< ExprNode > right
Definition: BinaryOpNode.h:8
+
Definition: MulNode.h:5
+
MulNode(std::shared_ptr< ExprNode > left, std::shared_ptr< ExprNode > right, char op)
Definition: MulNode.cpp:3
+
~MulNode()
Definition: MulNode.cpp:8
+
+
+ + + + diff --git a/docs/html/_normalizer_8cpp.html b/docs/html/_normalizer_8cpp.html new file mode 100644 index 0000000..7fe7199 --- /dev/null +++ b/docs/html/_normalizer_8cpp.html @@ -0,0 +1,103 @@ + + + + + + + +sapphirec: src/Normalizer.cpp File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Normalizer.cpp File Reference
+
+
+
#include "Normalizer.h"
+#include "utils.h"
+
+
+ + + + diff --git a/docs/html/_normalizer_8h.html b/docs/html/_normalizer_8h.html new file mode 100644 index 0000000..ae3297f --- /dev/null +++ b/docs/html/_normalizer_8h.html @@ -0,0 +1,119 @@ + + + + + + + +sapphirec: src/Normalizer.h File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Normalizer.h File Reference
+
+
+
#include "Lexer.h"
+#include "Token.h"
+
+

Go to the source code of this file.

+ + + + +

+Namespaces

 Normalizer
 
+ + + +

+Functions

TokenStream Normalizer::normalize (const TokenStream &input)
 
+
+
+ + + + diff --git a/docs/html/_normalizer_8h.js b/docs/html/_normalizer_8h.js new file mode 100644 index 0000000..827ecfa --- /dev/null +++ b/docs/html/_normalizer_8h.js @@ -0,0 +1,4 @@ +var _normalizer_8h = +[ + [ "normalize", "_normalizer_8h.html#a89d929aace148fe5c998416863397f39", null ] +]; \ No newline at end of file diff --git a/docs/html/_normalizer_8h_source.html b/docs/html/_normalizer_8h_source.html new file mode 100644 index 0000000..38a1f83 --- /dev/null +++ b/docs/html/_normalizer_8h_source.html @@ -0,0 +1,120 @@ + + + + + + + +sapphirec: src/Normalizer.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Normalizer.h
+
+
+Go to the documentation of this file.
1 #pragma once
+
2 #include "Lexer.h" // for TokenStream
+
3 #include "Token.h"
+
4 
+
5 /* Namespace to normalize a TokenStream. */
+
6 namespace Normalizer
+
7 {
+
8 /* Some tokens are difficult for the Lexer to parse right, or maybe I'm just lazy.
+
9 Anyways, this function transforms > and = tokens next to each other into a single >=, which has a different meaning,
+
10 etc... For example: = + = : ==, < + = : <=...
+
11 
+
12 It also takes blank tokens and removes them. */
+
13 TokenStream normalize(const TokenStream& input);
+
14 } // namespace Normalizer
+ +
std::vector< Token > TokenStream
Definition: Lexer.h:7
+ +
Definition: Normalizer.h:7
+
TokenStream normalize(const TokenStream &input)
Definition: Normalizer.cpp:4
+
+
+ + + + diff --git a/docs/html/_number_node_8cpp.html b/docs/html/_number_node_8cpp.html new file mode 100644 index 0000000..3ca722f --- /dev/null +++ b/docs/html/_number_node_8cpp.html @@ -0,0 +1,102 @@ + + + + + + + +sapphirec: src/AST/NumberNode.cpp File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
NumberNode.cpp File Reference
+
+
+
#include "NumberNode.h"
+
+
+ + + + diff --git a/docs/html/_number_node_8h.html b/docs/html/_number_node_8h.html new file mode 100644 index 0000000..7787b6e --- /dev/null +++ b/docs/html/_number_node_8h.html @@ -0,0 +1,113 @@ + + + + + + + +sapphirec: src/AST/NumberNode.h File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
NumberNode.h File Reference
+
+
+
#include "ExprNode.h"
+#include <string>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  NumberNode
 
+
+
+ + + + diff --git a/docs/html/_number_node_8h_source.html b/docs/html/_number_node_8h_source.html new file mode 100644 index 0000000..f233f10 --- /dev/null +++ b/docs/html/_number_node_8h_source.html @@ -0,0 +1,116 @@ + + + + + + + +sapphirec: src/AST/NumberNode.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
NumberNode.h
+
+
+Go to the documentation of this file.
1 #pragma once
+
2 #include "ExprNode.h"
+
3 #include <string>
+
4 
+
5 class NumberNode : public ExprNode
+
6 {
+
7  public:
+
8  NumberNode();
+
9  ~NumberNode();
+
10 };
+ +
Definition: ExprNode.h:5
+
Definition: NumberNode.h:6
+
~NumberNode()
Definition: NumberNode.cpp:7
+
NumberNode()
Definition: NumberNode.cpp:3
+
+
+ + + + diff --git a/docs/html/_parser_8cpp.html b/docs/html/_parser_8cpp.html new file mode 100644 index 0000000..86a3e7a --- /dev/null +++ b/docs/html/_parser_8cpp.html @@ -0,0 +1,102 @@ + + + + + + + +sapphirec: src/Parser.cpp File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Parser.cpp File Reference
+
+
+
#include "Parser.h"
+
+
+ + + + diff --git a/docs/html/_parser_8h.html b/docs/html/_parser_8h.html new file mode 100644 index 0000000..3c19f9c --- /dev/null +++ b/docs/html/_parser_8h.html @@ -0,0 +1,115 @@ + + + + + + + +sapphirec: src/Parser.h File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Parser.h File Reference
+
+
+
#include "AST/NumberNode.h"
+#include "Error.h"
+#include "Lexer.h"
+#include "sapphirepch.h"
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  Parser
 
+
+
+ + + + diff --git a/docs/html/_parser_8h_source.html b/docs/html/_parser_8h_source.html new file mode 100644 index 0000000..d8ce2c3 --- /dev/null +++ b/docs/html/_parser_8h_source.html @@ -0,0 +1,184 @@ + + + + + + + +sapphirec: src/Parser.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Parser.h
+
+
+Go to the documentation of this file.
1 #pragma once
+
2 #include "AST/NumberNode.h"
+
3 #include "Error.h"
+
4 #include "Lexer.h"
+
5 #include "sapphirepch.h"
+
6 
+
7 /* Parser class for the Sapphire compiler. */
+
8 class Parser
+
9 {
+
10  /* Struct to store a parsing result which can be either a parsing error or a success, in which case it contains a
+
11  * pointer to the result. */
+
12  template<typename T> struct ErrorOr
+
13  {
+
14  /* Return the stored pointer. */
+
15  std::shared_ptr<T> get()
+
16  {
+
17  assert(!m_is_error);
+
18  return m_ptr;
+
19  }
+
20 
+
21  /* Call Error::throw_error() with the stored error's location, line text, and the error string provided to this
+
22  * struct instance. */
+
23  void ethrow()
+
24  {
+
25  assert(m_is_error);
+
26  Error::throw_error(error_tok->loc, error_tok->line(), m_error);
+
27  }
+
28 
+
29  /* Construct a new successful ErrorOr with a heap-allocated pointer to the result class. */
+
30  ErrorOr(T* ptr) : m_ptr(ptr), m_is_error(false)
+
31  {
+
32  }
+
33  /* Construct a new failed ErrorOr with the error details and the token where parsing failed. */
+
34  ErrorOr(const std::string& error, const Token& error_tok)
+
35  : m_error(error), m_is_error(true), error_tok(error_tok)
+
36  {
+
37  }
+
38 
+
39  /* Is this ErrorOr instance successful or failed? */
+
40  bool is_error()
+
41  {
+
42  return m_is_error;
+
43  }
+
44 
+
45  private:
+
46  bool m_is_error;
+
47  std::string m_error;
+
48  std::unique_ptr<Token> error_tok;
+
49  std::shared_ptr<T> m_ptr;
+
50  };
+
51 
+
52  private:
+
53  Parser(const TokenStream& tokens);
+
54  TokenStream tokens;
+
55 
+
56  ErrorOr<ExprNode> walk_expr();
+
57  ErrorOr<NumberNode> walk_number();
+
58 
+
59  int m_index;
+
60  int saved_m_index;
+
61 
+
62  void save_current_position();
+
63  void restore_current_position();
+
64 
+
65  public:
+
66  ~Parser();
+
67 
+
68  /* Construct a new Parser with the given TokenStream. */
+
69  static std::shared_ptr<Parser> new_parser(const TokenStream& tokens);
+
70  /* Parse the stored TokenStream and return the top-level node of the result Abstract Syntax Tree. */
+
71  std::shared_ptr<ASTNode> parse();
+
72 };
+ + +
std::vector< Token > TokenStream
Definition: Lexer.h:7
+ +
Definition: Parser.h:9
+
~Parser()
Definition: Parser.cpp:7
+
static std::shared_ptr< Parser > new_parser(const TokenStream &tokens)
Definition: Parser.cpp:11
+
std::shared_ptr< ASTNode > parse()
Definition: Parser.cpp:17
+
void throw_error(const Location &loc, const std::string line_text, const std::string &details)
Definition: Error.cpp:41
+ +
Definition: Token.h:54
+
+
+ + + + diff --git a/docs/html/_statement_node_8cpp.html b/docs/html/_statement_node_8cpp.html new file mode 100644 index 0000000..73defea --- /dev/null +++ b/docs/html/_statement_node_8cpp.html @@ -0,0 +1,102 @@ + + + + + + + +sapphirec: src/AST/StatementNode.cpp File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
StatementNode.cpp File Reference
+
+
+
#include "StatementNode.h"
+
+
+ + + + diff --git a/docs/html/_statement_node_8h.html b/docs/html/_statement_node_8h.html new file mode 100644 index 0000000..62913c5 --- /dev/null +++ b/docs/html/_statement_node_8h.html @@ -0,0 +1,112 @@ + + + + + + + +sapphirec: src/AST/StatementNode.h File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
StatementNode.h File Reference
+
+
+
#include "ExprNode.h"
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  StatementNode
 
+
+
+ + + + diff --git a/docs/html/_statement_node_8h_source.html b/docs/html/_statement_node_8h_source.html new file mode 100644 index 0000000..2906f32 --- /dev/null +++ b/docs/html/_statement_node_8h_source.html @@ -0,0 +1,117 @@ + + + + + + + +sapphirec: src/AST/StatementNode.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
StatementNode.h
+
+
+Go to the documentation of this file.
1 #pragma once
+
2 #include "ExprNode.h"
+
3 
+
4 class StatementNode : public ASTNode
+
5 {
+
6  std::shared_ptr<ExprNode> child;
+
7 
+
8  public:
+
9  StatementNode(std::shared_ptr<ExprNode> child);
+ +
11 };
+ +
Definition: ASTNode.h:5
+
Definition: StatementNode.h:5
+
StatementNode(std::shared_ptr< ExprNode > child)
Definition: StatementNode.cpp:3
+
~StatementNode()
Definition: StatementNode.cpp:7
+
+
+ + + + diff --git a/docs/html/_sum_node_8cpp.html b/docs/html/_sum_node_8cpp.html new file mode 100644 index 0000000..cf1d859 --- /dev/null +++ b/docs/html/_sum_node_8cpp.html @@ -0,0 +1,102 @@ + + + + + + + +sapphirec: src/AST/SumNode.cpp File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
SumNode.cpp File Reference
+
+
+
#include "SumNode.h"
+
+
+ + + + diff --git a/docs/html/_sum_node_8h.html b/docs/html/_sum_node_8h.html new file mode 100644 index 0000000..9139433 --- /dev/null +++ b/docs/html/_sum_node_8h.html @@ -0,0 +1,112 @@ + + + + + + + +sapphirec: src/AST/SumNode.h File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
SumNode.h File Reference
+
+
+
#include "BinaryOpNode.h"
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  SumNode
 
+
+
+ + + + diff --git a/docs/html/_sum_node_8h_source.html b/docs/html/_sum_node_8h_source.html new file mode 100644 index 0000000..065e7ca --- /dev/null +++ b/docs/html/_sum_node_8h_source.html @@ -0,0 +1,119 @@ + + + + + + + +sapphirec: src/AST/SumNode.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
SumNode.h
+
+
+Go to the documentation of this file.
1 #pragma once
+
2 #include "BinaryOpNode.h"
+
3 
+
4 class SumNode final : public BinaryOpNode
+
5 {
+
6  char op;
+
7 
+
8  public:
+
9  SumNode(std::shared_ptr<ExprNode> left, std::shared_ptr<ExprNode> right, char op);
+
10  ~SumNode();
+
11 };
+ +
Definition: BinaryOpNode.h:5
+
std::shared_ptr< ExprNode > left
Definition: BinaryOpNode.h:7
+
std::shared_ptr< ExprNode > right
Definition: BinaryOpNode.h:8
+
Definition: SumNode.h:5
+
SumNode(std::shared_ptr< ExprNode > left, std::shared_ptr< ExprNode > right, char op)
Definition: SumNode.cpp:3
+
~SumNode()
Definition: SumNode.cpp:8
+
+
+ + + + diff --git a/docs/html/_token_8cpp.html b/docs/html/_token_8cpp.html new file mode 100644 index 0000000..49e94cc --- /dev/null +++ b/docs/html/_token_8cpp.html @@ -0,0 +1,134 @@ + + + + + + + +sapphirec: src/Token.cpp File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Token.cpp File Reference
+
+
+
#include "Token.h"
+#include "utils.h"
+
+ + + +

+Variables

const std::string token_strings []
 
+

Variable Documentation

+ +

◆ token_strings

+ +
+
+ + + + +
const std::string token_strings[]
+
+Initial value:
= {
+
"TT_IDENTIFIER", "TT_NUMBER", "TT_FLOAT", "TT_KEYWORD", "TT_STRING", "TT_PLUS",
+
"TT_MINUS", "TT_MUL", "TT_DIV", "TT_AT", "TT_EQUAL", "TT_LESSTHAN",
+
"TT_GREATERTHAN", "TT_LPAREN", "TT_RPAREN", "TT_LBRACKET", "TT_RBRACKET", "TT_SEMICOLON",
+
"TT_LOADEDSTRING", "TT_EOF", "TT_NULL", "TT_EQUALS", "TT_GTE", "TT_LTE",
+
"TT_PERIOD", "TT_COMMA", "TT_PATH", "TT_EXCLAMATION", "TT_NEQUAL", "TT_LSQB",
+
"TT_RSQB", "TT_TYPE", "TT_IMPORT", "TT_SYSCALL0", "TT_SYSCALL1", "TT_SYSCALL2",
+
"TT_SYSCALL3", "TT_SYSCALL4", "TT_SYSCALL5", "TT_COMPILERMACRO"}
+
+
+
+
+
+ + + + diff --git a/docs/html/_token_8cpp.js b/docs/html/_token_8cpp.js new file mode 100644 index 0000000..0ccc2cd --- /dev/null +++ b/docs/html/_token_8cpp.js @@ -0,0 +1,4 @@ +var _token_8cpp = +[ + [ "token_strings", "_token_8cpp.html#a11b1388fc87d0706641b71f004f5ce29", null ] +]; \ No newline at end of file diff --git a/docs/html/_token_8h.html b/docs/html/_token_8h.html new file mode 100644 index 0000000..a689a47 --- /dev/null +++ b/docs/html/_token_8h.html @@ -0,0 +1,277 @@ + + + + + + + +sapphirec: src/Token.h File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Token.h File Reference
+
+
+
#include "Location.h"
+#include "sapphirepch.h"
+
+

Go to the source code of this file.

+ + + + +

+Classes

struct  Token
 
+ + + +

+Typedefs

typedef std::vector< TokenTokenStream
 
+ + + +

+Enumerations

enum  TokenType {
+  TT_Identifier +, TT_Number +, TT_Float +, TT_Keyword +,
+  TT_String +, TT_Plus +, TT_Minus +, TT_Mul +,
+  TT_Div +, TT_At +, TT_Equal +, TT_LessThan +,
+  TT_GreaterThan +, TT_LParen +, TT_RParen +, TT_LBracket +,
+  TT_RBracket +, TT_Semicolon +, TT_LoadedString +, TT_EOF +,
+  TT_Null +, TT_Equals +, TT_GTE +, TT_LTE +,
+  TT_Period +, TT_Comma +, TT_Path +, TT_Exclamation +,
+  TT_NEqual +, TT_LSQB +, TT_RSQB +, TT_Type +,
+  TT_Import +, TT_Syscall0 +, TT_Syscall1 +, TT_Syscall2 +,
+  TT_Syscall3 +, TT_Syscall4 +, TT_Syscall5 +, TT_CompilerMacro +
+ }
 
+ + + +

+Variables

const std::string token_strings []
 
+

Typedef Documentation

+ +

◆ TokenStream

+ +
+
+ + + + +
typedef std::vector<Token> TokenStream
+
+ +
+
+

Enumeration Type Documentation

+ +

◆ TokenType

+ +
+
+ + + + +
enum TokenType
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Enumerator
TT_Identifier 
TT_Number 
TT_Float 
TT_Keyword 
TT_String 
TT_Plus 
TT_Minus 
TT_Mul 
TT_Div 
TT_At 
TT_Equal 
TT_LessThan 
TT_GreaterThan 
TT_LParen 
TT_RParen 
TT_LBracket 
TT_RBracket 
TT_Semicolon 
TT_LoadedString 
TT_EOF 
TT_Null 
TT_Equals 
TT_GTE 
TT_LTE 
TT_Period 
TT_Comma 
TT_Path 
TT_Exclamation 
TT_NEqual 
TT_LSQB 
TT_RSQB 
TT_Type 
TT_Import 
TT_Syscall0 
TT_Syscall1 
TT_Syscall2 
TT_Syscall3 
TT_Syscall4 
TT_Syscall5 
TT_CompilerMacro 
+ +
+
+

Variable Documentation

+ +

◆ token_strings

+ +
+
+ + + + + +
+ + + + +
const std::string token_strings[]
+
+extern
+
+ +
+
+
+
+ + + + diff --git a/docs/html/_token_8h.js b/docs/html/_token_8h.js new file mode 100644 index 0000000..d10cd3b --- /dev/null +++ b/docs/html/_token_8h.js @@ -0,0 +1,48 @@ +var _token_8h = +[ + [ "Token", "struct_token.html", "struct_token" ], + [ "TokenStream", "_token_8h.html#a43f892d4a347a32f8602cfbcff2e237e", null ], + [ "TokenType", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921", [ + [ "TT_Identifier", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921a914ff833832dec5f5b89c873cdf4873b", null ], + [ "TT_Number", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921af0b33aa8547139ec0850566aa75c2eab", null ], + [ "TT_Float", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921adce0a868eda6a8eb7c0f4b471168a52f", null ], + [ "TT_Keyword", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921a4f2472f5e8f25e20351884b984a5745d", null ], + [ "TT_String", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921ac5d8b9e1d3e5e0556207d113144ca9ef", null ], + [ "TT_Plus", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921a8dc57a25d3d43203efa4abfc428f4ae5", null ], + [ "TT_Minus", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921a37610de04974a9df954007ad9fddcec6", null ], + [ "TT_Mul", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921a7b1c59205c8e47772905efa820e26276", null ], + [ "TT_Div", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921a7034d195d5b509782b1a2c2803e0b887", null ], + [ "TT_At", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921a66be6e287e64f2d1e18d62b1d96bf443", null ], + [ "TT_Equal", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921a2e3a97dd6681a583d131a7f45b8f7b3b", null ], + [ "TT_LessThan", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921a04d3947200d1e0ea47f23132c21d1552", null ], + [ "TT_GreaterThan", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921a6088f4c9eb2333511f59a9d4fcb0cc23", null ], + [ "TT_LParen", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921aa74df126f021c6c3370b2469e13a4d58", null ], + [ "TT_RParen", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921a0b02ea10bfa1b86223505526e152850c", null ], + [ "TT_LBracket", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921a046adff178e040a45fba3807d1b27077", null ], + [ "TT_RBracket", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921a55662755fa0c3e80c4b8a137a822fe56", null ], + [ "TT_Semicolon", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921a0cf876fc815f0bbdf381a0b6b3e9c8a1", null ], + [ "TT_LoadedString", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921a919ddabf40eacf261afb90628132c2e9", null ], + [ "TT_EOF", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921aaffedff66c98c1bc186e2c35cdc7ab66", null ], + [ "TT_Null", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921aae8a36dd5042ffdff357cb3caaec8de4", null ], + [ "TT_Equals", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921aab9f3972ab9b942c5a558acb2c8200a2", null ], + [ "TT_GTE", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921a661cacfb4b927c1410ae99cc07f47114", null ], + [ "TT_LTE", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921abe295cb0b1d7e40b683e841099ca0d5c", null ], + [ "TT_Period", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921a1bfe153b7024483e5b14df5f4a19c383", null ], + [ "TT_Comma", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921ad465a2b2741ddb105fd810f40fdfc5f8", null ], + [ "TT_Path", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921a7a6334e5907fea7b13cb5c3168bf56d3", null ], + [ "TT_Exclamation", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921abb589d9450ffea8e2652a357954b399d", null ], + [ "TT_NEqual", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921a52a3bc78510da97e3610a2c90e9af027", null ], + [ "TT_LSQB", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921a72cd35b410262b2cdf1b6f426561316e", null ], + [ "TT_RSQB", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921afca02f5c4e306e125b6aef30093c2fbb", null ], + [ "TT_Type", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921a6afc064c5b6cb4603534e73a261decef", null ], + [ "TT_Import", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921ac0842324f82fc7067e12cf5bc1e93ebe", null ], + [ "TT_Syscall0", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921aa991c9be0fb4d126936f15739e0cc581", null ], + [ "TT_Syscall1", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921a7f3fbd8a2c479e24962b1257ba1a75cc", null ], + [ "TT_Syscall2", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921a47c37018ac199a24001f7ae088a770ad", null ], + [ "TT_Syscall3", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921a932e0b4b6ad328fd42a372b19f5efa14", null ], + [ "TT_Syscall4", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921a4f33569f79146c4955920b6b1273f100", null ], + [ "TT_Syscall5", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921a03295c72f650bc6058eeaa1c4de14b1f", null ], + [ "TT_CompilerMacro", "_token_8h.html#aa520fbf142ba1e7e659590c07da31921ad815e2ddb15829189dd39b0481c3908e", null ] + ] ], + [ "token_strings", "_token_8h.html#a11b1388fc87d0706641b71f004f5ce29", null ] +]; \ No newline at end of file diff --git a/docs/html/_token_8h_source.html b/docs/html/_token_8h_source.html new file mode 100644 index 0000000..a514861 --- /dev/null +++ b/docs/html/_token_8h_source.html @@ -0,0 +1,267 @@ + + + + + + + +sapphirec: src/Token.h Source File + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Token.h
+
+
+Go to the documentation of this file.
1 #pragma once
+
2 #include "Location.h"
+
3 #include "sapphirepch.h"
+
4 
+
5 /* All current token types. Will change in the future. */
+ +
7 {
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
48 };
+
49 
+
50 extern const std::string token_strings[];
+
51 
+
52 /* Struct to represent tokens generated by the Lexer. */
+
53 struct Token
+
54 {
+ +
56 
+
57  int int_value;
+
58  std::string string_value;
+
59  float float_value;
+
60 
+ +
62 
+
63  Token(const TokenType& type);
+
64 
+
65  Token(const TokenType& type, const Location& location);
+
66 
+
67  Token(const TokenType& type, const int& val, const Location& location);
+
68 
+
69  Token(const TokenType& type, const std::string& val, const Location& location);
+
70 
+
71  Token(const TokenType& type, const std::string& val);
+
72 
+
73  Token(const TokenType& type, const float& val, const Location& location);
+
74 
+
75  ~Token();
+
76 
+
77  /* Return a string representation of the Token's contents. */
+
78  std::string to_string() const;
+
79 
+
80  /* Return the contents of the line where the Token was located. */
+
81  std::string line() const;
+
82 
+
83  /* Return a copy of the original token, but adding the contents of the line where
+
84  the token was located. */
+
85  static Token make_with_line(const Token& origin, const std::string& line_text);
+
86 
+
87  void operator=(const Token& other);
+
88 
+
89  /* Convert the Token into a blank token (does not delete it), so that the Normalizer can remove it afterwards.
+
90  This is to not alter vectors while iterating over them. */
+
91  static void erase(Token& tk);
+
92 
+
93  /* Return a copy of this Token, but with its TokenType changed. */
+
94  Token copy_with_new_type(const TokenType& type);
+
95 
+
96  /* Iterate over two vectors of Tokens, starting from count for vector A, starting from 0 for vector B, checking if
+
97  the current Tokens' types match. If at any point they don't, return false. Else, return true. */
+
98  static bool match_token_types(const std::vector<Token>& a, const std::vector<Token>& b, int count);
+
99 
+
100  private:
+
101  std::string line_text;
+
102 };
+
103 
+
104 /* typedef to make it easier to see a what a std::vector of tokens is being used for. */
+
105 typedef std::vector<Token> TokenStream;
+ +
const std::string token_strings[]
Definition: Token.cpp:4
+
std::vector< Token > TokenStream
Definition: Token.h:105
+
TokenType
Definition: Token.h:7
+
@ TT_Syscall5
Definition: Token.h:46
+
@ TT_LBracket
Definition: Token.h:23
+
@ TT_LessThan
Definition: Token.h:19
+
@ TT_RParen
Definition: Token.h:22
+
@ TT_Semicolon
Definition: Token.h:25
+
@ TT_Period
Definition: Token.h:32
+
@ TT_Equal
Definition: Token.h:18
+
@ TT_Minus
Definition: Token.h:14
+
@ TT_Syscall2
Definition: Token.h:43
+
@ TT_Keyword
Definition: Token.h:11
+
@ TT_Syscall4
Definition: Token.h:45
+
@ TT_NEqual
Definition: Token.h:36
+
@ TT_RBracket
Definition: Token.h:24
+
@ TT_GreaterThan
Definition: Token.h:20
+
@ TT_GTE
Definition: Token.h:30
+
@ TT_At
Definition: Token.h:17
+
@ TT_Type
Definition: Token.h:39
+
@ TT_Div
Definition: Token.h:16
+
@ TT_LSQB
Definition: Token.h:37
+
@ TT_Path
Definition: Token.h:34
+
@ TT_Mul
Definition: Token.h:15
+
@ TT_Syscall1
Definition: Token.h:42
+
@ TT_Plus
Definition: Token.h:13
+
@ TT_Identifier
Definition: Token.h:8
+
@ TT_LoadedString
Definition: Token.h:26
+
@ TT_Syscall3
Definition: Token.h:44
+
@ TT_LParen
Definition: Token.h:21
+
@ TT_Syscall0
Definition: Token.h:41
+
@ TT_Equals
Definition: Token.h:29
+
@ TT_Null
Definition: Token.h:28
+
@ TT_EOF
Definition: Token.h:27
+
@ TT_Exclamation
Definition: Token.h:35
+
@ TT_LTE
Definition: Token.h:31
+
@ TT_Import
Definition: Token.h:40
+
@ TT_String
Definition: Token.h:12
+
@ TT_Comma
Definition: Token.h:33
+
@ TT_CompilerMacro
Definition: Token.h:47
+
@ TT_Float
Definition: Token.h:10
+
@ TT_Number
Definition: Token.h:9
+
@ TT_RSQB
Definition: Token.h:38
+ +
Definition: Location.h:6
+
Definition: Token.h:54
+
Token copy_with_new_type(const TokenType &type)
Definition: Token.cpp:44
+
int int_value
Definition: Token.h:57
+
static bool match_token_types(const std::vector< Token > &a, const std::vector< Token > &b, int count)
Definition: Token.cpp:189
+
std::string string_value
Definition: Token.h:58
+
static void erase(Token &tk)
Definition: Token.cpp:184
+
Location loc
Definition: Token.h:61
+
~Token()
Definition: Token.cpp:40
+
std::string line() const
Definition: Token.cpp:157
+
std::string to_string() const
Definition: Token.cpp:57
+
static Token make_with_line(const Token &origin, const std::string &line_text)
Definition: Token.cpp:162
+
float float_value
Definition: Token.h:59
+
void operator=(const Token &other)
Definition: Token.cpp:175
+
Token(const TokenType &type)
Definition: Token.cpp:13
+
TokenType tk_type
Definition: Token.h:55
+
+
+ + + + diff --git a/docs/html/annotated.html b/docs/html/annotated.html index 0a0144d..f627829 100644 --- a/docs/html/annotated.html +++ b/docs/html/annotated.html @@ -9,10 +9,16 @@ + + + + + +
@@ -23,7 +29,7 @@
sapphirec
-
The Sapphire compiler
+
The Sapphire documentation
@@ -47,6 +53,22 @@ $(function() { /* @license-end */
+
+ +
+
+
+ +
Here are the classes, structs, unions and interfaces with brief descriptions:
+ - + diff --git a/docs/html/annotated_dup.js b/docs/html/annotated_dup.js new file mode 100644 index 0000000..f52f070 --- /dev/null +++ b/docs/html/annotated_dup.js @@ -0,0 +1,16 @@ +var annotated_dup = +[ + [ "__benchmark_impl", "class____benchmark__impl.html", "class____benchmark__impl" ], + [ "Arguments", "struct_arguments.html", null ], + [ "ASTNode", "class_a_s_t_node.html", "class_a_s_t_node" ], + [ "BinaryOpNode", "class_binary_op_node.html", "class_binary_op_node" ], + [ "ExprNode", "class_expr_node.html", "class_expr_node" ], + [ "Lexer", "class_lexer.html", "class_lexer" ], + [ "Location", "struct_location.html", "struct_location" ], + [ "MulNode", "class_mul_node.html", "class_mul_node" ], + [ "NumberNode", "class_number_node.html", "class_number_node" ], + [ "Parser", "class_parser.html", "class_parser" ], + [ "StatementNode", "class_statement_node.html", "class_statement_node" ], + [ "SumNode", "class_sum_node.html", "class_sum_node" ], + [ "Token", "struct_token.html", "struct_token" ] +]; \ No newline at end of file diff --git a/docs/html/class____benchmark__impl-members.html b/docs/html/class____benchmark__impl-members.html index bd2714d..0bc62b1 100644 --- a/docs/html/class____benchmark__impl-members.html +++ b/docs/html/class____benchmark__impl-members.html @@ -9,10 +9,16 @@ + + + + + +
@@ -23,7 +29,7 @@
sapphirec
-
The Sapphire compiler
+
The Sapphire documentation
@@ -46,6 +52,23 @@ $(function() { }); /* @license-end */ +
+
+ +
+
+
+ +
-
__benchmark_impl Member List
@@ -69,15 +91,18 @@ $(function() {

This is the complete list of members for __benchmark_impl, including all inherited members.

- - - - - + + + + +
__benchmark_impl(std::string_view __function_name) (defined in __benchmark_impl)__benchmark_impl
disable() (defined in __benchmark_impl)__benchmark_implstatic
enable() (defined in __benchmark_impl)__benchmark_implstatic
init() (defined in __benchmark_impl)__benchmark_implstatic
~__benchmark_impl() (defined in __benchmark_impl)__benchmark_impl
__benchmark_impl(std::string_view __function_name)__benchmark_impl
disable()__benchmark_implstatic
enable()__benchmark_implstatic
init()__benchmark_implstatic
~__benchmark_impl()__benchmark_impl
+ - + diff --git a/docs/html/class____benchmark__impl.html b/docs/html/class____benchmark__impl.html index 64c5909..686772d 100644 --- a/docs/html/class____benchmark__impl.html +++ b/docs/html/class____benchmark__impl.html @@ -9,10 +9,16 @@ + + + + + +
@@ -23,7 +29,7 @@
sapphirec
-
The Sapphire compiler
+
The Sapphire documentation
@@ -46,6 +52,23 @@ $(function() { }); /* @license-end */ +
+
+ +
+
+
+ +
-
Public Member Functions | @@ -70,33 +92,149 @@ $(function() {
__benchmark_impl Class Reference
+ +

#include <utils.h>

- + + +

Public Member Functions

__benchmark_impl (std::string_view __function_name)
 __benchmark_impl (std::string_view __function_name)
 
 ~__benchmark_impl ()
 
- + - + - +

Static Public Member Functions

-static void enable ()
static void enable ()
 
-static void disable ()
static void disable ()
 
-static void init ()
static void init ()
 
+

Constructor & Destructor Documentation

+ +

◆ __benchmark_impl()

+ +
+
+ + + + + + + + +
__benchmark_impl::__benchmark_impl (std::string_view __function_name)
+
+ +
+
+ +

◆ ~__benchmark_impl()

+ +
+
+ + + + + + + +
__benchmark_impl::~__benchmark_impl ()
+
+ +
+
+

Member Function Documentation

+ +

◆ disable()

+ +
+
+ + + + + +
+ + + + + + + +
void __benchmark_impl::disable ()
+
+static
+
+ +
+
+ +

◆ enable()

+ +
+
+ + + + + +
+ + + + + + + +
void __benchmark_impl::enable ()
+
+static
+
+ +
+
+ +

◆ init()

+ +
+
+ + + + + +
+ + + + + + + +
void __benchmark_impl::init ()
+
+static
+
+ +
+

The documentation for this class was generated from the following files:
+ - + diff --git a/docs/html/class____benchmark__impl.js b/docs/html/class____benchmark__impl.js new file mode 100644 index 0000000..fe009c6 --- /dev/null +++ b/docs/html/class____benchmark__impl.js @@ -0,0 +1,5 @@ +var class____benchmark__impl = +[ + [ "__benchmark_impl", "class____benchmark__impl.html#a2efd5ebe7e24a9a6ead5b205d0fe05f8", null ], + [ "~__benchmark_impl", "class____benchmark__impl.html#aa91ff70297183c7c20c198096a671f73", null ] +]; \ No newline at end of file diff --git a/docs/html/class_a_s_t_node-members.html b/docs/html/class_a_s_t_node-members.html new file mode 100644 index 0000000..c46307d --- /dev/null +++ b/docs/html/class_a_s_t_node-members.html @@ -0,0 +1,105 @@ + + + + + + + +sapphirec: Member List + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ASTNode Member List
+
+
+ +

This is the complete list of members for ASTNode, including all inherited members.

+ + + +
ASTNode()ASTNode
~ASTNode()ASTNode
+
+ + + + diff --git a/docs/html/class_a_s_t_node.html b/docs/html/class_a_s_t_node.html new file mode 100644 index 0000000..e38de05 --- /dev/null +++ b/docs/html/class_a_s_t_node.html @@ -0,0 +1,167 @@ + + + + + + + +sapphirec: ASTNode Class Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ASTNode Class Reference
+
+
+ +

#include <ASTNode.h>

+
+Inheritance diagram for ASTNode:
+
+
+ + +ExprNode +StatementNode +BinaryOpNode +NumberNode +MulNode +SumNode + +
+ + + + + + +

+Public Member Functions

 ASTNode ()
 
 ~ASTNode ()
 
+

Constructor & Destructor Documentation

+ +

◆ ASTNode()

+ +
+
+ + + + + + + +
ASTNode::ASTNode ()
+
+ +
+
+ +

◆ ~ASTNode()

+ +
+
+ + + + + + + +
ASTNode::~ASTNode ()
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/class_a_s_t_node.js b/docs/html/class_a_s_t_node.js new file mode 100644 index 0000000..e2f971f --- /dev/null +++ b/docs/html/class_a_s_t_node.js @@ -0,0 +1,5 @@ +var class_a_s_t_node = +[ + [ "ASTNode", "class_a_s_t_node.html#a1196ed4f19c0b62cdc42fe35946b91d2", null ], + [ "~ASTNode", "class_a_s_t_node.html#a41a691f37fa038eb183280effeb8ba4e", null ] +]; \ No newline at end of file diff --git a/docs/html/class_a_s_t_node.png b/docs/html/class_a_s_t_node.png new file mode 100644 index 0000000000000000000000000000000000000000..0f1bfa89168be61420d286aeb94cba6112c1d139 GIT binary patch literal 1616 zcmZ`(4K$Ql82-jcIN4O}wuI8eN>jESqG`q|G9NPKXDF0^=c5@-V*PXM*=6W73==X# z9p9LiSz)JGlxb_J722;IYR2ZT)ToJMkV&&&dpeul);;IB&-=djp7Xxl!{-Bqin?|ES#i!3ziR@nrQR#0;B$5@ZK?_vX zJ>}!=3!sg71A4c}O$ep{RV2tPo z0p2XP-?X};F{%X{`05a1wJU<5gz-Z81j+2_SArf{&CLq-qF(5Y7|>K-vh{X!X&RIm zAL>K~WxU{((qW2;WK$81p77uv(7#Q7zkRAU{M>}z39}-d(6ta?^$|_iAZVD|wTH(P z7%j;wSCee_p)QkbHyD$g?o?n85(KUL*KKZy1cl-fP{bmGr8@B|H9wV)CHje(e$pHHkVx^~P?$L*> zb8r6`VGa&>7Q_2=xEf2kiKJxKj$w;*vN9L92Q+t@MvUD*$t#ONIzMyB`u_K>urBq> z2V*Tgk+LbhW)}Of12xmBhrI>r9+?&m3_5o5sNbG`ocUtv3kESw)~@ywIVU7?VEf$f z&Of|&rJ8^Gt>e3cB5~9jsSUG(ZD(L6w|V<6I3BlrftPMf~Hh zk}Kq^N3YOy9Y!Z~vZzFEKd54csu+W`S#gMp7d^j2nh;!^7$T~TxqPC|%T$OYsY?9J zgmF}k`H3bWh^$@*aU$2EK*|Wlj4sxsxg51pMsDTQM#$sr=64~z zqh|J`RnxIha|CakAfFskj11E6blVVxy%F6!wy>OL;B*~w;*iubIOscO=sK7 zOMCfy8&a6~XtOsig-Nh9p?;Ptgh~FSNsk~^nh^{^-Bq#A9vn~YdjUx|^2Hk}jt|Yy zGpTAunWoy8gZHPG&m8mb^T@LH@2W{9uY2T=;1uQ+zcz%Ja!%c1p(zWK6<^^Rp&wGk zucj2kb$JAECu;u(DZY@PU63>!j#!=YuG z_k9;lE0Be2lUaJ%bHj7wEg$C0zo*V}8XSg(FnYJtC;vKHNWmUO@Ux2o5J_}BhbvzS z!p0xvy!e0{J&3rY7&c}L5|24^#MjSAbHq#}4r*?z;wITe8o%z~&Su#2S``aKQfHTx zkE5q}%Lo(e!&@98>>KwyDYu~1ojXeeWiRhc2ZQSTFZbI=T(+e<&03=-uT3ow@l5#5 z*lI(sPFmGZD#u94>xK0CRC7&Sd!VL*0PY@9?41&!3>!e|KO<#@StqG=F#gb6D_RgT z&QIYf`)GagoS@Dlp6b3@A#PE-PYH2mE-ih@f8{r|Vjqv63j + + + + + + +sapphirec: Member List + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
BinaryOpNode Member List
+
+
+ +

This is the complete list of members for BinaryOpNode, including all inherited members.

+ + + + + + + + + + +
ASTNode()ASTNode
BinaryOpNode(std::shared_ptr< ExprNode > left, std::shared_ptr< ExprNode > right)BinaryOpNode
ExprNode(std::shared_ptr< ExprNode > child)ExprNode
ExprNode()ExprNode
leftBinaryOpNodeprotected
rightBinaryOpNodeprotected
~ASTNode()ASTNode
~BinaryOpNode()BinaryOpNode
~ExprNode()ExprNode
+
+ + + + diff --git a/docs/html/class_binary_op_node.html b/docs/html/class_binary_op_node.html new file mode 100644 index 0000000..817c5ba --- /dev/null +++ b/docs/html/class_binary_op_node.html @@ -0,0 +1,241 @@ + + + + + + + +sapphirec: BinaryOpNode Class Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
BinaryOpNode Class Reference
+
+
+ +

#include <BinaryOpNode.h>

+
+Inheritance diagram for BinaryOpNode:
+
+
+ + +ExprNode +ASTNode +MulNode +SumNode + +
+ + + + + + + + + + + + + + + + + + +

+Public Member Functions

 BinaryOpNode (std::shared_ptr< ExprNode > left, std::shared_ptr< ExprNode > right)
 
 ~BinaryOpNode ()
 
- Public Member Functions inherited from ExprNode
 ExprNode (std::shared_ptr< ExprNode > child)
 
 ExprNode ()
 
 ~ExprNode ()
 
- Public Member Functions inherited from ASTNode
 ASTNode ()
 
 ~ASTNode ()
 
+ + + + + +

+Protected Attributes

std::shared_ptr< ExprNodeleft
 
std::shared_ptr< ExprNoderight
 
+

Constructor & Destructor Documentation

+ +

◆ BinaryOpNode()

+ +
+
+ + + + + + + + + + + + + + + + + + +
BinaryOpNode::BinaryOpNode (std::shared_ptr< ExprNodeleft,
std::shared_ptr< ExprNoderight 
)
+
+ +
+
+ +

◆ ~BinaryOpNode()

+ +
+
+ + + + + + + +
BinaryOpNode::~BinaryOpNode ()
+
+ +
+
+

Member Data Documentation

+ +

◆ left

+ +
+
+ + + + + +
+ + + + +
std::shared_ptr<ExprNode> BinaryOpNode::left
+
+protected
+
+ +
+
+ +

◆ right

+ +
+
+ + + + + +
+ + + + +
std::shared_ptr<ExprNode> BinaryOpNode::right
+
+protected
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/class_binary_op_node.js b/docs/html/class_binary_op_node.js new file mode 100644 index 0000000..1475f49 --- /dev/null +++ b/docs/html/class_binary_op_node.js @@ -0,0 +1,7 @@ +var class_binary_op_node = +[ + [ "BinaryOpNode", "class_binary_op_node.html#a483ebe81ba6f08340a7ceff34e6b75af", null ], + [ "~BinaryOpNode", "class_binary_op_node.html#a924a3c0ddb1f8442208ebcce2748ec81", null ], + [ "left", "class_binary_op_node.html#acee80276ab94e9faf3f2da1a9f323a44", null ], + [ "right", "class_binary_op_node.html#afacda981cb1bb277f0625a5e78431582", null ] +]; \ No newline at end of file diff --git a/docs/html/class_binary_op_node.png b/docs/html/class_binary_op_node.png new file mode 100644 index 0000000000000000000000000000000000000000..60b8e3127975be7be22f25540d559c27acee94a7 GIT binary patch literal 1123 zcmeAS@N?(olHy`uVBq!ia0vp^r-1kX2Q!c?QsDUmq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0KY6-1hEy=Vo%?XoVg&)V+xe?%{=4r} zS)?>eCa3jH%Um5Uu9znc7`b_Xt&Cu=VKh@^z z%zb&SaDmF)j|(O(i>-Tm_I=3B^gUnfJi=C{@0_$mnJ?s;w=j96PHLK(UQiS=P_8MvPm=-hCHj3m|hr?r?z+p&k`YZi3WQo)&tTD znI7~8Fn(}b!BC+b!mvkBi{T!JC_{b=SA#jK^p|5;eYy11mmeNMCofg*DYd-N+ock_ ziKA}5*Q{@E^Yd-3YgQoOgLF6?R8{nJ59t$=&bs#PFHrvGRF$b$R<7~)Rh(9qyhdC)r}|#2*R`$jo|igj z@s{ysv+$PG6UzRXt_?kyU{=KN(oRzF*#yyI;E!DDaDW|2I$;ah)W^ wDeAcjmdKI;Vst0A5G`CIA2c literal 0 HcmV?d00001 diff --git a/docs/html/class_expr_node-members.html b/docs/html/class_expr_node-members.html new file mode 100644 index 0000000..ab19d24 --- /dev/null +++ b/docs/html/class_expr_node-members.html @@ -0,0 +1,108 @@ + + + + + + + +sapphirec: Member List + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
ExprNode Member List
+
+
+ +

This is the complete list of members for ExprNode, including all inherited members.

+ + + + + + +
ASTNode()ASTNode
ExprNode(std::shared_ptr< ExprNode > child)ExprNode
ExprNode()ExprNode
~ASTNode()ASTNode
~ExprNode()ExprNode
+
+ + + + diff --git a/docs/html/class_expr_node.html b/docs/html/class_expr_node.html new file mode 100644 index 0000000..c9bd2a0 --- /dev/null +++ b/docs/html/class_expr_node.html @@ -0,0 +1,191 @@ + + + + + + + +sapphirec: ExprNode Class Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
ExprNode Class Reference
+
+
+ +

#include <ExprNode.h>

+
+Inheritance diagram for ExprNode:
+
+
+ + +ASTNode +BinaryOpNode +NumberNode +MulNode +SumNode + +
+ + + + + + + + + + + + + +

+Public Member Functions

 ExprNode (std::shared_ptr< ExprNode > child)
 
 ExprNode ()
 
 ~ExprNode ()
 
- Public Member Functions inherited from ASTNode
 ASTNode ()
 
 ~ASTNode ()
 
+

Constructor & Destructor Documentation

+ +

◆ ExprNode() [1/2]

+ +
+
+ + + + + + + + +
ExprNode::ExprNode (std::shared_ptr< ExprNodechild)
+
+ +
+
+ +

◆ ExprNode() [2/2]

+ +
+
+ + + + + + + +
ExprNode::ExprNode ()
+
+ +
+
+ +

◆ ~ExprNode()

+ +
+
+ + + + + + + +
ExprNode::~ExprNode ()
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/class_expr_node.js b/docs/html/class_expr_node.js new file mode 100644 index 0000000..461a143 --- /dev/null +++ b/docs/html/class_expr_node.js @@ -0,0 +1,6 @@ +var class_expr_node = +[ + [ "ExprNode", "class_expr_node.html#ab8c32004efc2afec3208b0c9b0e9a154", null ], + [ "ExprNode", "class_expr_node.html#a440d1cb893f7815b71dff7b4ec35089a", null ], + [ "~ExprNode", "class_expr_node.html#a3d37807a38daa45e693b2734cfd47727", null ] +]; \ No newline at end of file diff --git a/docs/html/class_expr_node.png b/docs/html/class_expr_node.png new file mode 100644 index 0000000000000000000000000000000000000000..ea7cd7a790ee4e15865aa75c77edf3e477a17420 GIT binary patch literal 1262 zcmc&!YcQNw82+~FmXui{LOK-$G0eENqL{{p(pV|$vO_h4javqhEs3bOtV_yBrT7Rb zMTbSD1|!i$u&WZ+kSVpImc?4Sq`Piwt=&DRAN|$N^mot9bDnd~d*;0Fd7e3^z|Z%J z*2(uyA_$^I^70747-C>+;IUqD=$VC)f!}8oPY93J|9C4&F8ZYy8y$nqW~&x(jj*Z4 zodDlJ1lx4fX2vKVAc#r^$-|BE74FaKP4p*YZMFF#t3_BsUeWW{T`*Ov9-XQiadE8J zwq<+X*LEi%aTmM-oVi9nL~z5=2g?A_dn)AZ&1}vZ@+?9l>G6yHXgQa|N|_)`H=97x z)A$5oejQENY8E>gs#KrI9MT7YGq;K+qQ6Xoi7I&lyYgsr(pjcNyt8<7WB7W=VN;*E zkDw9o%i7EaF49R~2(p3jTlxm5{aMk~QTjSNTVYGOv4rL21C*jERsYdITEU3uB3^!Z zTwaZbid|tMG)N$1CBlk+A+B8{mhqIhw<`d-n@C5VcM-EfxkhXo5rL{NRd4@Bj(_v= zU*VcHo`X-|sjNy%MUIHzXOH11(c>9?uJ1x9U%{~$t~$iGOg(&{0~aNdkE%N#T4zM^ zI<^~FQUz-xMfjv&q-=`o)hfQdtK=E36-I~PUUkbr_^z09c?~*;ze5?Tkq{g{3|cp$ z4w&wQJF3MF)=S}eNLZ+?f!Pd2QLY?MDU{<+4=Qn1LrUDS(9_37S?J(2Be}#+=kZi7 zY@ppkTI6XU<)0U;P?rrG@I4XAa57B*kWS2|U`(?AuR0IDd*AmSgtF zR8ql6>LRkQ|828$i?+y0u_n#$^$m@$I??1Sto@?eDpytKK{~$~MN#R78s8RN+vZgE zt2zJ5vd(y6vL&Z=Ip5t39&eAyo6H#R@^)M&rbbD7m($G;n8p@z!l0ds&tlS^QNGo* z*K?z7S|2lq{%(>8kk5VGKa>O-V#3O2)|Iu8|9kEk=4|fwePDQ|yt_@-bTy@NA~7Lz zgg!@{G+ZBGsaUSm=8^Z8Y+$Gi*25Ma(>Pd0&X1~!IT0boj+^od9OY0s(lI5xWiXuj z_|Vdpyba4>X~|6nBT7am7wam_g}QTb*JQwZ3e}>MT)wLV-EH>p>()+L1%tQ@L}DNc zZ=-9NoL<#0LA?JT6ZU8wJ(o6Z8XE9mgC5h6JI{ zsALd-g?ec$`}3xCmRsh2jI8+1Zbu((UjQZku4gv$0s3q}q+rg5qe0G4&U};l$vKzX z&;kUOv0hlM5ic-StJ1>&EqHIQr5lQOSZ37&{YqOB#2(rELrU{zgCiBiKysL`?e3PT cbAoCC5&Na+{)4MzHugCoBu`(DR(ER7Up%L)H~;_u literal 0 HcmV?d00001 diff --git a/docs/html/class_lexer-members.html b/docs/html/class_lexer-members.html new file mode 100644 index 0000000..6da6e67 --- /dev/null +++ b/docs/html/class_lexer-members.html @@ -0,0 +1,108 @@ + + + + + + + +sapphirec: Member List + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Lexer Member List
+
+
+ +

This is the complete list of members for Lexer, including all inherited members.

+ + + + + + +
assign_parent_location(std::unique_ptr< Lexer > &lexer, const std::shared_ptr< Location > &loc)Lexerstatic
lex(const std::string &text)Lexer
make_lexer(const std::string &fname)Lexerstatic
typesLexerstatic
~Lexer()Lexer
+
+ + + + diff --git a/docs/html/class_lexer.html b/docs/html/class_lexer.html new file mode 100644 index 0000000..93fd655 --- /dev/null +++ b/docs/html/class_lexer.html @@ -0,0 +1,256 @@ + + + + + + + +sapphirec: Lexer Class Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ + +
+ +

#include <Lexer.h>

+ + + + + + +

+Public Member Functions

 ~Lexer ()
 
TokenStream lex (const std::string &text)
 
+ + + + + +

+Static Public Member Functions

static std::unique_ptr< Lexermake_lexer (const std::string &fname)
 
static void assign_parent_location (std::unique_ptr< Lexer > &lexer, const std::shared_ptr< Location > &loc)
 
+ + + +

+Static Public Attributes

static const std::array< std::string, TYPE_COUNTtypes
 
+

Constructor & Destructor Documentation

+ +

◆ ~Lexer()

+ +
+
+ + + + + + + +
Lexer::~Lexer ()
+
+ +
+
+

Member Function Documentation

+ +

◆ assign_parent_location()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void Lexer::assign_parent_location (std::unique_ptr< Lexer > & lexer,
const std::shared_ptr< Location > & loc 
)
+
+static
+
+ +
+
+ +

◆ lex()

+ +
+
+ + + + + + + + +
TokenStream Lexer::lex (const std::string & text)
+
+ +
+
+ +

◆ make_lexer()

+ +
+
+ + + + + +
+ + + + + + + + +
std::unique_ptr< Lexer > Lexer::make_lexer (const std::string & fname)
+
+static
+
+ +
+
+

Member Data Documentation

+ +

◆ types

+ +
+
+ + + + + +
+ + + + +
const std::array< std::string, TYPE_COUNT > Lexer::types
+
+static
+
+Initial value:
= {"void", "bool", "str", "i8", "i16", "i32", "i64",
+
"u8", "u16", "u32", "u64", "f32", "f64", "f128"}
+
+
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/class_lexer.js b/docs/html/class_lexer.js new file mode 100644 index 0000000..dd58d6a --- /dev/null +++ b/docs/html/class_lexer.js @@ -0,0 +1,5 @@ +var class_lexer = +[ + [ "~Lexer", "class_lexer.html#ad26a84af23d8d303723e36e83fc4e556", null ], + [ "lex", "class_lexer.html#ac53b63f829071be755cc785084126afe", null ] +]; \ No newline at end of file diff --git a/docs/html/class_mul_node-members.html b/docs/html/class_mul_node-members.html new file mode 100644 index 0000000..2d2cbe6 --- /dev/null +++ b/docs/html/class_mul_node-members.html @@ -0,0 +1,114 @@ + + + + + + + +sapphirec: Member List + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
MulNode Member List
+
+
+ +

This is the complete list of members for MulNode, including all inherited members.

+ + + + + + + + + + + + +
ASTNode()ASTNode
BinaryOpNode(std::shared_ptr< ExprNode > left, std::shared_ptr< ExprNode > right)BinaryOpNode
ExprNode(std::shared_ptr< ExprNode > child)ExprNode
ExprNode()ExprNode
leftBinaryOpNodeprotected
MulNode(std::shared_ptr< ExprNode > left, std::shared_ptr< ExprNode > right, char op)MulNode
rightBinaryOpNodeprotected
~ASTNode()ASTNode
~BinaryOpNode()BinaryOpNode
~ExprNode()ExprNode
~MulNode()MulNode
+
+ + + + diff --git a/docs/html/class_mul_node.html b/docs/html/class_mul_node.html new file mode 100644 index 0000000..112b8e8 --- /dev/null +++ b/docs/html/class_mul_node.html @@ -0,0 +1,206 @@ + + + + + + + +sapphirec: MulNode Class Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
MulNode Class Referencefinal
+
+
+ +

#include <MulNode.h>

+
+Inheritance diagram for MulNode:
+
+
+ + +BinaryOpNode +ExprNode +ASTNode + +
+ + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 MulNode (std::shared_ptr< ExprNode > left, std::shared_ptr< ExprNode > right, char op)
 
 ~MulNode ()
 
- Public Member Functions inherited from BinaryOpNode
 BinaryOpNode (std::shared_ptr< ExprNode > left, std::shared_ptr< ExprNode > right)
 
 ~BinaryOpNode ()
 
- Public Member Functions inherited from ExprNode
 ExprNode (std::shared_ptr< ExprNode > child)
 
 ExprNode ()
 
 ~ExprNode ()
 
- Public Member Functions inherited from ASTNode
 ASTNode ()
 
 ~ASTNode ()
 
+ + + + + + +

+Additional Inherited Members

- Protected Attributes inherited from BinaryOpNode
std::shared_ptr< ExprNodeleft
 
std::shared_ptr< ExprNoderight
 
+

Constructor & Destructor Documentation

+ +

◆ MulNode()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
MulNode::MulNode (std::shared_ptr< ExprNodeleft,
std::shared_ptr< ExprNoderight,
char op 
)
+
+ +
+
+ +

◆ ~MulNode()

+ +
+
+ + + + + + + +
MulNode::~MulNode ()
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/class_mul_node.js b/docs/html/class_mul_node.js new file mode 100644 index 0000000..004a55f --- /dev/null +++ b/docs/html/class_mul_node.js @@ -0,0 +1,5 @@ +var class_mul_node = +[ + [ "MulNode", "class_mul_node.html#a77b55c0440c778b424d7c1c9620ff926", null ], + [ "~MulNode", "class_mul_node.html#a9ea3fc1e1310ccea7b85f52c872d4883", null ] +]; \ No newline at end of file diff --git a/docs/html/class_mul_node.png b/docs/html/class_mul_node.png new file mode 100644 index 0000000000000000000000000000000000000000..a5d19292d8e1b7ec09bb435b65e78b5282c48e18 GIT binary patch literal 842 zcmeAS@N?(olHy`uVBq!ia0vp^2|#>+gBeJkiJJBVNJ#|vgt-3y{~ySF@#br3|Dg#$ z78oBmaDcV*jy#adQ4-`A%m7pb0#{Fk7%?y~-Sl*E45?szJNMzF#R>v!xBIp3|DUKY z$RZ*;dCugux8}Bpu`ZEpdt$D+^a-cuq(2;uDl`8qNzl6bc=G!5v+qRg+QzJ!`6MPl z?RNaFw{x4!{PSWp)?J!3UnTSO%7nSg*Hj8@$+~&)vco#o(2Z;%rz1Qs^%Xn%y-WLe z)tc+q#Ys_?!dG17Q+|0Uc(&Ily(s_tSY}J^`h(@|ulj;jJj(@`JdHSkHr6;#2=eM< z*mIQULFe{_d2@O1H68!6kFETmzJ;qI!v;>q22TzKA18(cAtr{&0t_=+7!Ew)=L+&V zDLhH#ry$UfpPC1^)Tm_o=iMoj<=Z3RaY-?wWc?#o%3x(4WxP`*AE%dWW(-URH~<~nH^Z@Zw!r32ZX_dI{K{Xc!M zpzGKDgY|QjJYzSW+o=-yN3c<)){8^s+uW5HZj=L_ri-F`EjCEU|ac#HS+<*}3QojAC8p$06EK?1(+5%4n&_}m{-C5?B>k}x)o>MXBUY7 zX$lr$VwepHevoez84RE?^KU`ItYs&K)fnu7arCLUY3t5X`*)uXf9vgLoyUDDCHml} zlHCs~r?0lDTDZf@dpq9({bOQJclNQy23IplRD@qR6~V|8;Te~HpX1v(nWI1D?kY1_ z9JE<>*l&I3UUhcaTAlK_N)6T=kYun=amKRDq9^iS7FZ|zV7)sVnD7}qUHx3vIVCg! E0CmiE2mk;8 literal 0 HcmV?d00001 diff --git a/docs/html/class_number_node-members.html b/docs/html/class_number_node-members.html new file mode 100644 index 0000000..db49cac --- /dev/null +++ b/docs/html/class_number_node-members.html @@ -0,0 +1,110 @@ + + + + + + + +sapphirec: Member List + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
NumberNode Member List
+
+
+ +

This is the complete list of members for NumberNode, including all inherited members.

+ + + + + + + + +
ASTNode()ASTNode
ExprNode(std::shared_ptr< ExprNode > child)ExprNode
ExprNode()ExprNode
NumberNode()NumberNode
~ASTNode()ASTNode
~ExprNode()ExprNode
~NumberNode()NumberNode
+
+ + + + diff --git a/docs/html/class_number_node.html b/docs/html/class_number_node.html new file mode 100644 index 0000000..edf2be9 --- /dev/null +++ b/docs/html/class_number_node.html @@ -0,0 +1,175 @@ + + + + + + + +sapphirec: NumberNode Class Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
NumberNode Class Reference
+
+
+ +

#include <NumberNode.h>

+
+Inheritance diagram for NumberNode:
+
+
+ + +ExprNode +ASTNode + +
+ + + + + + + + + + + + + + + + + + +

+Public Member Functions

 NumberNode ()
 
 ~NumberNode ()
 
- Public Member Functions inherited from ExprNode
 ExprNode (std::shared_ptr< ExprNode > child)
 
 ExprNode ()
 
 ~ExprNode ()
 
- Public Member Functions inherited from ASTNode
 ASTNode ()
 
 ~ASTNode ()
 
+

Constructor & Destructor Documentation

+ +

◆ NumberNode()

+ +
+
+ + + + + + + +
NumberNode::NumberNode ()
+
+ +
+
+ +

◆ ~NumberNode()

+ +
+
+ + + + + + + +
NumberNode::~NumberNode ()
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/class_number_node.js b/docs/html/class_number_node.js new file mode 100644 index 0000000..57c307d --- /dev/null +++ b/docs/html/class_number_node.js @@ -0,0 +1,5 @@ +var class_number_node = +[ + [ "NumberNode", "class_number_node.html#ad73f159f5e1cde94876e24efba813647", null ], + [ "~NumberNode", "class_number_node.html#a90b34c7bd973fdb7dcc661f4882803e7", null ] +]; \ No newline at end of file diff --git a/docs/html/class_number_node.png b/docs/html/class_number_node.png new file mode 100644 index 0000000000000000000000000000000000000000..40fcd11b8c5182166489c294670e838d25b3cf3a GIT binary patch literal 586 zcmV-Q0=4~#P)vTJkN^MxkN^Mxkifve1&Q1r00008bW%=J0RR90|NsC0)yh;d0005mNkljQ2nCvjq7^TMM1(Yi!nFNIzr90U#nWUl5Xw?=ay+0Nj z3|nO)Nfzp21ERjA<@?z5Z;g6|H-v~jkxbUZ9{&#YHQ3~Qk9tL)Vk7t{K3eNYX4b{( zQ5A*8x3$`q<5U4;FzNieKo4Qp5c$qZ{)!~OtPL}b1oBsp7#{Up};izI7lu-xh< zcCjScmA>pfY(VV4wDLi(5Dby_V62_#*iZnY!}yF9WAod@ppwwZ){Zf{Hi$;`%6Op-(WFDyykkYSf%MMS0x0G`zb z0Q0p5yKPIjYp^?Y1$Pnl%O=6FhBd5V0VFf5VGa8OSm&IZFE{|0EyI2QtFH5oVW`}w zpAM||PhvZ{BdlNSiY~4L<$&ogY#w|0(<#>DbdiO_V_m|LRnpRKky<_H>g^4%`G>1#7fO#^kVOL|Fb8fo+ Y0D}Z1ex&HVD*ylh07*qoM6N<$f>K2keE + + + + + + +sapphirec: Member List + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Parser Member List
+
+
+ +

This is the complete list of members for Parser, including all inherited members.

+ + + + +
new_parser(const TokenStream &tokens)Parserstatic
parse()Parser
~Parser()Parser
+
+ + + + diff --git a/docs/html/class_parser.html b/docs/html/class_parser.html new file mode 100644 index 0000000..1d3d09c --- /dev/null +++ b/docs/html/class_parser.html @@ -0,0 +1,187 @@ + + + + + + + +sapphirec: Parser Class Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ + +
+ +

#include <Parser.h>

+ + + + + + +

+Public Member Functions

 ~Parser ()
 
std::shared_ptr< ASTNodeparse ()
 
+ + + +

+Static Public Member Functions

static std::shared_ptr< Parsernew_parser (const TokenStream &tokens)
 
+

Constructor & Destructor Documentation

+ +

◆ ~Parser()

+ +
+
+ + + + + + + +
Parser::~Parser ()
+
+ +
+
+

Member Function Documentation

+ +

◆ new_parser()

+ +
+
+ + + + + +
+ + + + + + + + +
std::shared_ptr< Parser > Parser::new_parser (const TokenStreamtokens)
+
+static
+
+ +
+
+ +

◆ parse()

+ +
+
+ + + + + + + +
std::shared_ptr< ASTNode > Parser::parse ()
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/class_parser.js b/docs/html/class_parser.js new file mode 100644 index 0000000..ce9e6fd --- /dev/null +++ b/docs/html/class_parser.js @@ -0,0 +1,5 @@ +var class_parser = +[ + [ "~Parser", "class_parser.html#a3e658b5917a93a3ef648050d060e3a93", null ], + [ "parse", "class_parser.html#ae094dfbfd3065ff21b12a9dd19a771ee", null ] +]; \ No newline at end of file diff --git a/docs/html/class_statement_node-members.html b/docs/html/class_statement_node-members.html new file mode 100644 index 0000000..0e8cb84 --- /dev/null +++ b/docs/html/class_statement_node-members.html @@ -0,0 +1,107 @@ + + + + + + + +sapphirec: Member List + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
StatementNode Member List
+
+
+ +

This is the complete list of members for StatementNode, including all inherited members.

+ + + + + +
ASTNode()ASTNode
StatementNode(std::shared_ptr< ExprNode > child)StatementNode
~ASTNode()ASTNode
~StatementNode()StatementNode
+
+ + + + diff --git a/docs/html/class_statement_node.html b/docs/html/class_statement_node.html new file mode 100644 index 0000000..84bb9dd --- /dev/null +++ b/docs/html/class_statement_node.html @@ -0,0 +1,168 @@ + + + + + + + +sapphirec: StatementNode Class Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
StatementNode Class Reference
+
+
+ +

#include <StatementNode.h>

+
+Inheritance diagram for StatementNode:
+
+
+ + +ASTNode + +
+ + + + + + + + + + + +

+Public Member Functions

 StatementNode (std::shared_ptr< ExprNode > child)
 
 ~StatementNode ()
 
- Public Member Functions inherited from ASTNode
 ASTNode ()
 
 ~ASTNode ()
 
+

Constructor & Destructor Documentation

+ +

◆ StatementNode()

+ +
+
+ + + + + + + + +
StatementNode::StatementNode (std::shared_ptr< ExprNodechild)
+
+ +
+
+ +

◆ ~StatementNode()

+ +
+
+ + + + + + + +
StatementNode::~StatementNode ()
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/class_statement_node.js b/docs/html/class_statement_node.js new file mode 100644 index 0000000..47b04e3 --- /dev/null +++ b/docs/html/class_statement_node.js @@ -0,0 +1,5 @@ +var class_statement_node = +[ + [ "StatementNode", "class_statement_node.html#a0eae92f37b371c7cbc9131ba3e0c3c57", null ], + [ "~StatementNode", "class_statement_node.html#a720f5b78cc3ef43e870f429d6a99ebb2", null ] +]; \ No newline at end of file diff --git a/docs/html/class_statement_node.png b/docs/html/class_statement_node.png new file mode 100644 index 0000000000000000000000000000000000000000..a21b2ca79f5cae36197538083ce0a155577bc99a GIT binary patch literal 488 zcmVP)vTJkN^MxkN^Mxkifve1&Q1r00008bW%=J0RR90|NsC0)yh;d0004ZNklDOZg@=URTwfv{B`T7>p0t-hLBfjGiJ&lAks}l1%+3Ae7mW%dT?2A)r^7ey3K+d5_2&xE4*j6gj{uVNP_F>StiN1?p7wV6p{d@{MUwOmZGa@1 z+5ky1^$9?XF**w1N4f!c${TRIITO4AM|@v`JKzs=(FOq6+5iAk8vtNx0{~2I0D!3t z05G)y0H*#SAcPP+MF8;A1^}4)ARtxzKGBx|3>^;HXZAc>#ZE)p@-(1sdlHcDvAnWV z4pr^4mbWJrR+-7xDMjPG^H9H1#K~?B-MLP6>s;iq1~Xu_37nsGSi7jM<@A()BV(9m zPjOd3>6nWm&-+iOt-dzE?xM8@R*I&qTQ#VE2faUrE*g?I+@NlLu8RO1v;hF7HUPlX eCjcRY;HWQi#}z;MS=Q_T0000 + + + + + + +sapphirec: Member List + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
SumNode Member List
+
+
+ +

This is the complete list of members for SumNode, including all inherited members.

+ + + + + + + + + + + + +
ASTNode()ASTNode
BinaryOpNode(std::shared_ptr< ExprNode > left, std::shared_ptr< ExprNode > right)BinaryOpNode
ExprNode(std::shared_ptr< ExprNode > child)ExprNode
ExprNode()ExprNode
leftBinaryOpNodeprotected
rightBinaryOpNodeprotected
SumNode(std::shared_ptr< ExprNode > left, std::shared_ptr< ExprNode > right, char op)SumNode
~ASTNode()ASTNode
~BinaryOpNode()BinaryOpNode
~ExprNode()ExprNode
~SumNode()SumNode
+
+ + + + diff --git a/docs/html/class_sum_node.html b/docs/html/class_sum_node.html new file mode 100644 index 0000000..384aeb6 --- /dev/null +++ b/docs/html/class_sum_node.html @@ -0,0 +1,206 @@ + + + + + + + +sapphirec: SumNode Class Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
SumNode Class Referencefinal
+
+
+ +

#include <SumNode.h>

+
+Inheritance diagram for SumNode:
+
+
+ + +BinaryOpNode +ExprNode +ASTNode + +
+ + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 SumNode (std::shared_ptr< ExprNode > left, std::shared_ptr< ExprNode > right, char op)
 
 ~SumNode ()
 
- Public Member Functions inherited from BinaryOpNode
 BinaryOpNode (std::shared_ptr< ExprNode > left, std::shared_ptr< ExprNode > right)
 
 ~BinaryOpNode ()
 
- Public Member Functions inherited from ExprNode
 ExprNode (std::shared_ptr< ExprNode > child)
 
 ExprNode ()
 
 ~ExprNode ()
 
- Public Member Functions inherited from ASTNode
 ASTNode ()
 
 ~ASTNode ()
 
+ + + + + + +

+Additional Inherited Members

- Protected Attributes inherited from BinaryOpNode
std::shared_ptr< ExprNodeleft
 
std::shared_ptr< ExprNoderight
 
+

Constructor & Destructor Documentation

+ +

◆ SumNode()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
SumNode::SumNode (std::shared_ptr< ExprNodeleft,
std::shared_ptr< ExprNoderight,
char op 
)
+
+ +
+
+ +

◆ ~SumNode()

+ +
+
+ + + + + + + +
SumNode::~SumNode ()
+
+ +
+
+
The documentation for this class was generated from the following files: +
+
+ + + + diff --git a/docs/html/class_sum_node.js b/docs/html/class_sum_node.js new file mode 100644 index 0000000..2c23330 --- /dev/null +++ b/docs/html/class_sum_node.js @@ -0,0 +1,5 @@ +var class_sum_node = +[ + [ "SumNode", "class_sum_node.html#a35d1a4b581dc1f943065fe4f55e586b6", null ], + [ "~SumNode", "class_sum_node.html#aaaba707d1ba3c11e6b8b875c1596bc03", null ] +]; \ No newline at end of file diff --git a/docs/html/class_sum_node.png b/docs/html/class_sum_node.png new file mode 100644 index 0000000000000000000000000000000000000000..73ae2ebc87127b1fed9ce84af7f99b3622f634b3 GIT binary patch literal 858 zcmeAS@N?(olHy`uVBq!ia0vp^2|#>+gBeJkiJJBVNJ#|vgt-3y{~ySF@#br3|Dg#$ z78oBmaDcV*jy#adQ4-`A%m7pb0#{Fk7%?y~z4UZ(45?szJNI?bYXu&*>HU)X|0~PK z8?ePcQ916F9lUfV?i8DH z^xO8gA3YClJ9o)CIA&>j<>V#vybtd3yZPC1gXw3^IJP4F6g2AC5#D@SJ1IKe%Jx`h&3_xL0YgFqkPa7;rK+cyciKI58v$F)>UQV3_g8(ea#R zwbL{ednW}?HG5T$&+e1H>CF9m;pGwOMwPjnGUf|SIeKjW+st=!H0LgTZu4L_$FZ_q z)0S;<-C$Z8G3nc#rwKd1UU_}PBj|iA-#Hd<5$l7YfqTkaCIubOWSLa*V5`b|mE7b1 zpFRk1ef$2w{#719#gV0Yo?`Vb3ZC&(J7~4`$Zog2etNd1=YkKuirgPHU)u5RX|qeU)pM(-HK*J#)>xxer1SHY_*%Dd-tPSYrBS}Vrmxcm3B4e>&ERDXJHxI4?{?W8Yme9QWF%`N>L zote9OPl)TJl#RbT@BB-;_cwfF{D;hgiF=PLPgv3qc9-*n;&XirdyX=YA%PqWIfy7gc=2a*)0Ci3Ei4b*fpJvlXCThtaQ@Qu{u$AGgwE_$ckceG z>6q#MEc0~n%b89($DZ*nIBv1X&)}T)q*XDqGoNL#zA&6*qdlus;p_E{j5iX)0{35h z_E%%aiq79E`?VM>p0YYxKK8vZ@7Ht7h~&89+gx%hl^WDJASq&>qKBrc`#;8Szpax3 TSuTeFGXjIBtDnm{r-UW|<_Uo3 literal 0 HcmV?d00001 diff --git a/docs/html/classes.html b/docs/html/classes.html index 036d109..c9e7ee4 100644 --- a/docs/html/classes.html +++ b/docs/html/classes.html @@ -9,10 +9,16 @@ + + + + + +
@@ -23,7 +29,7 @@
sapphirec
-
The Sapphire compiler
+
The Sapphire documentation
@@ -47,6 +53,22 @@ $(function() { /* @license-end */
+
+ +
+
+
+ +
Class Index
-
A | L | P | T | _
+
A | B | E | L | M | N | P | S | T | _
+ - + diff --git a/docs/html/dir_2753544c6f01c90a87473366a10a4997.html b/docs/html/dir_2753544c6f01c90a87473366a10a4997.html new file mode 100644 index 0000000..e0a8046 --- /dev/null +++ b/docs/html/dir_2753544c6f01c90a87473366a10a4997.html @@ -0,0 +1,133 @@ + + + + + + + +sapphirec: src/AST Directory Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
AST Directory Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  ASTNode.cpp
 
file  ASTNode.h [code]
 
file  BinaryOpNode.cpp
 
file  BinaryOpNode.h [code]
 
file  ExprNode.cpp
 
file  ExprNode.h [code]
 
file  MulNode.cpp
 
file  MulNode.h [code]
 
file  NumberNode.cpp
 
file  NumberNode.h [code]
 
file  StatementNode.cpp
 
file  StatementNode.h [code]
 
file  SumNode.cpp
 
file  SumNode.h [code]
 
+
+
+ + + + diff --git a/docs/html/dir_2753544c6f01c90a87473366a10a4997.js b/docs/html/dir_2753544c6f01c90a87473366a10a4997.js new file mode 100644 index 0000000..e15dc44 --- /dev/null +++ b/docs/html/dir_2753544c6f01c90a87473366a10a4997.js @@ -0,0 +1,31 @@ +var dir_2753544c6f01c90a87473366a10a4997 = +[ + [ "ASTNode.cpp", "_a_s_t_node_8cpp.html", null ], + [ "ASTNode.h", "_a_s_t_node_8h.html", [ + [ "ASTNode", "class_a_s_t_node.html", "class_a_s_t_node" ] + ] ], + [ "BinaryOpNode.cpp", "_binary_op_node_8cpp.html", null ], + [ "BinaryOpNode.h", "_binary_op_node_8h.html", [ + [ "BinaryOpNode", "class_binary_op_node.html", "class_binary_op_node" ] + ] ], + [ "ExprNode.cpp", "_expr_node_8cpp.html", null ], + [ "ExprNode.h", "_expr_node_8h.html", [ + [ "ExprNode", "class_expr_node.html", "class_expr_node" ] + ] ], + [ "MulNode.cpp", "_mul_node_8cpp.html", null ], + [ "MulNode.h", "_mul_node_8h.html", [ + [ "MulNode", "class_mul_node.html", "class_mul_node" ] + ] ], + [ "NumberNode.cpp", "_number_node_8cpp.html", null ], + [ "NumberNode.h", "_number_node_8h.html", [ + [ "NumberNode", "class_number_node.html", "class_number_node" ] + ] ], + [ "StatementNode.cpp", "_statement_node_8cpp.html", null ], + [ "StatementNode.h", "_statement_node_8h.html", [ + [ "StatementNode", "class_statement_node.html", "class_statement_node" ] + ] ], + [ "SumNode.cpp", "_sum_node_8cpp.html", null ], + [ "SumNode.h", "_sum_node_8h.html", [ + [ "SumNode", "class_sum_node.html", "class_sum_node" ] + ] ] +]; \ No newline at end of file diff --git a/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html b/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html index fa8b858..6ff9a77 100644 --- a/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html +++ b/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.html @@ -9,10 +9,16 @@ + + + + + +
@@ -23,7 +29,7 @@
sapphirec
-
The Sapphire compiler
+
The Sapphire documentation
@@ -46,6 +52,23 @@ $(function() { }); /* @license-end */ +
+
+ +
+
+
+ +
- -
src Directory Reference
+ + + + + + +

+Directories

directory  AST
 
directory  FormatString
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Files

file  Arguments.cpp
 
file  Arguments.h [code]
 
file  Error.cpp
 
file  Error.h [code]
 
file  FileIO.cpp
 
file  FileIO.h [code]
 
file  Importer.cpp
 
file  Importer.h [code]
 
file  Lexer.cpp
 
file  Lexer.h [code]
 
file  Location.cpp
 
file  Location.h [code]
 
file  Normalizer.cpp
 
file  Normalizer.h [code]
 
file  Parser.cpp
 
file  Parser.h [code]
 
file  sapphire.cpp
 
file  sapphirepch.h [code]
 
file  Token.cpp
 
file  Token.h [code]
 
file  utils.cpp
 
file  utils.h [code]
 
+ - + diff --git a/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.js b/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.js new file mode 100644 index 0000000..bc072bc --- /dev/null +++ b/docs/html/dir_68267d1309a1af8e8297ef4c3efbcdba.js @@ -0,0 +1,33 @@ +var dir_68267d1309a1af8e8297ef4c3efbcdba = +[ + [ "AST", "dir_2753544c6f01c90a87473366a10a4997.html", "dir_2753544c6f01c90a87473366a10a4997" ], + [ "FormatString", "dir_ab56abf3846346f4195c14ed00ef0a8f.html", "dir_ab56abf3846346f4195c14ed00ef0a8f" ], + [ "Arguments.cpp", "_arguments_8cpp.html", "_arguments_8cpp" ], + [ "Arguments.h", "_arguments_8h.html", [ + [ "Arguments", "struct_arguments.html", null ] + ] ], + [ "Error.cpp", "_error_8cpp.html", null ], + [ "Error.h", "_error_8h.html", "_error_8h" ], + [ "FileIO.cpp", "_file_i_o_8cpp.html", null ], + [ "FileIO.h", "_file_i_o_8h.html", "_file_i_o_8h" ], + [ "Importer.cpp", "_importer_8cpp.html", "_importer_8cpp" ], + [ "Importer.h", "_importer_8h.html", "_importer_8h" ], + [ "Lexer.cpp", "_lexer_8cpp.html", "_lexer_8cpp" ], + [ "Lexer.h", "_lexer_8h.html", "_lexer_8h" ], + [ "Location.cpp", "_location_8cpp.html", null ], + [ "Location.h", "_location_8h.html", [ + [ "Location", "struct_location.html", "struct_location" ] + ] ], + [ "Normalizer.cpp", "_normalizer_8cpp.html", null ], + [ "Normalizer.h", "_normalizer_8h.html", "_normalizer_8h" ], + [ "Parser.cpp", "_parser_8cpp.html", null ], + [ "Parser.h", "_parser_8h.html", [ + [ "Parser", "class_parser.html", "class_parser" ] + ] ], + [ "sapphire.cpp", "sapphire_8cpp.html", "sapphire_8cpp" ], + [ "sapphirepch.h", "sapphirepch_8h.html", null ], + [ "Token.cpp", "_token_8cpp.html", "_token_8cpp" ], + [ "Token.h", "_token_8h.html", "_token_8h" ], + [ "utils.cpp", "utils_8cpp.html", "utils_8cpp" ], + [ "utils.h", "utils_8h.html", "utils_8h" ] +]; \ No newline at end of file diff --git a/docs/html/dir_ab56abf3846346f4195c14ed00ef0a8f.html b/docs/html/dir_ab56abf3846346f4195c14ed00ef0a8f.html new file mode 100644 index 0000000..7d4c4f5 --- /dev/null +++ b/docs/html/dir_ab56abf3846346f4195c14ed00ef0a8f.html @@ -0,0 +1,107 @@ + + + + + + + +sapphirec: src/FormatString Directory Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
FormatString Directory Reference
+
+
+ + + + +

+Files

file  FormatString.hpp [code]
 
+
+
+ + + + diff --git a/docs/html/dir_ab56abf3846346f4195c14ed00ef0a8f.js b/docs/html/dir_ab56abf3846346f4195c14ed00ef0a8f.js new file mode 100644 index 0000000..e6d9e1d --- /dev/null +++ b/docs/html/dir_ab56abf3846346f4195c14ed00ef0a8f.js @@ -0,0 +1,4 @@ +var dir_ab56abf3846346f4195c14ed00ef0a8f = +[ + [ "FormatString.hpp", "_format_string_8hpp.html", "_format_string_8hpp" ] +]; \ No newline at end of file diff --git a/docs/html/doxygen-awesome-sidebar-only.css b/docs/html/doxygen-awesome-sidebar-only.css new file mode 100644 index 0000000..b5c4e7c --- /dev/null +++ b/docs/html/doxygen-awesome-sidebar-only.css @@ -0,0 +1,113 @@ +/** + +Doxygen Awesome +https://github.com/jothepro/doxygen-awesome-css + +MIT License + +Copyright (c) 2021 jothepro + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + + */ + +html { + /* side nav width. MUST be = `TREEVIEW_WIDTH`. + * Make sure it is wide enough to contain the page title (logo + title + version) + */ + --side-nav-fixed-width: 335px; + --menu-display: none; + + --top-height: 120px; +} + +#projectname { + white-space: nowrap; +} + + +@media screen and (min-width: 768px) { + html { + --searchbar-background: var(--page-background-color); + } + + #side-nav { + min-width: var(--side-nav-fixed-width); + max-width: var(--side-nav-fixed-width); + top: var(--top-height); + overflow: visible; + } + + #nav-tree, #side-nav { + height: calc(100vh - var(--top-height)) !important; + } + + #nav-tree { + padding: 0; + } + + #top { + display: block; + border-bottom: none; + height: var(--top-height); + margin-bottom: calc(0px - var(--top-height)); + max-width: var(--side-nav-fixed-width); + overflow: hidden; + background: var(--side-nav-background); + } + #main-nav { + float: left; + padding-right: 0; + } + + .ui-resizable-handle { + cursor: default; + width: 1px !important; + box-shadow: 0 calc(-2 * var(--top-height)) 0 0 var(--separator-color); + } + + #nav-path { + position: fixed; + right: 0; + left: var(--side-nav-fixed-width); + bottom: 0; + width: auto; + } + + #doc-content { + height: calc(100vh - 31px) !important; + padding-bottom: calc(3 * var(--spacing-large)); + padding-top: calc(var(--top-height) - 80px); + box-sizing: border-box; + margin-left: var(--side-nav-fixed-width) !important; + } + + #MSearchBox { + width: calc(var(--side-nav-fixed-width) - calc(2 * var(--spacing-medium))); + } + + #MSearchField { + width: calc(var(--side-nav-fixed-width) - calc(2 * var(--spacing-medium)) - 65px); + } + + #MSearchResultsWindow { + left: var(--spacing-medium) !important; + right: auto; + } +} diff --git a/docs/html/doxygen-awesome.css b/docs/html/doxygen-awesome.css new file mode 100644 index 0000000..5f420dc --- /dev/null +++ b/docs/html/doxygen-awesome.css @@ -0,0 +1,2135 @@ +/** + +Doxygen Awesome +https://github.com/jothepro/doxygen-awesome-css + +MIT License + +Copyright (c) 2021 - 2022 jothepro + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. + +*/ + +html { + /* primary theme color. This will affect the entire websites color scheme: links, arrows, labels, ... */ + --primary-color: #1779c4; + --primary-dark-color: #335c80; + --primary-light-color: #70b1e9; + + /* page base colors */ + --page-background-color: white; + --page-foreground-color: #2f4153; + --page-secondary-foreground-color: #637485; + + /* color for all separators on the website: hr, borders, ... */ + --separator-color: #dedede; + + /* border radius for all rounded components. Will affect many components, like dropdowns, memitems, codeblocks, ... */ + --border-radius-large: 8px; + --border-radius-small: 4px; + --border-radius-medium: 6px; + + /* default spacings. Most compontest reference these values for spacing, to provide uniform spacing on the page. */ + --spacing-small: 5px; + --spacing-medium: 10px; + --spacing-large: 16px; + + /* default box shadow used for raising an element above the normal content. Used in dropdowns, Searchresult, ... */ + --box-shadow: 0 2px 8px 0 rgba(0,0,0,.075); + + --odd-color: rgba(0,0,0,.028); + + /* font-families. will affect all text on the website + * font-family: the normal font for text, headlines, menus + * font-family-monospace: used for preformatted text in memtitle, code, fragments + */ + --font-family: -apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif; + --font-family-monospace: ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,Liberation Mono,monospace; + + /* font sizes */ + --page-font-size: 15.6px; + --navigation-font-size: 14.4px; + --code-font-size: 14px; /* affects code, fragment */ + --title-font-size: 22px; + + /* content text properties. These only affect the page content, not the navigation or any other ui elements */ + --content-line-height: 27px; + /* The content is centered and constraint in it's width. To make the content fill the whole page, set the variable to auto.*/ + --content-maxwidth: 1000px; + + /* colors for various content boxes: @warning, @note, @deprecated @bug */ + --warning-color: #f8d1cc; + --warning-color-dark: #b61825; + --warning-color-darker: #75070f; + --note-color: #faf3d8; + --note-color-dark: #f3a600; + --note-color-darker: #5f4204; + --todo-color: #e4f3ff; + --todo-color-dark: #1879C4; + --todo-color-darker: #274a5c; + --deprecated-color: #ecf0f3; + --deprecated-color-dark: #5b6269; + --deprecated-color-darker: #43454a; + --bug-color: #e4dafd; + --bug-color-dark: #5b2bdd; + --bug-color-darker: #2a0d72; + --invariant-color: #d8f1e3; + --invariant-color-dark: #44b86f; + --invariant-color-darker: #265532; + + /* blockquote colors */ + --blockquote-background: #f8f9fa; + --blockquote-foreground: #636568; + + /* table colors */ + --tablehead-background: #f1f1f1; + --tablehead-foreground: var(--page-foreground-color); + + /* menu-display: block | none + * Visibility of the top navigation on screens >= 768px. On smaller screen the menu is always visible. + * `GENERATE_TREEVIEW` MUST be enabled! + */ + --menu-display: block; + + --menu-focus-foreground: var(--page-background-color); + --menu-focus-background: var(--primary-color); + --menu-selected-background: rgba(0,0,0,.05); + + + --header-background: var(--page-background-color); + --header-foreground: var(--page-foreground-color); + + /* searchbar colors */ + --searchbar-background: var(--side-nav-background); + --searchbar-foreground: var(--page-foreground-color); + + /* searchbar size + * (`searchbar-width` is only applied on screens >= 768px. + * on smaller screens the searchbar will always fill the entire screen width) */ + --searchbar-height: 33px; + --searchbar-width: 210px; + --searchbar-border-radius: var(--searchbar-height); + + /* code block colors */ + --code-background: #f5f5f5; + --code-foreground: var(--page-foreground-color); + + /* fragment colors */ + --fragment-background: #F8F9FA; + --fragment-foreground: #37474F; + --fragment-keyword: #bb6bb2; + --fragment-keywordtype: #8258b3; + --fragment-keywordflow: #d67c3b; + --fragment-token: #438a59; + --fragment-comment: #969696; + --fragment-link: #5383d6; + --fragment-preprocessor: #46aaa5; + --fragment-linenumber-color: #797979; + --fragment-linenumber-background: #f4f4f5; + --fragment-linenumber-border: #e3e5e7; + --fragment-lineheight: 20px; + + /* sidebar navigation (treeview) colors */ + --side-nav-background: #fbfbfb; + --side-nav-foreground: var(--page-foreground-color); + --side-nav-arrow-opacity: 0; + --side-nav-arrow-hover-opacity: 0.9; + + --toc-background: var(--side-nav-background); + --toc-foreground: var(--side-nav-foreground); + + /* height of an item in any tree / collapsable table */ + --tree-item-height: 30px; + + --memname-font-size: var(--code-font-size); + --memtitle-font-size: 18px; + + --webkit-scrollbar-size: 7px; + --webkit-scrollbar-padding: 4px; + --webkit-scrollbar-color: var(--separator-color); +} + +@media screen and (max-width: 767px) { + html { + --page-font-size: 16px; + --navigation-font-size: 16px; + --code-font-size: 15px; /* affects code, fragment */ + --title-font-size: 22px; + } +} + +@media (prefers-color-scheme: dark) { + html:not(.light-mode) { + color-scheme: dark; + + --primary-color: #1982d2; + --primary-dark-color: #86a9c4; + --primary-light-color: #4779ac; + + --box-shadow: 0 2px 8px 0 rgba(0,0,0,.35); + + --odd-color: rgba(100,100,100,.06); + + --menu-selected-background: rgba(0,0,0,.4); + + --page-background-color: #1C1D1F; + --page-foreground-color: #d2dbde; + --page-secondary-foreground-color: #859399; + --separator-color: #38393b; + --side-nav-background: #252628; + + --code-background: #2a2c2f; + + --tablehead-background: #2a2c2f; + + --blockquote-background: #222325; + --blockquote-foreground: #7e8c92; + + --warning-color: #2e1917; + --warning-color-dark: #ad2617; + --warning-color-darker: #f5b1aa; + --note-color: #3b2e04; + --note-color-dark: #f1b602; + --note-color-darker: #ceb670; + --todo-color: #163750; + --todo-color-dark: #1982D2; + --todo-color-darker: #dcf0fa; + --deprecated-color: #2e323b; + --deprecated-color-dark: #738396; + --deprecated-color-darker: #abb0bd; + --bug-color: #2a2536; + --bug-color-dark: #7661b3; + --bug-color-darker: #ae9ed6; + --invariant-color: #303a35; + --invariant-color-dark: #76ce96; + --invariant-color-darker: #cceed5; + + --fragment-background: #282c34; + --fragment-foreground: #dbe4eb; + --fragment-keyword: #cc99cd; + --fragment-keywordtype: #ab99cd; + --fragment-keywordflow: #e08000; + --fragment-token: #7ec699; + --fragment-comment: #999999; + --fragment-link: #98c0e3; + --fragment-preprocessor: #65cabe; + --fragment-linenumber-color: #cccccc; + --fragment-linenumber-background: #35393c; + --fragment-linenumber-border: #1f1f1f; + } +} + +/* dark mode variables are defined twice, to support both the dark-mode without and with doxygen-awesome-darkmode-toggle.js */ +html.dark-mode { + color-scheme: dark; + + --primary-color: #1982d2; + --primary-dark-color: #86a9c4; + --primary-light-color: #4779ac; + + --box-shadow: 0 2px 8px 0 rgba(0,0,0,.30); + + --odd-color: rgba(100,100,100,.06); + + --menu-selected-background: rgba(0,0,0,.4); + + --page-background-color: #1C1D1F; + --page-foreground-color: #d2dbde; + --page-secondary-foreground-color: #859399; + --separator-color: #38393b; + --side-nav-background: #252628; + + --code-background: #2a2c2f; + + --tablehead-background: #2a2c2f; + + --blockquote-background: #222325; + --blockquote-foreground: #7e8c92; + + --warning-color: #2e1917; + --warning-color-dark: #ad2617; + --warning-color-darker: #f5b1aa; + --note-color: #3b2e04; + --note-color-dark: #f1b602; + --note-color-darker: #ceb670; + --todo-color: #163750; + --todo-color-dark: #1982D2; + --todo-color-darker: #dcf0fa; + --deprecated-color: #2e323b; + --deprecated-color-dark: #738396; + --deprecated-color-darker: #abb0bd; + --bug-color: #2a2536; + --bug-color-dark: #7661b3; + --bug-color-darker: #ae9ed6; + --invariant-color: #303a35; + --invariant-color-dark: #76ce96; + --invariant-color-darker: #cceed5; + + --fragment-background: #282c34; + --fragment-foreground: #dbe4eb; + --fragment-keyword: #cc99cd; + --fragment-keywordtype: #ab99cd; + --fragment-keywordflow: #e08000; + --fragment-token: #7ec699; + --fragment-comment: #999999; + --fragment-link: #98c0e3; + --fragment-preprocessor: #65cabe; + --fragment-linenumber-color: #cccccc; + --fragment-linenumber-background: #35393c; + --fragment-linenumber-border: #1f1f1f; +} + +body { + color: var(--page-foreground-color); + background-color: var(--page-background-color); + font-size: var(--page-font-size); +} + +body, table, div, p, dl, #nav-tree .label, .title, .sm-dox a, .sm-dox a:hover, .sm-dox a:focus, #projectname, .SelectItem, #MSearchField, .navpath li.navelem a, .navpath li.navelem a:hover { + font-family: var(--font-family); +} + +h1, h2, h3, h4, h5 { + margin-top: .9em; + font-weight: 600; + line-height: initial; +} + +p, div, table, dl { + font-size: var(--page-font-size); +} + +a:link, a:visited, a:hover, a:focus, a:active { + color: var(--primary-color) !important; + font-weight: 500; +} + +a.anchor { + scroll-margin-top: var(--spacing-large); +} + +/* + Title and top navigation + */ + +#top { + background: var(--header-background); + border-bottom: 1px solid var(--separator-color); +} + +@media screen and (min-width: 768px) { + #top { + display: flex; + flex-wrap: wrap; + justify-content: space-between; + align-items: center; + } +} + +#main-nav { + flex-grow: 5; + padding: var(--spacing-small) var(--spacing-medium); +} + +#titlearea { + width: auto; + padding: var(--spacing-medium) var(--spacing-large); + background: none; + color: var(--header-foreground); + border-bottom: none; +} + +@media screen and (max-width: 767px) { + #titlearea { + padding-bottom: var(--spacing-small); + } +} + +#titlearea table tbody tr { + height: auto !important; +} + +#projectname { + font-size: var(--title-font-size); + font-weight: 600; +} + +#projectnumber { + font-family: inherit; + font-size: 60%; +} + +#projectbrief { + font-family: inherit; + font-size: 80%; +} + +#projectlogo { + vertical-align: middle; +} + +#projectlogo img { + max-height: calc(var(--title-font-size) * 2); + margin-right: var(--spacing-small); +} + +.sm-dox, .tabs, .tabs2, .tabs3 { + background: none; + padding: 0; +} + +.tabs, .tabs2, .tabs3 { + border-bottom: 1px solid var(--separator-color); + margin-bottom: -1px; +} + +@media screen and (max-width: 767px) { + .sm-dox a span.sub-arrow { + background: var(--code-background); + } + + #main-menu a.has-submenu span.sub-arrow { + color: var(--page-secondary-foreground-color); + border-radius: var(--border-radius-medium); + } + + #main-menu a.has-submenu:hover span.sub-arrow { + color: var(--page-foreground-color); + } +} + +@media screen and (min-width: 768px) { + .sm-dox li, .tablist li { + display: var(--menu-display); + } + + .sm-dox a span.sub-arrow { + border-color: var(--header-foreground) transparent transparent transparent; + } + + .sm-dox a:hover span.sub-arrow { + border-color: var(--menu-focus-foreground) transparent transparent transparent; + } + + .sm-dox ul a span.sub-arrow { + border-color: transparent transparent transparent var(--page-foreground-color); + } + + .sm-dox ul a:hover span.sub-arrow { + border-color: transparent transparent transparent var(--menu-focus-foreground); + } +} + +.sm-dox ul { + background: var(--page-background-color); + box-shadow: var(--box-shadow); + border: 1px solid var(--separator-color); + border-radius: var(--border-radius-medium) !important; + padding: var(--spacing-small); + animation: ease-out 150ms slideInMenu; +} + +@keyframes slideInMenu { + from { + opacity: 0; + transform: translate(0px, -2px); + } + + to { + opacity: 1; + transform: translate(0px, 0px); + } +} + +.sm-dox ul a { + color: var(--page-foreground-color) !important; + background: var(--page-background-color); + font-size: var(--navigation-font-size); +} + +.sm-dox>li>ul:after { + border-bottom-color: var(--page-background-color) !important; +} + +.sm-dox>li>ul:before { + border-bottom-color: var(--separator-color) !important; +} + +.sm-dox ul a:hover, .sm-dox ul a:active, .sm-dox ul a:focus { + font-size: var(--navigation-font-size) !important; + color: var(--menu-focus-foreground) !important; + text-shadow: none; + background-color: var(--menu-focus-background); + border-radius: var(--border-radius-small) !important; +} + +.sm-dox a, .sm-dox a:focus, .tablist li, .tablist li a, .tablist li.current a { + text-shadow: none; + background: transparent; + background-image: none !important; + color: var(--header-foreground) !important; + font-weight: normal; + font-size: var(--navigation-font-size); + border-radius: var(--border-radius-small) !important; +} + +.sm-dox a:focus { + outline: auto; +} + +.sm-dox a:hover, .sm-dox a:active, .tablist li a:hover { + text-shadow: none; + font-weight: normal; + background: var(--menu-focus-background); + color: var(--menu-focus-foreground) !important; + border-radius: var(--border-radius-small) !important; + font-size: var(--navigation-font-size); +} + +.tablist li.current { + border-radius: var(--border-radius-small); + background: var(--menu-selected-background); +} + +.tablist li { + margin: var(--spacing-small) 0 var(--spacing-small) var(--spacing-small); +} + +.tablist a { + padding: 0 var(--spacing-large); +} + + +/* + Search box + */ + +#MSearchBox { + height: var(--searchbar-height); + background: var(--searchbar-background); + border-radius: var(--searchbar-border-radius); + border: 1px solid var(--separator-color); + overflow: hidden; + width: var(--searchbar-width); + position: relative; + box-shadow: none; + display: block; + margin-top: 0; +} + +.left #MSearchSelect { + left: 0; + user-select: none; +} + +.SelectionMark { + user-select: none; +} + +.tabs .left #MSearchSelect { + padding-left: 0; +} + +.tabs #MSearchBox { + position: absolute; + right: var(--spacing-medium); +} + +@media screen and (max-width: 767px) { + .tabs #MSearchBox { + position: relative; + right: 0; + margin-left: var(--spacing-medium); + margin-top: 0; + } +} + +#MSearchSelectWindow, #MSearchResultsWindow { + z-index: 9999; +} + +#MSearchBox.MSearchBoxActive { + border-color: var(--primary-color); + box-shadow: inset 0 0 0 1px var(--primary-color); +} + +#main-menu > li:last-child { + margin-right: 0; +} + +@media screen and (max-width: 767px) { + #main-menu > li:last-child { + height: 50px; + } +} + +#MSearchField { + font-size: var(--navigation-font-size); + height: calc(var(--searchbar-height) - 2px); + background: transparent; + width: calc(var(--searchbar-width) - 64px); +} + +.MSearchBoxActive #MSearchField { + color: var(--searchbar-foreground); +} + +#MSearchSelect { + top: calc(calc(var(--searchbar-height) / 2) - 11px); +} + +.left #MSearchSelect { + padding-left: 8px; +} + +#MSearchBox span.left, #MSearchBox span.right { + background: none; +} + +#MSearchBox span.right { + padding-top: calc(calc(var(--searchbar-height) / 2) - 12px); + position: absolute; + right: var(--spacing-small); +} + +.tabs #MSearchBox span.right { + top: calc(calc(var(--searchbar-height) / 2) - 12px); +} + +@keyframes slideInSearchResults { + from { + opacity: 0; + transform: translate(0, 15px); + } + + to { + opacity: 1; + transform: translate(0, 20px); + } +} + +#MSearchResultsWindow { + left: auto !important; + right: var(--spacing-medium); + border-radius: var(--border-radius-large); + border: 1px solid var(--separator-color); + transform: translate(0, 20px); + box-shadow: var(--box-shadow); + animation: ease-out 280ms slideInSearchResults; + background: var(--page-background-color); +} + +iframe#MSearchResults { + margin: 4px; +} + +iframe { + color-scheme: normal; +} + +@media (prefers-color-scheme: dark) { + html:not(.light-mode) iframe#MSearchResults { + filter: invert() hue-rotate(180deg); + } +} + +html.dark-mode iframe#MSearchResults { + filter: invert() hue-rotate(180deg); +} + +#MSearchSelectWindow { + border: 1px solid var(--separator-color); + border-radius: var(--border-radius-medium); + box-shadow: var(--box-shadow); + background: var(--page-background-color); + padding-top: var(--spacing-small); + padding-bottom: var(--spacing-small); +} + +#MSearchSelectWindow a.SelectItem { + font-size: var(--navigation-font-size); + line-height: var(--content-line-height); + margin: 0 var(--spacing-small); + border-radius: var(--border-radius-small); + color: var(--page-foreground-color) !important; + font-weight: normal; +} + +#MSearchSelectWindow a.SelectItem:hover { + background: var(--menu-focus-background); + color: var(--menu-focus-foreground) !important; +} + +@media screen and (max-width: 767px) { + #MSearchBox { + margin-top: var(--spacing-medium); + margin-bottom: var(--spacing-medium); + width: calc(100vw - 30px); + } + + #main-menu > li:last-child { + float: none !important; + } + + #MSearchField { + width: calc(100vw - 110px); + } + + @keyframes slideInSearchResultsMobile { + from { + opacity: 0; + transform: translate(0, 15px); + } + + to { + opacity: 1; + transform: translate(0, 20px); + } + } + + #MSearchResultsWindow { + left: var(--spacing-medium) !important; + right: var(--spacing-medium); + overflow: auto; + transform: translate(0, 20px); + animation: ease-out 280ms slideInSearchResultsMobile; + } + + /* + * Overwrites for fixing the searchbox on mobile in doxygen 1.9.2 + */ + label.main-menu-btn ~ #searchBoxPos1 { + top: 3px !important; + right: 6px !important; + left: 45px; + display: flex; + } + + label.main-menu-btn ~ #searchBoxPos1 > #MSearchBox { + margin-top: 0; + margin-bottom: 0; + flex-grow: 2; + float: left; + } +} + +/* + Tree view + */ + +#side-nav { + padding: 0 !important; + background: var(--side-nav-background); +} + +@media screen and (max-width: 767px) { + #side-nav { + display: none; + } + + #doc-content { + margin-left: 0 !important; + } +} + +#nav-tree { + background: transparent; +} + +#nav-tree .label { + font-size: var(--navigation-font-size); +} + +#nav-tree .item { + height: var(--tree-item-height); + line-height: var(--tree-item-height); +} + +#nav-sync { + bottom: 12px; + right: 12px; + top: auto !important; + user-select: none; +} + +#nav-tree .selected { + text-shadow: none; + background-image: none; + background-color: transparent; + position: relative; +} + +#nav-tree .selected::after { + content: ""; + position: absolute; + top: 1px; + bottom: 1px; + left: 0; + width: 4px; + border-radius: 0 var(--border-radius-small) var(--border-radius-small) 0; + background: var(--primary-color); +} + + +#nav-tree a { + color: var(--side-nav-foreground) !important; + font-weight: normal; +} + +#nav-tree a:focus { + outline-style: auto; +} + +#nav-tree .arrow { + opacity: var(--side-nav-arrow-opacity); +} + +.arrow { + color: inherit; + cursor: pointer; + font-size: 45%; + vertical-align: middle; + margin-right: 2px; + font-family: serif; + height: auto; + text-align: right; +} + +#nav-tree div.item:hover .arrow, #nav-tree a:focus .arrow { + opacity: var(--side-nav-arrow-hover-opacity); +} + +#nav-tree .selected a { + color: var(--primary-color) !important; + font-weight: bolder; + font-weight: 600; +} + +.ui-resizable-e { + background: var(--separator-color); + width: 1px; +} + +/* + Contents + */ + +div.header { + border-bottom: 1px solid var(--separator-color); + background-color: var(--page-background-color); + background-image: none; +} + +div.contents, div.header .title, div.header .summary { + max-width: var(--content-maxwidth); +} + +div.contents, div.header .title { + line-height: initial; + margin: calc(var(--spacing-medium) + .2em) auto var(--spacing-medium) auto; +} + +div.header .summary { + margin: var(--spacing-medium) auto 0 auto; +} + +div.headertitle { + padding: 0; +} + +div.header .title { + font-weight: 600; + font-size: 210%; + padding: var(--spacing-medium) var(--spacing-large); + word-break: break-word; +} + +div.header .summary { + width: auto; + display: block; + float: none; + padding: 0 var(--spacing-large); +} + +td.memSeparator { + border-color: var(--separator-color); +} + +span.mlabel { + background: var(--primary-color); + border: none; + padding: 4px 9px; + border-radius: 12px; + margin-right: var(--spacing-medium); +} + +span.mlabel:last-of-type { + margin-right: 2px; +} + +div.contents { + padding: 0 var(--spacing-large); +} + +div.contents p, div.contents li { + line-height: var(--content-line-height); +} + +div.contents div.dyncontent { + margin: var(--spacing-medium) 0; +} + +@media (prefers-color-scheme: dark) { + html:not(.light-mode) div.contents div.dyncontent img, + html:not(.light-mode) div.contents center img, + html:not(.light-mode) div.contents table img, + html:not(.light-mode) div.contents div.dyncontent iframe, + html:not(.light-mode) div.contents center iframe, + html:not(.light-mode) div.contents table iframe { + filter: hue-rotate(180deg) invert(); + } +} + +html.dark-mode div.contents div.dyncontent img, +html.dark-mode div.contents center img, +html.dark-mode div.contents table img, +html.dark-mode div.contents div.dyncontent iframe, +html.dark-mode div.contents center iframe, +html.dark-mode div.contents table iframe { + filter: hue-rotate(180deg) invert(); +} + +h2.groupheader { + border-bottom: 0px; + color: var(--page-foreground-color); + box-shadow: + 100px 0 var(--page-background-color), + -100px 0 var(--page-background-color), + 100px 0.75px var(--separator-color), + -100px 0.75px var(--separator-color), + 500px 0 var(--page-background-color), + -500px 0 var(--page-background-color), + 500px 0.75px var(--separator-color), + -500px 0.75px var(--separator-color), + 1500px 0 var(--page-background-color), + -1500px 0 var(--page-background-color), + 1500px 0.75px var(--separator-color), + -1500px 0.75px var(--separator-color), + 2000px 0 var(--page-background-color), + -2000px 0 var(--page-background-color), + 2000px 0.75px var(--separator-color), + -2000px 0.75px var(--separator-color); +} + +blockquote { + margin: 0 var(--spacing-medium) 0 var(--spacing-medium); + padding: var(--spacing-small) var(--spacing-large); + background: var(--blockquote-background); + color: var(--blockquote-foreground); + border-left: 0; + overflow: visible; + border-radius: var(--border-radius-medium); + overflow: visible; + position: relative; +} + +blockquote::before, blockquote::after { + font-weight: bold; + font-family: serif; + font-size: 360%; + opacity: .15; + position: absolute; +} + +blockquote::before { + content: "“"; + left: -10px; + top: 4px; +} + +blockquote::after { + content: "”"; + right: -8px; + bottom: -25px; +} + +blockquote p { + margin: var(--spacing-small) 0 var(--spacing-medium) 0; +} +.paramname { + font-weight: 600; + color: var(--primary-dark-color); +} + +.paramname > code { + border: 0; +} + +table.params .paramname { + font-weight: 600; + font-family: var(--font-family-monospace); + font-size: var(--code-font-size); + padding-right: var(--spacing-small); +} + +.glow { + text-shadow: 0 0 15px var(--primary-light-color) !important; +} + +.alphachar a { + color: var(--page-foreground-color); +} + +/* + Table of Contents + */ + +div.toc { + z-index: 10; + position: relative; + background-color: var(--toc-background); + border: 1px solid var(--separator-color); + border-radius: var(--border-radius-medium); + box-shadow: var(--box-shadow); + padding: 0 var(--spacing-large); + margin: 0 0 var(--spacing-medium) var(--spacing-medium); +} + +div.toc h3 { + color: var(--toc-foreground); + font-size: var(--navigation-font-size); + margin: var(--spacing-large) 0; +} + +div.toc li { + font-size: var(--navigation-font-size); + padding: 0; + background: none; +} + +div.toc li:before { + content: '↓'; + font-weight: 800; + font-family: var(--font-family); + margin-right: var(--spacing-small); + color: var(--toc-foreground); + opacity: .4; +} + +div.toc ul li.level1 { + margin: 0; +} + +div.toc ul li.level2, div.toc ul li.level3 { + margin-top: 0; +} + + +@media screen and (max-width: 767px) { + div.toc { + float: none; + width: auto; + margin: 0 0 var(--spacing-medium) 0; + } +} + +/* + Code & Fragments + */ + +code, div.fragment, pre.fragment { + border-radius: var(--border-radius-small); + border: 1px solid var(--separator-color); + overflow: hidden; +} + +code { + display: inline; + background: var(--code-background); + color: var(--code-foreground); + padding: 2px 6px; + word-break: break-word; +} + +div.fragment, pre.fragment { + margin: var(--spacing-medium) 0; + padding: calc(var(--spacing-large) - (var(--spacing-large) / 6)) var(--spacing-large); + background: var(--fragment-background); + color: var(--fragment-foreground); + overflow-x: auto; +} + +@media screen and (max-width: 767px) { + div.fragment, pre.fragment { + border-top-right-radius: 0; + border-bottom-right-radius: 0; + border-right: 0; + } + + .contents > div.fragment, + .textblock > div.fragment, + .textblock > pre.fragment, + .contents > .doxygen-awesome-fragment-wrapper > div.fragment, + .textblock > .doxygen-awesome-fragment-wrapper > div.fragment, + .textblock > .doxygen-awesome-fragment-wrapper > pre.fragment { + margin: var(--spacing-medium) calc(0px - var(--spacing-large)); + border-radius: 0; + border-left: 0; + } + + .textblock li > .fragment, + .textblock li > .doxygen-awesome-fragment-wrapper > .fragment { + margin: var(--spacing-medium) calc(0px - var(--spacing-large)); + } + + .memdoc li > .fragment, + .memdoc li > .doxygen-awesome-fragment-wrapper > .fragment { + margin: var(--spacing-medium) calc(0px - var(--spacing-medium)); + } + + .textblock ul, .memdoc ul { + overflow: initial; + } + + .memdoc > div.fragment, + .memdoc > pre.fragment, + dl dd > div.fragment, + dl dd pre.fragment, + .memdoc > .doxygen-awesome-fragment-wrapper > div.fragment, + .memdoc > .doxygen-awesome-fragment-wrapper > pre.fragment, + dl dd > .doxygen-awesome-fragment-wrapper > div.fragment, + dl dd .doxygen-awesome-fragment-wrapper > pre.fragment { + margin: var(--spacing-medium) calc(0px - var(--spacing-medium)); + border-radius: 0; + border-left: 0; + } +} + +code, code a, pre.fragment, div.fragment, div.fragment .line, div.fragment span, div.fragment .line a, div.fragment .line span { + font-family: var(--font-family-monospace); + font-size: var(--code-font-size) !important; +} + +div.line:after { + margin-right: var(--spacing-medium); +} + +div.fragment .line, pre.fragment { + white-space: pre; + word-wrap: initial; + line-height: var(--fragment-lineheight); +} + +div.fragment span.keyword { + color: var(--fragment-keyword); +} + +div.fragment span.keywordtype { + color: var(--fragment-keywordtype); +} + +div.fragment span.keywordflow { + color: var(--fragment-keywordflow); +} + +div.fragment span.stringliteral { + color: var(--fragment-token) +} + +div.fragment span.comment { + color: var(--fragment-comment); +} + +div.fragment a.code { + color: var(--fragment-link) !important; +} + +div.fragment span.preprocessor { + color: var(--fragment-preprocessor); +} + +div.fragment span.lineno { + display: inline-block; + width: 27px; + border-right: none; + background: var(--fragment-linenumber-background); + color: var(--fragment-linenumber-color); +} + +div.fragment span.lineno a { + background: none; + color: var(--fragment-link) !important; +} + +div.fragment .line:first-child .lineno { + box-shadow: -999999px 0px 0 999999px var(--fragment-linenumber-background), -999998px 0px 0 999999px var(--fragment-linenumber-border); +} + +/* + dl warning, attention, note, deprecated, bug, ... + */ + +dl.bug dt a, dl.deprecated dt a, dl.todo dt a { + font-weight: bold !important; +} + +dl.warning, dl.attention, dl.note, dl.deprecated, dl.bug, dl.invariant, dl.pre, dl.todo, dl.remark { + padding: var(--spacing-medium); + margin: var(--spacing-medium) 0; + color: var(--page-background-color); + overflow: hidden; + margin-left: 0; + border-radius: var(--border-radius-small); +} + +dl.section dd { + margin-bottom: 2px; +} + +dl.warning, dl.attention { + background: var(--warning-color); + border-left: 8px solid var(--warning-color-dark); + color: var(--warning-color-darker); +} + +dl.warning dt, dl.attention dt { + color: var(--warning-color-dark); +} + +dl.note, dl.remark { + background: var(--note-color); + border-left: 8px solid var(--note-color-dark); + color: var(--note-color-darker); +} + +dl.note dt, dl.remark dt { + color: var(--note-color-dark); +} + +dl.todo { + background: var(--todo-color); + border-left: 8px solid var(--todo-color-dark); + color: var(--todo-color-darker); +} + +dl.todo dt { + color: var(--todo-color-dark); +} + +dl.bug dt a { + color: var(--todo-color-dark) !important; +} + +dl.bug { + background: var(--bug-color); + border-left: 8px solid var(--bug-color-dark); + color: var(--bug-color-darker); +} + +dl.bug dt a { + color: var(--bug-color-dark) !important; +} + +dl.deprecated { + background: var(--deprecated-color); + border-left: 8px solid var(--deprecated-color-dark); + color: var(--deprecated-color-darker); +} + +dl.deprecated dt a { + color: var(--deprecated-color-dark) !important; +} + +dl.section dd, dl.bug dd, dl.deprecated dd, dl.todo dd { + margin-inline-start: 0px; +} + +dl.invariant, dl.pre { + background: var(--invariant-color); + border-left: 8px solid var(--invariant-color-dark); + color: var(--invariant-color-darker); +} + +dl.invariant dt, dl.pre dt { + color: var(--invariant-color-dark); +} + +/* + memitem + */ + +div.memdoc, div.memproto, h2.memtitle { + box-shadow: none; + background-image: none; + border: none; +} + +div.memdoc { + padding: 0 var(--spacing-medium); + background: var(--page-background-color); +} + +h2.memtitle, div.memitem { + border: 1px solid var(--separator-color); + box-shadow: var(--box-shadow); +} + +h2.memtitle { + box-shadow: 0px var(--spacing-medium) 0 -1px var(--fragment-background), var(--box-shadow); +} + +div.memitem { + transition: none; +} + +div.memproto, h2.memtitle { + background: var(--fragment-background); + text-shadow: none; +} + +h2.memtitle { + font-weight: 500; + font-size: var(--memtitle-font-size); + font-family: var(--font-family-monospace); + border-bottom: none; + border-top-left-radius: var(--border-radius-medium); + border-top-right-radius: var(--border-radius-medium); + word-break: break-all; + position: relative; +} + +h2.memtitle:after { + content: ""; + display: block; + background: var(--fragment-background); + height: var(--spacing-medium); + bottom: calc(0px - var(--spacing-medium)); + left: 0; + right: -14px; + position: absolute; + border-top-right-radius: var(--border-radius-medium); +} + +h2.memtitle > span.permalink { + font-size: inherit; +} + +h2.memtitle > span.permalink > a { + text-decoration: none; + padding-left: 3px; + margin-right: -4px; + user-select: none; + display: inline-block; + margin-top: -6px; +} + +h2.memtitle > span.permalink > a:hover { + color: var(--primary-dark-color) !important; +} + +a:target + h2.memtitle, a:target + h2.memtitle + div.memitem { + border-color: var(--primary-light-color); +} + +div.memitem { + border-top-right-radius: var(--border-radius-medium); + border-bottom-right-radius: var(--border-radius-medium); + border-bottom-left-radius: var(--border-radius-medium); + overflow: hidden; + display: block !important; +} + +div.memdoc { + border-radius: 0; +} + +div.memproto { + border-radius: 0 var(--border-radius-small) 0 0; + overflow: auto; + border-bottom: 1px solid var(--separator-color); + padding: var(--spacing-medium); + margin-bottom: -1px; +} + +div.memtitle { + border-top-right-radius: var(--border-radius-medium); + border-top-left-radius: var(--border-radius-medium); +} + +div.memproto table.memname { + font-family: var(--font-family-monospace); + color: var(--page-foreground-color); + font-size: var(--memname-font-size); +} + +div.memproto div.memtemplate { + font-family: var(--font-family-monospace); + color: var(--primary-dark-color); + font-size: var(--memname-font-size); + margin-left: 2px; +} + +table.mlabels, table.mlabels > tbody { + display: block; +} + +td.mlabels-left { + width: auto; +} + +td.mlabels-right { + margin-top: 3px; + position: sticky; + left: 0; +} + +table.mlabels > tbody > tr:first-child { + display: flex; + justify-content: space-between; + flex-wrap: wrap; +} + +.memname, .memitem span.mlabels { + margin: 0 +} + +/* + reflist + */ + +dl.reflist { + box-shadow: var(--box-shadow); + border-radius: var(--border-radius-medium); + border: 1px solid var(--separator-color); + overflow: hidden; + padding: 0; +} + + +dl.reflist dt, dl.reflist dd { + box-shadow: none; + text-shadow: none; + background-image: none; + border: none; + padding: 12px; +} + + +dl.reflist dt { + font-weight: 500; + border-radius: 0; + background: var(--code-background); + border-bottom: 1px solid var(--separator-color); + color: var(--page-foreground-color) +} + + +dl.reflist dd { + background: none; +} + +/* + Table + */ + +.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname) { + display: inline-block; + max-width: 100%; + } + +.contents > table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname):not(.classindex) { + margin-left: calc(0px - var(--spacing-large)); + margin-right: calc(0px - var(--spacing-large)); + max-width: calc(100% + 2 * var(--spacing-large)); +} + +table.markdownTable, table.fieldtable { + border: none; + margin: var(--spacing-medium) 0; + box-shadow: 0 0 0 1px var(--separator-color); + border-radius: var(--border-radius-small); +} + +table.fieldtable { + width: 100%; +} + +th.markdownTableHeadLeft, th.markdownTableHeadRight, th.markdownTableHeadCenter, th.markdownTableHeadNone { + background: var(--tablehead-background); + color: var(--tablehead-foreground); + font-weight: 600; + font-size: var(--page-font-size); +} + +th.markdownTableHeadLeft:first-child, th.markdownTableHeadRight:first-child, th.markdownTableHeadCenter:first-child, th.markdownTableHeadNone:first-child { + border-top-left-radius: var(--border-radius-small); +} + +th.markdownTableHeadLeft:last-child, th.markdownTableHeadRight:last-child, th.markdownTableHeadCenter:last-child, th.markdownTableHeadNone:last-child { + border-top-right-radius: var(--border-radius-small); +} + +table.markdownTable td, table.markdownTable th, table.fieldtable dt { + border: none; + border-right: 1px solid var(--separator-color); + padding: var(--spacing-small) var(--spacing-medium); +} + +table.markdownTable td:last-child, table.markdownTable th:last-child, table.fieldtable dt:last-child { + border: none; +} + +table.markdownTable tr, table.markdownTable tr { + border-bottom: 1px solid var(--separator-color); +} + +table.markdownTable tr:last-child, table.markdownTable tr:last-child { + border-bottom: none; +} + +table.fieldtable th { + font-size: var(--page-font-size); + font-weight: 600; + background-image: none; + background-color: var(--tablehead-background); + color: var(--tablehead-foreground); + border-bottom: 1px solid var(--separator-color); +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + border-bottom: 1px solid var(--separator-color); + border-right: 1px solid var(--separator-color); +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid var(--separator-color); +} + +.memberdecls td.glow, .fieldtable tr.glow { + background-color: var(--primary-light-color); + box-shadow: 0 0 15px var(--primary-light-color); +} + +table.memberdecls { + display: block; +} + +table.memberdecls tr[class^='memitem'] { + font-family: var(--font-family-monospace); + font-size: var(--code-font-size); +} + +table.memberdecls tr[class^='memitem'] .memTemplParams { + font-family: var(--font-family-monospace); + font-size: var(--code-font-size); + color: var(--primary-dark-color); +} + +table.memberdecls .memItemLeft, +table.memberdecls .memItemRight, +table.memberdecls .memTemplItemLeft, +table.memberdecls .memTemplItemRight, +table.memberdecls .memTemplParams { + transition: none; + padding-top: var(--spacing-small); + padding-bottom: var(--spacing-small); + border-top: 1px solid var(--separator-color); + border-bottom: 1px solid var(--separator-color); + background-color: var(--fragment-background); +} + +table.memberdecls .memTemplItemLeft, +table.memberdecls .memTemplItemRight { + padding-top: 2px; +} + +table.memberdecls .memTemplParams { + border-bottom: 0; + border-left: 1px solid var(--separator-color); + border-right: 1px solid var(--separator-color); + border-radius: var(--border-radius-small) var(--border-radius-small) 0 0; + padding-bottom: 0; +} + +table.memberdecls .memTemplItemLeft { + border-radius: 0 0 0 var(--border-radius-small); + border-left: 1px solid var(--separator-color); + border-top: 0; +} + +table.memberdecls .memTemplItemRight { + border-radius: 0 0 var(--border-radius-small) 0; + border-right: 1px solid var(--separator-color); + border-top: 0; +} + +table.memberdecls .memItemLeft { + border-radius: var(--border-radius-small) 0 0 var(--border-radius-small); + border-left: 1px solid var(--separator-color); + padding-left: var(--spacing-medium); + padding-right: 0; +} + +table.memberdecls .memItemRight { + border-radius: 0 var(--border-radius-small) var(--border-radius-small) 0; + border-right: 1px solid var(--separator-color); + padding-right: var(--spacing-medium); + padding-left: 0; + +} + +table.memberdecls .mdescLeft, table.memberdecls .mdescRight { + background: none; + color: var(--page-foreground-color); + padding: var(--spacing-small) 0; +} + +table.memberdecls .memSeparator { + background: var(--page-background-color); + height: var(--spacing-large); + border: 0; + transition: none; +} + +table.memberdecls .groupheader { + margin-bottom: var(--spacing-large); +} + +table.memberdecls .inherit_header td { + padding: 0 0 var(--spacing-medium) 0; + text-indent: -12px; + line-height: 1.5em; + color: var(--page-secondary-foreground-color); +} + +@media screen and (max-width: 767px) { + + table.memberdecls .memItemLeft, + table.memberdecls .memItemRight, + table.memberdecls .mdescLeft, + table.memberdecls .mdescRight, + table.memberdecls .memTemplItemLeft, + table.memberdecls .memTemplItemRight, + table.memberdecls .memTemplParams { + display: block; + text-align: left; + padding-left: var(--spacing-large); + margin: 0 calc(0px - var(--spacing-large)) 0 calc(0px - var(--spacing-large)); + border-right: none; + border-left: none; + border-radius: 0; + } + + table.memberdecls .memItemLeft, + table.memberdecls .mdescLeft, + table.memberdecls .memTemplItemLeft { + border-bottom: 0; + padding-bottom: 0; + } + + table.memberdecls .memTemplItemLeft { + padding-top: 0; + } + + table.memberdecls .mdescLeft { + margin-top: calc(0px - var(--page-font-size)); + } + + table.memberdecls .memItemRight, + table.memberdecls .mdescRight, + table.memberdecls .memTemplItemRight { + border-top: 0; + padding-top: 0; + padding-right: var(--spacing-large); + overflow-x: auto; + } + + table.memberdecls tr[class^='memitem']:not(.inherit) { + display: block; + width: calc(100vw - 2 * var(--spacing-large)); + } + + table.memberdecls .mdescRight { + color: var(--page-foreground-color); + } + + table.memberdecls tr.inherit { + visibility: hidden; + } + + table.memberdecls tr[style="display: table-row;"] { + display: block !important; + visibility: visible; + width: calc(100vw - 2 * var(--spacing-large)); + animation: fade .5s; + } + + @keyframes fade { + 0% { + opacity: 0; + max-height: 0; + } + + 100% { + opacity: 1; + max-height: 200px; + } + } +} + + +/* + Horizontal Rule + */ + +hr { + margin-top: var(--spacing-large); + margin-bottom: var(--spacing-large); + height: 1px; + background-color: var(--separator-color); + border: 0; +} + +.contents hr { + box-shadow: 100px 0 0 var(--separator-color), + -100px 0 0 var(--separator-color), + 500px 0 0 var(--separator-color), + -500px 0 0 var(--separator-color), + 1500px 0 0 var(--separator-color), + -1500px 0 0 var(--separator-color), + 2000px 0 0 var(--separator-color), + -2000px 0 0 var(--separator-color); +} + +.contents img, .contents .center, .contents center, .contents div.image object { + max-width: 100%; + overflow: auto; +} + +@media screen and (max-width: 767px) { + .contents .dyncontent > .center, .contents > center { + margin-left: calc(0px - var(--spacing-large)); + margin-right: calc(0px - var(--spacing-large)); + max-width: calc(100% + 2 * var(--spacing-large)); + } +} + +/* + Directories + */ +div.directory { + border-top: 1px solid var(--separator-color); + border-bottom: 1px solid var(--separator-color); + width: auto; +} + +table.directory { + font-family: var(--font-family); + font-size: var(--page-font-size); + font-weight: normal; + width: 100%; +} + +table.directory td.entry { + padding: var(--spacing-small); +} + +table.directory td.desc { + min-width: 250px; +} + +table.directory tr.even { + background-color: var(--odd-color); +} + +.icona { + width: auto; + height: auto; + margin: 0 var(--spacing-small); +} + +.icon { + background: var(--primary-color); + width: 18px; + height: 18px; + line-height: 18px; +} + +.iconfopen, .icondoc, .iconfclosed { + background-position: center; + margin-bottom: 0; +} + +.icondoc { + filter: saturate(0.2); +} + +@media screen and (max-width: 767px) { + div.directory { + margin-left: calc(0px - var(--spacing-large)); + margin-right: calc(0px - var(--spacing-large)); + } +} + +@media (prefers-color-scheme: dark) { + html:not(.light-mode) .iconfopen, html:not(.light-mode) .iconfclosed { + filter: hue-rotate(180deg) invert(); + } +} + +html.dark-mode .iconfopen, html.dark-mode .iconfclosed { + filter: hue-rotate(180deg) invert(); +} + +/* + Class list + */ + +.classindex dl.odd { + background: var(--odd-color); + border-radius: var(--border-radius-small); +} + +/* + Class Index Doxygen 1.8 +*/ + +table.classindex { + margin-left: 0; + margin-right: 0; + width: 100%; +} + +table.classindex table div.ah { + background-image: none; + background-color: initial; + border-color: var(--separator-color); + color: var(--page-foreground-color); + box-shadow: var(--box-shadow); + border-radius: var(--border-radius-large); + padding: var(--spacing-small); +} + +div.qindex { + background-color: var(--odd-color); + border-radius: var(--border-radius-small); + border: 1px solid var(--separator-color); + padding: var(--spacing-small) 0; +} + +/* + Footer and nav-path + */ + +#nav-path { + width: 100%; +} + +#nav-path ul { + background-image: none; + background: var(--page-background-color); + border: none; + border-top: 1px solid var(--separator-color); + border-bottom: 1px solid var(--separator-color); + border-bottom: 0; + box-shadow: 0 0.75px 0 var(--separator-color); + font-size: var(--navigation-font-size); +} + +img.footer { + width: 60px; +} + +.navpath li.footer { + color: var(--page-secondary-foreground-color); +} + +address.footer { + color: var(--page-secondary-foreground-color); + margin-bottom: var(--spacing-large); +} + +#nav-path li.navelem { + background-image: none; + display: flex; + align-items: center; +} + +.navpath li.navelem a { + text-shadow: none; + display: inline-block; + color: var(--primary-color) !important; +} + +.navpath li.navelem b { + color: var(--primary-dark-color); + font-weight: 500; +} + +li.navelem { + padding: 0; + margin-left: -8px; +} + +li.navelem:first-child { + margin-left: var(--spacing-large); +} + +li.navelem:first-child:before { + display: none; +} + +#nav-path li.navelem:after { + content: ''; + border: 5px solid var(--page-background-color); + border-bottom-color: transparent; + border-right-color: transparent; + border-top-color: transparent; + transform: translateY(-1px) scaleY(4.2); + z-index: 10; + margin-left: 6px; +} + +#nav-path li.navelem:before { + content: ''; + border: 5px solid var(--separator-color); + border-bottom-color: transparent; + border-right-color: transparent; + border-top-color: transparent; + transform: translateY(-1px) scaleY(3.2); + margin-right: var(--spacing-small); +} + +.navpath li.navelem a:hover { + color: var(--primary-color); +} + +/* + Scrollbars for Webkit +*/ + +#nav-tree::-webkit-scrollbar, +div.fragment::-webkit-scrollbar, +pre.fragment::-webkit-scrollbar, +div.memproto::-webkit-scrollbar, +.contents center::-webkit-scrollbar, +.contents .center::-webkit-scrollbar, +.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname)::-webkit-scrollbar { + width: calc(var(--webkit-scrollbar-size) + var(--webkit-scrollbar-padding) + var(--webkit-scrollbar-padding)); + height: calc(var(--webkit-scrollbar-size) + var(--webkit-scrollbar-padding) + var(--webkit-scrollbar-padding)); +} + +#nav-tree::-webkit-scrollbar-thumb, +div.fragment::-webkit-scrollbar-thumb, +pre.fragment::-webkit-scrollbar-thumb, +div.memproto::-webkit-scrollbar-thumb, +.contents center::-webkit-scrollbar-thumb, +.contents .center::-webkit-scrollbar-thumb, +.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname)::-webkit-scrollbar-thumb { + background-color: transparent; + border: var(--webkit-scrollbar-padding) solid transparent; + border-radius: calc(var(--webkit-scrollbar-padding) + var(--webkit-scrollbar-padding)); + background-clip: padding-box; +} + +#nav-tree:hover::-webkit-scrollbar-thumb, +div.fragment:hover::-webkit-scrollbar-thumb, +pre.fragment:hover::-webkit-scrollbar-thumb, +div.memproto:hover::-webkit-scrollbar-thumb, +.contents center:hover::-webkit-scrollbar-thumb, +.contents .center:hover::-webkit-scrollbar-thumb, +.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname):hover::-webkit-scrollbar-thumb { + background-color: var(--webkit-scrollbar-color); +} + +#nav-tree::-webkit-scrollbar-track, +div.fragment::-webkit-scrollbar-track, +pre.fragment::-webkit-scrollbar-track, +div.memproto::-webkit-scrollbar-track, +.contents center::-webkit-scrollbar-track, +.contents .center::-webkit-scrollbar-track, +.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname)::-webkit-scrollbar-track { + background: transparent; +} + +#nav-tree::-webkit-scrollbar-corner { + background-color: var(--side-nav-background); +} + +#nav-tree, +div.fragment, +pre.fragment, +div.memproto, +.contents center, +.contents .center, +.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname) { + overflow-x: auto; + overflow-x: overlay; +} + +#nav-tree { + overflow-x: auto; + overflow-y: auto; + overflow-y: overlay; +} + +/* + Scrollbars for Firefox +*/ + +#nav-tree, +div.fragment, +pre.fragment, +div.memproto, +.contents center, +.contents .center, +.contents table:not(.memberdecls):not(.mlabels):not(.fieldtable):not(.memname) { + scrollbar-width: thin; +} + +/* + Optional Dark mode toggle button +*/ + +doxygen-awesome-dark-mode-toggle { + display: inline-block; + margin: 0 0 0 var(--spacing-small); + padding: 0; + width: var(--searchbar-height); + height: var(--searchbar-height); + background: none; + border: none; + border-radius: var(--searchbar-height); + vertical-align: middle; + text-align: center; + line-height: var(--searchbar-height); + font-size: 22px; + display: flex; + align-items: center; + justify-content: center; + user-select: none; + cursor: pointer; +} + +doxygen-awesome-dark-mode-toggle > svg { + transition: transform .1s ease-in-out; +} + +doxygen-awesome-dark-mode-toggle:active > svg { + transform: scale(.5); +} + +doxygen-awesome-dark-mode-toggle:hover { + background-color: rgba(0,0,0,.03); +} + +html.dark-mode doxygen-awesome-dark-mode-toggle:hover { + background-color: rgba(0,0,0,.18); +} + +/* + Optional fragment copy button +*/ +.doxygen-awesome-fragment-wrapper { + position: relative; +} + +doxygen-awesome-fragment-copy-button { + opacity: 0; + background: var(--fragment-background); + width: 28px; + height: 28px; + position: absolute; + right: calc(var(--spacing-large) - (var(--spacing-large) / 2.5)); + top: calc(var(--spacing-large) - (var(--spacing-large) / 2.5)); + border: 1px solid var(--fragment-foreground); + cursor: pointer; + border-radius: var(--border-radius-small); + display: flex; + justify-content: center; + align-items: center; +} + +.doxygen-awesome-fragment-wrapper:hover doxygen-awesome-fragment-copy-button, doxygen-awesome-fragment-copy-button.success { + opacity: .28; +} + +doxygen-awesome-fragment-copy-button:hover, doxygen-awesome-fragment-copy-button.success { + opacity: 1 !important; +} + +doxygen-awesome-fragment-copy-button:active:not([class~=success]) svg { + transform: scale(.91); +} + +doxygen-awesome-fragment-copy-button svg { + fill: var(--fragment-foreground); + width: 18px; + height: 18px; +} + +doxygen-awesome-fragment-copy-button.success svg { + fill: rgb(14, 168, 14); +} + +doxygen-awesome-fragment-copy-button.success { + border-color: rgb(14, 168, 14); +} + +@media screen and (max-width: 767px) { + .textblock > .doxygen-awesome-fragment-wrapper > doxygen-awesome-fragment-copy-button, + .textblock li > .doxygen-awesome-fragment-wrapper > doxygen-awesome-fragment-copy-button, + .memdoc li > .doxygen-awesome-fragment-wrapper > doxygen-awesome-fragment-copy-button, + .memdoc > .doxygen-awesome-fragment-wrapper > doxygen-awesome-fragment-copy-button, + dl dd > .doxygen-awesome-fragment-wrapper > doxygen-awesome-fragment-copy-button { + right: 0; + } +} + +/* + Optional paragraph link button +*/ + +a.anchorlink { + font-size: 90%; + margin-left: var(--spacing-small); + color: var(--page-foreground-color) !important; + text-decoration: none; + opacity: .15; + display: none; + transition: opacity .1s ease-in-out, color .1s ease-in-out; +} + +a.anchorlink svg { + fill: var(--page-foreground-color); +} + +h3 a.anchorlink svg, h4 a.anchorlink svg { + margin-bottom: -3px; + margin-top: -4px; +} + +a.anchorlink:hover { + opacity: .45; +} + +h2:hover a.anchorlink, h1:hover a.anchorlink, h3:hover a.anchorlink, h4:hover a.anchorlink { + display: inline-block; +} diff --git a/docs/html/files.html b/docs/html/files.html index 574c6df..63b1f35 100644 --- a/docs/html/files.html +++ b/docs/html/files.html @@ -9,10 +9,16 @@ + + + + + +
@@ -23,7 +29,7 @@
sapphirec
-
The Sapphire compiler
+
The Sapphire documentation
@@ -47,6 +53,22 @@ $(function() { /* @license-end */
+
+ +
+
+
+ +
File List
-
Here is a list of all documented files with brief descriptions:
-
[detail level 12]
+
Here is a list of all files with brief descriptions:
+
[detail level 123]
- - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
  src
 Arguments.h
 Error.h
 FileIO.h
 Importer.h
 Lexer.h
 Location.h
 Normalizer.h
 Parser.h
 sapphirepch.h
 Token.h
 utils.h
  AST
 ASTNode.cpp
 ASTNode.h
 BinaryOpNode.cpp
 BinaryOpNode.h
 ExprNode.cpp
 ExprNode.h
 MulNode.cpp
 MulNode.h
 NumberNode.cpp
 NumberNode.h
 StatementNode.cpp
 StatementNode.h
 SumNode.cpp
 SumNode.h
  FormatString
 FormatString.hpp
 Arguments.cpp
 Arguments.h
 Error.cpp
 Error.h
 FileIO.cpp
 FileIO.h
 Importer.cpp
 Importer.h
 Lexer.cpp
 Lexer.h
 Location.cpp
 Location.h
 Normalizer.cpp
 Normalizer.h
 Parser.cpp
 Parser.h
 sapphire.cpp
 sapphirepch.h
 Token.cpp
 Token.h
 utils.cpp
 utils.h
+ - + diff --git a/docs/html/files_dup.js b/docs/html/files_dup.js new file mode 100644 index 0000000..c3b39c4 --- /dev/null +++ b/docs/html/files_dup.js @@ -0,0 +1,4 @@ +var files_dup = +[ + [ "src", "dir_68267d1309a1af8e8297ef4c3efbcdba.html", "dir_68267d1309a1af8e8297ef4c3efbcdba" ] +]; \ No newline at end of file diff --git a/docs/html/functions.html b/docs/html/functions.html new file mode 100644 index 0000000..983017f --- /dev/null +++ b/docs/html/functions.html @@ -0,0 +1,345 @@ + + + + + + + +sapphirec: Class Members + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all class members with links to the classes they belong to:
+ +

- _ -

+ + +

- a -

+ + +

- b -

+ + +

- c -

+ + +

- d -

+ + +

- e -

+ + +

- f -

+ + +

- i -

+ + +

- l -

+ + +

- m -

    +
  • make_lexer() +: Lexer +
  • +
  • make_with_line() +: Token +
  • +
  • match_token_types() +: Token +
  • +
  • MulNode() +: MulNode +
  • +
+ + +

- n -

+ + +

- o -

+ + +

- p -

+ + +

- r -

+ + +

- s -

+ + +

- t -

+ + +

- w -

+ + +

- ~ -

+
+
+ + + + diff --git a/docs/html/functions_func.html b/docs/html/functions_func.html new file mode 100644 index 0000000..8b2eb96 --- /dev/null +++ b/docs/html/functions_func.html @@ -0,0 +1,284 @@ + + + + + + + +sapphirec: Class Members - Functions + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+  + +

- _ -

+ + +

- a -

+ + +

- b -

+ + +

- c -

+ + +

- d -

+ + +

- e -

+ + +

- i -

+ + +

- l -

+ + +

- m -

    +
  • make_lexer() +: Lexer +
  • +
  • make_with_line() +: Token +
  • +
  • match_token_types() +: Token +
  • +
  • MulNode() +: MulNode +
  • +
+ + +

- n -

+ + +

- o -

+ + +

- p -

+ + +

- s -

+ + +

- t -

+ + +

- ~ -

+
+
+ + + + diff --git a/docs/html/functions_vars.html b/docs/html/functions_vars.html new file mode 100644 index 0000000..034c518 --- /dev/null +++ b/docs/html/functions_vars.html @@ -0,0 +1,149 @@ + + + + + + + +sapphirec: Class Members - Variables + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
+ + + + diff --git a/docs/html/globals.html b/docs/html/globals.html new file mode 100644 index 0000000..e4b2f9c --- /dev/null +++ b/docs/html/globals.html @@ -0,0 +1,308 @@ + + + + + + + +sapphirec: File Members + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all file members with links to the files they belong to:
+ +

- b -

+ + +

- c -

+ + +

- d -

+ + +

- f -

+ + +

- i -

+ + +

- l -

+ + +

- m -

+ + +

- r -

+ + +

- t -

+ + +

- w -

+
+
+ + + + diff --git a/docs/html/globals_defs.html b/docs/html/globals_defs.html new file mode 100644 index 0000000..17b14e6 --- /dev/null +++ b/docs/html/globals_defs.html @@ -0,0 +1,119 @@ + + + + + + + +sapphirec: File Members + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
+ + + + diff --git a/docs/html/globals_enum.html b/docs/html/globals_enum.html new file mode 100644 index 0000000..8f42fce --- /dev/null +++ b/docs/html/globals_enum.html @@ -0,0 +1,101 @@ + + + + + + + +sapphirec: File Members + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
+ + + + diff --git a/docs/html/globals_eval.html b/docs/html/globals_eval.html new file mode 100644 index 0000000..5da68b4 --- /dev/null +++ b/docs/html/globals_eval.html @@ -0,0 +1,220 @@ + + + + + + + +sapphirec: File Members + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+  + +

- t -

+
+
+ + + + diff --git a/docs/html/globals_func.html b/docs/html/globals_func.html new file mode 100644 index 0000000..e2378d2 --- /dev/null +++ b/docs/html/globals_func.html @@ -0,0 +1,118 @@ + + + + + + + +sapphirec: File Members + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
+ + + + diff --git a/docs/html/globals_type.html b/docs/html/globals_type.html new file mode 100644 index 0000000..9591d23 --- /dev/null +++ b/docs/html/globals_type.html @@ -0,0 +1,102 @@ + + + + + + + +sapphirec: File Members + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
+ + + + diff --git a/docs/html/globals_vars.html b/docs/html/globals_vars.html new file mode 100644 index 0000000..b4c31df --- /dev/null +++ b/docs/html/globals_vars.html @@ -0,0 +1,102 @@ + + + + + + + +sapphirec: File Members + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
+ + + + diff --git a/docs/html/hierarchy.html b/docs/html/hierarchy.html new file mode 100644 index 0000000..9564588 --- /dev/null +++ b/docs/html/hierarchy.html @@ -0,0 +1,117 @@ + + + + + + + +sapphirec: Class Hierarchy + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Class Hierarchy
+
+
+
This inheritance list is sorted roughly, but not completely, alphabetically:
+
[detail level 1234]
+ + + + + + + + + + + + + +
 C__benchmark_impl
 CArguments
 CASTNode
 CExprNode
 CBinaryOpNode
 CMulNode
 CSumNode
 CNumberNode
 CStatementNode
 CLexer
 CLocation
 CParser
 CToken
+
+
+
+ + + + diff --git a/docs/html/hierarchy.js b/docs/html/hierarchy.js new file mode 100644 index 0000000..138820b --- /dev/null +++ b/docs/html/hierarchy.js @@ -0,0 +1,19 @@ +var hierarchy = +[ + [ "__benchmark_impl", "class____benchmark__impl.html", null ], + [ "Arguments", "struct_arguments.html", null ], + [ "ASTNode", "class_a_s_t_node.html", [ + [ "ExprNode", "class_expr_node.html", [ + [ "BinaryOpNode", "class_binary_op_node.html", [ + [ "MulNode", "class_mul_node.html", null ], + [ "SumNode", "class_sum_node.html", null ] + ] ], + [ "NumberNode", "class_number_node.html", null ] + ] ], + [ "StatementNode", "class_statement_node.html", null ] + ] ], + [ "Lexer", "class_lexer.html", null ], + [ "Location", "struct_location.html", null ], + [ "Parser", "class_parser.html", null ], + [ "Token", "struct_token.html", null ] +]; \ No newline at end of file diff --git a/docs/html/index.html b/docs/html/index.html index 2c5d128..cace253 100644 --- a/docs/html/index.html +++ b/docs/html/index.html @@ -9,10 +9,16 @@ + + + + + +
@@ -23,7 +29,7 @@
sapphirec
-
The Sapphire compiler
+
The Sapphire documentation
@@ -47,6 +53,22 @@ $(function() { /* @license-end */
+
+ +
+
+
+ +
+
- + diff --git a/docs/html/menudata.js b/docs/html/menudata.js index b7ed917..6372c77 100644 --- a/docs/html/menudata.js +++ b/docs/html/menudata.js @@ -24,8 +24,71 @@ */ var menudata={children:[ {text:"Main Page",url:"index.html"}, +{text:"Namespaces",url:"namespaces.html",children:[ +{text:"Namespace List",url:"namespaces.html"}, +{text:"Namespace Members",url:"namespacemembers.html",children:[ +{text:"All",url:"namespacemembers.html"}, +{text:"Functions",url:"namespacemembers_func.html"}, +{text:"Variables",url:"namespacemembers_vars.html"}]}]}, {text:"Classes",url:"annotated.html",children:[ {text:"Class List",url:"annotated.html"}, -{text:"Class Index",url:"classes.html"}]}, +{text:"Class Index",url:"classes.html"}, +{text:"Class Hierarchy",url:"hierarchy.html"}, +{text:"Class Members",url:"functions.html",children:[ +{text:"All",url:"functions.html",children:[ +{text:"_",url:"functions.html#index__5F"}, +{text:"a",url:"functions.html#index_a"}, +{text:"b",url:"functions.html#index_b"}, +{text:"c",url:"functions.html#index_c"}, +{text:"d",url:"functions.html#index_d"}, +{text:"e",url:"functions.html#index_e"}, +{text:"f",url:"functions.html#index_f"}, +{text:"i",url:"functions.html#index_i"}, +{text:"l",url:"functions.html#index_l"}, +{text:"m",url:"functions.html#index_m"}, +{text:"n",url:"functions.html#index_n"}, +{text:"o",url:"functions.html#index_o"}, +{text:"p",url:"functions.html#index_p"}, +{text:"r",url:"functions.html#index_r"}, +{text:"s",url:"functions.html#index_s"}, +{text:"t",url:"functions.html#index_t"}, +{text:"w",url:"functions.html#index_w"}, +{text:"~",url:"functions.html#index__7E"}]}, +{text:"Functions",url:"functions_func.html",children:[ +{text:"_",url:"functions_func.html#index__5F"}, +{text:"a",url:"functions_func.html#index_a"}, +{text:"b",url:"functions_func.html#index_b"}, +{text:"c",url:"functions_func.html#index_c"}, +{text:"d",url:"functions_func.html#index_d"}, +{text:"e",url:"functions_func.html#index_e"}, +{text:"i",url:"functions_func.html#index_i"}, +{text:"l",url:"functions_func.html#index_l"}, +{text:"m",url:"functions_func.html#index_m"}, +{text:"n",url:"functions_func.html#index_n"}, +{text:"o",url:"functions_func.html#index_o"}, +{text:"p",url:"functions_func.html#index_p"}, +{text:"s",url:"functions_func.html#index_s"}, +{text:"t",url:"functions_func.html#index_t"}, +{text:"~",url:"functions_func.html#index__7E"}]}, +{text:"Variables",url:"functions_vars.html"}]}]}, {text:"Files",url:"files.html",children:[ -{text:"File List",url:"files.html"}]}]} +{text:"File List",url:"files.html"}, +{text:"File Members",url:"globals.html",children:[ +{text:"All",url:"globals.html",children:[ +{text:"b",url:"globals.html#index_b"}, +{text:"c",url:"globals.html#index_c"}, +{text:"d",url:"globals.html#index_d"}, +{text:"f",url:"globals.html#index_f"}, +{text:"i",url:"globals.html#index_i"}, +{text:"l",url:"globals.html#index_l"}, +{text:"m",url:"globals.html#index_m"}, +{text:"r",url:"globals.html#index_r"}, +{text:"t",url:"globals.html#index_t"}, +{text:"w",url:"globals.html#index_w"}]}, +{text:"Functions",url:"globals_func.html"}, +{text:"Variables",url:"globals_vars.html"}, +{text:"Typedefs",url:"globals_type.html"}, +{text:"Enumerations",url:"globals_enum.html"}, +{text:"Enumerator",url:"globals_eval.html",children:[ +{text:"t",url:"globals_eval.html#index_t"}]}, +{text:"Macros",url:"globals_defs.html"}]}]}]} diff --git a/docs/html/namespace_error.html b/docs/html/namespace_error.html new file mode 100644 index 0000000..ac59593 --- /dev/null +++ b/docs/html/namespace_error.html @@ -0,0 +1,266 @@ + + + + + + + +sapphirec: Error Namespace Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Error Namespace Reference
+
+
+ + + + + + + + + + + + +

+Functions

void show_import_line (const Location &loc, std::ostream &output_stream)
 
void throw_error (const Location &loc, const std::string line_text, const std::string &details)
 
void throw_error_without_location (const std::string &details)
 
void throw_warning (const Location &loc, const std::string line_text, const std::string &details)
 
void show_import_lines (const Location &loc, void(*import_line_printer)(const Location &, std::ostream &), std::ostream &stream)
 
+

Function Documentation

+ +

◆ show_import_line()

+ +
+
+ + + + + + + + + + + + + + + + + + +
void Error::show_import_line (const Locationloc,
std::ostream & output_stream 
)
+
+ +
+
+ +

◆ show_import_lines()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void Error::show_import_lines (const Locationloc,
void(*)(const Location &, std::ostream &) import_line_printer,
std::ostream & stream 
)
+
+ +
+
+ +

◆ throw_error()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void Error::throw_error (const Locationloc,
const std::string line_text,
const std::string & details 
)
+
+ +
+
+ +

◆ throw_error_without_location()

+ +
+
+ + + + + + + + +
void Error::throw_error_without_location (const std::string & details)
+
+ +
+
+ +

◆ throw_warning()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
void Error::throw_warning (const Locationloc,
const std::string line_text,
const std::string & details 
)
+
+ +
+
+
+
+ + + + diff --git a/docs/html/namespace_file_i_o.html b/docs/html/namespace_file_i_o.html new file mode 100644 index 0000000..bf81856 --- /dev/null +++ b/docs/html/namespace_file_i_o.html @@ -0,0 +1,178 @@ + + + + + + + +sapphirec: FileIO Namespace Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
FileIO Namespace Reference
+
+
+ + + + + + + + +

+Functions

std::string read_all (const std::string &filename)
 
void write_all (const std::string &filename, const std::string &contents)
 
std::string remove_file_extension (const std::string &filename)
 
+

Function Documentation

+ +

◆ read_all()

+ +
+
+ + + + + + + + +
std::string FileIO::read_all (const std::string & filename)
+
+ +
+
+ +

◆ remove_file_extension()

+ +
+
+ + + + + + + + +
std::string FileIO::remove_file_extension (const std::string & filename)
+
+ +
+
+ +

◆ write_all()

+ +
+
+ + + + + + + + + + + + + + + + + + +
void FileIO::write_all (const std::string & filename,
const std::string & contents 
)
+
+ +
+
+
+
+ + + + diff --git a/docs/html/namespace_importer.html b/docs/html/namespace_importer.html new file mode 100644 index 0000000..9811d47 --- /dev/null +++ b/docs/html/namespace_importer.html @@ -0,0 +1,225 @@ + + + + + + + +sapphirec: Importer Namespace Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Importer Namespace Reference
+
+
+ + + + + + +

+Functions

TokenStream evaluate (const TokenStream &original)
 
void init (std::string init_file)
 
+ + + + + + + +

+Variables

int import_count = 0
 
std::vector< std::shared_ptr< Location > > import_stack
 
std::vector< std::string > imported_files
 
+

Function Documentation

+ +

◆ evaluate()

+ +
+
+ + + + + + + + +
TokenStream Importer::evaluate (const TokenStreamoriginal)
+
+ +
+
+ +

◆ init()

+ +
+
+ + + + + + + + +
void Importer::init (std::string init_file)
+
+ +
+
+

Variable Documentation

+ +

◆ import_count

+ +
+
+ + + + + +
+ + + + +
int Importer::import_count = 0
+
+extern
+
+ +
+
+ +

◆ import_stack

+ +
+
+ + + + + +
+ + + + +
std::vector< std::shared_ptr< Location > > Importer::import_stack
+
+extern
+
+ +
+
+ +

◆ imported_files

+ +
+
+ + + + + +
+ + + + +
std::vector< std::string > Importer::imported_files
+
+extern
+
+ +
+
+
+
+ + + + diff --git a/docs/html/namespace_normalizer.html b/docs/html/namespace_normalizer.html new file mode 100644 index 0000000..761e483 --- /dev/null +++ b/docs/html/namespace_normalizer.html @@ -0,0 +1,128 @@ + + + + + + + +sapphirec: Normalizer Namespace Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Normalizer Namespace Reference
+
+
+ + + + +

+Functions

TokenStream normalize (const TokenStream &input)
 
+

Function Documentation

+ +

◆ normalize()

+ +
+
+ + + + + + + + +
TokenStream Normalizer::normalize (const TokenStreaminput)
+
+ +
+
+
+
+ + + + diff --git a/docs/html/namespacemembers.html b/docs/html/namespacemembers.html new file mode 100644 index 0000000..f795733 --- /dev/null +++ b/docs/html/namespacemembers.html @@ -0,0 +1,140 @@ + + + + + + + +sapphirec: Namespace Members + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all namespace members with links to the namespace documentation for each member:
+
+
+ + + + diff --git a/docs/html/namespacemembers_func.html b/docs/html/namespacemembers_func.html new file mode 100644 index 0000000..437f7c0 --- /dev/null +++ b/docs/html/namespacemembers_func.html @@ -0,0 +1,131 @@ + + + + + + + +sapphirec: Namespace Members + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
+ + + + diff --git a/docs/html/namespacemembers_vars.html b/docs/html/namespacemembers_vars.html new file mode 100644 index 0000000..2fd6643 --- /dev/null +++ b/docs/html/namespacemembers_vars.html @@ -0,0 +1,107 @@ + + + + + + + +sapphirec: Namespace Members + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
+ + + + diff --git a/docs/html/namespaces.html b/docs/html/namespaces.html new file mode 100644 index 0000000..80e8f21 --- /dev/null +++ b/docs/html/namespaces.html @@ -0,0 +1,108 @@ + + + + + + + +sapphirec: Namespace List + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Namespace List
+
+
+
Here is a list of all namespaces with brief descriptions:
+ + + + + +
 NError
 NFileIO
 NImporter
 NNormalizer
+
+
+
+ + + + diff --git a/docs/html/namespaces_dup.js b/docs/html/namespaces_dup.js new file mode 100644 index 0000000..c6ffc4a --- /dev/null +++ b/docs/html/namespaces_dup.js @@ -0,0 +1,25 @@ +var namespaces_dup = +[ + [ "Error", "namespace_error.html", [ + [ "show_import_line", "namespace_error.html#aa3680909596c6ac37bc0579385b59632", null ], + [ "show_import_lines", "namespace_error.html#a938494fd39f939d79cd611b5bd2f2b67", null ], + [ "throw_error", "namespace_error.html#a52e79c9d3b4d7280ffee959c4646675f", null ], + [ "throw_error_without_location", "namespace_error.html#a97056e92a18863fb0f490c73bc089fbe", null ], + [ "throw_warning", "namespace_error.html#ab62bae2c735ea379eab3a8039c2c1ade", null ] + ] ], + [ "FileIO", "namespace_file_i_o.html", [ + [ "read_all", "namespace_file_i_o.html#ab49a427f3ddb1f750b4314dfdb17be2b", null ], + [ "remove_file_extension", "namespace_file_i_o.html#a3aa60357e37b7acc57f3e89e80d6e7a4", null ], + [ "write_all", "namespace_file_i_o.html#a84b962dcd17d16c361902d8b179d3b47", null ] + ] ], + [ "Importer", "namespace_importer.html", [ + [ "evaluate", "namespace_importer.html#ae5e2ed66024ff80241bd740c66745bd6", null ], + [ "init", "namespace_importer.html#abd3407990e0fe2e71bb95782791ee1c9", null ], + [ "import_count", "namespace_importer.html#a868c1a6abdf06ce496f3b66e62a6d5f0", null ], + [ "import_stack", "namespace_importer.html#a15ee91166a2ddf7756aec26590c5ce93", null ], + [ "imported_files", "namespace_importer.html#a9525c45990838226b598b1e618bdb94d", null ] + ] ], + [ "Normalizer", "namespace_normalizer.html", [ + [ "normalize", "namespace_normalizer.html#a89d929aace148fe5c998416863397f39", null ] + ] ] +]; \ No newline at end of file diff --git a/docs/html/navtree.css b/docs/html/navtree.css new file mode 100644 index 0000000..33341a6 --- /dev/null +++ b/docs/html/navtree.css @@ -0,0 +1,146 @@ +#nav-tree .children_ul { + margin:0; + padding:4px; +} + +#nav-tree ul { + list-style:none outside none; + margin:0px; + padding:0px; +} + +#nav-tree li { + white-space:nowrap; + margin:0px; + padding:0px; +} + +#nav-tree .plus { + margin:0px; +} + +#nav-tree .selected { + background-image: url('tab_a.png'); + background-repeat:repeat-x; + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +} + +#nav-tree img { + margin:0px; + padding:0px; + border:0px; + vertical-align: middle; +} + +#nav-tree a { + text-decoration:none; + padding:0px; + margin:0px; + outline:none; +} + +#nav-tree .label { + margin:0px; + padding:0px; + font: 12px 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; +} + +#nav-tree .label a { + padding:2px; +} + +#nav-tree .selected a { + text-decoration:none; + color:#fff; +} + +#nav-tree .children_ul { + margin:0px; + padding:0px; +} + +#nav-tree .item { + margin:0px; + padding:0px; +} + +#nav-tree { + padding: 0px 0px; + background-color: #FAFAFF; + font-size:14px; + overflow:auto; +} + +#doc-content { + overflow:auto; + display:block; + padding:0px; + margin:0px; + -webkit-overflow-scrolling : touch; /* iOS 5+ */ +} + +#side-nav { + padding:0 6px 0 0; + margin: 0px; + display:block; + position: absolute; + left: 0px; + width: 250px; +} + +.ui-resizable .ui-resizable-handle { + display:block; +} + +.ui-resizable-e { + background-image:url("splitbar.png"); + background-size:100%; + background-repeat:repeat-y; + background-attachment: scroll; + cursor:ew-resize; + height:100%; + right:0; + top:0; + width:6px; +} + +.ui-resizable-handle { + display:none; + font-size:0.1px; + position:absolute; + z-index:1; +} + +#nav-tree-contents { + margin: 6px 0px 0px 0px; +} + +#nav-tree { + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + -webkit-overflow-scrolling : touch; /* iOS 5+ */ +} + +#nav-sync { + position:absolute; + top:5px; + right:24px; + z-index:0; +} + +#nav-sync img { + opacity:0.3; +} + +#nav-sync img:hover { + opacity:0.9; +} + +@media print +{ + #nav-tree { display: none; } + div.ui-resizable-handle { display: none; position: relative; } +} + diff --git a/docs/html/navtree.js b/docs/html/navtree.js new file mode 100644 index 0000000..1e272d3 --- /dev/null +++ b/docs/html/navtree.js @@ -0,0 +1,546 @@ +/* + @licstart The following is the entire license notice for the JavaScript code in this file. + + The MIT License (MIT) + + Copyright (C) 1997-2020 by Dimitri van Heesch + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software + and associated documentation files (the "Software"), to deal in the Software without restriction, + including without limitation the rights to use, copy, modify, merge, publish, distribute, + sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or + substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING + BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + @licend The above is the entire license notice for the JavaScript code in this file + */ +var navTreeSubIndices = new Array(); +var arrowDown = '▼'; +var arrowRight = '►'; + +function getData(varName) +{ + var i = varName.lastIndexOf('/'); + var n = i>=0 ? varName.substring(i+1) : varName; + return eval(n.replace(/\-/g,'_')); +} + +function stripPath(uri) +{ + return uri.substring(uri.lastIndexOf('/')+1); +} + +function stripPath2(uri) +{ + var i = uri.lastIndexOf('/'); + var s = uri.substring(i+1); + var m = uri.substring(0,i+1).match(/\/d\w\/d\w\w\/$/); + return m ? uri.substring(i-6) : s; +} + +function hashValue() +{ + return $(location).attr('hash').substring(1).replace(/[^\w\-]/g,''); +} + +function hashUrl() +{ + return '#'+hashValue(); +} + +function pathName() +{ + return $(location).attr('pathname').replace(/[^-A-Za-z0-9+&@#/%?=~_|!:,.;\(\)]/g, ''); +} + +function localStorageSupported() +{ + try { + return 'localStorage' in window && window['localStorage'] !== null && window.localStorage.getItem; + } + catch(e) { + return false; + } +} + +function storeLink(link) +{ + if (!$("#nav-sync").hasClass('sync') && localStorageSupported()) { + window.localStorage.setItem('navpath',link); + } +} + +function deleteLink() +{ + if (localStorageSupported()) { + window.localStorage.setItem('navpath',''); + } +} + +function cachedLink() +{ + if (localStorageSupported()) { + return window.localStorage.getItem('navpath'); + } else { + return ''; + } +} + +function getScript(scriptName,func,show) +{ + var head = document.getElementsByTagName("head")[0]; + var script = document.createElement('script'); + script.id = scriptName; + script.type = 'text/javascript'; + script.onload = func; + script.src = scriptName+'.js'; + head.appendChild(script); +} + +function createIndent(o,domNode,node,level) +{ + var level=-1; + var n = node; + while (n.parentNode) { level++; n=n.parentNode; } + if (node.childrenData) { + var imgNode = document.createElement("span"); + imgNode.className = 'arrow'; + imgNode.style.paddingLeft=(16*level).toString()+'px'; + imgNode.innerHTML=arrowRight; + node.plus_img = imgNode; + node.expandToggle = document.createElement("a"); + node.expandToggle.href = "javascript:void(0)"; + node.expandToggle.onclick = function() { + if (node.expanded) { + $(node.getChildrenUL()).slideUp("fast"); + node.plus_img.innerHTML=arrowRight; + node.expanded = false; + } else { + expandNode(o, node, false, false); + } + } + node.expandToggle.appendChild(imgNode); + domNode.appendChild(node.expandToggle); + } else { + var span = document.createElement("span"); + span.className = 'arrow'; + span.style.width = 16*(level+1)+'px'; + span.innerHTML = ' '; + domNode.appendChild(span); + } +} + +var animationInProgress = false; + +function gotoAnchor(anchor,aname,updateLocation) +{ + var pos, docContent = $('#doc-content'); + var ancParent = $(anchor.parent()); + if (ancParent.hasClass('memItemLeft') || + ancParent.hasClass('memtitle') || + ancParent.hasClass('fieldname') || + ancParent.hasClass('fieldtype') || + ancParent.is(':header')) + { + pos = ancParent.position().top; + } else if (anchor.position()) { + pos = anchor.position().top; + } + if (pos) { + var dist = Math.abs(Math.min( + pos-docContent.offset().top, + docContent[0].scrollHeight- + docContent.height()-docContent.scrollTop())); + animationInProgress=true; + docContent.animate({ + scrollTop: pos + docContent.scrollTop() - docContent.offset().top + },Math.max(50,Math.min(500,dist)),function(){ + if (updateLocation) window.location.href=aname; + animationInProgress=false; + }); + } +} + +function newNode(o, po, text, link, childrenData, lastNode) +{ + var node = new Object(); + node.children = Array(); + node.childrenData = childrenData; + node.depth = po.depth + 1; + node.relpath = po.relpath; + node.isLast = lastNode; + + node.li = document.createElement("li"); + po.getChildrenUL().appendChild(node.li); + node.parentNode = po; + + node.itemDiv = document.createElement("div"); + node.itemDiv.className = "item"; + + node.labelSpan = document.createElement("span"); + node.labelSpan.className = "label"; + + createIndent(o,node.itemDiv,node,0); + node.itemDiv.appendChild(node.labelSpan); + node.li.appendChild(node.itemDiv); + + var a = document.createElement("a"); + node.labelSpan.appendChild(a); + node.label = document.createTextNode(text); + node.expanded = false; + a.appendChild(node.label); + if (link) { + var url; + if (link.substring(0,1)=='^') { + url = link.substring(1); + link = url; + } else { + url = node.relpath+link; + } + a.className = stripPath(link.replace('#',':')); + if (link.indexOf('#')!=-1) { + var aname = '#'+link.split('#')[1]; + var srcPage = stripPath(pathName()); + var targetPage = stripPath(link.split('#')[0]); + a.href = srcPage!=targetPage ? url : "javascript:void(0)"; + a.onclick = function(){ + storeLink(link); + if (!$(a).parent().parent().hasClass('selected')) + { + $('.item').removeClass('selected'); + $('.item').removeAttr('id'); + $(a).parent().parent().addClass('selected'); + $(a).parent().parent().attr('id','selected'); + } + var anchor = $(aname); + gotoAnchor(anchor,aname,true); + }; + } else { + a.href = url; + a.onclick = function() { storeLink(link); } + } + } else { + if (childrenData != null) + { + a.className = "nolink"; + a.href = "javascript:void(0)"; + a.onclick = node.expandToggle.onclick; + } + } + + node.childrenUL = null; + node.getChildrenUL = function() { + if (!node.childrenUL) { + node.childrenUL = document.createElement("ul"); + node.childrenUL.className = "children_ul"; + node.childrenUL.style.display = "none"; + node.li.appendChild(node.childrenUL); + } + return node.childrenUL; + }; + + return node; +} + +function showRoot() +{ + var headerHeight = $("#top").height(); + var footerHeight = $("#nav-path").height(); + var windowHeight = $(window).height() - headerHeight - footerHeight; + (function (){ // retry until we can scroll to the selected item + try { + var navtree=$('#nav-tree'); + navtree.scrollTo('#selected',100,{offset:-windowHeight/2}); + } catch (err) { + setTimeout(arguments.callee, 0); + } + })(); +} + +function expandNode(o, node, imm, showRoot) +{ + if (node.childrenData && !node.expanded) { + if (typeof(node.childrenData)==='string') { + var varName = node.childrenData; + getScript(node.relpath+varName,function(){ + node.childrenData = getData(varName); + expandNode(o, node, imm, showRoot); + }, showRoot); + } else { + if (!node.childrenVisited) { + getNode(o, node); + } + $(node.getChildrenUL()).slideDown("fast"); + node.plus_img.innerHTML = arrowDown; + node.expanded = true; + } + } +} + +function glowEffect(n,duration) +{ + n.addClass('glow').delay(duration).queue(function(next){ + $(this).removeClass('glow');next(); + }); +} + +function highlightAnchor() +{ + var aname = hashUrl(); + var anchor = $(aname); + if (anchor.parent().attr('class')=='memItemLeft'){ + var rows = $('.memberdecls tr[class$="'+hashValue()+'"]'); + glowEffect(rows.children(),300); // member without details + } else if (anchor.parent().attr('class')=='fieldname'){ + glowEffect(anchor.parent().parent(),1000); // enum value + } else if (anchor.parent().attr('class')=='fieldtype'){ + glowEffect(anchor.parent().parent(),1000); // struct field + } else if (anchor.parent().is(":header")) { + glowEffect(anchor.parent(),1000); // section header + } else { + glowEffect(anchor.next(),1000); // normal member + } +} + +function selectAndHighlight(hash,n) +{ + var a; + if (hash) { + var link=stripPath(pathName())+':'+hash.substring(1); + a=$('.item a[class$="'+link+'"]'); + } + if (a && a.length) { + a.parent().parent().addClass('selected'); + a.parent().parent().attr('id','selected'); + highlightAnchor(); + } else if (n) { + $(n.itemDiv).addClass('selected'); + $(n.itemDiv).attr('id','selected'); + } + if ($('#nav-tree-contents .item:first').hasClass('selected')) { + $('#nav-sync').css('top','30px'); + } else { + $('#nav-sync').css('top','5px'); + } + showRoot(); +} + +function showNode(o, node, index, hash) +{ + if (node && node.childrenData) { + if (typeof(node.childrenData)==='string') { + var varName = node.childrenData; + getScript(node.relpath+varName,function(){ + node.childrenData = getData(varName); + showNode(o,node,index,hash); + },true); + } else { + if (!node.childrenVisited) { + getNode(o, node); + } + $(node.getChildrenUL()).css({'display':'block'}); + node.plus_img.innerHTML = arrowDown; + node.expanded = true; + var n = node.children[o.breadcrumbs[index]]; + if (index+11) hash = '#'+parts[1].replace(/[^\w\-]/g,''); + else hash=''; + } + if (hash.match(/^#l\d+$/)) { + var anchor=$('a[name='+hash.substring(1)+']'); + glowEffect(anchor.parent(),1000); // line number + hash=''; // strip line number anchors + } + var url=root+hash; + var i=-1; + while (NAVTREEINDEX[i+1]<=url) i++; + if (i==-1) { i=0; root=NAVTREE[0][1]; } // fallback: show index + if (navTreeSubIndices[i]) { + gotoNode(o,i,root,hash,relpath) + } else { + getScript(relpath+'navtreeindex'+i,function(){ + navTreeSubIndices[i] = eval('NAVTREEINDEX'+i); + if (navTreeSubIndices[i]) { + gotoNode(o,i,root,hash,relpath); + } + },true); + } +} + +function showSyncOff(n,relpath) +{ + n.html(''); +} + +function showSyncOn(n,relpath) +{ + n.html(''); +} + +function toggleSyncButton(relpath) +{ + var navSync = $('#nav-sync'); + if (navSync.hasClass('sync')) { + navSync.removeClass('sync'); + showSyncOff(navSync,relpath); + storeLink(stripPath2(pathName())+hashUrl()); + } else { + navSync.addClass('sync'); + showSyncOn(navSync,relpath); + deleteLink(); + } +} + +var loadTriggered = false; +var readyTriggered = false; +var loadObject,loadToRoot,loadUrl,loadRelPath; + +$(window).on('load',function(){ + if (readyTriggered) { // ready first + navTo(loadObject,loadToRoot,loadUrl,loadRelPath); + showRoot(); + } + loadTriggered=true; +}); + +function initNavTree(toroot,relpath) +{ + var o = new Object(); + o.toroot = toroot; + o.node = new Object(); + o.node.li = document.getElementById("nav-tree-contents"); + o.node.childrenData = NAVTREE; + o.node.children = new Array(); + o.node.childrenUL = document.createElement("ul"); + o.node.getChildrenUL = function() { return o.node.childrenUL; }; + o.node.li.appendChild(o.node.childrenUL); + o.node.depth = 0; + o.node.relpath = relpath; + o.node.expanded = false; + o.node.isLast = true; + o.node.plus_img = document.createElement("span"); + o.node.plus_img.className = 'arrow'; + o.node.plus_img.innerHTML = arrowRight; + + if (localStorageSupported()) { + var navSync = $('#nav-sync'); + if (cachedLink()) { + showSyncOff(navSync,relpath); + navSync.removeClass('sync'); + } else { + showSyncOn(navSync,relpath); + } + navSync.click(function(){ toggleSyncButton(relpath); }); + } + + if (loadTriggered) { // load before ready + navTo(o,toroot,hashUrl(),relpath); + showRoot(); + } else { // ready before load + loadObject = o; + loadToRoot = toroot; + loadUrl = hashUrl(); + loadRelPath = relpath; + readyTriggered=true; + } + + $(window).bind('hashchange', function(){ + if (window.location.hash && window.location.hash.length>1){ + var a; + if ($(location).attr('hash')){ + var clslink=stripPath(pathName())+':'+hashValue(); + a=$('.item a[class$="'+clslink.replace(/=desktop_vp) { + if (!collapsed) { + collapseExpand(); + } + } else if (width>desktop_vp && collapsedWidth0) { + restoreWidth(0); + collapsed=true; + } + else { + var width = readCookie('width'); + if (width>200 && width<$(window).width()) { restoreWidth(width); } else { restoreWidth(200); } + collapsed=false; + } + } + + header = $("#top"); + sidenav = $("#side-nav"); + content = $("#doc-content"); + navtree = $("#nav-tree"); + footer = $("#nav-path"); + $(".side-nav-resizable").resizable({resize: function(e, ui) { resizeWidth(); } }); + $(sidenav).resizable({ minWidth: 0 }); + $(window).resize(function() { resizeHeight(); }); + var device = navigator.userAgent.toLowerCase(); + var touch_device = device.match(/(iphone|ipod|ipad|android)/); + if (touch_device) { /* wider split bar for touch only devices */ + $(sidenav).css({ paddingRight:'20px' }); + $('.ui-resizable-e').css({ width:'20px' }); + $('#nav-sync').css({ right:'34px' }); + barWidth=20; + } + var width = readCookie('width'); + if (width) { restoreWidth(width); } else { resizeWidth(); } + resizeHeight(); + var url = location.href; + var i=url.indexOf("#"); + if (i>=0) window.location.hash=url.substr(i); + var _preventDefault = function(evt) { evt.preventDefault(); }; + $("#splitbar").bind("dragstart", _preventDefault).bind("selectstart", _preventDefault); + $(".ui-resizable-handle").dblclick(collapseExpand); + $(window).on('load',resizeHeight); +} +/* @license-end */ diff --git a/docs/html/sapphire_8cpp.html b/docs/html/sapphire_8cpp.html new file mode 100644 index 0000000..dca0102 --- /dev/null +++ b/docs/html/sapphire_8cpp.html @@ -0,0 +1,145 @@ + + + + + + + +sapphirec: src/sapphire.cpp File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
sapphire.cpp File Reference
+
+
+
#include "Arguments.h"
+#include "FileIO.h"
+#include "Importer.h"
+#include "Lexer.h"
+#include "Normalizer.h"
+#include "sapphirepch.h"
+#include "utils.h"
+
+ + + +

+Functions

int main (int argc, char **argv)
 
+

Function Documentation

+ +

◆ main()

+ +
+
+ + + + + + + + + + + + + + + + + + +
int main (int argc,
char ** argv 
)
+
+ +
+
+
+
+ + + + diff --git a/docs/html/sapphire_8cpp.js b/docs/html/sapphire_8cpp.js new file mode 100644 index 0000000..247553e --- /dev/null +++ b/docs/html/sapphire_8cpp.js @@ -0,0 +1,4 @@ +var sapphire_8cpp = +[ + [ "main", "sapphire_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627", null ] +]; \ No newline at end of file diff --git a/docs/html/sapphirepch_8h.html b/docs/html/sapphirepch_8h.html new file mode 100644 index 0000000..45d15a1 --- /dev/null +++ b/docs/html/sapphirepch_8h.html @@ -0,0 +1,110 @@ + + + + + + + +sapphirec: src/sapphirepch.h File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
sapphirepch.h File Reference
+
+
+
#include <algorithm>
+#include <cassert>
+#include <iostream>
+#include <memory>
+#include <string>
+#include <string_view>
+#include <vector>
+
+

Go to the source code of this file.

+
+
+ + + + diff --git a/docs/html/sapphirepch_8h_source.html b/docs/html/sapphirepch_8h_source.html index 2a8c874..07a3f81 100644 --- a/docs/html/sapphirepch_8h_source.html +++ b/docs/html/sapphirepch_8h_source.html @@ -9,10 +9,16 @@ + + + + + +
@@ -23,7 +29,7 @@
sapphirec
-
The Sapphire compiler
+
The Sapphire documentation
@@ -46,6 +52,23 @@ $(function() { }); /* @license-end */ +
+
+ +
+
+
+ +
- -
sapphirepch.h
-
1 #include <algorithm>
+Go to the documentation of this file.
1 #include <algorithm>
2 #include <cassert>
3 #include <iostream>
4 #include <memory>
@@ -78,9 +96,13 @@ $(function() {
6 #include <string_view>
7 #include <vector>
+
- + diff --git a/docs/html/search/all_0.js b/docs/html/search/all_0.js index 04e227b..d2fb7fc 100644 --- a/docs/html/search/all_0.js +++ b/docs/html/search/all_0.js @@ -1,4 +1,4 @@ var searchData= [ - ['_5f_5fbenchmark_5fimpl_0',['__benchmark_impl',['../class____benchmark__impl.html',1,'']]] + ['_5f_5fbenchmark_5fimpl_0',['__benchmark_impl',['../class____benchmark__impl.html',1,'__benchmark_impl'],['../class____benchmark__impl.html#a2efd5ebe7e24a9a6ead5b205d0fe05f8',1,'__benchmark_impl::__benchmark_impl()']]] ]; diff --git a/docs/html/search/all_1.js b/docs/html/search/all_1.js index 6b73119..1008128 100644 --- a/docs/html/search/all_1.js +++ b/docs/html/search/all_1.js @@ -1,4 +1,11 @@ var searchData= [ - ['arguments_1',['Arguments',['../structArguments.html',1,'']]] + ['advance_1',['advance',['../struct_location.html#a375ecb41aafad3dba17600684cb16a6f',1,'Location']]], + ['arguments_2',['Arguments',['../struct_arguments.html',1,'']]], + ['arguments_2ecpp_3',['Arguments.cpp',['../_arguments_8cpp.html',1,'']]], + ['arguments_2eh_4',['Arguments.h',['../_arguments_8h.html',1,'']]], + ['assign_5fparent_5flocation_5',['assign_parent_location',['../class_lexer.html#a8f5d1d9281b44e287d7db2ef0c0dff09',1,'Lexer']]], + ['astnode_6',['ASTNode',['../class_a_s_t_node.html',1,'ASTNode'],['../class_a_s_t_node.html#a1196ed4f19c0b62cdc42fe35946b91d2',1,'ASTNode::ASTNode()']]], + ['astnode_2ecpp_7',['ASTNode.cpp',['../_a_s_t_node_8cpp.html',1,'']]], + ['astnode_2eh_8',['ASTNode.h',['../_a_s_t_node_8h.html',1,'']]] ]; diff --git a/docs/html/search/all_10.html b/docs/html/search/all_10.html new file mode 100644 index 0000000..3bf1196 --- /dev/null +++ b/docs/html/search/all_10.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_10.js b/docs/html/search/all_10.js new file mode 100644 index 0000000..1043c15 --- /dev/null +++ b/docs/html/search/all_10.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['utils_2ecpp_153',['utils.cpp',['../utils_8cpp.html',1,'']]], + ['utils_2eh_154',['utils.h',['../utils_8h.html',1,'']]] +]; diff --git a/docs/html/search/all_11.html b/docs/html/search/all_11.html new file mode 100644 index 0000000..c9f79d2 --- /dev/null +++ b/docs/html/search/all_11.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_11.js b/docs/html/search/all_11.js new file mode 100644 index 0000000..5e23111 --- /dev/null +++ b/docs/html/search/all_11.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['whitespace_155',['WHITESPACE',['../_lexer_8cpp.html#abfa0d183e035eb9705b5faec98294d0f',1,'Lexer.cpp']]], + ['wimport_156',['wimport',['../struct_arguments.html#a139f6982398f2c790dc298415fc9b007',1,'Arguments']]], + ['write_5fall_157',['write_all',['../namespace_file_i_o.html#a84b962dcd17d16c361902d8b179d3b47',1,'FileIO']]] +]; diff --git a/docs/html/search/all_12.html b/docs/html/search/all_12.html new file mode 100644 index 0000000..ab93472 --- /dev/null +++ b/docs/html/search/all_12.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_12.js b/docs/html/search/all_12.js new file mode 100644 index 0000000..cda2347 --- /dev/null +++ b/docs/html/search/all_12.js @@ -0,0 +1,15 @@ +var searchData= +[ + ['_7e_5f_5fbenchmark_5fimpl_158',['~__benchmark_impl',['../class____benchmark__impl.html#aa91ff70297183c7c20c198096a671f73',1,'__benchmark_impl']]], + ['_7eastnode_159',['~ASTNode',['../class_a_s_t_node.html#a41a691f37fa038eb183280effeb8ba4e',1,'ASTNode']]], + ['_7ebinaryopnode_160',['~BinaryOpNode',['../class_binary_op_node.html#a924a3c0ddb1f8442208ebcce2748ec81',1,'BinaryOpNode']]], + ['_7eexprnode_161',['~ExprNode',['../class_expr_node.html#a3d37807a38daa45e693b2734cfd47727',1,'ExprNode']]], + ['_7elexer_162',['~Lexer',['../class_lexer.html#ad26a84af23d8d303723e36e83fc4e556',1,'Lexer']]], + ['_7elocation_163',['~Location',['../struct_location.html#af5be2c6550bbd96137cbb3144ec3c529',1,'Location']]], + ['_7emulnode_164',['~MulNode',['../class_mul_node.html#a9ea3fc1e1310ccea7b85f52c872d4883',1,'MulNode']]], + ['_7enumbernode_165',['~NumberNode',['../class_number_node.html#a90b34c7bd973fdb7dcc661f4882803e7',1,'NumberNode']]], + ['_7eparser_166',['~Parser',['../class_parser.html#a3e658b5917a93a3ef648050d060e3a93',1,'Parser']]], + ['_7estatementnode_167',['~StatementNode',['../class_statement_node.html#a720f5b78cc3ef43e870f429d6a99ebb2',1,'StatementNode']]], + ['_7esumnode_168',['~SumNode',['../class_sum_node.html#aaaba707d1ba3c11e6b8b875c1596bc03',1,'SumNode']]], + ['_7etoken_169',['~Token',['../struct_token.html#a3d7d59eaac1535df1433357d5d372f84',1,'Token']]] +]; diff --git a/docs/html/search/all_2.js b/docs/html/search/all_2.js index ffde881..ddc00e0 100644 --- a/docs/html/search/all_2.js +++ b/docs/html/search/all_2.js @@ -1,5 +1,7 @@ var searchData= [ - ['lexer_2',['Lexer',['../classLexer.html',1,'']]], - ['location_3',['Location',['../structLocation.html',1,'']]] + ['benchmark_9',['benchmark',['../_arguments_8cpp.html#ab219e0457ba1898f28a0a8ca1c22bb33',1,'utils.h']]], + ['binaryopnode_10',['BinaryOpNode',['../class_binary_op_node.html',1,'BinaryOpNode'],['../class_binary_op_node.html#a483ebe81ba6f08340a7ceff34e6b75af',1,'BinaryOpNode::BinaryOpNode()']]], + ['binaryopnode_2ecpp_11',['BinaryOpNode.cpp',['../_binary_op_node_8cpp.html',1,'']]], + ['binaryopnode_2eh_12',['BinaryOpNode.h',['../_binary_op_node_8h.html',1,'']]] ]; diff --git a/docs/html/search/all_3.js b/docs/html/search/all_3.js index 03b7547..69c1bb1 100644 --- a/docs/html/search/all_3.js +++ b/docs/html/search/all_3.js @@ -1,4 +1,8 @@ var searchData= [ - ['parser_4',['Parser',['../classParser.html',1,'']]] + ['column_13',['column',['../struct_location.html#ae9cf292727f8758f402671c80d6c4718',1,'Location']]], + ['convert_14',['convert',['../_format_string_8hpp.html#a207942ebe626457e5847d109dce89ffc',1,'FormatString.hpp']]], + ['copy_15',['copy',['../struct_location.html#a524b9cec2031554ca8f15405ab5ae9ff',1,'Location']]], + ['copy_5fwith_5fnew_5ftype_16',['copy_with_new_type',['../struct_token.html#a036d56315ccd55329e9e1e2271b16795',1,'Token']]], + ['cpu_17',['cpu',['../struct_arguments.html#a30c0e29cd531baee48619881301db9d4',1,'Arguments']]] ]; diff --git a/docs/html/search/all_4.js b/docs/html/search/all_4.js index e8a67e4..0ba7157 100644 --- a/docs/html/search/all_4.js +++ b/docs/html/search/all_4.js @@ -1,4 +1,5 @@ var searchData= [ - ['token_5',['Token',['../structToken.html',1,'']]] + ['digits_18',['DIGITS',['../_lexer_8cpp.html#a28c8bd90ea71ec24e5f43f413a9ee8b4',1,'Lexer.cpp']]], + ['disable_19',['disable',['../class____benchmark__impl.html#a5ddf5a17aee0bc1bab08229e574dad76',1,'__benchmark_impl']]] ]; diff --git a/docs/html/search/all_5.html b/docs/html/search/all_5.html new file mode 100644 index 0000000..9dd9344 --- /dev/null +++ b/docs/html/search/all_5.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_5.js b/docs/html/search/all_5.js new file mode 100644 index 0000000..f00f913 --- /dev/null +++ b/docs/html/search/all_5.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['enable_20',['enable',['../class____benchmark__impl.html#abef5e19af3518d080c6988fc7558870d',1,'__benchmark_impl']]], + ['erase_21',['erase',['../struct_token.html#a2d401d11a0b5cb39e1505dbaf13fee82',1,'Token']]], + ['error_22',['Error',['../namespace_error.html',1,'']]], + ['error_2ecpp_23',['Error.cpp',['../_error_8cpp.html',1,'']]], + ['error_2eh_24',['Error.h',['../_error_8h.html',1,'']]], + ['evaluate_25',['evaluate',['../namespace_importer.html#ae5e2ed66024ff80241bd740c66745bd6',1,'Importer']]], + ['exprnode_26',['ExprNode',['../class_expr_node.html',1,'ExprNode'],['../class_expr_node.html#ab8c32004efc2afec3208b0c9b0e9a154',1,'ExprNode::ExprNode(std::shared_ptr< ExprNode > child)'],['../class_expr_node.html#a440d1cb893f7815b71dff7b4ec35089a',1,'ExprNode::ExprNode()']]], + ['exprnode_2ecpp_27',['ExprNode.cpp',['../_expr_node_8cpp.html',1,'']]], + ['exprnode_2eh_28',['ExprNode.h',['../_expr_node_8h.html',1,'']]] +]; diff --git a/docs/html/search/all_6.html b/docs/html/search/all_6.html new file mode 100644 index 0000000..f1e516d --- /dev/null +++ b/docs/html/search/all_6.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_6.js b/docs/html/search/all_6.js new file mode 100644 index 0000000..ad9d00f --- /dev/null +++ b/docs/html/search/all_6.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['fileio_29',['FileIO',['../namespace_file_i_o.html',1,'']]], + ['fileio_2ecpp_30',['FileIO.cpp',['../_file_i_o_8cpp.html',1,'']]], + ['fileio_2eh_31',['FileIO.h',['../_file_i_o_8h.html',1,'']]], + ['float_5fvalue_32',['float_value',['../struct_token.html#a92a5a00e9160db302b651c44c3658051',1,'Token']]], + ['fname_33',['fname',['../struct_location.html#a5b691d1c7f3c5c1b7428cf118d3595c8',1,'Location']]], + ['format_5fstring_34',['format_string',['../_format_string_8hpp.html#ac54251dfd9c366f92c8bf00086dc5764',1,'FormatString.hpp']]], + ['format_5fstring_5finternal_35',['format_string_internal',['../_format_string_8hpp.html#a01af0cba6af7f12e6608cd28d0af0091',1,'FormatString.hpp']]], + ['formatstring_2ehpp_36',['FormatString.hpp',['../_format_string_8hpp.html',1,'']]] +]; diff --git a/docs/html/search/all_7.html b/docs/html/search/all_7.html new file mode 100644 index 0000000..8ddbf6c --- /dev/null +++ b/docs/html/search/all_7.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_7.js b/docs/html/search/all_7.js new file mode 100644 index 0000000..583c641 --- /dev/null +++ b/docs/html/search/all_7.js @@ -0,0 +1,13 @@ +var searchData= +[ + ['identifiers_37',['IDENTIFIERS',['../_lexer_8cpp.html#a2f45e4037b2089a3c1ac9f7ad664d2f6',1,'Lexer.cpp']]], + ['import_5fcount_38',['import_count',['../namespace_importer.html#a868c1a6abdf06ce496f3b66e62a6d5f0',1,'Importer']]], + ['import_5fstack_39',['import_stack',['../namespace_importer.html#a15ee91166a2ddf7756aec26590c5ce93',1,'Importer']]], + ['imported_5ffiles_40',['imported_files',['../namespace_importer.html#a9525c45990838226b598b1e618bdb94d',1,'Importer']]], + ['importer_41',['Importer',['../namespace_importer.html',1,'']]], + ['importer_2ecpp_42',['Importer.cpp',['../_importer_8cpp.html',1,'']]], + ['importer_2eh_43',['Importer.h',['../_importer_8h.html',1,'']]], + ['init_44',['init',['../class____benchmark__impl.html#a6f260fa4d0f93d4a14d6b2a56d91773a',1,'__benchmark_impl::init()'],['../namespace_importer.html#abd3407990e0fe2e71bb95782791ee1c9',1,'Importer::init()']]], + ['input_5ffname_45',['input_fname',['../struct_arguments.html#a415be55e6706062e5a393e9db8761b07',1,'Arguments']]], + ['int_5fvalue_46',['int_value',['../struct_token.html#a0bd1ec80054e52bb87e5f5c4fd2f6931',1,'Token']]] +]; diff --git a/docs/html/search/all_8.html b/docs/html/search/all_8.html new file mode 100644 index 0000000..83c55ae --- /dev/null +++ b/docs/html/search/all_8.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_8.js b/docs/html/search/all_8.js new file mode 100644 index 0000000..1992cf9 --- /dev/null +++ b/docs/html/search/all_8.js @@ -0,0 +1,14 @@ +var searchData= +[ + ['left_47',['left',['../class_binary_op_node.html#acee80276ab94e9faf3f2da1a9f323a44',1,'BinaryOpNode']]], + ['letters_48',['LETTERS',['../_lexer_8cpp.html#ab19b99692e802c4a2e44884ec87713bb',1,'Lexer.cpp']]], + ['lex_49',['lex',['../class_lexer.html#ac53b63f829071be755cc785084126afe',1,'Lexer']]], + ['lexer_50',['Lexer',['../class_lexer.html',1,'']]], + ['lexer_2ecpp_51',['Lexer.cpp',['../_lexer_8cpp.html',1,'']]], + ['lexer_2eh_52',['Lexer.h',['../_lexer_8h.html',1,'']]], + ['line_53',['line',['../struct_location.html#a20371736bca98414df38bc3ae316bd1c',1,'Location::line()'],['../struct_token.html#a432fb89b5fed83bd753f99a5ea10e2e6',1,'Token::line() const']]], + ['loc_54',['loc',['../struct_token.html#a33ccd4b1d4d4e2690a54f6ed39a7bf06',1,'Token']]], + ['location_55',['Location',['../struct_location.html',1,'Location'],['../struct_location.html#a7d1957f57b0c5b36b2f546d5833d6be6',1,'Location::Location()']]], + ['location_2ecpp_56',['Location.cpp',['../_location_8cpp.html',1,'']]], + ['location_2eh_57',['Location.h',['../_location_8h.html',1,'']]] +]; diff --git a/docs/html/search/all_9.html b/docs/html/search/all_9.html new file mode 100644 index 0000000..1e263c1 --- /dev/null +++ b/docs/html/search/all_9.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_9.js b/docs/html/search/all_9.js new file mode 100644 index 0000000..f7040b4 --- /dev/null +++ b/docs/html/search/all_9.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['main_58',['main',['../sapphire_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627',1,'sapphire.cpp']]], + ['make_5flexer_59',['make_lexer',['../class_lexer.html#a6d24d823847b6d5f7e497d78f5b612d4',1,'Lexer']]], + ['make_5fwith_5fline_60',['make_with_line',['../struct_token.html#a6c00b26185c109de4c2b79bd756defa1',1,'Token']]], + ['match_5ftoken_5ftypes_61',['match_token_types',['../struct_token.html#a0eaf331871c69faf7c37d8e87db1f7e6',1,'Token']]], + ['max_5fimports_62',['MAX_IMPORTS',['../_importer_8cpp.html#add187787253a083baba7238223a93a45',1,'Importer.cpp']]], + ['mulnode_63',['MulNode',['../class_mul_node.html',1,'MulNode'],['../class_mul_node.html#a77b55c0440c778b424d7c1c9620ff926',1,'MulNode::MulNode()']]], + ['mulnode_2ecpp_64',['MulNode.cpp',['../_mul_node_8cpp.html',1,'']]], + ['mulnode_2eh_65',['MulNode.h',['../_mul_node_8h.html',1,'']]] +]; diff --git a/docs/html/search/all_a.html b/docs/html/search/all_a.html new file mode 100644 index 0000000..3a6cac1 --- /dev/null +++ b/docs/html/search/all_a.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_a.js b/docs/html/search/all_a.js new file mode 100644 index 0000000..8e4aa8e --- /dev/null +++ b/docs/html/search/all_a.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['new_5fparser_66',['new_parser',['../class_parser.html#a94032f3f6e1d0776c1110e82809c65a5',1,'Parser']]], + ['normalize_67',['normalize',['../namespace_normalizer.html#a89d929aace148fe5c998416863397f39',1,'Normalizer']]], + ['normalizer_68',['Normalizer',['../namespace_normalizer.html',1,'']]], + ['normalizer_2ecpp_69',['Normalizer.cpp',['../_normalizer_8cpp.html',1,'']]], + ['normalizer_2eh_70',['Normalizer.h',['../_normalizer_8h.html',1,'']]], + ['numbernode_71',['NumberNode',['../class_number_node.html',1,'NumberNode'],['../class_number_node.html#ad73f159f5e1cde94876e24efba813647',1,'NumberNode::NumberNode()']]], + ['numbernode_2ecpp_72',['NumberNode.cpp',['../_number_node_8cpp.html',1,'']]], + ['numbernode_2eh_73',['NumberNode.h',['../_number_node_8h.html',1,'']]] +]; diff --git a/docs/html/search/all_b.html b/docs/html/search/all_b.html new file mode 100644 index 0000000..130deb4 --- /dev/null +++ b/docs/html/search/all_b.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_b.js b/docs/html/search/all_b.js new file mode 100644 index 0000000..376bc15 --- /dev/null +++ b/docs/html/search/all_b.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['operator_3d_74',['operator=',['../struct_location.html#a8646c981888c9d6423e99a0298f9d795',1,'Location::operator=()'],['../struct_token.html#ab58cab5077c1c4c4671964595308c3fc',1,'Token::operator=()']]], + ['output_5ffname_75',['output_fname',['../struct_arguments.html#ad11fab97672b642a76aab7c0217c9f2b',1,'Arguments']]] +]; diff --git a/docs/html/search/all_c.html b/docs/html/search/all_c.html new file mode 100644 index 0000000..3dd5af0 --- /dev/null +++ b/docs/html/search/all_c.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_c.js b/docs/html/search/all_c.js new file mode 100644 index 0000000..33cf0db --- /dev/null +++ b/docs/html/search/all_c.js @@ -0,0 +1,10 @@ +var searchData= +[ + ['paren_5fstr_76',['paren_str',['../struct_location.html#aaa249a0b41e4208fd9346b4744c0a823',1,'Location']]], + ['parent_77',['parent',['../struct_location.html#af047bbd018951f48de8adf5a89938acc',1,'Location']]], + ['parse_78',['parse',['../struct_arguments.html#a473917d0a36d731d31f89d49c2dc528c',1,'Arguments::parse()'],['../class_parser.html#ae094dfbfd3065ff21b12a9dd19a771ee',1,'Parser::parse()']]], + ['parser_79',['Parser',['../class_parser.html',1,'']]], + ['parser_2ecpp_80',['Parser.cpp',['../_parser_8cpp.html',1,'']]], + ['parser_2eh_81',['Parser.h',['../_parser_8h.html',1,'']]], + ['pos_5ffrom_5fchar_82',['pos_from_char',['../struct_location.html#ab0754b2857e8fc1bb80f0f8c18c629ab',1,'Location']]] +]; diff --git a/docs/html/search/all_d.html b/docs/html/search/all_d.html new file mode 100644 index 0000000..af7f2f0 --- /dev/null +++ b/docs/html/search/all_d.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_d.js b/docs/html/search/all_d.js new file mode 100644 index 0000000..7e77d83 --- /dev/null +++ b/docs/html/search/all_d.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['read_5fall_83',['read_all',['../namespace_file_i_o.html#ab49a427f3ddb1f750b4314dfdb17be2b',1,'FileIO']]], + ['remove_5ffile_5fextension_84',['remove_file_extension',['../namespace_file_i_o.html#a3aa60357e37b7acc57f3e89e80d6e7a4',1,'FileIO']]], + ['replace_85',['replace',['../utils_8cpp.html#a0159b96c217d65d379016f6aa2c4dd57',1,'replace(std::string &str, const std::string &from, const std::string &to): utils.cpp'],['../utils_8h.html#a0159b96c217d65d379016f6aa2c4dd57',1,'replace(std::string &str, const std::string &from, const std::string &to): utils.cpp']]], + ['right_86',['right',['../class_binary_op_node.html#afacda981cb1bb277f0625a5e78431582',1,'BinaryOpNode']]] +]; diff --git a/docs/html/search/all_e.html b/docs/html/search/all_e.html new file mode 100644 index 0000000..e25df42 --- /dev/null +++ b/docs/html/search/all_e.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_e.js b/docs/html/search/all_e.js new file mode 100644 index 0000000..ed89f2e --- /dev/null +++ b/docs/html/search/all_e.js @@ -0,0 +1,15 @@ +var searchData= +[ + ['sapphire_2ecpp_87',['sapphire.cpp',['../sapphire_8cpp.html',1,'']]], + ['sapphirepch_2eh_88',['sapphirepch.h',['../sapphirepch_8h.html',1,'']]], + ['show_5fimport_5fline_89',['show_import_line',['../namespace_error.html#aa3680909596c6ac37bc0579385b59632',1,'Error']]], + ['show_5fimport_5flines_90',['show_import_lines',['../namespace_error.html#a938494fd39f939d79cd611b5bd2f2b67',1,'Error']]], + ['statementnode_91',['StatementNode',['../class_statement_node.html',1,'StatementNode'],['../class_statement_node.html#a0eae92f37b371c7cbc9131ba3e0c3c57',1,'StatementNode::StatementNode()']]], + ['statementnode_2ecpp_92',['StatementNode.cpp',['../_statement_node_8cpp.html',1,'']]], + ['statementnode_2eh_93',['StatementNode.h',['../_statement_node_8h.html',1,'']]], + ['str_94',['str',['../struct_location.html#acebfd439c295573434454fdd3e116e0e',1,'Location']]], + ['string_5fvalue_95',['string_value',['../struct_token.html#a15eec7ad7fced0b21918e04a3e6c639c',1,'Token']]], + ['sumnode_96',['SumNode',['../class_sum_node.html',1,'SumNode'],['../class_sum_node.html#a35d1a4b581dc1f943065fe4f55e586b6',1,'SumNode::SumNode()']]], + ['sumnode_2ecpp_97',['SumNode.cpp',['../_sum_node_8cpp.html',1,'']]], + ['sumnode_2eh_98',['SumNode.h',['../_sum_node_8h.html',1,'']]] +]; diff --git a/docs/html/search/all_f.html b/docs/html/search/all_f.html new file mode 100644 index 0000000..b23da6c --- /dev/null +++ b/docs/html/search/all_f.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/all_f.js b/docs/html/search/all_f.js new file mode 100644 index 0000000..137620b --- /dev/null +++ b/docs/html/search/all_f.js @@ -0,0 +1,57 @@ +var searchData= +[ + ['targettriple_99',['TargetTriple',['../struct_arguments.html#a7fad3659de10cf771380b86795c21928',1,'Arguments']]], + ['throw_5ferror_100',['throw_error',['../namespace_error.html#a52e79c9d3b4d7280ffee959c4646675f',1,'Error']]], + ['throw_5ferror_5fwithout_5flocation_101',['throw_error_without_location',['../namespace_error.html#a97056e92a18863fb0f490c73bc089fbe',1,'Error']]], + ['throw_5fwarning_102',['throw_warning',['../namespace_error.html#ab62bae2c735ea379eab3a8039c2c1ade',1,'Error']]], + ['tk_5ftype_103',['tk_type',['../struct_token.html#afeecd45f0f912778b11fffe0abb299b5',1,'Token']]], + ['to_5fstring_104',['to_string',['../utils_8h.html#ab971c0a329063c89e85cf689bbad5d59',1,'to_string(const float &value): utils.cpp'],['../utils_8cpp.html#ab971c0a329063c89e85cf689bbad5d59',1,'to_string(const float &value): utils.cpp'],['../utils_8cpp.html#a661f7549af1d9a364fde170b2c7ae0c3',1,'to_string(const int &value): utils.cpp'],['../struct_token.html#a602aa1415de3415044205333495e72f5',1,'Token::to_string()'],['../utils_8h.html#a661f7549af1d9a364fde170b2c7ae0c3',1,'to_string(): utils.cpp']]], + ['token_105',['Token',['../struct_token.html#a2efe8a7168e6b2adac5d1cf6750daa7b',1,'Token::Token(const TokenType &type, const int &val, const Location &location)'],['../struct_token.html#a17f818bd7d9ff7472837307d09fb58fa',1,'Token::Token(const TokenType &type, const std::string &val, const Location &location)'],['../struct_token.html#ad810ae05b8d953d481e1cbebb2964b17',1,'Token::Token(const TokenType &type, const std::string &val)'],['../struct_token.html#a40f4b33a2ffd88acf803132d598c4ab4',1,'Token::Token(const TokenType &type, const float &val, const Location &location)'],['../struct_token.html',1,'Token'],['../struct_token.html#a6d4d66f172376503d15b9a2feb5f90e8',1,'Token::Token(const TokenType &type, const Location &location)'],['../struct_token.html#ab74d6b5fef46e3c194229e7a884cad45',1,'Token::Token(const TokenType &type)']]], + ['token_2ecpp_106',['Token.cpp',['../_token_8cpp.html',1,'']]], + ['token_2eh_107',['Token.h',['../_token_8h.html',1,'']]], + ['token_5fstrings_108',['token_strings',['../_token_8cpp.html#a11b1388fc87d0706641b71f004f5ce29',1,'token_strings(): Token.cpp'],['../_token_8h.html#a11b1388fc87d0706641b71f004f5ce29',1,'token_strings(): Token.cpp']]], + ['tokenstream_109',['TokenStream',['../_lexer_8h.html#a43f892d4a347a32f8602cfbcff2e237e',1,'TokenStream(): Lexer.h'],['../_token_8h.html#a43f892d4a347a32f8602cfbcff2e237e',1,'TokenStream(): Token.h']]], + ['tokentype_110',['TokenType',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921',1,'Token.h']]], + ['tt_5fat_111',['TT_At',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a66be6e287e64f2d1e18d62b1d96bf443',1,'Token.h']]], + ['tt_5fcomma_112',['TT_Comma',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921ad465a2b2741ddb105fd810f40fdfc5f8',1,'Token.h']]], + ['tt_5fcompilermacro_113',['TT_CompilerMacro',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921ad815e2ddb15829189dd39b0481c3908e',1,'Token.h']]], + ['tt_5fdiv_114',['TT_Div',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a7034d195d5b509782b1a2c2803e0b887',1,'Token.h']]], + ['tt_5feof_115',['TT_EOF',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921aaffedff66c98c1bc186e2c35cdc7ab66',1,'Token.h']]], + ['tt_5fequal_116',['TT_Equal',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a2e3a97dd6681a583d131a7f45b8f7b3b',1,'Token.h']]], + ['tt_5fequals_117',['TT_Equals',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921aab9f3972ab9b942c5a558acb2c8200a2',1,'Token.h']]], + ['tt_5fexclamation_118',['TT_Exclamation',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921abb589d9450ffea8e2652a357954b399d',1,'Token.h']]], + ['tt_5ffloat_119',['TT_Float',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921adce0a868eda6a8eb7c0f4b471168a52f',1,'Token.h']]], + ['tt_5fgreaterthan_120',['TT_GreaterThan',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a6088f4c9eb2333511f59a9d4fcb0cc23',1,'Token.h']]], + ['tt_5fgte_121',['TT_GTE',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a661cacfb4b927c1410ae99cc07f47114',1,'Token.h']]], + ['tt_5fidentifier_122',['TT_Identifier',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a914ff833832dec5f5b89c873cdf4873b',1,'Token.h']]], + ['tt_5fimport_123',['TT_Import',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921ac0842324f82fc7067e12cf5bc1e93ebe',1,'Token.h']]], + ['tt_5fkeyword_124',['TT_Keyword',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a4f2472f5e8f25e20351884b984a5745d',1,'Token.h']]], + ['tt_5flbracket_125',['TT_LBracket',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a046adff178e040a45fba3807d1b27077',1,'Token.h']]], + ['tt_5flessthan_126',['TT_LessThan',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a04d3947200d1e0ea47f23132c21d1552',1,'Token.h']]], + ['tt_5floadedstring_127',['TT_LoadedString',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a919ddabf40eacf261afb90628132c2e9',1,'Token.h']]], + ['tt_5flparen_128',['TT_LParen',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921aa74df126f021c6c3370b2469e13a4d58',1,'Token.h']]], + ['tt_5flsqb_129',['TT_LSQB',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a72cd35b410262b2cdf1b6f426561316e',1,'Token.h']]], + ['tt_5flte_130',['TT_LTE',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921abe295cb0b1d7e40b683e841099ca0d5c',1,'Token.h']]], + ['tt_5fminus_131',['TT_Minus',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a37610de04974a9df954007ad9fddcec6',1,'Token.h']]], + ['tt_5fmul_132',['TT_Mul',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a7b1c59205c8e47772905efa820e26276',1,'Token.h']]], + ['tt_5fnequal_133',['TT_NEqual',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a52a3bc78510da97e3610a2c90e9af027',1,'Token.h']]], + ['tt_5fnull_134',['TT_Null',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921aae8a36dd5042ffdff357cb3caaec8de4',1,'Token.h']]], + ['tt_5fnumber_135',['TT_Number',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921af0b33aa8547139ec0850566aa75c2eab',1,'Token.h']]], + ['tt_5fpath_136',['TT_Path',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a7a6334e5907fea7b13cb5c3168bf56d3',1,'Token.h']]], + ['tt_5fperiod_137',['TT_Period',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a1bfe153b7024483e5b14df5f4a19c383',1,'Token.h']]], + ['tt_5fplus_138',['TT_Plus',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a8dc57a25d3d43203efa4abfc428f4ae5',1,'Token.h']]], + ['tt_5frbracket_139',['TT_RBracket',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a55662755fa0c3e80c4b8a137a822fe56',1,'Token.h']]], + ['tt_5frparen_140',['TT_RParen',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a0b02ea10bfa1b86223505526e152850c',1,'Token.h']]], + ['tt_5frsqb_141',['TT_RSQB',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921afca02f5c4e306e125b6aef30093c2fbb',1,'Token.h']]], + ['tt_5fsemicolon_142',['TT_Semicolon',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a0cf876fc815f0bbdf381a0b6b3e9c8a1',1,'Token.h']]], + ['tt_5fstring_143',['TT_String',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921ac5d8b9e1d3e5e0556207d113144ca9ef',1,'Token.h']]], + ['tt_5fsyscall0_144',['TT_Syscall0',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921aa991c9be0fb4d126936f15739e0cc581',1,'Token.h']]], + ['tt_5fsyscall1_145',['TT_Syscall1',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a7f3fbd8a2c479e24962b1257ba1a75cc',1,'Token.h']]], + ['tt_5fsyscall2_146',['TT_Syscall2',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a47c37018ac199a24001f7ae088a770ad',1,'Token.h']]], + ['tt_5fsyscall3_147',['TT_Syscall3',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a932e0b4b6ad328fd42a372b19f5efa14',1,'Token.h']]], + ['tt_5fsyscall4_148',['TT_Syscall4',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a4f33569f79146c4955920b6b1273f100',1,'Token.h']]], + ['tt_5fsyscall5_149',['TT_Syscall5',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a03295c72f650bc6058eeaa1c4de14b1f',1,'Token.h']]], + ['tt_5ftype_150',['TT_Type',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a6afc064c5b6cb4603534e73a261decef',1,'Token.h']]], + ['type_5fcount_151',['TYPE_COUNT',['../_lexer_8h.html#a5aa140c2c2e64a57331d450a98077834',1,'Lexer.h']]], + ['types_152',['types',['../class_lexer.html#a8956f4484cb2a477bea5d09e96ea6c8d',1,'Lexer']]] +]; diff --git a/docs/html/search/classes_0.js b/docs/html/search/classes_0.js index 99a2973..7aa3274 100644 --- a/docs/html/search/classes_0.js +++ b/docs/html/search/classes_0.js @@ -1,4 +1,4 @@ var searchData= [ - ['_5f_5fbenchmark_5fimpl_6',['__benchmark_impl',['../class____benchmark__impl.html',1,'']]] + ['_5f_5fbenchmark_5fimpl_170',['__benchmark_impl',['../class____benchmark__impl.html',1,'']]] ]; diff --git a/docs/html/search/classes_1.js b/docs/html/search/classes_1.js index a159602..3a6b3c0 100644 --- a/docs/html/search/classes_1.js +++ b/docs/html/search/classes_1.js @@ -1,4 +1,5 @@ var searchData= [ - ['arguments_7',['Arguments',['../structArguments.html',1,'']]] + ['arguments_171',['Arguments',['../struct_arguments.html',1,'']]], + ['astnode_172',['ASTNode',['../class_a_s_t_node.html',1,'']]] ]; diff --git a/docs/html/search/classes_2.js b/docs/html/search/classes_2.js index 9f6ae66..4758740 100644 --- a/docs/html/search/classes_2.js +++ b/docs/html/search/classes_2.js @@ -1,5 +1,4 @@ var searchData= [ - ['lexer_8',['Lexer',['../classLexer.html',1,'']]], - ['location_9',['Location',['../structLocation.html',1,'']]] + ['binaryopnode_173',['BinaryOpNode',['../class_binary_op_node.html',1,'']]] ]; diff --git a/docs/html/search/classes_3.js b/docs/html/search/classes_3.js index 5ea8c61..dbe4bb6 100644 --- a/docs/html/search/classes_3.js +++ b/docs/html/search/classes_3.js @@ -1,4 +1,4 @@ var searchData= [ - ['parser_10',['Parser',['../classParser.html',1,'']]] + ['exprnode_174',['ExprNode',['../class_expr_node.html',1,'']]] ]; diff --git a/docs/html/search/classes_4.js b/docs/html/search/classes_4.js index 5455813..78067d3 100644 --- a/docs/html/search/classes_4.js +++ b/docs/html/search/classes_4.js @@ -1,4 +1,5 @@ var searchData= [ - ['token_11',['Token',['../structToken.html',1,'']]] + ['lexer_175',['Lexer',['../class_lexer.html',1,'']]], + ['location_176',['Location',['../struct_location.html',1,'']]] ]; diff --git a/docs/html/search/classes_5.html b/docs/html/search/classes_5.html new file mode 100644 index 0000000..c2f1b76 --- /dev/null +++ b/docs/html/search/classes_5.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/classes_5.js b/docs/html/search/classes_5.js new file mode 100644 index 0000000..ac1038b --- /dev/null +++ b/docs/html/search/classes_5.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['mulnode_177',['MulNode',['../class_mul_node.html',1,'']]] +]; diff --git a/docs/html/search/classes_6.html b/docs/html/search/classes_6.html new file mode 100644 index 0000000..e39847c --- /dev/null +++ b/docs/html/search/classes_6.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/classes_6.js b/docs/html/search/classes_6.js new file mode 100644 index 0000000..b87e07e --- /dev/null +++ b/docs/html/search/classes_6.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['numbernode_178',['NumberNode',['../class_number_node.html',1,'']]] +]; diff --git a/docs/html/search/classes_7.html b/docs/html/search/classes_7.html new file mode 100644 index 0000000..a2c4d1a --- /dev/null +++ b/docs/html/search/classes_7.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/classes_7.js b/docs/html/search/classes_7.js new file mode 100644 index 0000000..88cc792 --- /dev/null +++ b/docs/html/search/classes_7.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['parser_179',['Parser',['../class_parser.html',1,'']]] +]; diff --git a/docs/html/search/classes_8.html b/docs/html/search/classes_8.html new file mode 100644 index 0000000..17003e4 --- /dev/null +++ b/docs/html/search/classes_8.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/classes_8.js b/docs/html/search/classes_8.js new file mode 100644 index 0000000..fac3e10 --- /dev/null +++ b/docs/html/search/classes_8.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['statementnode_180',['StatementNode',['../class_statement_node.html',1,'']]], + ['sumnode_181',['SumNode',['../class_sum_node.html',1,'']]] +]; diff --git a/docs/html/search/classes_9.html b/docs/html/search/classes_9.html new file mode 100644 index 0000000..b8afa8c --- /dev/null +++ b/docs/html/search/classes_9.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/classes_9.js b/docs/html/search/classes_9.js new file mode 100644 index 0000000..756f478 --- /dev/null +++ b/docs/html/search/classes_9.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['token_182',['Token',['../struct_token.html',1,'']]] +]; diff --git a/docs/html/search/defines_0.html b/docs/html/search/defines_0.html new file mode 100644 index 0000000..15cc3de --- /dev/null +++ b/docs/html/search/defines_0.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/defines_0.js b/docs/html/search/defines_0.js new file mode 100644 index 0000000..5adcd59 --- /dev/null +++ b/docs/html/search/defines_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['benchmark_344',['benchmark',['../_arguments_8cpp.html#ab219e0457ba1898f28a0a8ca1c22bb33',1,'utils.h']]] +]; diff --git a/docs/html/search/defines_1.html b/docs/html/search/defines_1.html new file mode 100644 index 0000000..c49009c --- /dev/null +++ b/docs/html/search/defines_1.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/defines_1.js b/docs/html/search/defines_1.js new file mode 100644 index 0000000..aa8c5fa --- /dev/null +++ b/docs/html/search/defines_1.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['digits_345',['DIGITS',['../_lexer_8cpp.html#a28c8bd90ea71ec24e5f43f413a9ee8b4',1,'Lexer.cpp']]] +]; diff --git a/docs/html/search/defines_2.html b/docs/html/search/defines_2.html new file mode 100644 index 0000000..c551011 --- /dev/null +++ b/docs/html/search/defines_2.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/defines_2.js b/docs/html/search/defines_2.js new file mode 100644 index 0000000..e272350 --- /dev/null +++ b/docs/html/search/defines_2.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['identifiers_346',['IDENTIFIERS',['../_lexer_8cpp.html#a2f45e4037b2089a3c1ac9f7ad664d2f6',1,'Lexer.cpp']]] +]; diff --git a/docs/html/search/defines_3.html b/docs/html/search/defines_3.html new file mode 100644 index 0000000..8c6d215 --- /dev/null +++ b/docs/html/search/defines_3.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/defines_3.js b/docs/html/search/defines_3.js new file mode 100644 index 0000000..cbc5a89 --- /dev/null +++ b/docs/html/search/defines_3.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['letters_347',['LETTERS',['../_lexer_8cpp.html#ab19b99692e802c4a2e44884ec87713bb',1,'Lexer.cpp']]] +]; diff --git a/docs/html/search/defines_4.html b/docs/html/search/defines_4.html new file mode 100644 index 0000000..f4afac1 --- /dev/null +++ b/docs/html/search/defines_4.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/defines_4.js b/docs/html/search/defines_4.js new file mode 100644 index 0000000..8268f3a --- /dev/null +++ b/docs/html/search/defines_4.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['max_5fimports_348',['MAX_IMPORTS',['../_importer_8cpp.html#add187787253a083baba7238223a93a45',1,'Importer.cpp']]] +]; diff --git a/docs/html/search/defines_5.html b/docs/html/search/defines_5.html new file mode 100644 index 0000000..8c40d12 --- /dev/null +++ b/docs/html/search/defines_5.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/defines_5.js b/docs/html/search/defines_5.js new file mode 100644 index 0000000..1b29926 --- /dev/null +++ b/docs/html/search/defines_5.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['type_5fcount_349',['TYPE_COUNT',['../_lexer_8h.html#a5aa140c2c2e64a57331d450a98077834',1,'Lexer.h']]] +]; diff --git a/docs/html/search/defines_6.html b/docs/html/search/defines_6.html new file mode 100644 index 0000000..c6c0f48 --- /dev/null +++ b/docs/html/search/defines_6.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/defines_6.js b/docs/html/search/defines_6.js new file mode 100644 index 0000000..f48ff88 --- /dev/null +++ b/docs/html/search/defines_6.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['whitespace_350',['WHITESPACE',['../_lexer_8cpp.html#abfa0d183e035eb9705b5faec98294d0f',1,'Lexer.cpp']]] +]; diff --git a/docs/html/search/enums_0.html b/docs/html/search/enums_0.html new file mode 100644 index 0000000..141fff5 --- /dev/null +++ b/docs/html/search/enums_0.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/enums_0.js b/docs/html/search/enums_0.js new file mode 100644 index 0000000..3c0bbe7 --- /dev/null +++ b/docs/html/search/enums_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['tokentype_303',['TokenType',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921',1,'Token.h']]] +]; diff --git a/docs/html/search/enumvalues_0.html b/docs/html/search/enumvalues_0.html new file mode 100644 index 0000000..0d131d9 --- /dev/null +++ b/docs/html/search/enumvalues_0.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/enumvalues_0.js b/docs/html/search/enumvalues_0.js new file mode 100644 index 0000000..3f400c8 --- /dev/null +++ b/docs/html/search/enumvalues_0.js @@ -0,0 +1,43 @@ +var searchData= +[ + ['tt_5fat_304',['TT_At',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a66be6e287e64f2d1e18d62b1d96bf443',1,'Token.h']]], + ['tt_5fcomma_305',['TT_Comma',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921ad465a2b2741ddb105fd810f40fdfc5f8',1,'Token.h']]], + ['tt_5fcompilermacro_306',['TT_CompilerMacro',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921ad815e2ddb15829189dd39b0481c3908e',1,'Token.h']]], + ['tt_5fdiv_307',['TT_Div',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a7034d195d5b509782b1a2c2803e0b887',1,'Token.h']]], + ['tt_5feof_308',['TT_EOF',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921aaffedff66c98c1bc186e2c35cdc7ab66',1,'Token.h']]], + ['tt_5fequal_309',['TT_Equal',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a2e3a97dd6681a583d131a7f45b8f7b3b',1,'Token.h']]], + ['tt_5fequals_310',['TT_Equals',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921aab9f3972ab9b942c5a558acb2c8200a2',1,'Token.h']]], + ['tt_5fexclamation_311',['TT_Exclamation',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921abb589d9450ffea8e2652a357954b399d',1,'Token.h']]], + ['tt_5ffloat_312',['TT_Float',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921adce0a868eda6a8eb7c0f4b471168a52f',1,'Token.h']]], + ['tt_5fgreaterthan_313',['TT_GreaterThan',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a6088f4c9eb2333511f59a9d4fcb0cc23',1,'Token.h']]], + ['tt_5fgte_314',['TT_GTE',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a661cacfb4b927c1410ae99cc07f47114',1,'Token.h']]], + ['tt_5fidentifier_315',['TT_Identifier',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a914ff833832dec5f5b89c873cdf4873b',1,'Token.h']]], + ['tt_5fimport_316',['TT_Import',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921ac0842324f82fc7067e12cf5bc1e93ebe',1,'Token.h']]], + ['tt_5fkeyword_317',['TT_Keyword',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a4f2472f5e8f25e20351884b984a5745d',1,'Token.h']]], + ['tt_5flbracket_318',['TT_LBracket',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a046adff178e040a45fba3807d1b27077',1,'Token.h']]], + ['tt_5flessthan_319',['TT_LessThan',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a04d3947200d1e0ea47f23132c21d1552',1,'Token.h']]], + ['tt_5floadedstring_320',['TT_LoadedString',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a919ddabf40eacf261afb90628132c2e9',1,'Token.h']]], + ['tt_5flparen_321',['TT_LParen',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921aa74df126f021c6c3370b2469e13a4d58',1,'Token.h']]], + ['tt_5flsqb_322',['TT_LSQB',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a72cd35b410262b2cdf1b6f426561316e',1,'Token.h']]], + ['tt_5flte_323',['TT_LTE',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921abe295cb0b1d7e40b683e841099ca0d5c',1,'Token.h']]], + ['tt_5fminus_324',['TT_Minus',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a37610de04974a9df954007ad9fddcec6',1,'Token.h']]], + ['tt_5fmul_325',['TT_Mul',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a7b1c59205c8e47772905efa820e26276',1,'Token.h']]], + ['tt_5fnequal_326',['TT_NEqual',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a52a3bc78510da97e3610a2c90e9af027',1,'Token.h']]], + ['tt_5fnull_327',['TT_Null',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921aae8a36dd5042ffdff357cb3caaec8de4',1,'Token.h']]], + ['tt_5fnumber_328',['TT_Number',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921af0b33aa8547139ec0850566aa75c2eab',1,'Token.h']]], + ['tt_5fpath_329',['TT_Path',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a7a6334e5907fea7b13cb5c3168bf56d3',1,'Token.h']]], + ['tt_5fperiod_330',['TT_Period',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a1bfe153b7024483e5b14df5f4a19c383',1,'Token.h']]], + ['tt_5fplus_331',['TT_Plus',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a8dc57a25d3d43203efa4abfc428f4ae5',1,'Token.h']]], + ['tt_5frbracket_332',['TT_RBracket',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a55662755fa0c3e80c4b8a137a822fe56',1,'Token.h']]], + ['tt_5frparen_333',['TT_RParen',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a0b02ea10bfa1b86223505526e152850c',1,'Token.h']]], + ['tt_5frsqb_334',['TT_RSQB',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921afca02f5c4e306e125b6aef30093c2fbb',1,'Token.h']]], + ['tt_5fsemicolon_335',['TT_Semicolon',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a0cf876fc815f0bbdf381a0b6b3e9c8a1',1,'Token.h']]], + ['tt_5fstring_336',['TT_String',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921ac5d8b9e1d3e5e0556207d113144ca9ef',1,'Token.h']]], + ['tt_5fsyscall0_337',['TT_Syscall0',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921aa991c9be0fb4d126936f15739e0cc581',1,'Token.h']]], + ['tt_5fsyscall1_338',['TT_Syscall1',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a7f3fbd8a2c479e24962b1257ba1a75cc',1,'Token.h']]], + ['tt_5fsyscall2_339',['TT_Syscall2',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a47c37018ac199a24001f7ae088a770ad',1,'Token.h']]], + ['tt_5fsyscall3_340',['TT_Syscall3',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a932e0b4b6ad328fd42a372b19f5efa14',1,'Token.h']]], + ['tt_5fsyscall4_341',['TT_Syscall4',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a4f33569f79146c4955920b6b1273f100',1,'Token.h']]], + ['tt_5fsyscall5_342',['TT_Syscall5',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a03295c72f650bc6058eeaa1c4de14b1f',1,'Token.h']]], + ['tt_5ftype_343',['TT_Type',['../_token_8h.html#aa520fbf142ba1e7e659590c07da31921a6afc064c5b6cb4603534e73a261decef',1,'Token.h']]] +]; diff --git a/docs/html/search/files_0.html b/docs/html/search/files_0.html new file mode 100644 index 0000000..9498842 --- /dev/null +++ b/docs/html/search/files_0.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_0.js b/docs/html/search/files_0.js new file mode 100644 index 0000000..d3d1937 --- /dev/null +++ b/docs/html/search/files_0.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['arguments_2ecpp_187',['Arguments.cpp',['../_arguments_8cpp.html',1,'']]], + ['arguments_2eh_188',['Arguments.h',['../_arguments_8h.html',1,'']]], + ['astnode_2ecpp_189',['ASTNode.cpp',['../_a_s_t_node_8cpp.html',1,'']]], + ['astnode_2eh_190',['ASTNode.h',['../_a_s_t_node_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_1.html b/docs/html/search/files_1.html new file mode 100644 index 0000000..7050ef4 --- /dev/null +++ b/docs/html/search/files_1.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_1.js b/docs/html/search/files_1.js new file mode 100644 index 0000000..2541ac7 --- /dev/null +++ b/docs/html/search/files_1.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['binaryopnode_2ecpp_191',['BinaryOpNode.cpp',['../_binary_op_node_8cpp.html',1,'']]], + ['binaryopnode_2eh_192',['BinaryOpNode.h',['../_binary_op_node_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_2.html b/docs/html/search/files_2.html new file mode 100644 index 0000000..497cdf5 --- /dev/null +++ b/docs/html/search/files_2.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_2.js b/docs/html/search/files_2.js new file mode 100644 index 0000000..2ea4c72 --- /dev/null +++ b/docs/html/search/files_2.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['error_2ecpp_193',['Error.cpp',['../_error_8cpp.html',1,'']]], + ['error_2eh_194',['Error.h',['../_error_8h.html',1,'']]], + ['exprnode_2ecpp_195',['ExprNode.cpp',['../_expr_node_8cpp.html',1,'']]], + ['exprnode_2eh_196',['ExprNode.h',['../_expr_node_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_3.html b/docs/html/search/files_3.html new file mode 100644 index 0000000..1ba106b --- /dev/null +++ b/docs/html/search/files_3.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_3.js b/docs/html/search/files_3.js new file mode 100644 index 0000000..bde195e --- /dev/null +++ b/docs/html/search/files_3.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['fileio_2ecpp_197',['FileIO.cpp',['../_file_i_o_8cpp.html',1,'']]], + ['fileio_2eh_198',['FileIO.h',['../_file_i_o_8h.html',1,'']]], + ['formatstring_2ehpp_199',['FormatString.hpp',['../_format_string_8hpp.html',1,'']]] +]; diff --git a/docs/html/search/files_4.html b/docs/html/search/files_4.html new file mode 100644 index 0000000..753b7b1 --- /dev/null +++ b/docs/html/search/files_4.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_4.js b/docs/html/search/files_4.js new file mode 100644 index 0000000..5ad2281 --- /dev/null +++ b/docs/html/search/files_4.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['importer_2ecpp_200',['Importer.cpp',['../_importer_8cpp.html',1,'']]], + ['importer_2eh_201',['Importer.h',['../_importer_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_5.html b/docs/html/search/files_5.html new file mode 100644 index 0000000..7b6affd --- /dev/null +++ b/docs/html/search/files_5.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_5.js b/docs/html/search/files_5.js new file mode 100644 index 0000000..9ab7258 --- /dev/null +++ b/docs/html/search/files_5.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['lexer_2ecpp_202',['Lexer.cpp',['../_lexer_8cpp.html',1,'']]], + ['lexer_2eh_203',['Lexer.h',['../_lexer_8h.html',1,'']]], + ['location_2ecpp_204',['Location.cpp',['../_location_8cpp.html',1,'']]], + ['location_2eh_205',['Location.h',['../_location_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_6.html b/docs/html/search/files_6.html new file mode 100644 index 0000000..802ebf7 --- /dev/null +++ b/docs/html/search/files_6.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_6.js b/docs/html/search/files_6.js new file mode 100644 index 0000000..25e09af --- /dev/null +++ b/docs/html/search/files_6.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['mulnode_2ecpp_206',['MulNode.cpp',['../_mul_node_8cpp.html',1,'']]], + ['mulnode_2eh_207',['MulNode.h',['../_mul_node_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_7.html b/docs/html/search/files_7.html new file mode 100644 index 0000000..365e648 --- /dev/null +++ b/docs/html/search/files_7.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_7.js b/docs/html/search/files_7.js new file mode 100644 index 0000000..1f429db --- /dev/null +++ b/docs/html/search/files_7.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['normalizer_2ecpp_208',['Normalizer.cpp',['../_normalizer_8cpp.html',1,'']]], + ['normalizer_2eh_209',['Normalizer.h',['../_normalizer_8h.html',1,'']]], + ['numbernode_2ecpp_210',['NumberNode.cpp',['../_number_node_8cpp.html',1,'']]], + ['numbernode_2eh_211',['NumberNode.h',['../_number_node_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_8.html b/docs/html/search/files_8.html new file mode 100644 index 0000000..3df0f2f --- /dev/null +++ b/docs/html/search/files_8.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_8.js b/docs/html/search/files_8.js new file mode 100644 index 0000000..351456c --- /dev/null +++ b/docs/html/search/files_8.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['parser_2ecpp_212',['Parser.cpp',['../_parser_8cpp.html',1,'']]], + ['parser_2eh_213',['Parser.h',['../_parser_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_9.html b/docs/html/search/files_9.html new file mode 100644 index 0000000..52f8b6c --- /dev/null +++ b/docs/html/search/files_9.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_9.js b/docs/html/search/files_9.js new file mode 100644 index 0000000..f0c2f7c --- /dev/null +++ b/docs/html/search/files_9.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['sapphire_2ecpp_214',['sapphire.cpp',['../sapphire_8cpp.html',1,'']]], + ['sapphirepch_2eh_215',['sapphirepch.h',['../sapphirepch_8h.html',1,'']]], + ['statementnode_2ecpp_216',['StatementNode.cpp',['../_statement_node_8cpp.html',1,'']]], + ['statementnode_2eh_217',['StatementNode.h',['../_statement_node_8h.html',1,'']]], + ['sumnode_2ecpp_218',['SumNode.cpp',['../_sum_node_8cpp.html',1,'']]], + ['sumnode_2eh_219',['SumNode.h',['../_sum_node_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_a.html b/docs/html/search/files_a.html new file mode 100644 index 0000000..11d4c11 --- /dev/null +++ b/docs/html/search/files_a.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_a.js b/docs/html/search/files_a.js new file mode 100644 index 0000000..4b8b67f --- /dev/null +++ b/docs/html/search/files_a.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['token_2ecpp_220',['Token.cpp',['../_token_8cpp.html',1,'']]], + ['token_2eh_221',['Token.h',['../_token_8h.html',1,'']]] +]; diff --git a/docs/html/search/files_b.html b/docs/html/search/files_b.html new file mode 100644 index 0000000..9fc8343 --- /dev/null +++ b/docs/html/search/files_b.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/files_b.js b/docs/html/search/files_b.js new file mode 100644 index 0000000..b03ca3a --- /dev/null +++ b/docs/html/search/files_b.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['utils_2ecpp_222',['utils.cpp',['../utils_8cpp.html',1,'']]], + ['utils_2eh_223',['utils.h',['../utils_8h.html',1,'']]] +]; diff --git a/docs/html/search/functions_0.html b/docs/html/search/functions_0.html new file mode 100644 index 0000000..eb4c501 --- /dev/null +++ b/docs/html/search/functions_0.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_0.js b/docs/html/search/functions_0.js new file mode 100644 index 0000000..5c98e48 --- /dev/null +++ b/docs/html/search/functions_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['_5f_5fbenchmark_5fimpl_224',['__benchmark_impl',['../class____benchmark__impl.html#a2efd5ebe7e24a9a6ead5b205d0fe05f8',1,'__benchmark_impl']]] +]; diff --git a/docs/html/search/functions_1.html b/docs/html/search/functions_1.html new file mode 100644 index 0000000..ef4088b --- /dev/null +++ b/docs/html/search/functions_1.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_1.js b/docs/html/search/functions_1.js new file mode 100644 index 0000000..5ff806f --- /dev/null +++ b/docs/html/search/functions_1.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['advance_225',['advance',['../struct_location.html#a375ecb41aafad3dba17600684cb16a6f',1,'Location']]], + ['assign_5fparent_5flocation_226',['assign_parent_location',['../class_lexer.html#a8f5d1d9281b44e287d7db2ef0c0dff09',1,'Lexer']]], + ['astnode_227',['ASTNode',['../class_a_s_t_node.html#a1196ed4f19c0b62cdc42fe35946b91d2',1,'ASTNode']]] +]; diff --git a/docs/html/search/functions_10.html b/docs/html/search/functions_10.html new file mode 100644 index 0000000..1bdc125 --- /dev/null +++ b/docs/html/search/functions_10.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_10.js b/docs/html/search/functions_10.js new file mode 100644 index 0000000..9574d1d --- /dev/null +++ b/docs/html/search/functions_10.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['write_5fall_268',['write_all',['../namespace_file_i_o.html#a84b962dcd17d16c361902d8b179d3b47',1,'FileIO']]] +]; diff --git a/docs/html/search/functions_11.html b/docs/html/search/functions_11.html new file mode 100644 index 0000000..188076e --- /dev/null +++ b/docs/html/search/functions_11.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_11.js b/docs/html/search/functions_11.js new file mode 100644 index 0000000..48001a7 --- /dev/null +++ b/docs/html/search/functions_11.js @@ -0,0 +1,15 @@ +var searchData= +[ + ['_7e_5f_5fbenchmark_5fimpl_269',['~__benchmark_impl',['../class____benchmark__impl.html#aa91ff70297183c7c20c198096a671f73',1,'__benchmark_impl']]], + ['_7eastnode_270',['~ASTNode',['../class_a_s_t_node.html#a41a691f37fa038eb183280effeb8ba4e',1,'ASTNode']]], + ['_7ebinaryopnode_271',['~BinaryOpNode',['../class_binary_op_node.html#a924a3c0ddb1f8442208ebcce2748ec81',1,'BinaryOpNode']]], + ['_7eexprnode_272',['~ExprNode',['../class_expr_node.html#a3d37807a38daa45e693b2734cfd47727',1,'ExprNode']]], + ['_7elexer_273',['~Lexer',['../class_lexer.html#ad26a84af23d8d303723e36e83fc4e556',1,'Lexer']]], + ['_7elocation_274',['~Location',['../struct_location.html#af5be2c6550bbd96137cbb3144ec3c529',1,'Location']]], + ['_7emulnode_275',['~MulNode',['../class_mul_node.html#a9ea3fc1e1310ccea7b85f52c872d4883',1,'MulNode']]], + ['_7enumbernode_276',['~NumberNode',['../class_number_node.html#a90b34c7bd973fdb7dcc661f4882803e7',1,'NumberNode']]], + ['_7eparser_277',['~Parser',['../class_parser.html#a3e658b5917a93a3ef648050d060e3a93',1,'Parser']]], + ['_7estatementnode_278',['~StatementNode',['../class_statement_node.html#a720f5b78cc3ef43e870f429d6a99ebb2',1,'StatementNode']]], + ['_7esumnode_279',['~SumNode',['../class_sum_node.html#aaaba707d1ba3c11e6b8b875c1596bc03',1,'SumNode']]], + ['_7etoken_280',['~Token',['../struct_token.html#a3d7d59eaac1535df1433357d5d372f84',1,'Token']]] +]; diff --git a/docs/html/search/functions_2.html b/docs/html/search/functions_2.html new file mode 100644 index 0000000..ca5aa10 --- /dev/null +++ b/docs/html/search/functions_2.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_2.js b/docs/html/search/functions_2.js new file mode 100644 index 0000000..e8d89df --- /dev/null +++ b/docs/html/search/functions_2.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['binaryopnode_228',['BinaryOpNode',['../class_binary_op_node.html#a483ebe81ba6f08340a7ceff34e6b75af',1,'BinaryOpNode']]] +]; diff --git a/docs/html/search/functions_3.html b/docs/html/search/functions_3.html new file mode 100644 index 0000000..d79f55b --- /dev/null +++ b/docs/html/search/functions_3.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_3.js b/docs/html/search/functions_3.js new file mode 100644 index 0000000..0a61305 --- /dev/null +++ b/docs/html/search/functions_3.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['convert_229',['convert',['../_format_string_8hpp.html#a207942ebe626457e5847d109dce89ffc',1,'FormatString.hpp']]], + ['copy_230',['copy',['../struct_location.html#a524b9cec2031554ca8f15405ab5ae9ff',1,'Location']]], + ['copy_5fwith_5fnew_5ftype_231',['copy_with_new_type',['../struct_token.html#a036d56315ccd55329e9e1e2271b16795',1,'Token']]] +]; diff --git a/docs/html/search/functions_4.html b/docs/html/search/functions_4.html new file mode 100644 index 0000000..1657cad --- /dev/null +++ b/docs/html/search/functions_4.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_4.js b/docs/html/search/functions_4.js new file mode 100644 index 0000000..4cc7a83 --- /dev/null +++ b/docs/html/search/functions_4.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['disable_232',['disable',['../class____benchmark__impl.html#a5ddf5a17aee0bc1bab08229e574dad76',1,'__benchmark_impl']]] +]; diff --git a/docs/html/search/functions_5.html b/docs/html/search/functions_5.html new file mode 100644 index 0000000..9301d6b --- /dev/null +++ b/docs/html/search/functions_5.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_5.js b/docs/html/search/functions_5.js new file mode 100644 index 0000000..e7fed57 --- /dev/null +++ b/docs/html/search/functions_5.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['enable_233',['enable',['../class____benchmark__impl.html#abef5e19af3518d080c6988fc7558870d',1,'__benchmark_impl']]], + ['erase_234',['erase',['../struct_token.html#a2d401d11a0b5cb39e1505dbaf13fee82',1,'Token']]], + ['evaluate_235',['evaluate',['../namespace_importer.html#ae5e2ed66024ff80241bd740c66745bd6',1,'Importer']]], + ['exprnode_236',['ExprNode',['../class_expr_node.html#ab8c32004efc2afec3208b0c9b0e9a154',1,'ExprNode::ExprNode(std::shared_ptr< ExprNode > child)'],['../class_expr_node.html#a440d1cb893f7815b71dff7b4ec35089a',1,'ExprNode::ExprNode()']]] +]; diff --git a/docs/html/search/functions_6.html b/docs/html/search/functions_6.html new file mode 100644 index 0000000..9c4f5fc --- /dev/null +++ b/docs/html/search/functions_6.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_6.js b/docs/html/search/functions_6.js new file mode 100644 index 0000000..4e74167 --- /dev/null +++ b/docs/html/search/functions_6.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['format_5fstring_237',['format_string',['../_format_string_8hpp.html#ac54251dfd9c366f92c8bf00086dc5764',1,'FormatString.hpp']]], + ['format_5fstring_5finternal_238',['format_string_internal',['../_format_string_8hpp.html#a01af0cba6af7f12e6608cd28d0af0091',1,'FormatString.hpp']]] +]; diff --git a/docs/html/search/functions_7.html b/docs/html/search/functions_7.html new file mode 100644 index 0000000..46b5c0f --- /dev/null +++ b/docs/html/search/functions_7.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_7.js b/docs/html/search/functions_7.js new file mode 100644 index 0000000..5550c2f --- /dev/null +++ b/docs/html/search/functions_7.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['init_239',['init',['../class____benchmark__impl.html#a6f260fa4d0f93d4a14d6b2a56d91773a',1,'__benchmark_impl::init()'],['../namespace_importer.html#abd3407990e0fe2e71bb95782791ee1c9',1,'Importer::init()']]] +]; diff --git a/docs/html/search/functions_8.html b/docs/html/search/functions_8.html new file mode 100644 index 0000000..31a1d95 --- /dev/null +++ b/docs/html/search/functions_8.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_8.js b/docs/html/search/functions_8.js new file mode 100644 index 0000000..f279eb2 --- /dev/null +++ b/docs/html/search/functions_8.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['lex_240',['lex',['../class_lexer.html#ac53b63f829071be755cc785084126afe',1,'Lexer']]], + ['line_241',['line',['../struct_token.html#a432fb89b5fed83bd753f99a5ea10e2e6',1,'Token']]], + ['location_242',['Location',['../struct_location.html#a7d1957f57b0c5b36b2f546d5833d6be6',1,'Location']]] +]; diff --git a/docs/html/search/functions_9.html b/docs/html/search/functions_9.html new file mode 100644 index 0000000..9a8e429 --- /dev/null +++ b/docs/html/search/functions_9.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_9.js b/docs/html/search/functions_9.js new file mode 100644 index 0000000..e0261e3 --- /dev/null +++ b/docs/html/search/functions_9.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['main_243',['main',['../sapphire_8cpp.html#a3c04138a5bfe5d72780bb7e82a18e627',1,'sapphire.cpp']]], + ['make_5flexer_244',['make_lexer',['../class_lexer.html#a6d24d823847b6d5f7e497d78f5b612d4',1,'Lexer']]], + ['make_5fwith_5fline_245',['make_with_line',['../struct_token.html#a6c00b26185c109de4c2b79bd756defa1',1,'Token']]], + ['match_5ftoken_5ftypes_246',['match_token_types',['../struct_token.html#a0eaf331871c69faf7c37d8e87db1f7e6',1,'Token']]], + ['mulnode_247',['MulNode',['../class_mul_node.html#a77b55c0440c778b424d7c1c9620ff926',1,'MulNode']]] +]; diff --git a/docs/html/search/functions_a.html b/docs/html/search/functions_a.html new file mode 100644 index 0000000..5ecc152 --- /dev/null +++ b/docs/html/search/functions_a.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_a.js b/docs/html/search/functions_a.js new file mode 100644 index 0000000..21a036c --- /dev/null +++ b/docs/html/search/functions_a.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['new_5fparser_248',['new_parser',['../class_parser.html#a94032f3f6e1d0776c1110e82809c65a5',1,'Parser']]], + ['normalize_249',['normalize',['../namespace_normalizer.html#a89d929aace148fe5c998416863397f39',1,'Normalizer']]], + ['numbernode_250',['NumberNode',['../class_number_node.html#ad73f159f5e1cde94876e24efba813647',1,'NumberNode']]] +]; diff --git a/docs/html/search/functions_b.html b/docs/html/search/functions_b.html new file mode 100644 index 0000000..e301fed --- /dev/null +++ b/docs/html/search/functions_b.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_b.js b/docs/html/search/functions_b.js new file mode 100644 index 0000000..127fdba --- /dev/null +++ b/docs/html/search/functions_b.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['operator_3d_251',['operator=',['../struct_location.html#a8646c981888c9d6423e99a0298f9d795',1,'Location::operator=()'],['../struct_token.html#ab58cab5077c1c4c4671964595308c3fc',1,'Token::operator=()']]] +]; diff --git a/docs/html/search/functions_c.html b/docs/html/search/functions_c.html new file mode 100644 index 0000000..c4f3268 --- /dev/null +++ b/docs/html/search/functions_c.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_c.js b/docs/html/search/functions_c.js new file mode 100644 index 0000000..05adc9e --- /dev/null +++ b/docs/html/search/functions_c.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['paren_5fstr_252',['paren_str',['../struct_location.html#aaa249a0b41e4208fd9346b4744c0a823',1,'Location']]], + ['parse_253',['parse',['../struct_arguments.html#a473917d0a36d731d31f89d49c2dc528c',1,'Arguments::parse()'],['../class_parser.html#ae094dfbfd3065ff21b12a9dd19a771ee',1,'Parser::parse()']]], + ['pos_5ffrom_5fchar_254',['pos_from_char',['../struct_location.html#ab0754b2857e8fc1bb80f0f8c18c629ab',1,'Location']]] +]; diff --git a/docs/html/search/functions_d.html b/docs/html/search/functions_d.html new file mode 100644 index 0000000..7a1ed06 --- /dev/null +++ b/docs/html/search/functions_d.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_d.js b/docs/html/search/functions_d.js new file mode 100644 index 0000000..f6ac8e9 --- /dev/null +++ b/docs/html/search/functions_d.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['read_5fall_255',['read_all',['../namespace_file_i_o.html#ab49a427f3ddb1f750b4314dfdb17be2b',1,'FileIO']]], + ['remove_5ffile_5fextension_256',['remove_file_extension',['../namespace_file_i_o.html#a3aa60357e37b7acc57f3e89e80d6e7a4',1,'FileIO']]], + ['replace_257',['replace',['../utils_8cpp.html#a0159b96c217d65d379016f6aa2c4dd57',1,'replace(std::string &str, const std::string &from, const std::string &to): utils.cpp'],['../utils_8h.html#a0159b96c217d65d379016f6aa2c4dd57',1,'replace(std::string &str, const std::string &from, const std::string &to): utils.cpp']]] +]; diff --git a/docs/html/search/functions_e.html b/docs/html/search/functions_e.html new file mode 100644 index 0000000..22d2a6b --- /dev/null +++ b/docs/html/search/functions_e.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_e.js b/docs/html/search/functions_e.js new file mode 100644 index 0000000..92c0e6b --- /dev/null +++ b/docs/html/search/functions_e.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['show_5fimport_5fline_258',['show_import_line',['../namespace_error.html#aa3680909596c6ac37bc0579385b59632',1,'Error']]], + ['show_5fimport_5flines_259',['show_import_lines',['../namespace_error.html#a938494fd39f939d79cd611b5bd2f2b67',1,'Error']]], + ['statementnode_260',['StatementNode',['../class_statement_node.html#a0eae92f37b371c7cbc9131ba3e0c3c57',1,'StatementNode']]], + ['str_261',['str',['../struct_location.html#acebfd439c295573434454fdd3e116e0e',1,'Location']]], + ['sumnode_262',['SumNode',['../class_sum_node.html#a35d1a4b581dc1f943065fe4f55e586b6',1,'SumNode']]] +]; diff --git a/docs/html/search/functions_f.html b/docs/html/search/functions_f.html new file mode 100644 index 0000000..54b7dee --- /dev/null +++ b/docs/html/search/functions_f.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/functions_f.js b/docs/html/search/functions_f.js new file mode 100644 index 0000000..9d4434d --- /dev/null +++ b/docs/html/search/functions_f.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['throw_5ferror_263',['throw_error',['../namespace_error.html#a52e79c9d3b4d7280ffee959c4646675f',1,'Error']]], + ['throw_5ferror_5fwithout_5flocation_264',['throw_error_without_location',['../namespace_error.html#a97056e92a18863fb0f490c73bc089fbe',1,'Error']]], + ['throw_5fwarning_265',['throw_warning',['../namespace_error.html#ab62bae2c735ea379eab3a8039c2c1ade',1,'Error']]], + ['to_5fstring_266',['to_string',['../struct_token.html#a602aa1415de3415044205333495e72f5',1,'Token::to_string()'],['../utils_8cpp.html#a661f7549af1d9a364fde170b2c7ae0c3',1,'to_string(const int &value): utils.cpp'],['../utils_8cpp.html#ab971c0a329063c89e85cf689bbad5d59',1,'to_string(const float &value): utils.cpp'],['../utils_8h.html#a661f7549af1d9a364fde170b2c7ae0c3',1,'to_string(const int &value): utils.cpp'],['../utils_8h.html#ab971c0a329063c89e85cf689bbad5d59',1,'to_string(const float &value): utils.cpp']]], + ['token_267',['Token',['../struct_token.html#ab74d6b5fef46e3c194229e7a884cad45',1,'Token::Token(const TokenType &type)'],['../struct_token.html#a6d4d66f172376503d15b9a2feb5f90e8',1,'Token::Token(const TokenType &type, const Location &location)'],['../struct_token.html#a2efe8a7168e6b2adac5d1cf6750daa7b',1,'Token::Token(const TokenType &type, const int &val, const Location &location)'],['../struct_token.html#a17f818bd7d9ff7472837307d09fb58fa',1,'Token::Token(const TokenType &type, const std::string &val, const Location &location)'],['../struct_token.html#ad810ae05b8d953d481e1cbebb2964b17',1,'Token::Token(const TokenType &type, const std::string &val)'],['../struct_token.html#a40f4b33a2ffd88acf803132d598c4ab4',1,'Token::Token(const TokenType &type, const float &val, const Location &location)']]] +]; diff --git a/docs/html/search/namespaces_0.html b/docs/html/search/namespaces_0.html new file mode 100644 index 0000000..21db2c3 --- /dev/null +++ b/docs/html/search/namespaces_0.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/namespaces_0.js b/docs/html/search/namespaces_0.js new file mode 100644 index 0000000..b067f5d --- /dev/null +++ b/docs/html/search/namespaces_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['error_183',['Error',['../namespace_error.html',1,'']]] +]; diff --git a/docs/html/search/namespaces_1.html b/docs/html/search/namespaces_1.html new file mode 100644 index 0000000..a01efeb --- /dev/null +++ b/docs/html/search/namespaces_1.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/namespaces_1.js b/docs/html/search/namespaces_1.js new file mode 100644 index 0000000..25d67eb --- /dev/null +++ b/docs/html/search/namespaces_1.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['fileio_184',['FileIO',['../namespace_file_i_o.html',1,'']]] +]; diff --git a/docs/html/search/namespaces_2.html b/docs/html/search/namespaces_2.html new file mode 100644 index 0000000..b46f2a5 --- /dev/null +++ b/docs/html/search/namespaces_2.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/namespaces_2.js b/docs/html/search/namespaces_2.js new file mode 100644 index 0000000..83f5680 --- /dev/null +++ b/docs/html/search/namespaces_2.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['importer_185',['Importer',['../namespace_importer.html',1,'']]] +]; diff --git a/docs/html/search/namespaces_3.html b/docs/html/search/namespaces_3.html new file mode 100644 index 0000000..32b23bd --- /dev/null +++ b/docs/html/search/namespaces_3.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/namespaces_3.js b/docs/html/search/namespaces_3.js new file mode 100644 index 0000000..5046577 --- /dev/null +++ b/docs/html/search/namespaces_3.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['normalizer_186',['Normalizer',['../namespace_normalizer.html',1,'']]] +]; diff --git a/docs/html/search/searchdata.js b/docs/html/search/searchdata.js index 410477c..0d03933 100644 --- a/docs/html/search/searchdata.js +++ b/docs/html/search/searchdata.js @@ -1,18 +1,42 @@ var indexSectionsWithContent = { - 0: "_alpt", - 1: "_alpt" + 0: "_abcdefilmnoprstuw~", + 1: "_abelmnpst", + 2: "efin", + 3: "abefilmnpstu", + 4: "_abcdefilmnoprstw~", + 5: "cfiloprstw", + 6: "t", + 7: "t", + 8: "t", + 9: "bdilmtw" }; var indexSectionNames = { 0: "all", - 1: "classes" + 1: "classes", + 2: "namespaces", + 3: "files", + 4: "functions", + 5: "variables", + 6: "typedefs", + 7: "enums", + 8: "enumvalues", + 9: "defines" }; var indexSectionLabels = { 0: "All", - 1: "Classes" + 1: "Classes", + 2: "Namespaces", + 3: "Files", + 4: "Functions", + 5: "Variables", + 6: "Typedefs", + 7: "Enumerations", + 8: "Enumerator", + 9: "Macros" }; diff --git a/docs/html/search/typedefs_0.html b/docs/html/search/typedefs_0.html new file mode 100644 index 0000000..a4684c4 --- /dev/null +++ b/docs/html/search/typedefs_0.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/typedefs_0.js b/docs/html/search/typedefs_0.js new file mode 100644 index 0000000..be54882 --- /dev/null +++ b/docs/html/search/typedefs_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['tokenstream_302',['TokenStream',['../_lexer_8h.html#a43f892d4a347a32f8602cfbcff2e237e',1,'TokenStream(): Lexer.h'],['../_token_8h.html#a43f892d4a347a32f8602cfbcff2e237e',1,'TokenStream(): Token.h']]] +]; diff --git a/docs/html/search/variables_0.html b/docs/html/search/variables_0.html new file mode 100644 index 0000000..1e477c0 --- /dev/null +++ b/docs/html/search/variables_0.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_0.js b/docs/html/search/variables_0.js new file mode 100644 index 0000000..cbb75e5 --- /dev/null +++ b/docs/html/search/variables_0.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['column_281',['column',['../struct_location.html#ae9cf292727f8758f402671c80d6c4718',1,'Location']]], + ['cpu_282',['cpu',['../struct_arguments.html#a30c0e29cd531baee48619881301db9d4',1,'Arguments']]] +]; diff --git a/docs/html/search/variables_1.html b/docs/html/search/variables_1.html new file mode 100644 index 0000000..ea73d9a --- /dev/null +++ b/docs/html/search/variables_1.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_1.js b/docs/html/search/variables_1.js new file mode 100644 index 0000000..92b6f9f --- /dev/null +++ b/docs/html/search/variables_1.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['float_5fvalue_283',['float_value',['../struct_token.html#a92a5a00e9160db302b651c44c3658051',1,'Token']]], + ['fname_284',['fname',['../struct_location.html#a5b691d1c7f3c5c1b7428cf118d3595c8',1,'Location']]] +]; diff --git a/docs/html/search/variables_2.html b/docs/html/search/variables_2.html new file mode 100644 index 0000000..0580462 --- /dev/null +++ b/docs/html/search/variables_2.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_2.js b/docs/html/search/variables_2.js new file mode 100644 index 0000000..10414a3 --- /dev/null +++ b/docs/html/search/variables_2.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['import_5fcount_285',['import_count',['../namespace_importer.html#a868c1a6abdf06ce496f3b66e62a6d5f0',1,'Importer']]], + ['import_5fstack_286',['import_stack',['../namespace_importer.html#a15ee91166a2ddf7756aec26590c5ce93',1,'Importer']]], + ['imported_5ffiles_287',['imported_files',['../namespace_importer.html#a9525c45990838226b598b1e618bdb94d',1,'Importer']]], + ['input_5ffname_288',['input_fname',['../struct_arguments.html#a415be55e6706062e5a393e9db8761b07',1,'Arguments']]], + ['int_5fvalue_289',['int_value',['../struct_token.html#a0bd1ec80054e52bb87e5f5c4fd2f6931',1,'Token']]] +]; diff --git a/docs/html/search/variables_3.html b/docs/html/search/variables_3.html new file mode 100644 index 0000000..0d69e76 --- /dev/null +++ b/docs/html/search/variables_3.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_3.js b/docs/html/search/variables_3.js new file mode 100644 index 0000000..e8e31f3 --- /dev/null +++ b/docs/html/search/variables_3.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['left_290',['left',['../class_binary_op_node.html#acee80276ab94e9faf3f2da1a9f323a44',1,'BinaryOpNode']]], + ['line_291',['line',['../struct_location.html#a20371736bca98414df38bc3ae316bd1c',1,'Location']]], + ['loc_292',['loc',['../struct_token.html#a33ccd4b1d4d4e2690a54f6ed39a7bf06',1,'Token']]] +]; diff --git a/docs/html/search/variables_4.html b/docs/html/search/variables_4.html new file mode 100644 index 0000000..a4b6506 --- /dev/null +++ b/docs/html/search/variables_4.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_4.js b/docs/html/search/variables_4.js new file mode 100644 index 0000000..7fa7ee0 --- /dev/null +++ b/docs/html/search/variables_4.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['output_5ffname_293',['output_fname',['../struct_arguments.html#ad11fab97672b642a76aab7c0217c9f2b',1,'Arguments']]] +]; diff --git a/docs/html/search/variables_5.html b/docs/html/search/variables_5.html new file mode 100644 index 0000000..7e345d1 --- /dev/null +++ b/docs/html/search/variables_5.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_5.js b/docs/html/search/variables_5.js new file mode 100644 index 0000000..b05a23f --- /dev/null +++ b/docs/html/search/variables_5.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['parent_294',['parent',['../struct_location.html#af047bbd018951f48de8adf5a89938acc',1,'Location']]] +]; diff --git a/docs/html/search/variables_6.html b/docs/html/search/variables_6.html new file mode 100644 index 0000000..7d48e75 --- /dev/null +++ b/docs/html/search/variables_6.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_6.js b/docs/html/search/variables_6.js new file mode 100644 index 0000000..f55ec05 --- /dev/null +++ b/docs/html/search/variables_6.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['right_295',['right',['../class_binary_op_node.html#afacda981cb1bb277f0625a5e78431582',1,'BinaryOpNode']]] +]; diff --git a/docs/html/search/variables_7.html b/docs/html/search/variables_7.html new file mode 100644 index 0000000..5c26340 --- /dev/null +++ b/docs/html/search/variables_7.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_7.js b/docs/html/search/variables_7.js new file mode 100644 index 0000000..2d319f9 --- /dev/null +++ b/docs/html/search/variables_7.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['string_5fvalue_296',['string_value',['../struct_token.html#a15eec7ad7fced0b21918e04a3e6c639c',1,'Token']]] +]; diff --git a/docs/html/search/variables_8.html b/docs/html/search/variables_8.html new file mode 100644 index 0000000..dc9ec54 --- /dev/null +++ b/docs/html/search/variables_8.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_8.js b/docs/html/search/variables_8.js new file mode 100644 index 0000000..43518b0 --- /dev/null +++ b/docs/html/search/variables_8.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['targettriple_297',['TargetTriple',['../struct_arguments.html#a7fad3659de10cf771380b86795c21928',1,'Arguments']]], + ['tk_5ftype_298',['tk_type',['../struct_token.html#afeecd45f0f912778b11fffe0abb299b5',1,'Token']]], + ['token_5fstrings_299',['token_strings',['../_token_8cpp.html#a11b1388fc87d0706641b71f004f5ce29',1,'token_strings(): Token.cpp'],['../_token_8h.html#a11b1388fc87d0706641b71f004f5ce29',1,'token_strings(): Token.cpp']]], + ['types_300',['types',['../class_lexer.html#a8956f4484cb2a477bea5d09e96ea6c8d',1,'Lexer']]] +]; diff --git a/docs/html/search/variables_9.html b/docs/html/search/variables_9.html new file mode 100644 index 0000000..7b01475 --- /dev/null +++ b/docs/html/search/variables_9.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
+
Loading...
+
+ +
Searching...
+
No Matches
+ +
+ + diff --git a/docs/html/search/variables_9.js b/docs/html/search/variables_9.js new file mode 100644 index 0000000..e58d163 --- /dev/null +++ b/docs/html/search/variables_9.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['wimport_301',['wimport',['../struct_arguments.html#a139f6982398f2c790dc298415fc9b007',1,'Arguments']]] +]; diff --git a/docs/html/struct_arguments-members.html b/docs/html/struct_arguments-members.html new file mode 100644 index 0000000..43b3a10 --- /dev/null +++ b/docs/html/struct_arguments-members.html @@ -0,0 +1,109 @@ + + + + + + + +sapphirec: Member List + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Arguments Member List
+
+
+ +

This is the complete list of members for Arguments, including all inherited members.

+ + + + + + + +
cpuArgumentsstatic
input_fnameArgumentsstatic
output_fnameArgumentsstatic
parse(int argc, char **argv)Argumentsstatic
TargetTripleArgumentsstatic
wimportArgumentsstatic
+
+ + + + diff --git a/docs/html/struct_arguments.html b/docs/html/struct_arguments.html new file mode 100644 index 0000000..f53189c --- /dev/null +++ b/docs/html/struct_arguments.html @@ -0,0 +1,278 @@ + + + + + + + +sapphirec: Arguments Struct Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ + +
+ +

#include <Arguments.h>

+ + + + +

+Static Public Member Functions

static void parse (int argc, char **argv)
 
+ + + + + + + + + + + +

+Static Public Attributes

static std::string input_fname
 
static std::string output_fname
 
static bool wimport
 
static std::string cpu
 
static llvm::Triple TargetTriple
 
+

Member Function Documentation

+ +

◆ parse()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void Arguments::parse (int argc,
char ** argv 
)
+
+static
+
+ +
+
+

Member Data Documentation

+ +

◆ cpu

+ +
+
+ + + + + +
+ + + + +
std::string Arguments::cpu
+
+static
+
+ +
+
+ +

◆ input_fname

+ +
+
+ + + + + +
+ + + + +
std::string Arguments::input_fname
+
+static
+
+ +
+
+ +

◆ output_fname

+ +
+
+ + + + + +
+ + + + +
std::string Arguments::output_fname
+
+static
+
+ +
+
+ +

◆ TargetTriple

+ +
+
+ + + + + +
+ + + + +
llvm::Triple Arguments::TargetTriple
+
+static
+
+ +
+
+ +

◆ wimport

+ +
+
+ + + + + +
+ + + + +
bool Arguments::wimport
+
+static
+
+ +
+
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/html/struct_location-members.html b/docs/html/struct_location-members.html new file mode 100644 index 0000000..0f5d226 --- /dev/null +++ b/docs/html/struct_location-members.html @@ -0,0 +1,115 @@ + + + + + + + +sapphirec: Member List + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Location Member List
+
+
+ +

This is the complete list of members for Location, including all inherited members.

+ + + + + + + + + + + + + +
advance()Location
columnLocation
copy(const Location &other)Location
fnameLocation
lineLocation
Location(int ln, int col, std::string file)Location
operator=(const Location &other)Location
paren_str() constLocation
parentLocation
pos_from_char(const char &character)Location
str() constLocation
~Location()Location
+
+ + + + diff --git a/docs/html/struct_location.html b/docs/html/struct_location.html new file mode 100644 index 0000000..c31d1bf --- /dev/null +++ b/docs/html/struct_location.html @@ -0,0 +1,357 @@ + + + + + + + +sapphirec: Location Struct Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
Location Struct Reference
+
+
+ +

#include <Location.h>

+ + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Location (int ln, int col, std::string file)
 
 ~Location ()
 
std::string str () const
 
std::string paren_str () const
 
void advance ()
 
void pos_from_char (const char &character)
 
void operator= (const Location &other)
 
void copy (const Location &other)
 
+ + + + + + + + + +

+Public Attributes

int line
 
int column
 
std::string fname
 
std::shared_ptr< Locationparent = nullptr
 
+

Constructor & Destructor Documentation

+ +

◆ Location()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
Location::Location (int ln,
int col,
std::string file 
)
+
+ +
+
+ +

◆ ~Location()

+ +
+
+ + + + + + + +
Location::~Location ()
+
+ +
+
+

Member Function Documentation

+ +

◆ advance()

+ +
+
+ + + + + + + +
void Location::advance ()
+
+ +
+
+ +

◆ copy()

+ +
+
+ + + + + + + + +
void Location::copy (const Locationother)
+
+ +
+
+ +

◆ operator=()

+ +
+
+ + + + + + + + +
void Location::operator= (const Locationother)
+
+ +
+
+ +

◆ paren_str()

+ +
+
+ + + + + + + +
std::string Location::paren_str () const
+
+ +
+
+ +

◆ pos_from_char()

+ +
+
+ + + + + + + + +
void Location::pos_from_char (const char & character)
+
+ +
+
+ +

◆ str()

+ +
+
+ + + + + + + +
std::string Location::str () const
+
+ +
+
+

Member Data Documentation

+ +

◆ column

+ +
+
+ + + + +
int Location::column
+
+ +
+
+ +

◆ fname

+ +
+
+ + + + +
std::string Location::fname
+
+ +
+
+ +

◆ line

+ +
+
+ + + + +
int Location::line
+
+ +
+
+ +

◆ parent

+ +
+
+ + + + +
std::shared_ptr<Location> Location::parent = nullptr
+
+ +
+
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/html/struct_location.js b/docs/html/struct_location.js new file mode 100644 index 0000000..48cb959 --- /dev/null +++ b/docs/html/struct_location.js @@ -0,0 +1,15 @@ +var struct_location = +[ + [ "Location", "struct_location.html#a7d1957f57b0c5b36b2f546d5833d6be6", null ], + [ "~Location", "struct_location.html#af5be2c6550bbd96137cbb3144ec3c529", null ], + [ "advance", "struct_location.html#a375ecb41aafad3dba17600684cb16a6f", null ], + [ "copy", "struct_location.html#a524b9cec2031554ca8f15405ab5ae9ff", null ], + [ "operator=", "struct_location.html#a8646c981888c9d6423e99a0298f9d795", null ], + [ "paren_str", "struct_location.html#aaa249a0b41e4208fd9346b4744c0a823", null ], + [ "pos_from_char", "struct_location.html#ab0754b2857e8fc1bb80f0f8c18c629ab", null ], + [ "str", "struct_location.html#acebfd439c295573434454fdd3e116e0e", null ], + [ "column", "struct_location.html#ae9cf292727f8758f402671c80d6c4718", null ], + [ "fname", "struct_location.html#a5b691d1c7f3c5c1b7428cf118d3595c8", null ], + [ "line", "struct_location.html#a20371736bca98414df38bc3ae316bd1c", null ], + [ "parent", "struct_location.html#af047bbd018951f48de8adf5a89938acc", null ] +]; \ No newline at end of file diff --git a/docs/html/struct_token-members.html b/docs/html/struct_token-members.html new file mode 100644 index 0000000..bde630d --- /dev/null +++ b/docs/html/struct_token-members.html @@ -0,0 +1,122 @@ + + + + + + + +sapphirec: Member List + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+
+
Token Member List
+
+
+ +

This is the complete list of members for Token, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + +
copy_with_new_type(const TokenType &type)Token
erase(Token &tk)Tokenstatic
float_valueToken
int_valueToken
line() constToken
locToken
make_with_line(const Token &origin, const std::string &line_text)Tokenstatic
match_token_types(const std::vector< Token > &a, const std::vector< Token > &b, int count)Tokenstatic
operator=(const Token &other)Token
string_valueToken
tk_typeToken
to_string() constToken
Token(const TokenType &type)Token
Token(const TokenType &type, const Location &location)Token
Token(const TokenType &type, const int &val, const Location &location)Token
Token(const TokenType &type, const std::string &val, const Location &location)Token
Token(const TokenType &type, const std::string &val)Token
Token(const TokenType &type, const float &val, const Location &location)Token
~Token()Token
+
+ + + + diff --git a/docs/html/struct_token.html b/docs/html/struct_token.html new file mode 100644 index 0000000..1864626 --- /dev/null +++ b/docs/html/struct_token.html @@ -0,0 +1,600 @@ + + + + + + + +sapphirec: Token Struct Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ + +
+ +

#include <Token.h>

+ + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

 Token (const TokenType &type)
 
 Token (const TokenType &type, const Location &location)
 
 Token (const TokenType &type, const int &val, const Location &location)
 
 Token (const TokenType &type, const std::string &val, const Location &location)
 
 Token (const TokenType &type, const std::string &val)
 
 Token (const TokenType &type, const float &val, const Location &location)
 
 ~Token ()
 
std::string to_string () const
 
std::string line () const
 
void operator= (const Token &other)
 
Token copy_with_new_type (const TokenType &type)
 
+ + + + + + + +

+Static Public Member Functions

static Token make_with_line (const Token &origin, const std::string &line_text)
 
static void erase (Token &tk)
 
static bool match_token_types (const std::vector< Token > &a, const std::vector< Token > &b, int count)
 
+ + + + + + + + + + + +

+Public Attributes

TokenType tk_type
 
int int_value
 
std::string string_value
 
float float_value
 
Location loc
 
+

Constructor & Destructor Documentation

+ +

◆ Token() [1/6]

+ +
+
+ + + + + + + + +
Token::Token (const TokenTypetype)
+
+ +
+
+ +

◆ Token() [2/6]

+ +
+
+ + + + + + + + + + + + + + + + + + +
Token::Token (const TokenTypetype,
const Locationlocation 
)
+
+ +
+
+ +

◆ Token() [3/6]

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
Token::Token (const TokenTypetype,
const int & val,
const Locationlocation 
)
+
+ +
+
+ +

◆ Token() [4/6]

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
Token::Token (const TokenTypetype,
const std::string & val,
const Locationlocation 
)
+
+ +
+
+ +

◆ Token() [5/6]

+ +
+
+ + + + + + + + + + + + + + + + + + +
Token::Token (const TokenTypetype,
const std::string & val 
)
+
+ +
+
+ +

◆ Token() [6/6]

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
Token::Token (const TokenTypetype,
const float & val,
const Locationlocation 
)
+
+ +
+
+ +

◆ ~Token()

+ +
+
+ + + + + + + +
Token::~Token ()
+
+ +
+
+

Member Function Documentation

+ +

◆ copy_with_new_type()

+ +
+
+ + + + + + + + +
Token Token::copy_with_new_type (const TokenTypetype)
+
+ +
+
+ +

◆ erase()

+ +
+
+ + + + + +
+ + + + + + + + +
void Token::erase (Tokentk)
+
+static
+
+ +
+
+ +

◆ line()

+ +
+
+ + + + + + + +
std::string Token::line () const
+
+ +
+
+ +

◆ make_with_line()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
Token Token::make_with_line (const Tokenorigin,
const std::string & line_text 
)
+
+static
+
+ +
+
+ +

◆ match_token_types()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool Token::match_token_types (const std::vector< Token > & a,
const std::vector< Token > & b,
int count 
)
+
+static
+
+ +
+
+ +

◆ operator=()

+ +
+
+ + + + + + + + +
void Token::operator= (const Tokenother)
+
+ +
+
+ +

◆ to_string()

+ +
+
+ + + + + + + +
std::string Token::to_string () const
+
+ +
+
+

Member Data Documentation

+ +

◆ float_value

+ +
+
+ + + + +
float Token::float_value
+
+ +
+
+ +

◆ int_value

+ +
+
+ + + + +
int Token::int_value
+
+ +
+
+ +

◆ loc

+ +
+
+ + + + +
Location Token::loc
+
+ +
+
+ +

◆ string_value

+ +
+
+ + + + +
std::string Token::string_value
+
+ +
+
+ +

◆ tk_type

+ +
+
+ + + + +
TokenType Token::tk_type
+
+ +
+
+
The documentation for this struct was generated from the following files: +
+
+ + + + diff --git a/docs/html/struct_token.js b/docs/html/struct_token.js new file mode 100644 index 0000000..fb3b8b9 --- /dev/null +++ b/docs/html/struct_token.js @@ -0,0 +1,19 @@ +var struct_token = +[ + [ "Token", "struct_token.html#ab74d6b5fef46e3c194229e7a884cad45", null ], + [ "Token", "struct_token.html#a6d4d66f172376503d15b9a2feb5f90e8", null ], + [ "Token", "struct_token.html#a2efe8a7168e6b2adac5d1cf6750daa7b", null ], + [ "Token", "struct_token.html#a17f818bd7d9ff7472837307d09fb58fa", null ], + [ "Token", "struct_token.html#ad810ae05b8d953d481e1cbebb2964b17", null ], + [ "Token", "struct_token.html#a40f4b33a2ffd88acf803132d598c4ab4", null ], + [ "~Token", "struct_token.html#a3d7d59eaac1535df1433357d5d372f84", null ], + [ "copy_with_new_type", "struct_token.html#a036d56315ccd55329e9e1e2271b16795", null ], + [ "line", "struct_token.html#a432fb89b5fed83bd753f99a5ea10e2e6", null ], + [ "operator=", "struct_token.html#ab58cab5077c1c4c4671964595308c3fc", null ], + [ "to_string", "struct_token.html#a602aa1415de3415044205333495e72f5", null ], + [ "float_value", "struct_token.html#a92a5a00e9160db302b651c44c3658051", null ], + [ "int_value", "struct_token.html#a0bd1ec80054e52bb87e5f5c4fd2f6931", null ], + [ "loc", "struct_token.html#a33ccd4b1d4d4e2690a54f6ed39a7bf06", null ], + [ "string_value", "struct_token.html#a15eec7ad7fced0b21918e04a3e6c639c", null ], + [ "tk_type", "struct_token.html#afeecd45f0f912778b11fffe0abb299b5", null ] +]; \ No newline at end of file diff --git a/docs/html/utils_8cpp.html b/docs/html/utils_8cpp.html new file mode 100644 index 0000000..f1a92d1 --- /dev/null +++ b/docs/html/utils_8cpp.html @@ -0,0 +1,186 @@ + + + + + + + +sapphirec: src/utils.cpp File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
utils.cpp File Reference
+
+
+
#include "utils.h"
+#include <sstream>
+
+ + + + + + + +

+Functions

bool replace (std::string &str, const std::string &from, const std::string &to)
 
std::string to_string (const int &value)
 
std::string to_string (const float &value)
 
+

Function Documentation

+ +

◆ replace()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool replace (std::string & str,
const std::string & from,
const std::string & to 
)
+
+ +
+
+ +

◆ to_string() [1/2]

+ +
+
+ + + + + + + + +
std::string to_string (const float & value)
+
+ +
+
+ +

◆ to_string() [2/2]

+ +
+
+ + + + + + + + +
std::string to_string (const int & value)
+
+ +
+
+
+
+ + + + diff --git a/docs/html/utils_8cpp.js b/docs/html/utils_8cpp.js new file mode 100644 index 0000000..917fbc4 --- /dev/null +++ b/docs/html/utils_8cpp.js @@ -0,0 +1,6 @@ +var utils_8cpp = +[ + [ "replace", "utils_8cpp.html#a0159b96c217d65d379016f6aa2c4dd57", null ], + [ "to_string", "utils_8cpp.html#ab971c0a329063c89e85cf689bbad5d59", null ], + [ "to_string", "utils_8cpp.html#a661f7549af1d9a364fde170b2c7ae0c3", null ] +]; \ No newline at end of file diff --git a/docs/html/utils_8h.html b/docs/html/utils_8h.html new file mode 100644 index 0000000..5370b10 --- /dev/null +++ b/docs/html/utils_8h.html @@ -0,0 +1,195 @@ + + + + + + + +sapphirec: src/utils.h File Reference + + + + + + + + + + + + + + + +
+
+ + + + + + +
+
sapphirec +
+
The Sapphire documentation
+
+
+ + + + + + + +
+
+ +
+
+
+ +
+ +
+
+ + +
+ +
+ +
+ +
+
utils.h File Reference
+
+
+
#include "FormatString/FormatString.hpp"
+#include "sapphirepch.h"
+#include <chrono>
+
+

Go to the source code of this file.

+ + + + +

+Classes

class  __benchmark_impl
 
+ + + + + + + +

+Functions

bool replace (std::string &str, const std::string &from, const std::string &to)
 
std::string to_string (const int &value)
 
std::string to_string (const float &value)
 
+

Function Documentation

+ +

◆ replace()

+ +
+
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool replace (std::string & str,
const std::string & from,
const std::string & to 
)
+
+ +
+
+ +

◆ to_string() [1/2]

+ +
+
+ + + + + + + + +
std::string to_string (const float & value)
+
+ +
+
+ +

◆ to_string() [2/2]

+ +
+
+ + + + + + + + +
std::string to_string (const int & value)
+
+ +
+
+
+
+ + + + diff --git a/docs/html/utils_8h.js b/docs/html/utils_8h.js new file mode 100644 index 0000000..3bfc30d --- /dev/null +++ b/docs/html/utils_8h.js @@ -0,0 +1,7 @@ +var utils_8h = +[ + [ "__benchmark_impl", "class____benchmark__impl.html", "class____benchmark__impl" ], + [ "replace", "utils_8h.html#a0159b96c217d65d379016f6aa2c4dd57", null ], + [ "to_string", "utils_8h.html#ab971c0a329063c89e85cf689bbad5d59", null ], + [ "to_string", "utils_8h.html#a661f7549af1d9a364fde170b2c7ae0c3", null ] +]; \ No newline at end of file diff --git a/docs/html/utils_8h_source.html b/docs/html/utils_8h_source.html index 52aa16a..f88b8a4 100644 --- a/docs/html/utils_8h_source.html +++ b/docs/html/utils_8h_source.html @@ -9,10 +9,16 @@ + + + + + +
@@ -23,7 +29,7 @@
sapphirec
-
The Sapphire compiler
+
The Sapphire documentation
@@ -46,6 +52,23 @@ $(function() { }); /* @license-end */ +
+
+ +
+
+
+ +
- -
utils.h
-
1 /*
+Go to the documentation of this file.
1 /*
2  * @file utils.h
3  * Miscellaneous utilities to use in the compiler, such as string manipulation/conversion
4  * functions, and benchmarking utilities.
5  */
6 
7 #pragma once
-
8 #include "FormatString/FormatString.hpp"
-
9 #include "sapphirepch.h"
+ +
9 #include "sapphirepch.h"
10 #include <chrono>
11 
12 /*
@@ -88,26 +106,26 @@ $(function() {
16  * @param[in] to The substring to add.
17  * @param[out] replaced Whether anything was replaced.
18  */
-
19 bool replace(std::string& str, const std::string& from, const std::string& to);
+
19 bool replace(std::string& str, const std::string& from, const std::string& to);
20 
21 /* Easy way of converting an int to a string without writing 5 lines of code every time you want to do it. */
-
22 std::string to_string(const int& value);
+
22 std::string to_string(const int& value);
23 
24 /* Easy way of converting a float to a string without writing 5 lines of code every time you want to do it. */
-
25 std::string to_string(const float& value);
+
25 std::string to_string(const float& value);
26 
27 /* Benchmarking utilities. */
28 
30 {
31  public:
-
32  __benchmark_impl(std::string_view __function_name);
- +
32  __benchmark_impl(std::string_view __function_name);
+
34 
-
35  static void enable();
-
36  static void disable();
+
35  static void enable();
+
36  static void disable();
37 
-
38  static void init();
+
38  static void init();
39 
40  private:
41  std::chrono::time_point<std::chrono::high_resolution_clock> m_StartTimePoint;
@@ -116,12 +134,25 @@ $(function() {
44  bool m_InternalBenchmarkingEnabled;
45 };
46 
-
47 #define benchmark(message) __benchmark_impl __benchmark_impl_timer(message)
+
47 #define benchmark(message) __benchmark_impl __benchmark_impl_timer(message)
+
Definition: utils.h:30
+
__benchmark_impl(std::string_view __function_name)
Definition: utils.cpp:26
+
static void disable()
Definition: utils.cpp:52
+
static void init()
Definition: utils.cpp:47
+
~__benchmark_impl()
Definition: utils.cpp:33
+
static void enable()
Definition: utils.cpp:57
+ +
bool replace(std::string &str, const std::string &from, const std::string &to)
Definition: utils.cpp:4
+
std::string to_string(const int &value)
Definition: utils.cpp:12
+
- + diff --git a/docs/latex/_a_s_t_node_8cpp.tex b/docs/latex/_a_s_t_node_8cpp.tex new file mode 100644 index 0000000..86232f3 --- /dev/null +++ b/docs/latex/_a_s_t_node_8cpp.tex @@ -0,0 +1,3 @@ +\hypertarget{_a_s_t_node_8cpp}{}\doxysection{src/\+AST/\+ASTNode.cpp File Reference} +\label{_a_s_t_node_8cpp}\index{src/AST/ASTNode.cpp@{src/AST/ASTNode.cpp}} +{\ttfamily \#include \char`\"{}ASTNode.\+h\char`\"{}}\newline diff --git a/docs/latex/_a_s_t_node_8h.tex b/docs/latex/_a_s_t_node_8h.tex new file mode 100644 index 0000000..e51ce51 --- /dev/null +++ b/docs/latex/_a_s_t_node_8h.tex @@ -0,0 +1,8 @@ +\hypertarget{_a_s_t_node_8h}{}\doxysection{src/\+AST/\+ASTNode.h File Reference} +\label{_a_s_t_node_8h}\index{src/AST/ASTNode.h@{src/AST/ASTNode.h}} +{\ttfamily \#include $<$memory$>$}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{class_a_s_t_node}{ASTNode}} +\end{DoxyCompactItemize} diff --git a/docs/latex/_arguments_8cpp.tex b/docs/latex/_arguments_8cpp.tex new file mode 100644 index 0000000..ebd2ca4 --- /dev/null +++ b/docs/latex/_arguments_8cpp.tex @@ -0,0 +1,21 @@ +\hypertarget{_arguments_8cpp}{}\doxysection{src/\+Arguments.cpp File Reference} +\label{_arguments_8cpp}\index{src/Arguments.cpp@{src/Arguments.cpp}} +{\ttfamily \#include \char`\"{}Arguments.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Error.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}tclap/\+Cmd\+Line.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}utils.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}llvm/\+Support/\+Host.\+h\char`\"{}}\newline +\doxysubsection*{Macros} +\begin{DoxyCompactItemize} +\item +\#define \mbox{\hyperlink{_arguments_8cpp_ab219e0457ba1898f28a0a8ca1c22bb33}{benchmark}}(message)~\mbox{\hyperlink{class____benchmark__impl}{\+\_\+\+\_\+benchmark\+\_\+impl}} \+\_\+\+\_\+benchmark\+\_\+impl\+\_\+timer(message) +\end{DoxyCompactItemize} + + +\doxysubsection{Macro Definition Documentation} +\mbox{\Hypertarget{_arguments_8cpp_ab219e0457ba1898f28a0a8ca1c22bb33}\label{_arguments_8cpp_ab219e0457ba1898f28a0a8ca1c22bb33}} +\index{Arguments.cpp@{Arguments.cpp}!benchmark@{benchmark}} +\index{benchmark@{benchmark}!Arguments.cpp@{Arguments.cpp}} +\doxysubsubsection{\texorpdfstring{benchmark}{benchmark}} +{\footnotesize\ttfamily \#define benchmark(\begin{DoxyParamCaption}\item[{}]{message }\end{DoxyParamCaption})~\mbox{\hyperlink{class____benchmark__impl}{\+\_\+\+\_\+benchmark\+\_\+impl}} \+\_\+\+\_\+benchmark\+\_\+impl\+\_\+timer(message)} + diff --git a/docs/latex/_arguments_8h.tex b/docs/latex/_arguments_8h.tex new file mode 100644 index 0000000..ee7d2ee --- /dev/null +++ b/docs/latex/_arguments_8h.tex @@ -0,0 +1,9 @@ +\hypertarget{_arguments_8h}{}\doxysection{src/\+Arguments.h File Reference} +\label{_arguments_8h}\index{src/Arguments.h@{src/Arguments.h}} +{\ttfamily \#include \char`\"{}sapphirepch.\+h\char`\"{}}\newline +{\ttfamily \#include $<$llvm/\+ADT/\+Triple.\+h$>$}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +struct \mbox{\hyperlink{struct_arguments}{Arguments}} +\end{DoxyCompactItemize} diff --git a/docs/latex/_binary_op_node_8cpp.tex b/docs/latex/_binary_op_node_8cpp.tex new file mode 100644 index 0000000..c331865 --- /dev/null +++ b/docs/latex/_binary_op_node_8cpp.tex @@ -0,0 +1,3 @@ +\hypertarget{_binary_op_node_8cpp}{}\doxysection{src/\+AST/\+Binary\+Op\+Node.cpp File Reference} +\label{_binary_op_node_8cpp}\index{src/AST/BinaryOpNode.cpp@{src/AST/BinaryOpNode.cpp}} +{\ttfamily \#include \char`\"{}Binary\+Op\+Node.\+h\char`\"{}}\newline diff --git a/docs/latex/_binary_op_node_8h.tex b/docs/latex/_binary_op_node_8h.tex new file mode 100644 index 0000000..6f30f26 --- /dev/null +++ b/docs/latex/_binary_op_node_8h.tex @@ -0,0 +1,8 @@ +\hypertarget{_binary_op_node_8h}{}\doxysection{src/\+AST/\+Binary\+Op\+Node.h File Reference} +\label{_binary_op_node_8h}\index{src/AST/BinaryOpNode.h@{src/AST/BinaryOpNode.h}} +{\ttfamily \#include \char`\"{}Expr\+Node.\+h\char`\"{}}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{class_binary_op_node}{Binary\+Op\+Node}} +\end{DoxyCompactItemize} diff --git a/docs/latex/_error_8cpp.tex b/docs/latex/_error_8cpp.tex new file mode 100644 index 0000000..9efe153 --- /dev/null +++ b/docs/latex/_error_8cpp.tex @@ -0,0 +1,7 @@ +\hypertarget{_error_8cpp}{}\doxysection{src/\+Error.cpp File Reference} +\label{_error_8cpp}\index{src/Error.cpp@{src/Error.cpp}} +{\ttfamily \#include \char`\"{}Error.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Importer.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}utils.\+h\char`\"{}}\newline +{\ttfamily \#include $<$algorithm$>$}\newline +{\ttfamily \#include $<$iostream$>$}\newline diff --git a/docs/latex/_error_8h.tex b/docs/latex/_error_8h.tex new file mode 100644 index 0000000..6696ef9 --- /dev/null +++ b/docs/latex/_error_8h.tex @@ -0,0 +1,21 @@ +\hypertarget{_error_8h}{}\doxysection{src/\+Error.h File Reference} +\label{_error_8h}\index{src/Error.h@{src/Error.h}} +{\ttfamily \#include \char`\"{}Location.\+h\char`\"{}}\newline +\doxysubsection*{Namespaces} +\begin{DoxyCompactItemize} +\item + \mbox{\hyperlink{namespace_error}{Error}} +\end{DoxyCompactItemize} +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +void \mbox{\hyperlink{namespace_error_aa3680909596c6ac37bc0579385b59632}{Error\+::show\+\_\+import\+\_\+line}} (const \mbox{\hyperlink{struct_location}{Location}} \&loc, std\+::ostream \&output\+\_\+stream) +\item +void \mbox{\hyperlink{namespace_error_a52e79c9d3b4d7280ffee959c4646675f}{Error\+::throw\+\_\+error}} (const \mbox{\hyperlink{struct_location}{Location}} \&loc, const std\+::string line\+\_\+text, const std\+::string \&details) +\item +void \mbox{\hyperlink{namespace_error_a97056e92a18863fb0f490c73bc089fbe}{Error\+::throw\+\_\+error\+\_\+without\+\_\+location}} (const std\+::string \&details) +\item +void \mbox{\hyperlink{namespace_error_ab62bae2c735ea379eab3a8039c2c1ade}{Error\+::throw\+\_\+warning}} (const \mbox{\hyperlink{struct_location}{Location}} \&loc, const std\+::string line\+\_\+text, const std\+::string \&details) +\item +void \mbox{\hyperlink{namespace_error_a938494fd39f939d79cd611b5bd2f2b67}{Error\+::show\+\_\+import\+\_\+lines}} (const \mbox{\hyperlink{struct_location}{Location}} \&loc, void($\ast$import\+\_\+line\+\_\+printer)(const \mbox{\hyperlink{struct_location}{Location}} \&, std\+::ostream \&), std\+::ostream \&stream) +\end{DoxyCompactItemize} diff --git a/docs/latex/_expr_node_8cpp.tex b/docs/latex/_expr_node_8cpp.tex new file mode 100644 index 0000000..56782d5 --- /dev/null +++ b/docs/latex/_expr_node_8cpp.tex @@ -0,0 +1,3 @@ +\hypertarget{_expr_node_8cpp}{}\doxysection{src/\+AST/\+Expr\+Node.cpp File Reference} +\label{_expr_node_8cpp}\index{src/AST/ExprNode.cpp@{src/AST/ExprNode.cpp}} +{\ttfamily \#include \char`\"{}Expr\+Node.\+h\char`\"{}}\newline diff --git a/docs/latex/_expr_node_8h.tex b/docs/latex/_expr_node_8h.tex new file mode 100644 index 0000000..cf31ba3 --- /dev/null +++ b/docs/latex/_expr_node_8h.tex @@ -0,0 +1,8 @@ +\hypertarget{_expr_node_8h}{}\doxysection{src/\+AST/\+Expr\+Node.h File Reference} +\label{_expr_node_8h}\index{src/AST/ExprNode.h@{src/AST/ExprNode.h}} +{\ttfamily \#include \char`\"{}ASTNode.\+h\char`\"{}}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{class_expr_node}{Expr\+Node}} +\end{DoxyCompactItemize} diff --git a/docs/latex/_file_i_o_8cpp.tex b/docs/latex/_file_i_o_8cpp.tex new file mode 100644 index 0000000..f185d2a --- /dev/null +++ b/docs/latex/_file_i_o_8cpp.tex @@ -0,0 +1,9 @@ +\hypertarget{_file_i_o_8cpp}{}\doxysection{src/\+File\+IO.cpp File Reference} +\label{_file_i_o_8cpp}\index{src/FileIO.cpp@{src/FileIO.cpp}} +{\ttfamily \#include \char`\"{}File\+IO.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Error.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}sapphirepch.\+h\char`\"{}}\newline +{\ttfamily \#include $<$cstring$>$}\newline +{\ttfamily \#include $<$errno.\+h$>$}\newline +{\ttfamily \#include $<$filesystem$>$}\newline +{\ttfamily \#include $<$fstream$>$}\newline diff --git a/docs/latex/_file_i_o_8h.tex b/docs/latex/_file_i_o_8h.tex new file mode 100644 index 0000000..0f70c8a --- /dev/null +++ b/docs/latex/_file_i_o_8h.tex @@ -0,0 +1,17 @@ +\hypertarget{_file_i_o_8h}{}\doxysection{src/\+File\+IO.h File Reference} +\label{_file_i_o_8h}\index{src/FileIO.h@{src/FileIO.h}} +{\ttfamily \#include \char`\"{}sapphirepch.\+h\char`\"{}}\newline +\doxysubsection*{Namespaces} +\begin{DoxyCompactItemize} +\item + \mbox{\hyperlink{namespace_file_i_o}{File\+IO}} +\end{DoxyCompactItemize} +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +std\+::string \mbox{\hyperlink{namespace_file_i_o_ab49a427f3ddb1f750b4314dfdb17be2b}{File\+IO\+::read\+\_\+all}} (const std\+::string \&filename) +\item +void \mbox{\hyperlink{namespace_file_i_o_a84b962dcd17d16c361902d8b179d3b47}{File\+IO\+::write\+\_\+all}} (const std\+::string \&filename, const std\+::string \&contents) +\item +std\+::string \mbox{\hyperlink{namespace_file_i_o_a3aa60357e37b7acc57f3e89e80d6e7a4}{File\+IO\+::remove\+\_\+file\+\_\+extension}} (const std\+::string \&filename) +\end{DoxyCompactItemize} diff --git a/docs/latex/_format_string_8hpp.tex b/docs/latex/_format_string_8hpp.tex new file mode 100644 index 0000000..d0ea603 --- /dev/null +++ b/docs/latex/_format_string_8hpp.tex @@ -0,0 +1,38 @@ +\hypertarget{_format_string_8hpp}{}\doxysection{src/\+Format\+String/\+Format\+String.hpp File Reference} +\label{_format_string_8hpp}\index{src/FormatString/FormatString.hpp@{src/FormatString/FormatString.hpp}} +{\ttfamily \#include $<$memory$>$}\newline +{\ttfamily \#include $<$string$>$}\newline +{\ttfamily \#include $<$cstdio$>$}\newline +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +{\footnotesize template$<$typename T $>$ }\\auto \mbox{\hyperlink{_format_string_8hpp_a207942ebe626457e5847d109dce89ffc}{convert}} (T \&\&t) +\item +{\footnotesize template$<$typename... Args$>$ }\\std\+::string \mbox{\hyperlink{_format_string_8hpp_a01af0cba6af7f12e6608cd28d0af0091}{format\+\_\+string\+\_\+internal}} (const std\+::string \&format, Args \&\&... args) +\item +{\footnotesize template$<$typename... Args$>$ }\\std\+::string \mbox{\hyperlink{_format_string_8hpp_ac54251dfd9c366f92c8bf00086dc5764}{format\+\_\+string}} (const std\+::string \&format, Args \&\&... args) +\end{DoxyCompactItemize} + + +\doxysubsection{Function Documentation} +\mbox{\Hypertarget{_format_string_8hpp_a207942ebe626457e5847d109dce89ffc}\label{_format_string_8hpp_a207942ebe626457e5847d109dce89ffc}} +\index{FormatString.hpp@{FormatString.hpp}!convert@{convert}} +\index{convert@{convert}!FormatString.hpp@{FormatString.hpp}} +\doxysubsubsection{\texorpdfstring{convert()}{convert()}} +{\footnotesize\ttfamily template$<$typename T $>$ \\ +auto convert (\begin{DoxyParamCaption}\item[{T \&\&}]{t }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{_format_string_8hpp_ac54251dfd9c366f92c8bf00086dc5764}\label{_format_string_8hpp_ac54251dfd9c366f92c8bf00086dc5764}} +\index{FormatString.hpp@{FormatString.hpp}!format\_string@{format\_string}} +\index{format\_string@{format\_string}!FormatString.hpp@{FormatString.hpp}} +\doxysubsubsection{\texorpdfstring{format\_string()}{format\_string()}} +{\footnotesize\ttfamily template$<$typename... Args$>$ \\ +std\+::string format\+\_\+string (\begin{DoxyParamCaption}\item[{const std\+::string \&}]{format, }\item[{Args \&\&...}]{args }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{_format_string_8hpp_a01af0cba6af7f12e6608cd28d0af0091}\label{_format_string_8hpp_a01af0cba6af7f12e6608cd28d0af0091}} +\index{FormatString.hpp@{FormatString.hpp}!format\_string\_internal@{format\_string\_internal}} +\index{format\_string\_internal@{format\_string\_internal}!FormatString.hpp@{FormatString.hpp}} +\doxysubsubsection{\texorpdfstring{format\_string\_internal()}{format\_string\_internal()}} +{\footnotesize\ttfamily template$<$typename... Args$>$ \\ +std\+::string format\+\_\+string\+\_\+internal (\begin{DoxyParamCaption}\item[{const std\+::string \&}]{format, }\item[{Args \&\&...}]{args }\end{DoxyParamCaption})} + diff --git a/docs/latex/_importer_8cpp.tex b/docs/latex/_importer_8cpp.tex new file mode 100644 index 0000000..b53954d --- /dev/null +++ b/docs/latex/_importer_8cpp.tex @@ -0,0 +1,23 @@ +\hypertarget{_importer_8cpp}{}\doxysection{src/\+Importer.cpp File Reference} +\label{_importer_8cpp}\index{src/Importer.cpp@{src/Importer.cpp}} +{\ttfamily \#include \char`\"{}Importer.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Arguments.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Error.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}File\+IO.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}sapphirepch.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}utils.\+h\char`\"{}}\newline +{\ttfamily \#include $<$fstream$>$}\newline +\doxysubsection*{Macros} +\begin{DoxyCompactItemize} +\item +\#define \mbox{\hyperlink{_importer_8cpp_add187787253a083baba7238223a93a45}{MAX\+\_\+\+IMPORTS}}~100 +\end{DoxyCompactItemize} + + +\doxysubsection{Macro Definition Documentation} +\mbox{\Hypertarget{_importer_8cpp_add187787253a083baba7238223a93a45}\label{_importer_8cpp_add187787253a083baba7238223a93a45}} +\index{Importer.cpp@{Importer.cpp}!MAX\_IMPORTS@{MAX\_IMPORTS}} +\index{MAX\_IMPORTS@{MAX\_IMPORTS}!Importer.cpp@{Importer.cpp}} +\doxysubsubsection{\texorpdfstring{MAX\_IMPORTS}{MAX\_IMPORTS}} +{\footnotesize\ttfamily \#define MAX\+\_\+\+IMPORTS~100} + diff --git a/docs/latex/_importer_8h.tex b/docs/latex/_importer_8h.tex new file mode 100644 index 0000000..a970733 --- /dev/null +++ b/docs/latex/_importer_8h.tex @@ -0,0 +1,25 @@ +\hypertarget{_importer_8h}{}\doxysection{src/\+Importer.h File Reference} +\label{_importer_8h}\index{src/Importer.h@{src/Importer.h}} +{\ttfamily \#include \char`\"{}Lexer.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Token.\+h\char`\"{}}\newline +\doxysubsection*{Namespaces} +\begin{DoxyCompactItemize} +\item + \mbox{\hyperlink{namespace_importer}{Importer}} +\end{DoxyCompactItemize} +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{_lexer_8h_a43f892d4a347a32f8602cfbcff2e237e}{Token\+Stream}} \mbox{\hyperlink{namespace_importer_ae5e2ed66024ff80241bd740c66745bd6}{Importer\+::evaluate}} (const \mbox{\hyperlink{_lexer_8h_a43f892d4a347a32f8602cfbcff2e237e}{Token\+Stream}} \&original) +\item +void \mbox{\hyperlink{namespace_importer_abd3407990e0fe2e71bb95782791ee1c9}{Importer\+::init}} (std\+::string init\+\_\+file) +\end{DoxyCompactItemize} +\doxysubsection*{Variables} +\begin{DoxyCompactItemize} +\item +int \mbox{\hyperlink{namespace_importer_a868c1a6abdf06ce496f3b66e62a6d5f0}{Importer\+::import\+\_\+count}} = 0 +\item +std\+::vector$<$ std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{struct_location}{Location}} $>$ $>$ \mbox{\hyperlink{namespace_importer_a15ee91166a2ddf7756aec26590c5ce93}{Importer\+::import\+\_\+stack}} +\item +std\+::vector$<$ std\+::string $>$ \mbox{\hyperlink{namespace_importer_a9525c45990838226b598b1e618bdb94d}{Importer\+::imported\+\_\+files}} +\end{DoxyCompactItemize} diff --git a/docs/latex/_lexer_8cpp.tex b/docs/latex/_lexer_8cpp.tex new file mode 100644 index 0000000..a9df277 --- /dev/null +++ b/docs/latex/_lexer_8cpp.tex @@ -0,0 +1,43 @@ +\hypertarget{_lexer_8cpp}{}\doxysection{src/\+Lexer.cpp File Reference} +\label{_lexer_8cpp}\index{src/Lexer.cpp@{src/Lexer.cpp}} +{\ttfamily \#include \char`\"{}Lexer.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Error.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}utils.\+h\char`\"{}}\newline +\doxysubsection*{Macros} +\begin{DoxyCompactItemize} +\item +\#define \mbox{\hyperlink{_lexer_8cpp_abfa0d183e035eb9705b5faec98294d0f}{WHITESPACE}}~\char`\"{}\textbackslash{}t \textbackslash{}n\char`\"{} +\item +\#define \mbox{\hyperlink{_lexer_8cpp_ab19b99692e802c4a2e44884ec87713bb}{LETTERS}}~\char`\"{}abcdefghijklmnopqrstuvwxyz\+ABCDEFGHIJKLMNOPQRSTUVWYZ\+\_\+\char`\"{} +\item +\#define \mbox{\hyperlink{_lexer_8cpp_a2f45e4037b2089a3c1ac9f7ad664d2f6}{IDENTIFIERS}}~\char`\"{}abcdefghijklmnopqrstuvwxyz\+ABCDEFGHIJKLMNOPQRSTUVWYZ\+\_\+0123456789\char`\"{} +\item +\#define \mbox{\hyperlink{_lexer_8cpp_a28c8bd90ea71ec24e5f43f413a9ee8b4}{DIGITS}}~\char`\"{}0123456789\char`\"{} +\end{DoxyCompactItemize} + + +\doxysubsection{Macro Definition Documentation} +\mbox{\Hypertarget{_lexer_8cpp_a28c8bd90ea71ec24e5f43f413a9ee8b4}\label{_lexer_8cpp_a28c8bd90ea71ec24e5f43f413a9ee8b4}} +\index{Lexer.cpp@{Lexer.cpp}!DIGITS@{DIGITS}} +\index{DIGITS@{DIGITS}!Lexer.cpp@{Lexer.cpp}} +\doxysubsubsection{\texorpdfstring{DIGITS}{DIGITS}} +{\footnotesize\ttfamily \#define DIGITS~\char`\"{}0123456789\char`\"{}} + +\mbox{\Hypertarget{_lexer_8cpp_a2f45e4037b2089a3c1ac9f7ad664d2f6}\label{_lexer_8cpp_a2f45e4037b2089a3c1ac9f7ad664d2f6}} +\index{Lexer.cpp@{Lexer.cpp}!IDENTIFIERS@{IDENTIFIERS}} +\index{IDENTIFIERS@{IDENTIFIERS}!Lexer.cpp@{Lexer.cpp}} +\doxysubsubsection{\texorpdfstring{IDENTIFIERS}{IDENTIFIERS}} +{\footnotesize\ttfamily \#define IDENTIFIERS~\char`\"{}abcdefghijklmnopqrstuvwxyz\+ABCDEFGHIJKLMNOPQRSTUVWYZ\+\_\+0123456789\char`\"{}} + +\mbox{\Hypertarget{_lexer_8cpp_ab19b99692e802c4a2e44884ec87713bb}\label{_lexer_8cpp_ab19b99692e802c4a2e44884ec87713bb}} +\index{Lexer.cpp@{Lexer.cpp}!LETTERS@{LETTERS}} +\index{LETTERS@{LETTERS}!Lexer.cpp@{Lexer.cpp}} +\doxysubsubsection{\texorpdfstring{LETTERS}{LETTERS}} +{\footnotesize\ttfamily \#define LETTERS~\char`\"{}abcdefghijklmnopqrstuvwxyz\+ABCDEFGHIJKLMNOPQRSTUVWYZ\+\_\+\char`\"{}} + +\mbox{\Hypertarget{_lexer_8cpp_abfa0d183e035eb9705b5faec98294d0f}\label{_lexer_8cpp_abfa0d183e035eb9705b5faec98294d0f}} +\index{Lexer.cpp@{Lexer.cpp}!WHITESPACE@{WHITESPACE}} +\index{WHITESPACE@{WHITESPACE}!Lexer.cpp@{Lexer.cpp}} +\doxysubsubsection{\texorpdfstring{WHITESPACE}{WHITESPACE}} +{\footnotesize\ttfamily \#define WHITESPACE~\char`\"{}\textbackslash{}t \textbackslash{}n\char`\"{}} + diff --git a/docs/latex/_lexer_8h.tex b/docs/latex/_lexer_8h.tex new file mode 100644 index 0000000..0c070ac --- /dev/null +++ b/docs/latex/_lexer_8h.tex @@ -0,0 +1,38 @@ +\hypertarget{_lexer_8h}{}\doxysection{src/\+Lexer.h File Reference} +\label{_lexer_8h}\index{src/Lexer.h@{src/Lexer.h}} +{\ttfamily \#include \char`\"{}Token.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}sapphirepch.\+h\char`\"{}}\newline +{\ttfamily \#include $<$array$>$}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{class_lexer}{Lexer}} +\end{DoxyCompactItemize} +\doxysubsection*{Macros} +\begin{DoxyCompactItemize} +\item +\#define \mbox{\hyperlink{_lexer_8h_a5aa140c2c2e64a57331d450a98077834}{TYPE\+\_\+\+COUNT}}~14 +\end{DoxyCompactItemize} +\doxysubsection*{Typedefs} +\begin{DoxyCompactItemize} +\item +typedef std\+::vector$<$ \mbox{\hyperlink{struct_token}{Token}} $>$ \mbox{\hyperlink{_lexer_8h_a43f892d4a347a32f8602cfbcff2e237e}{Token\+Stream}} +\end{DoxyCompactItemize} + + +\doxysubsection{Macro Definition Documentation} +\mbox{\Hypertarget{_lexer_8h_a5aa140c2c2e64a57331d450a98077834}\label{_lexer_8h_a5aa140c2c2e64a57331d450a98077834}} +\index{Lexer.h@{Lexer.h}!TYPE\_COUNT@{TYPE\_COUNT}} +\index{TYPE\_COUNT@{TYPE\_COUNT}!Lexer.h@{Lexer.h}} +\doxysubsubsection{\texorpdfstring{TYPE\_COUNT}{TYPE\_COUNT}} +{\footnotesize\ttfamily \#define TYPE\+\_\+\+COUNT~14} + + + +\doxysubsection{Typedef Documentation} +\mbox{\Hypertarget{_lexer_8h_a43f892d4a347a32f8602cfbcff2e237e}\label{_lexer_8h_a43f892d4a347a32f8602cfbcff2e237e}} +\index{Lexer.h@{Lexer.h}!TokenStream@{TokenStream}} +\index{TokenStream@{TokenStream}!Lexer.h@{Lexer.h}} +\doxysubsubsection{\texorpdfstring{TokenStream}{TokenStream}} +{\footnotesize\ttfamily typedef std\+::vector$<$\mbox{\hyperlink{struct_token}{Token}}$>$ \mbox{\hyperlink{_lexer_8h_a43f892d4a347a32f8602cfbcff2e237e}{Token\+Stream}}} + diff --git a/docs/latex/_location_8cpp.tex b/docs/latex/_location_8cpp.tex new file mode 100644 index 0000000..be1e3e5 --- /dev/null +++ b/docs/latex/_location_8cpp.tex @@ -0,0 +1,4 @@ +\hypertarget{_location_8cpp}{}\doxysection{src/\+Location.cpp File Reference} +\label{_location_8cpp}\index{src/Location.cpp@{src/Location.cpp}} +{\ttfamily \#include \char`\"{}Location.\+h\char`\"{}}\newline +{\ttfamily \#include $<$sstream$>$}\newline diff --git a/docs/latex/_location_8h.tex b/docs/latex/_location_8h.tex new file mode 100644 index 0000000..c0294b2 --- /dev/null +++ b/docs/latex/_location_8h.tex @@ -0,0 +1,8 @@ +\hypertarget{_location_8h}{}\doxysection{src/\+Location.h File Reference} +\label{_location_8h}\index{src/Location.h@{src/Location.h}} +{\ttfamily \#include \char`\"{}sapphirepch.\+h\char`\"{}}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +struct \mbox{\hyperlink{struct_location}{Location}} +\end{DoxyCompactItemize} diff --git a/docs/latex/_mul_node_8cpp.tex b/docs/latex/_mul_node_8cpp.tex new file mode 100644 index 0000000..42fb1a7 --- /dev/null +++ b/docs/latex/_mul_node_8cpp.tex @@ -0,0 +1,3 @@ +\hypertarget{_mul_node_8cpp}{}\doxysection{src/\+AST/\+Mul\+Node.cpp File Reference} +\label{_mul_node_8cpp}\index{src/AST/MulNode.cpp@{src/AST/MulNode.cpp}} +{\ttfamily \#include \char`\"{}Mul\+Node.\+h\char`\"{}}\newline diff --git a/docs/latex/_mul_node_8h.tex b/docs/latex/_mul_node_8h.tex new file mode 100644 index 0000000..a63678e --- /dev/null +++ b/docs/latex/_mul_node_8h.tex @@ -0,0 +1,8 @@ +\hypertarget{_mul_node_8h}{}\doxysection{src/\+AST/\+Mul\+Node.h File Reference} +\label{_mul_node_8h}\index{src/AST/MulNode.h@{src/AST/MulNode.h}} +{\ttfamily \#include \char`\"{}Binary\+Op\+Node.\+h\char`\"{}}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{class_mul_node}{Mul\+Node}} +\end{DoxyCompactItemize} diff --git a/docs/latex/_normalizer_8cpp.tex b/docs/latex/_normalizer_8cpp.tex new file mode 100644 index 0000000..e0d9788 --- /dev/null +++ b/docs/latex/_normalizer_8cpp.tex @@ -0,0 +1,4 @@ +\hypertarget{_normalizer_8cpp}{}\doxysection{src/\+Normalizer.cpp File Reference} +\label{_normalizer_8cpp}\index{src/Normalizer.cpp@{src/Normalizer.cpp}} +{\ttfamily \#include \char`\"{}Normalizer.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}utils.\+h\char`\"{}}\newline diff --git a/docs/latex/_normalizer_8h.tex b/docs/latex/_normalizer_8h.tex new file mode 100644 index 0000000..cfc2bb1 --- /dev/null +++ b/docs/latex/_normalizer_8h.tex @@ -0,0 +1,14 @@ +\hypertarget{_normalizer_8h}{}\doxysection{src/\+Normalizer.h File Reference} +\label{_normalizer_8h}\index{src/Normalizer.h@{src/Normalizer.h}} +{\ttfamily \#include \char`\"{}Lexer.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Token.\+h\char`\"{}}\newline +\doxysubsection*{Namespaces} +\begin{DoxyCompactItemize} +\item + \mbox{\hyperlink{namespace_normalizer}{Normalizer}} +\end{DoxyCompactItemize} +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{_lexer_8h_a43f892d4a347a32f8602cfbcff2e237e}{Token\+Stream}} \mbox{\hyperlink{namespace_normalizer_a89d929aace148fe5c998416863397f39}{Normalizer\+::normalize}} (const \mbox{\hyperlink{_lexer_8h_a43f892d4a347a32f8602cfbcff2e237e}{Token\+Stream}} \&input) +\end{DoxyCompactItemize} diff --git a/docs/latex/_number_node_8cpp.tex b/docs/latex/_number_node_8cpp.tex new file mode 100644 index 0000000..066f902 --- /dev/null +++ b/docs/latex/_number_node_8cpp.tex @@ -0,0 +1,3 @@ +\hypertarget{_number_node_8cpp}{}\doxysection{src/\+AST/\+Number\+Node.cpp File Reference} +\label{_number_node_8cpp}\index{src/AST/NumberNode.cpp@{src/AST/NumberNode.cpp}} +{\ttfamily \#include \char`\"{}Number\+Node.\+h\char`\"{}}\newline diff --git a/docs/latex/_number_node_8h.tex b/docs/latex/_number_node_8h.tex new file mode 100644 index 0000000..067a5cc --- /dev/null +++ b/docs/latex/_number_node_8h.tex @@ -0,0 +1,9 @@ +\hypertarget{_number_node_8h}{}\doxysection{src/\+AST/\+Number\+Node.h File Reference} +\label{_number_node_8h}\index{src/AST/NumberNode.h@{src/AST/NumberNode.h}} +{\ttfamily \#include \char`\"{}Expr\+Node.\+h\char`\"{}}\newline +{\ttfamily \#include $<$string$>$}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{class_number_node}{Number\+Node}} +\end{DoxyCompactItemize} diff --git a/docs/latex/_parser_8cpp.tex b/docs/latex/_parser_8cpp.tex new file mode 100644 index 0000000..d53bc66 --- /dev/null +++ b/docs/latex/_parser_8cpp.tex @@ -0,0 +1,3 @@ +\hypertarget{_parser_8cpp}{}\doxysection{src/\+Parser.cpp File Reference} +\label{_parser_8cpp}\index{src/Parser.cpp@{src/Parser.cpp}} +{\ttfamily \#include \char`\"{}Parser.\+h\char`\"{}}\newline diff --git a/docs/latex/_parser_8h.tex b/docs/latex/_parser_8h.tex new file mode 100644 index 0000000..42d2923 --- /dev/null +++ b/docs/latex/_parser_8h.tex @@ -0,0 +1,11 @@ +\hypertarget{_parser_8h}{}\doxysection{src/\+Parser.h File Reference} +\label{_parser_8h}\index{src/Parser.h@{src/Parser.h}} +{\ttfamily \#include \char`\"{}AST/\+Number\+Node.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Error.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Lexer.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}sapphirepch.\+h\char`\"{}}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{class_parser}{Parser}} +\end{DoxyCompactItemize} diff --git a/docs/latex/_statement_node_8cpp.tex b/docs/latex/_statement_node_8cpp.tex new file mode 100644 index 0000000..6927f56 --- /dev/null +++ b/docs/latex/_statement_node_8cpp.tex @@ -0,0 +1,3 @@ +\hypertarget{_statement_node_8cpp}{}\doxysection{src/\+AST/\+Statement\+Node.cpp File Reference} +\label{_statement_node_8cpp}\index{src/AST/StatementNode.cpp@{src/AST/StatementNode.cpp}} +{\ttfamily \#include \char`\"{}Statement\+Node.\+h\char`\"{}}\newline diff --git a/docs/latex/_statement_node_8h.tex b/docs/latex/_statement_node_8h.tex new file mode 100644 index 0000000..681d913 --- /dev/null +++ b/docs/latex/_statement_node_8h.tex @@ -0,0 +1,8 @@ +\hypertarget{_statement_node_8h}{}\doxysection{src/\+AST/\+Statement\+Node.h File Reference} +\label{_statement_node_8h}\index{src/AST/StatementNode.h@{src/AST/StatementNode.h}} +{\ttfamily \#include \char`\"{}Expr\+Node.\+h\char`\"{}}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{class_statement_node}{Statement\+Node}} +\end{DoxyCompactItemize} diff --git a/docs/latex/_sum_node_8cpp.tex b/docs/latex/_sum_node_8cpp.tex new file mode 100644 index 0000000..cd2dec8 --- /dev/null +++ b/docs/latex/_sum_node_8cpp.tex @@ -0,0 +1,3 @@ +\hypertarget{_sum_node_8cpp}{}\doxysection{src/\+AST/\+Sum\+Node.cpp File Reference} +\label{_sum_node_8cpp}\index{src/AST/SumNode.cpp@{src/AST/SumNode.cpp}} +{\ttfamily \#include \char`\"{}Sum\+Node.\+h\char`\"{}}\newline diff --git a/docs/latex/_sum_node_8h.tex b/docs/latex/_sum_node_8h.tex new file mode 100644 index 0000000..eb99ca5 --- /dev/null +++ b/docs/latex/_sum_node_8h.tex @@ -0,0 +1,8 @@ +\hypertarget{_sum_node_8h}{}\doxysection{src/\+AST/\+Sum\+Node.h File Reference} +\label{_sum_node_8h}\index{src/AST/SumNode.h@{src/AST/SumNode.h}} +{\ttfamily \#include \char`\"{}Binary\+Op\+Node.\+h\char`\"{}}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{class_sum_node}{Sum\+Node}} +\end{DoxyCompactItemize} diff --git a/docs/latex/_token_8cpp.tex b/docs/latex/_token_8cpp.tex new file mode 100644 index 0000000..a2939a4 --- /dev/null +++ b/docs/latex/_token_8cpp.tex @@ -0,0 +1,30 @@ +\hypertarget{_token_8cpp}{}\doxysection{src/\+Token.cpp File Reference} +\label{_token_8cpp}\index{src/Token.cpp@{src/Token.cpp}} +{\ttfamily \#include \char`\"{}Token.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}utils.\+h\char`\"{}}\newline +\doxysubsection*{Variables} +\begin{DoxyCompactItemize} +\item +const std\+::string \mbox{\hyperlink{_token_8cpp_a11b1388fc87d0706641b71f004f5ce29}{token\+\_\+strings}} \mbox{[}$\,$\mbox{]} +\end{DoxyCompactItemize} + + +\doxysubsection{Variable Documentation} +\mbox{\Hypertarget{_token_8cpp_a11b1388fc87d0706641b71f004f5ce29}\label{_token_8cpp_a11b1388fc87d0706641b71f004f5ce29}} +\index{Token.cpp@{Token.cpp}!token\_strings@{token\_strings}} +\index{token\_strings@{token\_strings}!Token.cpp@{Token.cpp}} +\doxysubsubsection{\texorpdfstring{token\_strings}{token\_strings}} +{\footnotesize\ttfamily const std\+::string token\+\_\+strings\mbox{[}$\,$\mbox{]}} + +{\bfseries Initial value\+:} +\begin{DoxyCode}{0} +\DoxyCodeLine{= \{} +\DoxyCodeLine{ \textcolor{stringliteral}{"{}TT\_IDENTIFIER"{}}, \textcolor{stringliteral}{"{}TT\_NUMBER"{}}, \textcolor{stringliteral}{"{}TT\_FLOAT"{}}, \textcolor{stringliteral}{"{}TT\_KEYWORD"{}}, \textcolor{stringliteral}{"{}TT\_STRING"{}}, \textcolor{stringliteral}{"{}TT\_PLUS"{}},} +\DoxyCodeLine{ \textcolor{stringliteral}{"{}TT\_MINUS"{}}, \textcolor{stringliteral}{"{}TT\_MUL"{}}, \textcolor{stringliteral}{"{}TT\_DIV"{}}, \textcolor{stringliteral}{"{}TT\_AT"{}}, \textcolor{stringliteral}{"{}TT\_EQUAL"{}}, \textcolor{stringliteral}{"{}TT\_LESSTHAN"{}},} +\DoxyCodeLine{ \textcolor{stringliteral}{"{}TT\_GREATERTHAN"{}}, \textcolor{stringliteral}{"{}TT\_LPAREN"{}}, \textcolor{stringliteral}{"{}TT\_RPAREN"{}}, \textcolor{stringliteral}{"{}TT\_LBRACKET"{}}, \textcolor{stringliteral}{"{}TT\_RBRACKET"{}}, \textcolor{stringliteral}{"{}TT\_SEMICOLON"{}},} +\DoxyCodeLine{ \textcolor{stringliteral}{"{}TT\_LOADEDSTRING"{}}, \textcolor{stringliteral}{"{}TT\_EOF"{}}, \textcolor{stringliteral}{"{}TT\_NULL"{}}, \textcolor{stringliteral}{"{}TT\_EQUALS"{}}, \textcolor{stringliteral}{"{}TT\_GTE"{}}, \textcolor{stringliteral}{"{}TT\_LTE"{}},} +\DoxyCodeLine{ \textcolor{stringliteral}{"{}TT\_PERIOD"{}}, \textcolor{stringliteral}{"{}TT\_COMMA"{}}, \textcolor{stringliteral}{"{}TT\_PATH"{}}, \textcolor{stringliteral}{"{}TT\_EXCLAMATION"{}}, \textcolor{stringliteral}{"{}TT\_NEQUAL"{}}, \textcolor{stringliteral}{"{}TT\_LSQB"{}},} +\DoxyCodeLine{ \textcolor{stringliteral}{"{}TT\_RSQB"{}}, \textcolor{stringliteral}{"{}TT\_TYPE"{}}, \textcolor{stringliteral}{"{}TT\_IMPORT"{}}, \textcolor{stringliteral}{"{}TT\_SYSCALL0"{}}, \textcolor{stringliteral}{"{}TT\_SYSCALL1"{}}, \textcolor{stringliteral}{"{}TT\_SYSCALL2"{}},} +\DoxyCodeLine{ \textcolor{stringliteral}{"{}TT\_SYSCALL3"{}}, \textcolor{stringliteral}{"{}TT\_SYSCALL4"{}}, \textcolor{stringliteral}{"{}TT\_SYSCALL5"{}}, \textcolor{stringliteral}{"{}TT\_COMPILERMACRO"{}}\}} + +\end{DoxyCode} diff --git a/docs/latex/_token_8h.tex b/docs/latex/_token_8h.tex new file mode 100644 index 0000000..6935704 --- /dev/null +++ b/docs/latex/_token_8h.tex @@ -0,0 +1,263 @@ +\hypertarget{_token_8h}{}\doxysection{src/\+Token.h File Reference} +\label{_token_8h}\index{src/Token.h@{src/Token.h}} +{\ttfamily \#include \char`\"{}Location.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}sapphirepch.\+h\char`\"{}}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +struct \mbox{\hyperlink{struct_token}{Token}} +\end{DoxyCompactItemize} +\doxysubsection*{Typedefs} +\begin{DoxyCompactItemize} +\item +typedef std\+::vector$<$ \mbox{\hyperlink{struct_token}{Token}} $>$ \mbox{\hyperlink{_token_8h_a43f892d4a347a32f8602cfbcff2e237e}{Token\+Stream}} +\end{DoxyCompactItemize} +\doxysubsection*{Enumerations} +\begin{DoxyCompactItemize} +\item +enum \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921}{Token\+Type}} \{ \newline +\mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921a914ff833832dec5f5b89c873cdf4873b}{TT\+\_\+\+Identifier}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921af0b33aa8547139ec0850566aa75c2eab}{TT\+\_\+\+Number}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921adce0a868eda6a8eb7c0f4b471168a52f}{TT\+\_\+\+Float}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921a4f2472f5e8f25e20351884b984a5745d}{TT\+\_\+\+Keyword}} +, \newline +\mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921ac5d8b9e1d3e5e0556207d113144ca9ef}{TT\+\_\+\+String}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921a8dc57a25d3d43203efa4abfc428f4ae5}{TT\+\_\+\+Plus}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921a37610de04974a9df954007ad9fddcec6}{TT\+\_\+\+Minus}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921a7b1c59205c8e47772905efa820e26276}{TT\+\_\+\+Mul}} +, \newline +\mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921a7034d195d5b509782b1a2c2803e0b887}{TT\+\_\+\+Div}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921a66be6e287e64f2d1e18d62b1d96bf443}{TT\+\_\+\+At}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921a2e3a97dd6681a583d131a7f45b8f7b3b}{TT\+\_\+\+Equal}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921a04d3947200d1e0ea47f23132c21d1552}{TT\+\_\+\+Less\+Than}} +, \newline +\mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921a6088f4c9eb2333511f59a9d4fcb0cc23}{TT\+\_\+\+Greater\+Than}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921aa74df126f021c6c3370b2469e13a4d58}{TT\+\_\+\+LParen}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921a0b02ea10bfa1b86223505526e152850c}{TT\+\_\+\+RParen}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921a046adff178e040a45fba3807d1b27077}{TT\+\_\+\+LBracket}} +, \newline +\mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921a55662755fa0c3e80c4b8a137a822fe56}{TT\+\_\+\+RBracket}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921a0cf876fc815f0bbdf381a0b6b3e9c8a1}{TT\+\_\+\+Semicolon}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921a919ddabf40eacf261afb90628132c2e9}{TT\+\_\+\+Loaded\+String}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921aaffedff66c98c1bc186e2c35cdc7ab66}{TT\+\_\+\+EOF}} +, \newline +\mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921aae8a36dd5042ffdff357cb3caaec8de4}{TT\+\_\+\+Null}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921aab9f3972ab9b942c5a558acb2c8200a2}{TT\+\_\+\+Equals}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921a661cacfb4b927c1410ae99cc07f47114}{TT\+\_\+\+GTE}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921abe295cb0b1d7e40b683e841099ca0d5c}{TT\+\_\+\+LTE}} +, \newline +\mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921a1bfe153b7024483e5b14df5f4a19c383}{TT\+\_\+\+Period}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921ad465a2b2741ddb105fd810f40fdfc5f8}{TT\+\_\+\+Comma}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921a7a6334e5907fea7b13cb5c3168bf56d3}{TT\+\_\+\+Path}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921abb589d9450ffea8e2652a357954b399d}{TT\+\_\+\+Exclamation}} +, \newline +\mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921a52a3bc78510da97e3610a2c90e9af027}{TT\+\_\+\+NEqual}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921a72cd35b410262b2cdf1b6f426561316e}{TT\+\_\+\+LSQB}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921afca02f5c4e306e125b6aef30093c2fbb}{TT\+\_\+\+RSQB}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921a6afc064c5b6cb4603534e73a261decef}{TT\+\_\+\+Type}} +, \newline +\mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921ac0842324f82fc7067e12cf5bc1e93ebe}{TT\+\_\+\+Import}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921aa991c9be0fb4d126936f15739e0cc581}{TT\+\_\+\+Syscall0}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921a7f3fbd8a2c479e24962b1257ba1a75cc}{TT\+\_\+\+Syscall1}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921a47c37018ac199a24001f7ae088a770ad}{TT\+\_\+\+Syscall2}} +, \newline +\mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921a932e0b4b6ad328fd42a372b19f5efa14}{TT\+\_\+\+Syscall3}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921a4f33569f79146c4955920b6b1273f100}{TT\+\_\+\+Syscall4}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921a03295c72f650bc6058eeaa1c4de14b1f}{TT\+\_\+\+Syscall5}} +, \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921ad815e2ddb15829189dd39b0481c3908e}{TT\+\_\+\+Compiler\+Macro}} + \} +\end{DoxyCompactItemize} +\doxysubsection*{Variables} +\begin{DoxyCompactItemize} +\item +const std\+::string \mbox{\hyperlink{_token_8h_a11b1388fc87d0706641b71f004f5ce29}{token\+\_\+strings}} \mbox{[}$\,$\mbox{]} +\end{DoxyCompactItemize} + + +\doxysubsection{Typedef Documentation} +\mbox{\Hypertarget{_token_8h_a43f892d4a347a32f8602cfbcff2e237e}\label{_token_8h_a43f892d4a347a32f8602cfbcff2e237e}} +\index{Token.h@{Token.h}!TokenStream@{TokenStream}} +\index{TokenStream@{TokenStream}!Token.h@{Token.h}} +\doxysubsubsection{\texorpdfstring{TokenStream}{TokenStream}} +{\footnotesize\ttfamily typedef std\+::vector$<$\mbox{\hyperlink{struct_token}{Token}}$>$ \mbox{\hyperlink{_lexer_8h_a43f892d4a347a32f8602cfbcff2e237e}{Token\+Stream}}} + + + +\doxysubsection{Enumeration Type Documentation} +\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921}} +\index{Token.h@{Token.h}!TokenType@{TokenType}} +\index{TokenType@{TokenType}!Token.h@{Token.h}} +\doxysubsubsection{\texorpdfstring{TokenType}{TokenType}} +{\footnotesize\ttfamily enum \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921}{Token\+Type}}} + +\begin{DoxyEnumFields}{Enumerator} +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_Identifier@{TT\_Identifier}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_Identifier@{TT\_Identifier}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921a914ff833832dec5f5b89c873cdf4873b}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921a914ff833832dec5f5b89c873cdf4873b}} +TT\+\_\+\+Identifier&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_Number@{TT\_Number}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_Number@{TT\_Number}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921af0b33aa8547139ec0850566aa75c2eab}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921af0b33aa8547139ec0850566aa75c2eab}} +TT\+\_\+\+Number&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_Float@{TT\_Float}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_Float@{TT\_Float}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921adce0a868eda6a8eb7c0f4b471168a52f}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921adce0a868eda6a8eb7c0f4b471168a52f}} +TT\+\_\+\+Float&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_Keyword@{TT\_Keyword}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_Keyword@{TT\_Keyword}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921a4f2472f5e8f25e20351884b984a5745d}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921a4f2472f5e8f25e20351884b984a5745d}} +TT\+\_\+\+Keyword&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_String@{TT\_String}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_String@{TT\_String}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921ac5d8b9e1d3e5e0556207d113144ca9ef}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921ac5d8b9e1d3e5e0556207d113144ca9ef}} +TT\+\_\+\+String&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_Plus@{TT\_Plus}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_Plus@{TT\_Plus}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921a8dc57a25d3d43203efa4abfc428f4ae5}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921a8dc57a25d3d43203efa4abfc428f4ae5}} +TT\+\_\+\+Plus&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_Minus@{TT\_Minus}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_Minus@{TT\_Minus}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921a37610de04974a9df954007ad9fddcec6}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921a37610de04974a9df954007ad9fddcec6}} +TT\+\_\+\+Minus&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_Mul@{TT\_Mul}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_Mul@{TT\_Mul}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921a7b1c59205c8e47772905efa820e26276}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921a7b1c59205c8e47772905efa820e26276}} +TT\+\_\+\+Mul&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_Div@{TT\_Div}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_Div@{TT\_Div}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921a7034d195d5b509782b1a2c2803e0b887}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921a7034d195d5b509782b1a2c2803e0b887}} +TT\+\_\+\+Div&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_At@{TT\_At}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_At@{TT\_At}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921a66be6e287e64f2d1e18d62b1d96bf443}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921a66be6e287e64f2d1e18d62b1d96bf443}} +TT\+\_\+\+At&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_Equal@{TT\_Equal}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_Equal@{TT\_Equal}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921a2e3a97dd6681a583d131a7f45b8f7b3b}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921a2e3a97dd6681a583d131a7f45b8f7b3b}} +TT\+\_\+\+Equal&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_LessThan@{TT\_LessThan}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_LessThan@{TT\_LessThan}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921a04d3947200d1e0ea47f23132c21d1552}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921a04d3947200d1e0ea47f23132c21d1552}} +TT\+\_\+\+Less\+Than&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_GreaterThan@{TT\_GreaterThan}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_GreaterThan@{TT\_GreaterThan}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921a6088f4c9eb2333511f59a9d4fcb0cc23}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921a6088f4c9eb2333511f59a9d4fcb0cc23}} +TT\+\_\+\+Greater\+Than&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_LParen@{TT\_LParen}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_LParen@{TT\_LParen}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921aa74df126f021c6c3370b2469e13a4d58}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921aa74df126f021c6c3370b2469e13a4d58}} +TT\+\_\+\+LParen&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_RParen@{TT\_RParen}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_RParen@{TT\_RParen}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921a0b02ea10bfa1b86223505526e152850c}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921a0b02ea10bfa1b86223505526e152850c}} +TT\+\_\+\+RParen&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_LBracket@{TT\_LBracket}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_LBracket@{TT\_LBracket}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921a046adff178e040a45fba3807d1b27077}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921a046adff178e040a45fba3807d1b27077}} +TT\+\_\+\+LBracket&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_RBracket@{TT\_RBracket}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_RBracket@{TT\_RBracket}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921a55662755fa0c3e80c4b8a137a822fe56}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921a55662755fa0c3e80c4b8a137a822fe56}} +TT\+\_\+\+RBracket&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_Semicolon@{TT\_Semicolon}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_Semicolon@{TT\_Semicolon}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921a0cf876fc815f0bbdf381a0b6b3e9c8a1}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921a0cf876fc815f0bbdf381a0b6b3e9c8a1}} +TT\+\_\+\+Semicolon&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_LoadedString@{TT\_LoadedString}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_LoadedString@{TT\_LoadedString}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921a919ddabf40eacf261afb90628132c2e9}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921a919ddabf40eacf261afb90628132c2e9}} +TT\+\_\+\+Loaded\+String&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_EOF@{TT\_EOF}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_EOF@{TT\_EOF}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921aaffedff66c98c1bc186e2c35cdc7ab66}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921aaffedff66c98c1bc186e2c35cdc7ab66}} +TT\+\_\+\+EOF&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_Null@{TT\_Null}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_Null@{TT\_Null}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921aae8a36dd5042ffdff357cb3caaec8de4}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921aae8a36dd5042ffdff357cb3caaec8de4}} +TT\+\_\+\+Null&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_Equals@{TT\_Equals}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_Equals@{TT\_Equals}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921aab9f3972ab9b942c5a558acb2c8200a2}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921aab9f3972ab9b942c5a558acb2c8200a2}} +TT\+\_\+\+Equals&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_GTE@{TT\_GTE}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_GTE@{TT\_GTE}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921a661cacfb4b927c1410ae99cc07f47114}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921a661cacfb4b927c1410ae99cc07f47114}} +TT\+\_\+\+GTE&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_LTE@{TT\_LTE}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_LTE@{TT\_LTE}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921abe295cb0b1d7e40b683e841099ca0d5c}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921abe295cb0b1d7e40b683e841099ca0d5c}} +TT\+\_\+\+LTE&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_Period@{TT\_Period}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_Period@{TT\_Period}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921a1bfe153b7024483e5b14df5f4a19c383}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921a1bfe153b7024483e5b14df5f4a19c383}} +TT\+\_\+\+Period&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_Comma@{TT\_Comma}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_Comma@{TT\_Comma}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921ad465a2b2741ddb105fd810f40fdfc5f8}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921ad465a2b2741ddb105fd810f40fdfc5f8}} +TT\+\_\+\+Comma&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_Path@{TT\_Path}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_Path@{TT\_Path}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921a7a6334e5907fea7b13cb5c3168bf56d3}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921a7a6334e5907fea7b13cb5c3168bf56d3}} +TT\+\_\+\+Path&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_Exclamation@{TT\_Exclamation}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_Exclamation@{TT\_Exclamation}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921abb589d9450ffea8e2652a357954b399d}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921abb589d9450ffea8e2652a357954b399d}} +TT\+\_\+\+Exclamation&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_NEqual@{TT\_NEqual}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_NEqual@{TT\_NEqual}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921a52a3bc78510da97e3610a2c90e9af027}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921a52a3bc78510da97e3610a2c90e9af027}} +TT\+\_\+\+NEqual&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_LSQB@{TT\_LSQB}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_LSQB@{TT\_LSQB}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921a72cd35b410262b2cdf1b6f426561316e}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921a72cd35b410262b2cdf1b6f426561316e}} +TT\+\_\+\+LSQB&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_RSQB@{TT\_RSQB}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_RSQB@{TT\_RSQB}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921afca02f5c4e306e125b6aef30093c2fbb}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921afca02f5c4e306e125b6aef30093c2fbb}} +TT\+\_\+\+RSQB&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_Type@{TT\_Type}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_Type@{TT\_Type}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921a6afc064c5b6cb4603534e73a261decef}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921a6afc064c5b6cb4603534e73a261decef}} +TT\+\_\+\+Type&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_Import@{TT\_Import}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_Import@{TT\_Import}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921ac0842324f82fc7067e12cf5bc1e93ebe}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921ac0842324f82fc7067e12cf5bc1e93ebe}} +TT\+\_\+\+Import&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_Syscall0@{TT\_Syscall0}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_Syscall0@{TT\_Syscall0}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921aa991c9be0fb4d126936f15739e0cc581}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921aa991c9be0fb4d126936f15739e0cc581}} +TT\+\_\+\+Syscall0&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_Syscall1@{TT\_Syscall1}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_Syscall1@{TT\_Syscall1}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921a7f3fbd8a2c479e24962b1257ba1a75cc}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921a7f3fbd8a2c479e24962b1257ba1a75cc}} +TT\+\_\+\+Syscall1&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_Syscall2@{TT\_Syscall2}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_Syscall2@{TT\_Syscall2}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921a47c37018ac199a24001f7ae088a770ad}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921a47c37018ac199a24001f7ae088a770ad}} +TT\+\_\+\+Syscall2&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_Syscall3@{TT\_Syscall3}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_Syscall3@{TT\_Syscall3}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921a932e0b4b6ad328fd42a372b19f5efa14}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921a932e0b4b6ad328fd42a372b19f5efa14}} +TT\+\_\+\+Syscall3&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_Syscall4@{TT\_Syscall4}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_Syscall4@{TT\_Syscall4}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921a4f33569f79146c4955920b6b1273f100}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921a4f33569f79146c4955920b6b1273f100}} +TT\+\_\+\+Syscall4&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_Syscall5@{TT\_Syscall5}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_Syscall5@{TT\_Syscall5}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921a03295c72f650bc6058eeaa1c4de14b1f}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921a03295c72f650bc6058eeaa1c4de14b1f}} +TT\+\_\+\+Syscall5&\\ +\hline + +\raisebox{\heightof{T}}[0pt][0pt]{\index{TT\_CompilerMacro@{TT\_CompilerMacro}!Token.h@{Token.h}}\index{Token.h@{Token.h}!TT\_CompilerMacro@{TT\_CompilerMacro}}}\mbox{\Hypertarget{_token_8h_aa520fbf142ba1e7e659590c07da31921ad815e2ddb15829189dd39b0481c3908e}\label{_token_8h_aa520fbf142ba1e7e659590c07da31921ad815e2ddb15829189dd39b0481c3908e}} +TT\+\_\+\+Compiler\+Macro&\\ +\hline + +\end{DoxyEnumFields} + + +\doxysubsection{Variable Documentation} +\mbox{\Hypertarget{_token_8h_a11b1388fc87d0706641b71f004f5ce29}\label{_token_8h_a11b1388fc87d0706641b71f004f5ce29}} +\index{Token.h@{Token.h}!token\_strings@{token\_strings}} +\index{token\_strings@{token\_strings}!Token.h@{Token.h}} +\doxysubsubsection{\texorpdfstring{token\_strings}{token\_strings}} +{\footnotesize\ttfamily const std\+::string token\+\_\+strings\mbox{[}$\,$\mbox{]}\hspace{0.3cm}{\ttfamily [extern]}} + diff --git a/docs/latex/annotated.tex b/docs/latex/annotated.tex index 8023eb2..55a9b83 100644 --- a/docs/latex/annotated.tex +++ b/docs/latex/annotated.tex @@ -1,9 +1,16 @@ \doxysection{Class List} Here are the classes, structs, unions and interfaces with brief descriptions\+:\begin{DoxyCompactList} \item\contentsline{section}{\mbox{\hyperlink{class____benchmark__impl}{\+\_\+\+\_\+benchmark\+\_\+impl}} }{\pageref{class____benchmark__impl}}{} -\item\contentsline{section}{\mbox{\hyperlink{structArguments}{Arguments}} }{\pageref{structArguments}}{} -\item\contentsline{section}{\mbox{\hyperlink{classLexer}{Lexer}} }{\pageref{classLexer}}{} -\item\contentsline{section}{\mbox{\hyperlink{structLocation}{Location}} }{\pageref{structLocation}}{} -\item\contentsline{section}{\mbox{\hyperlink{classParser}{Parser}} }{\pageref{classParser}}{} -\item\contentsline{section}{\mbox{\hyperlink{structToken}{Token}} }{\pageref{structToken}}{} +\item\contentsline{section}{\mbox{\hyperlink{struct_arguments}{Arguments}} }{\pageref{struct_arguments}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_a_s_t_node}{ASTNode}} }{\pageref{class_a_s_t_node}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_binary_op_node}{Binary\+Op\+Node}} }{\pageref{class_binary_op_node}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_expr_node}{Expr\+Node}} }{\pageref{class_expr_node}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_lexer}{Lexer}} }{\pageref{class_lexer}}{} +\item\contentsline{section}{\mbox{\hyperlink{struct_location}{Location}} }{\pageref{struct_location}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_mul_node}{Mul\+Node}} }{\pageref{class_mul_node}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_number_node}{Number\+Node}} }{\pageref{class_number_node}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_parser}{Parser}} }{\pageref{class_parser}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_statement_node}{Statement\+Node}} }{\pageref{class_statement_node}}{} +\item\contentsline{section}{\mbox{\hyperlink{class_sum_node}{Sum\+Node}} }{\pageref{class_sum_node}}{} +\item\contentsline{section}{\mbox{\hyperlink{struct_token}{Token}} }{\pageref{struct_token}}{} \end{DoxyCompactList} diff --git a/docs/latex/class____benchmark__impl.tex b/docs/latex/class____benchmark__impl.tex index 2c092c2..683afa2 100644 --- a/docs/latex/class____benchmark__impl.tex +++ b/docs/latex/class____benchmark__impl.tex @@ -1,26 +1,64 @@ \hypertarget{class____benchmark__impl}{}\doxysection{\+\_\+\+\_\+benchmark\+\_\+impl Class Reference} \label{class____benchmark__impl}\index{\_\_benchmark\_impl@{\_\_benchmark\_impl}} + + +{\ttfamily \#include $<$utils.\+h$>$} + \doxysubsection*{Public Member Functions} \begin{DoxyCompactItemize} \item -\mbox{\Hypertarget{class____benchmark__impl_a2efd5ebe7e24a9a6ead5b205d0fe05f8}\label{class____benchmark__impl_a2efd5ebe7e24a9a6ead5b205d0fe05f8}} -{\bfseries \+\_\+\+\_\+benchmark\+\_\+impl} (std\+::string\+\_\+view \+\_\+\+\_\+function\+\_\+name) +\mbox{\hyperlink{class____benchmark__impl_a2efd5ebe7e24a9a6ead5b205d0fe05f8}{\+\_\+\+\_\+benchmark\+\_\+impl}} (std\+::string\+\_\+view \+\_\+\+\_\+function\+\_\+name) +\item +\mbox{\hyperlink{class____benchmark__impl_aa91ff70297183c7c20c198096a671f73}{$\sim$\+\_\+\+\_\+benchmark\+\_\+impl}} () \end{DoxyCompactItemize} \doxysubsection*{Static Public Member Functions} \begin{DoxyCompactItemize} \item -\mbox{\Hypertarget{class____benchmark__impl_abef5e19af3518d080c6988fc7558870d}\label{class____benchmark__impl_abef5e19af3518d080c6988fc7558870d}} -static void {\bfseries enable} () +static void \mbox{\hyperlink{class____benchmark__impl_abef5e19af3518d080c6988fc7558870d}{enable}} () \item -\mbox{\Hypertarget{class____benchmark__impl_a5ddf5a17aee0bc1bab08229e574dad76}\label{class____benchmark__impl_a5ddf5a17aee0bc1bab08229e574dad76}} -static void {\bfseries disable} () +static void \mbox{\hyperlink{class____benchmark__impl_a5ddf5a17aee0bc1bab08229e574dad76}{disable}} () \item -\mbox{\Hypertarget{class____benchmark__impl_a6f260fa4d0f93d4a14d6b2a56d91773a}\label{class____benchmark__impl_a6f260fa4d0f93d4a14d6b2a56d91773a}} -static void {\bfseries init} () +static void \mbox{\hyperlink{class____benchmark__impl_a6f260fa4d0f93d4a14d6b2a56d91773a}{init}} () \end{DoxyCompactItemize} +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{class____benchmark__impl_a2efd5ebe7e24a9a6ead5b205d0fe05f8}\label{class____benchmark__impl_a2efd5ebe7e24a9a6ead5b205d0fe05f8}} +\index{\_\_benchmark\_impl@{\_\_benchmark\_impl}!\_\_benchmark\_impl@{\_\_benchmark\_impl}} +\index{\_\_benchmark\_impl@{\_\_benchmark\_impl}!\_\_benchmark\_impl@{\_\_benchmark\_impl}} +\doxysubsubsection{\texorpdfstring{\_\_benchmark\_impl()}{\_\_benchmark\_impl()}} +{\footnotesize\ttfamily \+\_\+\+\_\+benchmark\+\_\+impl\+::\+\_\+\+\_\+benchmark\+\_\+impl (\begin{DoxyParamCaption}\item[{std\+::string\+\_\+view}]{\+\_\+\+\_\+function\+\_\+name }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class____benchmark__impl_aa91ff70297183c7c20c198096a671f73}\label{class____benchmark__impl_aa91ff70297183c7c20c198096a671f73}} +\index{\_\_benchmark\_impl@{\_\_benchmark\_impl}!````~\_\_benchmark\_impl@{$\sim$\_\_benchmark\_impl}} +\index{````~\_\_benchmark\_impl@{$\sim$\_\_benchmark\_impl}!\_\_benchmark\_impl@{\_\_benchmark\_impl}} +\doxysubsubsection{\texorpdfstring{$\sim$\_\_benchmark\_impl()}{~\_\_benchmark\_impl()}} +{\footnotesize\ttfamily \+\_\+\+\_\+benchmark\+\_\+impl\+::$\sim$\+\_\+\+\_\+benchmark\+\_\+impl (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{class____benchmark__impl_a5ddf5a17aee0bc1bab08229e574dad76}\label{class____benchmark__impl_a5ddf5a17aee0bc1bab08229e574dad76}} +\index{\_\_benchmark\_impl@{\_\_benchmark\_impl}!disable@{disable}} +\index{disable@{disable}!\_\_benchmark\_impl@{\_\_benchmark\_impl}} +\doxysubsubsection{\texorpdfstring{disable()}{disable()}} +{\footnotesize\ttfamily void \+\_\+\+\_\+benchmark\+\_\+impl\+::disable (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}} + +\mbox{\Hypertarget{class____benchmark__impl_abef5e19af3518d080c6988fc7558870d}\label{class____benchmark__impl_abef5e19af3518d080c6988fc7558870d}} +\index{\_\_benchmark\_impl@{\_\_benchmark\_impl}!enable@{enable}} +\index{enable@{enable}!\_\_benchmark\_impl@{\_\_benchmark\_impl}} +\doxysubsubsection{\texorpdfstring{enable()}{enable()}} +{\footnotesize\ttfamily void \+\_\+\+\_\+benchmark\+\_\+impl\+::enable (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}} + +\mbox{\Hypertarget{class____benchmark__impl_a6f260fa4d0f93d4a14d6b2a56d91773a}\label{class____benchmark__impl_a6f260fa4d0f93d4a14d6b2a56d91773a}} +\index{\_\_benchmark\_impl@{\_\_benchmark\_impl}!init@{init}} +\index{init@{init}!\_\_benchmark\_impl@{\_\_benchmark\_impl}} +\doxysubsubsection{\texorpdfstring{init()}{init()}} +{\footnotesize\ttfamily void \+\_\+\+\_\+benchmark\+\_\+impl\+::init (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}} + + + The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} \item -src/utils.\+h\item -src/utils.\+cpp\end{DoxyCompactItemize} +src/\mbox{\hyperlink{utils_8h}{utils.\+h}}\item +src/\mbox{\hyperlink{utils_8cpp}{utils.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/class_a_s_t_node.eps b/docs/latex/class_a_s_t_node.eps new file mode 100644 index 0000000..d11e14e --- /dev/null +++ b/docs/latex/class_a_s_t_node.eps @@ -0,0 +1,227 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 256.410248 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 1.950000 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 4 def +/cols 3 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text 'arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col 'arg1' to 'arg2' of row 'arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(ASTNode) cw +(ExprNode) cw +(StatementNode) cw +(BinaryOpNode) cw +(NumberNode) cw +(MulNode) cw +(SumNode) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (ASTNode) 1.500000 3.000000 box + (ExprNode) 1.000000 2.000000 box + (StatementNode) 2.000000 2.000000 box + (BinaryOpNode) 0.500000 1.000000 box + (NumberNode) 1.500000 1.000000 box + (MulNode) 0.000000 0.000000 box + (SumNode) 1.000000 0.000000 box + +% ----- relations ----- + +solid +1 1.500000 2.250000 out +solid +1.000000 2.000000 3.000000 conn +solid +0 1.000000 2.750000 in +solid +1 1.000000 1.250000 out +solid +0.500000 1.500000 2.000000 conn +solid +0 2.000000 2.750000 in +solid +0 0.500000 1.750000 in +solid +1 0.500000 0.250000 out +solid +0.000000 1.000000 1.000000 conn +solid +0 1.500000 1.750000 in +solid +0 0.000000 0.750000 in +solid +0 1.000000 0.750000 in diff --git a/docs/latex/class_a_s_t_node.pdf b/docs/latex/class_a_s_t_node.pdf new file mode 100644 index 0000000000000000000000000000000000000000..e9bb2625ed81f503ec6493c74ba51bc60f4ca3f3 GIT binary patch literal 6511 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 + +Inheritance diagram for ASTNode\+:\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=4.000000cm]{class_a_s_t_node} +\end{center} +\end{figure} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_a_s_t_node_a1196ed4f19c0b62cdc42fe35946b91d2}{ASTNode}} () +\item +\mbox{\hyperlink{class_a_s_t_node_a41a691f37fa038eb183280effeb8ba4e}{$\sim$\+ASTNode}} () +\end{DoxyCompactItemize} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{class_a_s_t_node_a1196ed4f19c0b62cdc42fe35946b91d2}\label{class_a_s_t_node_a1196ed4f19c0b62cdc42fe35946b91d2}} +\index{ASTNode@{ASTNode}!ASTNode@{ASTNode}} +\index{ASTNode@{ASTNode}!ASTNode@{ASTNode}} +\doxysubsubsection{\texorpdfstring{ASTNode()}{ASTNode()}} +{\footnotesize\ttfamily ASTNode\+::\+ASTNode (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_a_s_t_node_a41a691f37fa038eb183280effeb8ba4e}\label{class_a_s_t_node_a41a691f37fa038eb183280effeb8ba4e}} +\index{ASTNode@{ASTNode}!````~ASTNode@{$\sim$ASTNode}} +\index{````~ASTNode@{$\sim$ASTNode}!ASTNode@{ASTNode}} +\doxysubsubsection{\texorpdfstring{$\sim$ASTNode()}{~ASTNode()}} +{\footnotesize\ttfamily ASTNode\+::$\sim$\+ASTNode (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + + + +The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} +\item +src/\+AST/\mbox{\hyperlink{_a_s_t_node_8h}{ASTNode.\+h}}\item +src/\+AST/\mbox{\hyperlink{_a_s_t_node_8cpp}{ASTNode.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/class_binary_op_node.eps b/docs/latex/class_binary_op_node.eps new file mode 100644 index 0000000..3afb3fc --- /dev/null +++ b/docs/latex/class_binary_op_node.eps @@ -0,0 +1,215 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 384.615387 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 1.300000 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 4 def +/cols 2 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text 'arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col 'arg1' to 'arg2' of row 'arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(BinaryOpNode) cw +(ExprNode) cw +(ASTNode) cw +(MulNode) cw +(SumNode) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (BinaryOpNode) 0.500000 1.000000 box + (ExprNode) 0.500000 2.000000 box + (ASTNode) 0.500000 3.000000 box + (MulNode) 0.000000 0.000000 box + (SumNode) 1.000000 0.000000 box + +% ----- relations ----- + +solid +0 0.500000 1.000000 out +solid +1 0.500000 2.000000 in +solid +0 0.500000 2.000000 out +solid +1 0.500000 3.000000 in +solid +1 0.500000 0.250000 out +solid +0.000000 1.000000 1.000000 conn +solid +0 0.000000 0.750000 in +solid +0 1.000000 0.750000 in diff --git a/docs/latex/class_binary_op_node.pdf b/docs/latex/class_binary_op_node.pdf new file mode 100644 index 0000000000000000000000000000000000000000..d256a440aa5b184746c35aac68fcc9cd1dc13cf9 GIT binary patch literal 6206 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 literal 0 HcmV?d00001 diff --git a/docs/latex/class_binary_op_node.tex b/docs/latex/class_binary_op_node.tex new file mode 100644 index 0000000..c972224 --- /dev/null +++ b/docs/latex/class_binary_op_node.tex @@ -0,0 +1,62 @@ +\hypertarget{class_binary_op_node}{}\doxysection{Binary\+Op\+Node Class Reference} +\label{class_binary_op_node}\index{BinaryOpNode@{BinaryOpNode}} + + +{\ttfamily \#include $<$Binary\+Op\+Node.\+h$>$} + +Inheritance diagram for Binary\+Op\+Node\+:\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=4.000000cm]{class_binary_op_node} +\end{center} +\end{figure} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_binary_op_node_a483ebe81ba6f08340a7ceff34e6b75af}{Binary\+Op\+Node}} (std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{class_expr_node}{Expr\+Node}} $>$ \mbox{\hyperlink{class_binary_op_node_acee80276ab94e9faf3f2da1a9f323a44}{left}}, std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{class_expr_node}{Expr\+Node}} $>$ \mbox{\hyperlink{class_binary_op_node_afacda981cb1bb277f0625a5e78431582}{right}}) +\item +\mbox{\hyperlink{class_binary_op_node_a924a3c0ddb1f8442208ebcce2748ec81}{$\sim$\+Binary\+Op\+Node}} () +\end{DoxyCompactItemize} +\doxysubsection*{Protected Attributes} +\begin{DoxyCompactItemize} +\item +std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{class_expr_node}{Expr\+Node}} $>$ \mbox{\hyperlink{class_binary_op_node_acee80276ab94e9faf3f2da1a9f323a44}{left}} +\item +std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{class_expr_node}{Expr\+Node}} $>$ \mbox{\hyperlink{class_binary_op_node_afacda981cb1bb277f0625a5e78431582}{right}} +\end{DoxyCompactItemize} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{class_binary_op_node_a483ebe81ba6f08340a7ceff34e6b75af}\label{class_binary_op_node_a483ebe81ba6f08340a7ceff34e6b75af}} +\index{BinaryOpNode@{BinaryOpNode}!BinaryOpNode@{BinaryOpNode}} +\index{BinaryOpNode@{BinaryOpNode}!BinaryOpNode@{BinaryOpNode}} +\doxysubsubsection{\texorpdfstring{BinaryOpNode()}{BinaryOpNode()}} +{\footnotesize\ttfamily Binary\+Op\+Node\+::\+Binary\+Op\+Node (\begin{DoxyParamCaption}\item[{std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{class_expr_node}{Expr\+Node}} $>$}]{left, }\item[{std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{class_expr_node}{Expr\+Node}} $>$}]{right }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_binary_op_node_a924a3c0ddb1f8442208ebcce2748ec81}\label{class_binary_op_node_a924a3c0ddb1f8442208ebcce2748ec81}} +\index{BinaryOpNode@{BinaryOpNode}!````~BinaryOpNode@{$\sim$BinaryOpNode}} +\index{````~BinaryOpNode@{$\sim$BinaryOpNode}!BinaryOpNode@{BinaryOpNode}} +\doxysubsubsection{\texorpdfstring{$\sim$BinaryOpNode()}{~BinaryOpNode()}} +{\footnotesize\ttfamily Binary\+Op\+Node\+::$\sim$\+Binary\+Op\+Node (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + + + +\doxysubsection{Member Data Documentation} +\mbox{\Hypertarget{class_binary_op_node_acee80276ab94e9faf3f2da1a9f323a44}\label{class_binary_op_node_acee80276ab94e9faf3f2da1a9f323a44}} +\index{BinaryOpNode@{BinaryOpNode}!left@{left}} +\index{left@{left}!BinaryOpNode@{BinaryOpNode}} +\doxysubsubsection{\texorpdfstring{left}{left}} +{\footnotesize\ttfamily std\+::shared\+\_\+ptr$<$\mbox{\hyperlink{class_expr_node}{Expr\+Node}}$>$ Binary\+Op\+Node\+::left\hspace{0.3cm}{\ttfamily [protected]}} + +\mbox{\Hypertarget{class_binary_op_node_afacda981cb1bb277f0625a5e78431582}\label{class_binary_op_node_afacda981cb1bb277f0625a5e78431582}} +\index{BinaryOpNode@{BinaryOpNode}!right@{right}} +\index{right@{right}!BinaryOpNode@{BinaryOpNode}} +\doxysubsubsection{\texorpdfstring{right}{right}} +{\footnotesize\ttfamily std\+::shared\+\_\+ptr$<$\mbox{\hyperlink{class_expr_node}{Expr\+Node}}$>$ Binary\+Op\+Node\+::right\hspace{0.3cm}{\ttfamily [protected]}} + + + +The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} +\item +src/\+AST/\mbox{\hyperlink{_binary_op_node_8h}{Binary\+Op\+Node.\+h}}\item +src/\+AST/\mbox{\hyperlink{_binary_op_node_8cpp}{Binary\+Op\+Node.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/class_expr_node.eps b/docs/latex/class_expr_node.eps new file mode 100644 index 0000000..f12b5b8 --- /dev/null +++ b/docs/latex/class_expr_node.eps @@ -0,0 +1,221 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 256.410248 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 1.950000 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 4 def +/cols 3 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text 'arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col 'arg1' to 'arg2' of row 'arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(ExprNode) cw +(ASTNode) cw +(BinaryOpNode) cw +(NumberNode) cw +(MulNode) cw +(SumNode) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (ExprNode) 1.000000 2.000000 box + (ASTNode) 1.000000 3.000000 box + (BinaryOpNode) 0.500000 1.000000 box + (NumberNode) 1.500000 1.000000 box + (MulNode) 0.000000 0.000000 box + (SumNode) 1.000000 0.000000 box + +% ----- relations ----- + +solid +0 1.000000 2.000000 out +solid +1 1.000000 3.000000 in +solid +1 1.000000 1.250000 out +solid +0.500000 1.500000 2.000000 conn +solid +0 0.500000 1.750000 in +solid +1 0.500000 0.250000 out +solid +0.000000 1.000000 1.000000 conn +solid +0 1.500000 1.750000 in +solid +0 0.000000 0.750000 in +solid +0 1.000000 0.750000 in diff --git a/docs/latex/class_expr_node.pdf b/docs/latex/class_expr_node.pdf new file mode 100644 index 0000000000000000000000000000000000000000..89809a5e248b3e2e7e10fea11eef811b514b64ba GIT binary patch literal 6352 zcmb_hdmvQX_phj!q$j1q$y+tfycx~V7_W)(7$l?&b1=-y%)wBJB)voriqb=p9_ki) z>QYw^DG5a{>7|EI;a=US?>(5#?X}ikd#%sjbJk+&<>-tjT2XPP z*WP6o;7m<9k~nD?9~DX^worru!pA^(fe*{si3eH_PcN3Aj}z!QuzcCBpk+(NGQb=v z6baD;cO(uGF@Z7&uW)o)#9=!zWrFZ{xe!GF#WNO_#iGta5yG?wl3-mQCtqKVhl`If zER!SPR{@q2aQRA~*iZ$6dWE4(B7p!%Lt|&D1XVCmc`Q&Sa1w_i0+vYh7a}VbmGY!0 zA4RdGmZ)oAZch6j=_N45lI9Z3DE$B2LoGBL=M5uA|T?3gh>U6ogGer z$`QU8r`(Bqlr#Ur9e2zcQ1xZGcn!s(#@rivyBh_X6?BbN_O}jnIdFE4sy2&VuY0(VcR)5Q}Ssho1<3DUsD`_$7o25_k zEuLkObo^TQ!IL?UNjV#)9-(%G)KvuBGe7AjpWPSWGR|}6F~Rz}!j%^jYIPInGuAI} zD|62_*lH>1=#N^3pC^chxqp1ki;m6Xd@TBC+ZlFa?OW$TwToZ8WQasC3=`19poIYn zYpE0>ZkR;*fjZv=83JRNgt>@7$ajz`p&$a7rUH1As5C1IF&GEt<%k4@$QU$nFb`2k zW94Cp0)W;_E)DZR&>$F`83^`8lqg`wkPp#S%mB178w`QC0>Z$~!vWH;8JNBy@B>j` z2c$AY0l{uUfdUG`VP^7h!4S|83p5gc5+!~Y9hPMCQNBnT@lD0Bsayo*3&0FS!~}j` z8#8bC;PI?+*4XS1!?5A-qyt}pVEchRy}1F40_XY)#fSpWlZyEg)jk~&MVMSDL#1-a z22-LkM>PZdAe1Xmb|ha8(WtOHf4EO15n+F!0F6`xLDnP^M5AHL5g?k%My&Vk$Hs=P z;s9K@AsUrR`v<;Ze!xSaP*jl{iXS!_nj=|b#({`})*5`U=z!=bPMMqnW{6y z?*2-5>egvf^a=)b!sp-7PHYn5X9)FSK!E^juu6`HHZyop3v5 z(j?D8N_qA*4K>TD*PT*E>ThiC9Dj9MQd-IFwhft3LbUiKFxJO>-=> zIk=A>YmM%m2tG60C`k81clJ8{bJuVmt0&dA?AY+AU~9v(B{2c+teCh@C)eFq7(bKu z+}L=^!AXMQ znnevJ5rL)Y^BOH0GWfjR_p}@4=3n$U`mk$q#?y0*cl*X@UyJ=zqK z$<8%13J=+E_lQqNNPW``G%vSzOjxT4&HdNaERC-*9lq;AF4rF;OH&(9R+Vu}?k~Bv z^!M9sQ_w@tdy}8MVy0W|^Zs<-_~Mnv2kXuRUJcgg2J2^ieZJl!bCq(o_Tu;q(Uh&* zC?3YkG=FsoORSvy(Qp~QqptPBMAJntX3d#zRC~NNBP8#}(6`BHVC>&IF9$xj~TD9(0>(uxI3KFt18BWZqI$L6dIrwuVD>#nIk*7(&v zrPeU*eQ+FaUe#J!;;w*3L89Ta*kl;rYuG$K{dvNZwh;r2J(WF2bv}&UY&vV=%2B;J z)f-mCu4cH8oYkJ#w5DxAsui1(Kf!D3qG?Cd2NX(bBmDZpGs6q`b0zBrUc7d|W? zJsVj0ZZyGd|4eoZ@%ktJ)>_7;6PgQO_g=}Je5y&^?ajeO+w}5Nra!$Ka`|<`S=w*U z7Y8^;FZCAEX3P%AFfBWGJG_H6F}-p6jEhHd`rfMtr|#5D%4WB`6n4@B zp5m|1vCLekGdOzsybmuEjwtmuHs6w8U*D#g{w#Uj;uK=QiOhR-_g>AI^6updO3IU+ zZKP|hI@4cM+_(qcFsh$y>66Qj)*WUa&Wao{hgj_Upy8ttm$;hlGG?t)|Hy!%QLi#2 z*>wHM^Ob!LHy$@e1fIW;W^7!+tqNb!+#yZ6t*={M{r33P;4p^^t4}bh;S~m#?XOi2 zupob-)*Y(})Wz z^CRH6jZ@Ny$;UQq@zcMFKjEvh&*8e~dIP3Rffk1i6lHZUJaxuTJ8i-~?N^6caqEvI zSS+|QMx5qcFsJ1B0z#!A#8IHuKJ!4TvTNdiQw5x8b9U9p*6#fqy%4uM774nC*4S02 zbUwbgXIlJ}yxAE=OL&6%Xu;bXQ4z%-mD#nC+kS5@`(^jXvu{7&tY>Rm z>hGISUi_K7Cu>>y%QccPjX_Z4%J9`&pX>RPcqVJO4{D% z^&G}n_)556Ud)7`Gx6v|abn9X9UD^#I*L{B- zue9cP2S-fbwB6NP*BIt4oKrZb(8W);B={awYB`Z%mc0=7+0=N|tP7j=R?Z9UD{pui zEqQxt?dZWl;fwsd=PyI*EE;JwNWM5Nxv=rY>#{V9>EkjBId9;oUFEu`b4x~Cy%O~) zTMPtjQ71wupj4s+y{=h$imM97{S`CBOFO zeDvO1Z*59{NpBp~@INJLUNWVao9J8Hu>VMcdv(QaoEh7D-(zMYG~-s>iv{n?*gNn> z(X8Vq%05k8t$xgmacT`?xm2xvsb23M!-<_EPuo_k*zIB@)$rnGI3LRPH@Lfg(xaXI zdV4a}tXe7Pcnbff$PrjdPxj;iom0teitD%NtlC(=FOD7jfnHH_7&+0EN z{or>$B;&Sn+_PP1-`Mj@*Pm#qtTfg;SfCXkVL8XW(Js@Q{4{?Dq5tgQ^*I{OrA-4(%l;3&Y11o$ELB*`;o>XP%K8r+vFBb%v%(ra3)neVyq@fJ3x0Y6e`a4)&dJ5EyK@Tj9NBiRl)%8#g}o zkP%L#{S8rVho|1$fk}L;ymz0H`WXze{A3SlHS6qNo!8|xZJy@K_GmnPA_+*2HAp;j z@hboPIO3S{MW@VC4hfF7m)YFnS{#c$eaA8-W_h;6U;o8d&9Uw!I@@!yv)9e9UH+%- z{N>AQZLbtS?eTL~o!c>+J-W3m(|~_BbM`>CJ7eR~)$Q<{6L+ItJhe4BQ!{h+*TT>5 zpI*KEejd7DsYM;U71=N7eRxMXYvOYAh=Ka`OVS@KO)-(hzx~qO+<9?RDlZK|4QpP- zHVnLuD{bu5lscD`cTzKfl1#zts5-qD<)TEm8c|P~mg= zi*eTh{K;d?n-8>m1_@)We<|A5VAUe>na}+LYE)|eV%9Lb+hkUYQ^yD0)?RL)=jr$7 zUq9d3cxOY(=%snb4{%|>H?+F?SF?6cuj&qY!j6)ZYWAU>I=6~SC+;0} zy`iP4UiPftwZl@~Wqwcm23I2C>YK6;SzpmeD?Q zv6SquX`?C|`T1S`TQ2qEt#vWi{o5-mkwhkce`RIZD`ot!Xat2qkqDuLY2JOI(i{>B znCAXeE`cj!BauSaL^?G1iP(ZZMuyEH6$={8G+)g1f>5bc6fHy{k`>*Gh$oWg zLE&v?lkh%^j1S6(-B#O#xVK_cM-YTAKC6!0OL^_=g6G$+L zga;gWMS=w7EAbMAF<4J!h;Z?DF^R%TWs_ByR16Cj!$d0r{B5CcnGh&oLD<6lP-!g6 zG%_020t!<9tOiT~J!G&w(6a?8w;(nQku%L*yxbv|NT~uHNrF314G6C6Pu%8o<;E+AOr2_#=4$(BH}rBLRAzXSpU{u?I<77%5F zauq0F{THG?asDJKmHUDa+Br&<2@!~7Xb~0X@B{nIJ26@%Q8s3T~sxNiGCOOhq$On;HZHR!QT(E9S-^*J^wpJKW;B@Co;|BvAgNtZb#CO zLdUoBXz|a-(GpY@Fh7Drj~xUHM_cR^0sN4NprblK<^+N{U;_v3KXCYBakls#!EdUi za*N?30w|!;90>@Pc6P&6Hl-X12c;n*s3CoSKtYO1rb6M+FpWr{f*oNGB>6_8THAnf z&R=N+IvtdX{zkK*{yQIu^zSqqGAO$JRhCGkfb!(uXcX!{@DV|g>~DP5WKh)mD~&?I z3SHl5sGJX~GICH{hhQIJA_9B>!91xHloGKr4Fq!};Zg_-C8%n09HAfv&51=~6Nm%{ w3X5dpM0FrJvdIJrnGQNE8VH-+f943rs+0$} + +Inheritance diagram for Expr\+Node\+:\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=4.000000cm]{class_expr_node} +\end{center} +\end{figure} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_expr_node_ab8c32004efc2afec3208b0c9b0e9a154}{Expr\+Node}} (std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{class_expr_node}{Expr\+Node}} $>$ child) +\item +\mbox{\hyperlink{class_expr_node_a440d1cb893f7815b71dff7b4ec35089a}{Expr\+Node}} () +\item +\mbox{\hyperlink{class_expr_node_a3d37807a38daa45e693b2734cfd47727}{$\sim$\+Expr\+Node}} () +\end{DoxyCompactItemize} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{class_expr_node_ab8c32004efc2afec3208b0c9b0e9a154}\label{class_expr_node_ab8c32004efc2afec3208b0c9b0e9a154}} +\index{ExprNode@{ExprNode}!ExprNode@{ExprNode}} +\index{ExprNode@{ExprNode}!ExprNode@{ExprNode}} +\doxysubsubsection{\texorpdfstring{ExprNode()}{ExprNode()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily Expr\+Node\+::\+Expr\+Node (\begin{DoxyParamCaption}\item[{std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{class_expr_node}{Expr\+Node}} $>$}]{child }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_expr_node_a440d1cb893f7815b71dff7b4ec35089a}\label{class_expr_node_a440d1cb893f7815b71dff7b4ec35089a}} +\index{ExprNode@{ExprNode}!ExprNode@{ExprNode}} +\index{ExprNode@{ExprNode}!ExprNode@{ExprNode}} +\doxysubsubsection{\texorpdfstring{ExprNode()}{ExprNode()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily Expr\+Node\+::\+Expr\+Node (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_expr_node_a3d37807a38daa45e693b2734cfd47727}\label{class_expr_node_a3d37807a38daa45e693b2734cfd47727}} +\index{ExprNode@{ExprNode}!````~ExprNode@{$\sim$ExprNode}} +\index{````~ExprNode@{$\sim$ExprNode}!ExprNode@{ExprNode}} +\doxysubsubsection{\texorpdfstring{$\sim$ExprNode()}{~ExprNode()}} +{\footnotesize\ttfamily Expr\+Node\+::$\sim$\+Expr\+Node (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + + + +The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} +\item +src/\+AST/\mbox{\hyperlink{_expr_node_8h}{Expr\+Node.\+h}}\item +src/\+AST/\mbox{\hyperlink{_expr_node_8cpp}{Expr\+Node.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/class_lexer.tex b/docs/latex/class_lexer.tex new file mode 100644 index 0000000..e72faea --- /dev/null +++ b/docs/latex/class_lexer.tex @@ -0,0 +1,76 @@ +\hypertarget{class_lexer}{}\doxysection{Lexer Class Reference} +\label{class_lexer}\index{Lexer@{Lexer}} + + +{\ttfamily \#include $<$Lexer.\+h$>$} + +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_lexer_ad26a84af23d8d303723e36e83fc4e556}{$\sim$\+Lexer}} () +\item +\mbox{\hyperlink{_lexer_8h_a43f892d4a347a32f8602cfbcff2e237e}{Token\+Stream}} \mbox{\hyperlink{class_lexer_ac53b63f829071be755cc785084126afe}{lex}} (const std\+::string \&text) +\end{DoxyCompactItemize} +\doxysubsection*{Static Public Member Functions} +\begin{DoxyCompactItemize} +\item +static std\+::unique\+\_\+ptr$<$ \mbox{\hyperlink{class_lexer}{Lexer}} $>$ \mbox{\hyperlink{class_lexer_a6d24d823847b6d5f7e497d78f5b612d4}{make\+\_\+lexer}} (const std\+::string \&fname) +\item +static void \mbox{\hyperlink{class_lexer_a8f5d1d9281b44e287d7db2ef0c0dff09}{assign\+\_\+parent\+\_\+location}} (std\+::unique\+\_\+ptr$<$ \mbox{\hyperlink{class_lexer}{Lexer}} $>$ \&lexer, const std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{struct_location}{Location}} $>$ \&loc) +\end{DoxyCompactItemize} +\doxysubsection*{Static Public Attributes} +\begin{DoxyCompactItemize} +\item +static const std\+::array$<$ std\+::string, \mbox{\hyperlink{_lexer_8h_a5aa140c2c2e64a57331d450a98077834}{TYPE\+\_\+\+COUNT}} $>$ \mbox{\hyperlink{class_lexer_a8956f4484cb2a477bea5d09e96ea6c8d}{types}} +\end{DoxyCompactItemize} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{class_lexer_ad26a84af23d8d303723e36e83fc4e556}\label{class_lexer_ad26a84af23d8d303723e36e83fc4e556}} +\index{Lexer@{Lexer}!````~Lexer@{$\sim$Lexer}} +\index{````~Lexer@{$\sim$Lexer}!Lexer@{Lexer}} +\doxysubsubsection{\texorpdfstring{$\sim$Lexer()}{~Lexer()}} +{\footnotesize\ttfamily Lexer\+::$\sim$\+Lexer (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{class_lexer_a8f5d1d9281b44e287d7db2ef0c0dff09}\label{class_lexer_a8f5d1d9281b44e287d7db2ef0c0dff09}} +\index{Lexer@{Lexer}!assign\_parent\_location@{assign\_parent\_location}} +\index{assign\_parent\_location@{assign\_parent\_location}!Lexer@{Lexer}} +\doxysubsubsection{\texorpdfstring{assign\_parent\_location()}{assign\_parent\_location()}} +{\footnotesize\ttfamily void Lexer\+::assign\+\_\+parent\+\_\+location (\begin{DoxyParamCaption}\item[{std\+::unique\+\_\+ptr$<$ \mbox{\hyperlink{class_lexer}{Lexer}} $>$ \&}]{lexer, }\item[{const std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{struct_location}{Location}} $>$ \&}]{loc }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}} + +\mbox{\Hypertarget{class_lexer_ac53b63f829071be755cc785084126afe}\label{class_lexer_ac53b63f829071be755cc785084126afe}} +\index{Lexer@{Lexer}!lex@{lex}} +\index{lex@{lex}!Lexer@{Lexer}} +\doxysubsubsection{\texorpdfstring{lex()}{lex()}} +{\footnotesize\ttfamily \mbox{\hyperlink{_lexer_8h_a43f892d4a347a32f8602cfbcff2e237e}{Token\+Stream}} Lexer\+::lex (\begin{DoxyParamCaption}\item[{const std\+::string \&}]{text }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_lexer_a6d24d823847b6d5f7e497d78f5b612d4}\label{class_lexer_a6d24d823847b6d5f7e497d78f5b612d4}} +\index{Lexer@{Lexer}!make\_lexer@{make\_lexer}} +\index{make\_lexer@{make\_lexer}!Lexer@{Lexer}} +\doxysubsubsection{\texorpdfstring{make\_lexer()}{make\_lexer()}} +{\footnotesize\ttfamily std\+::unique\+\_\+ptr$<$ \mbox{\hyperlink{class_lexer}{Lexer}} $>$ Lexer\+::make\+\_\+lexer (\begin{DoxyParamCaption}\item[{const std\+::string \&}]{fname }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}} + + + +\doxysubsection{Member Data Documentation} +\mbox{\Hypertarget{class_lexer_a8956f4484cb2a477bea5d09e96ea6c8d}\label{class_lexer_a8956f4484cb2a477bea5d09e96ea6c8d}} +\index{Lexer@{Lexer}!types@{types}} +\index{types@{types}!Lexer@{Lexer}} +\doxysubsubsection{\texorpdfstring{types}{types}} +{\footnotesize\ttfamily const std\+::array$<$ std\+::string, \mbox{\hyperlink{_lexer_8h_a5aa140c2c2e64a57331d450a98077834}{TYPE\+\_\+\+COUNT}} $>$ Lexer\+::types\hspace{0.3cm}{\ttfamily [static]}} + +{\bfseries Initial value\+:} +\begin{DoxyCode}{0} +\DoxyCodeLine{= \{\textcolor{stringliteral}{"{}void"{}}, \textcolor{stringliteral}{"{}bool"{}}, \textcolor{stringliteral}{"{}str"{}}, \textcolor{stringliteral}{"{}i8"{}}, \textcolor{stringliteral}{"{}i16"{}}, \textcolor{stringliteral}{"{}i32"{}}, \textcolor{stringliteral}{"{}i64"{}},} +\DoxyCodeLine{ \textcolor{stringliteral}{"{}u8"{}}, \textcolor{stringliteral}{"{}u16"{}}, \textcolor{stringliteral}{"{}u32"{}}, \textcolor{stringliteral}{"{}u64"{}}, \textcolor{stringliteral}{"{}f32"{}}, \textcolor{stringliteral}{"{}f64"{}}, \textcolor{stringliteral}{"{}f128"{}}\}} + +\end{DoxyCode} + + +The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} +\item +src/\mbox{\hyperlink{_lexer_8h}{Lexer.\+h}}\item +src/\mbox{\hyperlink{_lexer_8cpp}{Lexer.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/class_mul_node.eps b/docs/latex/class_mul_node.eps new file mode 100644 index 0000000..70e907c --- /dev/null +++ b/docs/latex/class_mul_node.eps @@ -0,0 +1,209 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 769.230774 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 0.650000 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 4 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text 'arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col 'arg1' to 'arg2' of row 'arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(MulNode) cw +(BinaryOpNode) cw +(ExprNode) cw +(ASTNode) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (MulNode) 0.000000 0.000000 box + (BinaryOpNode) 0.000000 1.000000 box + (ExprNode) 0.000000 2.000000 box + (ASTNode) 0.000000 3.000000 box + +% ----- relations ----- + +solid +0 0.000000 0.000000 out +solid +1 0.000000 1.000000 in +solid +0 0.000000 1.000000 out +solid +1 0.000000 2.000000 in +solid +0 0.000000 2.000000 out +solid +1 0.000000 3.000000 in diff --git a/docs/latex/class_mul_node.pdf b/docs/latex/class_mul_node.pdf new file mode 100644 index 0000000000000000000000000000000000000000..ff700f4ded0a67b403cad70b7895d30bc2cf5651 GIT binary patch literal 5978 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%0D_v?SM z5r`zx*C(5+n?}y%#UUyv8i^4}>DX5%&R`)CpN^g5?2q@Cdm=*7^dtomoD{&}CB^Yv z_*gdv#?_4r>NEtW;mUCWeIc%dz>AhX$ur2$dlE{Zp=l&?2`FVCjYKR}(lm6eo`nYH zC>X{ z3Od#&&=2wv%9N_!(hG8Nbar;cW8uDY{mXX1mjApRa6q5hu7HN-52_!5mIXQ@3?d$w z08hc;i5vovh9}aToE*S^Jl+-lff6_iuzG^V323DJ7p&h=e#a_PaDWRLESW|dgGhTf z(Np#zTw&CV-<|WnJULhH@BjawT_Qn)38ka4WIVM5)KzR29jjK0_%tq;8;z&nU2r5K zo{J+81XLUzd^iFHFA(6lJRSwl`){4V=Y7>fu2zWk;l}5|h!{b)R02N`fFgVzO(0W9 zxGE6vaycmL^zAqpL<5%L3Xm$1N{le{!ORq^dM9EL8dfwhR~kddYH)l+z*UP?Sca#V zt5l)|Xs_|aB1Z2-&j^1L24+0eeKJL_ykI20UvMACS5`d=W&O(V4}Q^uz*Pe-g1=s5 z1_t^ceg8W_-?A6TiF9ltnw$QX9f{wH{QmoB_s`eS9#qt*9l@nXFM=J5hTb9&KSTnU z=r0f!kH-QsaMAvSf`j_m?yCp;MavX+eOClPK+jVM0QL+Z>!Mkf4C7bgP#JDpVuF6c@qK${nWgGEUQumJ=I$z-5~hPEjn zm@O5^Ak>who5yBB;jVaRFBg`V3z0?fCgMFv6c&r*LGU86yj?uJm`sv4EhIe+Rf>yeX*GzBBe*l`y8%qEH literal 0 HcmV?d00001 diff --git a/docs/latex/class_mul_node.tex b/docs/latex/class_mul_node.tex new file mode 100644 index 0000000..b53e238 --- /dev/null +++ b/docs/latex/class_mul_node.tex @@ -0,0 +1,41 @@ +\hypertarget{class_mul_node}{}\doxysection{Mul\+Node Class Reference} +\label{class_mul_node}\index{MulNode@{MulNode}} + + +{\ttfamily \#include $<$Mul\+Node.\+h$>$} + +Inheritance diagram for Mul\+Node\+:\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=4.000000cm]{class_mul_node} +\end{center} +\end{figure} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_mul_node_a77b55c0440c778b424d7c1c9620ff926}{Mul\+Node}} (std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{class_expr_node}{Expr\+Node}} $>$ \mbox{\hyperlink{class_binary_op_node_acee80276ab94e9faf3f2da1a9f323a44}{left}}, std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{class_expr_node}{Expr\+Node}} $>$ \mbox{\hyperlink{class_binary_op_node_afacda981cb1bb277f0625a5e78431582}{right}}, char op) +\item +\mbox{\hyperlink{class_mul_node_a9ea3fc1e1310ccea7b85f52c872d4883}{$\sim$\+Mul\+Node}} () +\end{DoxyCompactItemize} +\doxysubsection*{Additional Inherited Members} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{class_mul_node_a77b55c0440c778b424d7c1c9620ff926}\label{class_mul_node_a77b55c0440c778b424d7c1c9620ff926}} +\index{MulNode@{MulNode}!MulNode@{MulNode}} +\index{MulNode@{MulNode}!MulNode@{MulNode}} +\doxysubsubsection{\texorpdfstring{MulNode()}{MulNode()}} +{\footnotesize\ttfamily Mul\+Node\+::\+Mul\+Node (\begin{DoxyParamCaption}\item[{std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{class_expr_node}{Expr\+Node}} $>$}]{left, }\item[{std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{class_expr_node}{Expr\+Node}} $>$}]{right, }\item[{char}]{op }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_mul_node_a9ea3fc1e1310ccea7b85f52c872d4883}\label{class_mul_node_a9ea3fc1e1310ccea7b85f52c872d4883}} +\index{MulNode@{MulNode}!````~MulNode@{$\sim$MulNode}} +\index{````~MulNode@{$\sim$MulNode}!MulNode@{MulNode}} +\doxysubsubsection{\texorpdfstring{$\sim$MulNode()}{~MulNode()}} +{\footnotesize\ttfamily Mul\+Node\+::$\sim$\+Mul\+Node (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + + + +The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} +\item +src/\+AST/\mbox{\hyperlink{_mul_node_8h}{Mul\+Node.\+h}}\item +src/\+AST/\mbox{\hyperlink{_mul_node_8cpp}{Mul\+Node.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/class_number_node.eps b/docs/latex/class_number_node.eps new file mode 100644 index 0000000..4681e72 --- /dev/null +++ b/docs/latex/class_number_node.eps @@ -0,0 +1,203 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 638.297852 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 0.783333 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 3 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text 'arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col 'arg1' to 'arg2' of row 'arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(NumberNode) cw +(ExprNode) cw +(ASTNode) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (NumberNode) 0.000000 0.000000 box + (ExprNode) 0.000000 1.000000 box + (ASTNode) 0.000000 2.000000 box + +% ----- relations ----- + +solid +0 0.000000 0.000000 out +solid +1 0.000000 1.000000 in +solid +0 0.000000 1.000000 out +solid +1 0.000000 2.000000 in diff --git a/docs/latex/class_number_node.pdf b/docs/latex/class_number_node.pdf new file mode 100644 index 0000000000000000000000000000000000000000..9d069cba3a84193a7846e296defc82660183428e GIT binary patch literal 5219 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 JU47h0{{>|jv-ki2 literal 0 HcmV?d00001 diff --git a/docs/latex/class_number_node.tex b/docs/latex/class_number_node.tex new file mode 100644 index 0000000..5c77cd4 --- /dev/null +++ b/docs/latex/class_number_node.tex @@ -0,0 +1,40 @@ +\hypertarget{class_number_node}{}\doxysection{Number\+Node Class Reference} +\label{class_number_node}\index{NumberNode@{NumberNode}} + + +{\ttfamily \#include $<$Number\+Node.\+h$>$} + +Inheritance diagram for Number\+Node\+:\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=3.000000cm]{class_number_node} +\end{center} +\end{figure} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_number_node_ad73f159f5e1cde94876e24efba813647}{Number\+Node}} () +\item +\mbox{\hyperlink{class_number_node_a90b34c7bd973fdb7dcc661f4882803e7}{$\sim$\+Number\+Node}} () +\end{DoxyCompactItemize} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{class_number_node_ad73f159f5e1cde94876e24efba813647}\label{class_number_node_ad73f159f5e1cde94876e24efba813647}} +\index{NumberNode@{NumberNode}!NumberNode@{NumberNode}} +\index{NumberNode@{NumberNode}!NumberNode@{NumberNode}} +\doxysubsubsection{\texorpdfstring{NumberNode()}{NumberNode()}} +{\footnotesize\ttfamily Number\+Node\+::\+Number\+Node (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_number_node_a90b34c7bd973fdb7dcc661f4882803e7}\label{class_number_node_a90b34c7bd973fdb7dcc661f4882803e7}} +\index{NumberNode@{NumberNode}!````~NumberNode@{$\sim$NumberNode}} +\index{````~NumberNode@{$\sim$NumberNode}!NumberNode@{NumberNode}} +\doxysubsubsection{\texorpdfstring{$\sim$NumberNode()}{~NumberNode()}} +{\footnotesize\ttfamily Number\+Node\+::$\sim$\+Number\+Node (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + + + +The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} +\item +src/\+AST/\mbox{\hyperlink{_number_node_8h}{Number\+Node.\+h}}\item +src/\+AST/\mbox{\hyperlink{_number_node_8cpp}{Number\+Node.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/class_parser.tex b/docs/latex/class_parser.tex new file mode 100644 index 0000000..21a1e5d --- /dev/null +++ b/docs/latex/class_parser.tex @@ -0,0 +1,48 @@ +\hypertarget{class_parser}{}\doxysection{Parser Class Reference} +\label{class_parser}\index{Parser@{Parser}} + + +{\ttfamily \#include $<$Parser.\+h$>$} + +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_parser_a3e658b5917a93a3ef648050d060e3a93}{$\sim$\+Parser}} () +\item +std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{class_a_s_t_node}{ASTNode}} $>$ \mbox{\hyperlink{class_parser_ae094dfbfd3065ff21b12a9dd19a771ee}{parse}} () +\end{DoxyCompactItemize} +\doxysubsection*{Static Public Member Functions} +\begin{DoxyCompactItemize} +\item +static std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{class_parser}{Parser}} $>$ \mbox{\hyperlink{class_parser_a94032f3f6e1d0776c1110e82809c65a5}{new\+\_\+parser}} (const \mbox{\hyperlink{_lexer_8h_a43f892d4a347a32f8602cfbcff2e237e}{Token\+Stream}} \&tokens) +\end{DoxyCompactItemize} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{class_parser_a3e658b5917a93a3ef648050d060e3a93}\label{class_parser_a3e658b5917a93a3ef648050d060e3a93}} +\index{Parser@{Parser}!````~Parser@{$\sim$Parser}} +\index{````~Parser@{$\sim$Parser}!Parser@{Parser}} +\doxysubsubsection{\texorpdfstring{$\sim$Parser()}{~Parser()}} +{\footnotesize\ttfamily Parser\+::$\sim$\+Parser (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{class_parser_a94032f3f6e1d0776c1110e82809c65a5}\label{class_parser_a94032f3f6e1d0776c1110e82809c65a5}} +\index{Parser@{Parser}!new\_parser@{new\_parser}} +\index{new\_parser@{new\_parser}!Parser@{Parser}} +\doxysubsubsection{\texorpdfstring{new\_parser()}{new\_parser()}} +{\footnotesize\ttfamily std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{class_parser}{Parser}} $>$ Parser\+::new\+\_\+parser (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{_lexer_8h_a43f892d4a347a32f8602cfbcff2e237e}{Token\+Stream}} \&}]{tokens }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}} + +\mbox{\Hypertarget{class_parser_ae094dfbfd3065ff21b12a9dd19a771ee}\label{class_parser_ae094dfbfd3065ff21b12a9dd19a771ee}} +\index{Parser@{Parser}!parse@{parse}} +\index{parse@{parse}!Parser@{Parser}} +\doxysubsubsection{\texorpdfstring{parse()}{parse()}} +{\footnotesize\ttfamily std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{class_a_s_t_node}{ASTNode}} $>$ Parser\+::parse (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + + + +The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} +\item +src/\mbox{\hyperlink{_parser_8h}{Parser.\+h}}\item +src/\mbox{\hyperlink{_parser_8cpp}{Parser.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/class_statement_node.eps b/docs/latex/class_statement_node.eps new file mode 100644 index 0000000..3589bf4 --- /dev/null +++ b/docs/latex/class_statement_node.eps @@ -0,0 +1,197 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 384.615387 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 1.300000 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 2 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text 'arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col 'arg1' to 'arg2' of row 'arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(StatementNode) cw +(ASTNode) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (StatementNode) 0.000000 0.000000 box + (ASTNode) 0.000000 1.000000 box + +% ----- relations ----- + +solid +0 0.000000 0.000000 out +solid +1 0.000000 1.000000 in diff --git a/docs/latex/class_statement_node.pdf b/docs/latex/class_statement_node.pdf new file mode 100644 index 0000000000000000000000000000000000000000..80494280d8794b50d32668bb1d7fde571b818b8b GIT binary patch literal 4794 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 literal 0 HcmV?d00001 diff --git a/docs/latex/class_statement_node.tex b/docs/latex/class_statement_node.tex new file mode 100644 index 0000000..7ccbc35 --- /dev/null +++ b/docs/latex/class_statement_node.tex @@ -0,0 +1,40 @@ +\hypertarget{class_statement_node}{}\doxysection{Statement\+Node Class Reference} +\label{class_statement_node}\index{StatementNode@{StatementNode}} + + +{\ttfamily \#include $<$Statement\+Node.\+h$>$} + +Inheritance diagram for Statement\+Node\+:\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=2.000000cm]{class_statement_node} +\end{center} +\end{figure} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_statement_node_a0eae92f37b371c7cbc9131ba3e0c3c57}{Statement\+Node}} (std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{class_expr_node}{Expr\+Node}} $>$ child) +\item +\mbox{\hyperlink{class_statement_node_a720f5b78cc3ef43e870f429d6a99ebb2}{$\sim$\+Statement\+Node}} () +\end{DoxyCompactItemize} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{class_statement_node_a0eae92f37b371c7cbc9131ba3e0c3c57}\label{class_statement_node_a0eae92f37b371c7cbc9131ba3e0c3c57}} +\index{StatementNode@{StatementNode}!StatementNode@{StatementNode}} +\index{StatementNode@{StatementNode}!StatementNode@{StatementNode}} +\doxysubsubsection{\texorpdfstring{StatementNode()}{StatementNode()}} +{\footnotesize\ttfamily Statement\+Node\+::\+Statement\+Node (\begin{DoxyParamCaption}\item[{std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{class_expr_node}{Expr\+Node}} $>$}]{child }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_statement_node_a720f5b78cc3ef43e870f429d6a99ebb2}\label{class_statement_node_a720f5b78cc3ef43e870f429d6a99ebb2}} +\index{StatementNode@{StatementNode}!````~StatementNode@{$\sim$StatementNode}} +\index{````~StatementNode@{$\sim$StatementNode}!StatementNode@{StatementNode}} +\doxysubsubsection{\texorpdfstring{$\sim$StatementNode()}{~StatementNode()}} +{\footnotesize\ttfamily Statement\+Node\+::$\sim$\+Statement\+Node (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + + + +The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} +\item +src/\+AST/\mbox{\hyperlink{_statement_node_8h}{Statement\+Node.\+h}}\item +src/\+AST/\mbox{\hyperlink{_statement_node_8cpp}{Statement\+Node.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/class_sum_node.eps b/docs/latex/class_sum_node.eps new file mode 100644 index 0000000..c84b70d --- /dev/null +++ b/docs/latex/class_sum_node.eps @@ -0,0 +1,209 @@ +%!PS-Adobe-2.0 EPSF-2.0 +%%Title: ClassName +%%Creator: Doxygen +%%CreationDate: Time +%%For: +%Magnification: 1.00 +%%Orientation: Portrait +%%BoundingBox: 0 0 500 769.230774 +%%Pages: 0 +%%BeginSetup +%%EndSetup +%%EndComments + +% ----- variables ----- + +/boxwidth 0 def +/boxheight 40 def +/fontheight 24 def +/marginwidth 10 def +/distx 20 def +/disty 40 def +/boundaspect 0.650000 def % aspect ratio of the BoundingBox (width/height) +/boundx 500 def +/boundy boundx boundaspect div def +/xspacing 0 def +/yspacing 0 def +/rows 4 def +/cols 1 def +/scalefactor 0 def +/boxfont /Times-Roman findfont fontheight scalefont def + +% ----- procedures ----- + +/dotted { [1 4] 0 setdash } def +/dashed { [5] 0 setdash } def +/solid { [] 0 setdash } def + +/max % result = MAX(arg1,arg2) +{ + /a exch def + /b exch def + a b gt {a} {b} ifelse +} def + +/xoffset % result = MAX(0,(scalefactor-(boxwidth*cols+distx*(cols-1)))/2) +{ + 0 scalefactor boxwidth cols mul distx cols 1 sub mul add sub 2 div max +} def + +/cw % boxwidth = MAX(boxwidth, stringwidth(arg1)) +{ + /str exch def + /boxwidth boxwidth str stringwidth pop max def +} def + +/box % draws a box with text 'arg1' at grid pos (arg2,arg3) +{ gsave + 2 setlinewidth + newpath + exch xspacing mul xoffset add + exch yspacing mul + moveto + boxwidth 0 rlineto + 0 boxheight rlineto + boxwidth neg 0 rlineto + 0 boxheight neg rlineto + closepath + dup stringwidth pop neg boxwidth add 2 div + boxheight fontheight 2 div sub 2 div + rmoveto show stroke + grestore +} def + +/mark +{ newpath + exch xspacing mul xoffset add boxwidth add + exch yspacing mul + moveto + 0 boxheight 4 div rlineto + boxheight neg 4 div boxheight neg 4 div rlineto + closepath + eofill + stroke +} def + +/arrow +{ newpath + moveto + 3 -8 rlineto + -6 0 rlineto + 3 8 rlineto + closepath + eofill + stroke +} def + +/out % draws an output connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight add + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/in % draws an input connector for the block at (arg1,arg2) +{ + newpath + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul disty 2 div sub + /y exch def + /x exch def + x y moveto + 0 disty 2 div rlineto + stroke + 1 eq { x y disty 2 div add arrow } if +} def + +/hedge +{ + exch xspacing mul xoffset add boxwidth 2 div add + exch yspacing mul boxheight 2 div sub + /y exch def + /x exch def + newpath + x y moveto + boxwidth 2 div distx add 0 rlineto + stroke + 1 eq + { newpath x boxwidth 2 div distx add add y moveto + -8 3 rlineto + 0 -6 rlineto + 8 3 rlineto + closepath + eofill + stroke + } if +} def + +/vedge +{ + /ye exch def + /ys exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add dup + ys yspacing mul boxheight 2 div sub + moveto + ye yspacing mul boxheight 2 div sub + lineto + stroke +} def + +/conn % connections the blocks from col 'arg1' to 'arg2' of row 'arg3' +{ + /ys exch def + /xe exch def + /xs exch def + newpath + xs xspacing mul xoffset add boxwidth 2 div add + ys yspacing mul disty 2 div sub + moveto + xspacing xe xs sub mul 0 + rlineto + stroke +} def + +% ----- main ------ + +boxfont setfont +1 boundaspect scale +(SumNode) cw +(BinaryOpNode) cw +(ExprNode) cw +(ASTNode) cw +/boxwidth boxwidth marginwidth 2 mul add def +/xspacing boxwidth distx add def +/yspacing boxheight disty add def +/scalefactor + boxwidth cols mul distx cols 1 sub mul add + boxheight rows mul disty rows 1 sub mul add boundaspect mul + max def +boundx scalefactor div boundy scalefactor div scale + +% ----- classes ----- + + (SumNode) 0.000000 0.000000 box + (BinaryOpNode) 0.000000 1.000000 box + (ExprNode) 0.000000 2.000000 box + (ASTNode) 0.000000 3.000000 box + +% ----- relations ----- + +solid +0 0.000000 0.000000 out +solid +1 0.000000 1.000000 in +solid +0 0.000000 1.000000 out +solid +1 0.000000 2.000000 in +solid +0 0.000000 2.000000 out +solid +1 0.000000 3.000000 in diff --git a/docs/latex/class_sum_node.pdf b/docs/latex/class_sum_node.pdf new file mode 100644 index 0000000000000000000000000000000000000000..edef369456956709f643202e28dccdd4fcfcdabc GIT binary patch literal 5988 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 Z0$} + +Inheritance diagram for Sum\+Node\+:\begin{figure}[H] +\begin{center} +\leavevmode +\includegraphics[height=4.000000cm]{class_sum_node} +\end{center} +\end{figure} +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{class_sum_node_a35d1a4b581dc1f943065fe4f55e586b6}{Sum\+Node}} (std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{class_expr_node}{Expr\+Node}} $>$ \mbox{\hyperlink{class_binary_op_node_acee80276ab94e9faf3f2da1a9f323a44}{left}}, std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{class_expr_node}{Expr\+Node}} $>$ \mbox{\hyperlink{class_binary_op_node_afacda981cb1bb277f0625a5e78431582}{right}}, char op) +\item +\mbox{\hyperlink{class_sum_node_aaaba707d1ba3c11e6b8b875c1596bc03}{$\sim$\+Sum\+Node}} () +\end{DoxyCompactItemize} +\doxysubsection*{Additional Inherited Members} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{class_sum_node_a35d1a4b581dc1f943065fe4f55e586b6}\label{class_sum_node_a35d1a4b581dc1f943065fe4f55e586b6}} +\index{SumNode@{SumNode}!SumNode@{SumNode}} +\index{SumNode@{SumNode}!SumNode@{SumNode}} +\doxysubsubsection{\texorpdfstring{SumNode()}{SumNode()}} +{\footnotesize\ttfamily Sum\+Node\+::\+Sum\+Node (\begin{DoxyParamCaption}\item[{std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{class_expr_node}{Expr\+Node}} $>$}]{left, }\item[{std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{class_expr_node}{Expr\+Node}} $>$}]{right, }\item[{char}]{op }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{class_sum_node_aaaba707d1ba3c11e6b8b875c1596bc03}\label{class_sum_node_aaaba707d1ba3c11e6b8b875c1596bc03}} +\index{SumNode@{SumNode}!````~SumNode@{$\sim$SumNode}} +\index{````~SumNode@{$\sim$SumNode}!SumNode@{SumNode}} +\doxysubsubsection{\texorpdfstring{$\sim$SumNode()}{~SumNode()}} +{\footnotesize\ttfamily Sum\+Node\+::$\sim$\+Sum\+Node (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + + + +The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize} +\item +src/\+AST/\mbox{\hyperlink{_sum_node_8h}{Sum\+Node.\+h}}\item +src/\+AST/\mbox{\hyperlink{_sum_node_8cpp}{Sum\+Node.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/dir_2753544c6f01c90a87473366a10a4997.tex b/docs/latex/dir_2753544c6f01c90a87473366a10a4997.tex new file mode 100644 index 0000000..0d7c00a --- /dev/null +++ b/docs/latex/dir_2753544c6f01c90a87473366a10a4997.tex @@ -0,0 +1,33 @@ +\hypertarget{dir_2753544c6f01c90a87473366a10a4997}{}\doxysection{src/\+AST Directory Reference} +\label{dir_2753544c6f01c90a87473366a10a4997}\index{src/AST Directory Reference@{src/AST Directory Reference}} +\doxysubsection*{Files} +\begin{DoxyCompactItemize} +\item +file \mbox{\hyperlink{_a_s_t_node_8cpp}{ASTNode.\+cpp}} +\item +file \mbox{\hyperlink{_a_s_t_node_8h}{ASTNode.\+h}} +\item +file \mbox{\hyperlink{_binary_op_node_8cpp}{Binary\+Op\+Node.\+cpp}} +\item +file \mbox{\hyperlink{_binary_op_node_8h}{Binary\+Op\+Node.\+h}} +\item +file \mbox{\hyperlink{_expr_node_8cpp}{Expr\+Node.\+cpp}} +\item +file \mbox{\hyperlink{_expr_node_8h}{Expr\+Node.\+h}} +\item +file \mbox{\hyperlink{_mul_node_8cpp}{Mul\+Node.\+cpp}} +\item +file \mbox{\hyperlink{_mul_node_8h}{Mul\+Node.\+h}} +\item +file \mbox{\hyperlink{_number_node_8cpp}{Number\+Node.\+cpp}} +\item +file \mbox{\hyperlink{_number_node_8h}{Number\+Node.\+h}} +\item +file \mbox{\hyperlink{_statement_node_8cpp}{Statement\+Node.\+cpp}} +\item +file \mbox{\hyperlink{_statement_node_8h}{Statement\+Node.\+h}} +\item +file \mbox{\hyperlink{_sum_node_8cpp}{Sum\+Node.\+cpp}} +\item +file \mbox{\hyperlink{_sum_node_8h}{Sum\+Node.\+h}} +\end{DoxyCompactItemize} diff --git a/docs/latex/dir_68267d1309a1af8e8297ef4c3efbcdba.tex b/docs/latex/dir_68267d1309a1af8e8297ef4c3efbcdba.tex new file mode 100644 index 0000000..ae98a31 --- /dev/null +++ b/docs/latex/dir_68267d1309a1af8e8297ef4c3efbcdba.tex @@ -0,0 +1,56 @@ +\hypertarget{dir_68267d1309a1af8e8297ef4c3efbcdba}{}\doxysection{src Directory Reference} +\label{dir_68267d1309a1af8e8297ef4c3efbcdba}\index{src Directory Reference@{src Directory Reference}} +\doxysubsection*{Directories} +\begin{DoxyCompactItemize} +\item +directory \mbox{\hyperlink{dir_2753544c6f01c90a87473366a10a4997}{AST}} +\item +directory \mbox{\hyperlink{dir_ab56abf3846346f4195c14ed00ef0a8f}{Format\+String}} +\end{DoxyCompactItemize} +\doxysubsection*{Files} +\begin{DoxyCompactItemize} +\item +file \mbox{\hyperlink{_arguments_8cpp}{Arguments.\+cpp}} +\item +file \mbox{\hyperlink{_arguments_8h}{Arguments.\+h}} +\item +file \mbox{\hyperlink{_error_8cpp}{Error.\+cpp}} +\item +file \mbox{\hyperlink{_error_8h}{Error.\+h}} +\item +file \mbox{\hyperlink{_file_i_o_8cpp}{File\+IO.\+cpp}} +\item +file \mbox{\hyperlink{_file_i_o_8h}{File\+IO.\+h}} +\item +file \mbox{\hyperlink{_importer_8cpp}{Importer.\+cpp}} +\item +file \mbox{\hyperlink{_importer_8h}{Importer.\+h}} +\item +file \mbox{\hyperlink{_lexer_8cpp}{Lexer.\+cpp}} +\item +file \mbox{\hyperlink{_lexer_8h}{Lexer.\+h}} +\item +file \mbox{\hyperlink{_location_8cpp}{Location.\+cpp}} +\item +file \mbox{\hyperlink{_location_8h}{Location.\+h}} +\item +file \mbox{\hyperlink{_normalizer_8cpp}{Normalizer.\+cpp}} +\item +file \mbox{\hyperlink{_normalizer_8h}{Normalizer.\+h}} +\item +file \mbox{\hyperlink{_parser_8cpp}{Parser.\+cpp}} +\item +file \mbox{\hyperlink{_parser_8h}{Parser.\+h}} +\item +file \mbox{\hyperlink{sapphire_8cpp}{sapphire.\+cpp}} +\item +file \mbox{\hyperlink{sapphirepch_8h}{sapphirepch.\+h}} +\item +file \mbox{\hyperlink{_token_8cpp}{Token.\+cpp}} +\item +file \mbox{\hyperlink{_token_8h}{Token.\+h}} +\item +file \mbox{\hyperlink{utils_8cpp}{utils.\+cpp}} +\item +file \mbox{\hyperlink{utils_8h}{utils.\+h}} +\end{DoxyCompactItemize} diff --git a/docs/latex/dir_ab56abf3846346f4195c14ed00ef0a8f.tex b/docs/latex/dir_ab56abf3846346f4195c14ed00ef0a8f.tex new file mode 100644 index 0000000..8de6d05 --- /dev/null +++ b/docs/latex/dir_ab56abf3846346f4195c14ed00ef0a8f.tex @@ -0,0 +1,7 @@ +\hypertarget{dir_ab56abf3846346f4195c14ed00ef0a8f}{}\doxysection{src/\+Format\+String Directory Reference} +\label{dir_ab56abf3846346f4195c14ed00ef0a8f}\index{src/FormatString Directory Reference@{src/FormatString Directory Reference}} +\doxysubsection*{Files} +\begin{DoxyCompactItemize} +\item +file \mbox{\hyperlink{_format_string_8hpp}{Format\+String.\+hpp}} +\end{DoxyCompactItemize} diff --git a/docs/latex/files.tex b/docs/latex/files.tex new file mode 100644 index 0000000..86509d2 --- /dev/null +++ b/docs/latex/files.tex @@ -0,0 +1,40 @@ +\doxysection{File List} +Here is a list of all files with brief descriptions\+:\begin{DoxyCompactList} +\item\contentsline{section}{src/\mbox{\hyperlink{_arguments_8cpp}{Arguments.\+cpp}} }{\pageref{_arguments_8cpp}}{} +\item\contentsline{section}{src/\mbox{\hyperlink{_arguments_8h}{Arguments.\+h}} }{\pageref{_arguments_8h}}{} +\item\contentsline{section}{src/\mbox{\hyperlink{_error_8cpp}{Error.\+cpp}} }{\pageref{_error_8cpp}}{} +\item\contentsline{section}{src/\mbox{\hyperlink{_error_8h}{Error.\+h}} }{\pageref{_error_8h}}{} +\item\contentsline{section}{src/\mbox{\hyperlink{_file_i_o_8cpp}{File\+IO.\+cpp}} }{\pageref{_file_i_o_8cpp}}{} +\item\contentsline{section}{src/\mbox{\hyperlink{_file_i_o_8h}{File\+IO.\+h}} }{\pageref{_file_i_o_8h}}{} +\item\contentsline{section}{src/\mbox{\hyperlink{_importer_8cpp}{Importer.\+cpp}} }{\pageref{_importer_8cpp}}{} +\item\contentsline{section}{src/\mbox{\hyperlink{_importer_8h}{Importer.\+h}} }{\pageref{_importer_8h}}{} +\item\contentsline{section}{src/\mbox{\hyperlink{_lexer_8cpp}{Lexer.\+cpp}} }{\pageref{_lexer_8cpp}}{} +\item\contentsline{section}{src/\mbox{\hyperlink{_lexer_8h}{Lexer.\+h}} }{\pageref{_lexer_8h}}{} +\item\contentsline{section}{src/\mbox{\hyperlink{_location_8cpp}{Location.\+cpp}} }{\pageref{_location_8cpp}}{} +\item\contentsline{section}{src/\mbox{\hyperlink{_location_8h}{Location.\+h}} }{\pageref{_location_8h}}{} +\item\contentsline{section}{src/\mbox{\hyperlink{_normalizer_8cpp}{Normalizer.\+cpp}} }{\pageref{_normalizer_8cpp}}{} +\item\contentsline{section}{src/\mbox{\hyperlink{_normalizer_8h}{Normalizer.\+h}} }{\pageref{_normalizer_8h}}{} +\item\contentsline{section}{src/\mbox{\hyperlink{_parser_8cpp}{Parser.\+cpp}} }{\pageref{_parser_8cpp}}{} +\item\contentsline{section}{src/\mbox{\hyperlink{_parser_8h}{Parser.\+h}} }{\pageref{_parser_8h}}{} +\item\contentsline{section}{src/\mbox{\hyperlink{sapphire_8cpp}{sapphire.\+cpp}} }{\pageref{sapphire_8cpp}}{} +\item\contentsline{section}{src/\mbox{\hyperlink{sapphirepch_8h}{sapphirepch.\+h}} }{\pageref{sapphirepch_8h}}{} +\item\contentsline{section}{src/\mbox{\hyperlink{_token_8cpp}{Token.\+cpp}} }{\pageref{_token_8cpp}}{} +\item\contentsline{section}{src/\mbox{\hyperlink{_token_8h}{Token.\+h}} }{\pageref{_token_8h}}{} +\item\contentsline{section}{src/\mbox{\hyperlink{utils_8cpp}{utils.\+cpp}} }{\pageref{utils_8cpp}}{} +\item\contentsline{section}{src/\mbox{\hyperlink{utils_8h}{utils.\+h}} }{\pageref{utils_8h}}{} +\item\contentsline{section}{src/\+AST/\mbox{\hyperlink{_a_s_t_node_8cpp}{ASTNode.\+cpp}} }{\pageref{_a_s_t_node_8cpp}}{} +\item\contentsline{section}{src/\+AST/\mbox{\hyperlink{_a_s_t_node_8h}{ASTNode.\+h}} }{\pageref{_a_s_t_node_8h}}{} +\item\contentsline{section}{src/\+AST/\mbox{\hyperlink{_binary_op_node_8cpp}{Binary\+Op\+Node.\+cpp}} }{\pageref{_binary_op_node_8cpp}}{} +\item\contentsline{section}{src/\+AST/\mbox{\hyperlink{_binary_op_node_8h}{Binary\+Op\+Node.\+h}} }{\pageref{_binary_op_node_8h}}{} +\item\contentsline{section}{src/\+AST/\mbox{\hyperlink{_expr_node_8cpp}{Expr\+Node.\+cpp}} }{\pageref{_expr_node_8cpp}}{} +\item\contentsline{section}{src/\+AST/\mbox{\hyperlink{_expr_node_8h}{Expr\+Node.\+h}} }{\pageref{_expr_node_8h}}{} +\item\contentsline{section}{src/\+AST/\mbox{\hyperlink{_mul_node_8cpp}{Mul\+Node.\+cpp}} }{\pageref{_mul_node_8cpp}}{} +\item\contentsline{section}{src/\+AST/\mbox{\hyperlink{_mul_node_8h}{Mul\+Node.\+h}} }{\pageref{_mul_node_8h}}{} +\item\contentsline{section}{src/\+AST/\mbox{\hyperlink{_number_node_8cpp}{Number\+Node.\+cpp}} }{\pageref{_number_node_8cpp}}{} +\item\contentsline{section}{src/\+AST/\mbox{\hyperlink{_number_node_8h}{Number\+Node.\+h}} }{\pageref{_number_node_8h}}{} +\item\contentsline{section}{src/\+AST/\mbox{\hyperlink{_statement_node_8cpp}{Statement\+Node.\+cpp}} }{\pageref{_statement_node_8cpp}}{} +\item\contentsline{section}{src/\+AST/\mbox{\hyperlink{_statement_node_8h}{Statement\+Node.\+h}} }{\pageref{_statement_node_8h}}{} +\item\contentsline{section}{src/\+AST/\mbox{\hyperlink{_sum_node_8cpp}{Sum\+Node.\+cpp}} }{\pageref{_sum_node_8cpp}}{} +\item\contentsline{section}{src/\+AST/\mbox{\hyperlink{_sum_node_8h}{Sum\+Node.\+h}} }{\pageref{_sum_node_8h}}{} +\item\contentsline{section}{src/\+Format\+String/\mbox{\hyperlink{_format_string_8hpp}{Format\+String.\+hpp}} }{\pageref{_format_string_8hpp}}{} +\end{DoxyCompactList} diff --git a/docs/latex/hierarchy.tex b/docs/latex/hierarchy.tex new file mode 100644 index 0000000..32a4d1f --- /dev/null +++ b/docs/latex/hierarchy.tex @@ -0,0 +1,22 @@ +\doxysection{Class Hierarchy} +This inheritance list is sorted roughly, but not completely, alphabetically\+:\begin{DoxyCompactList} +\item \contentsline{section}{\+\_\+\+\_\+benchmark\+\_\+impl}{\pageref{class____benchmark__impl}}{} +\item \contentsline{section}{Arguments}{\pageref{struct_arguments}}{} +\item \contentsline{section}{ASTNode}{\pageref{class_a_s_t_node}}{} +\begin{DoxyCompactList} +\item \contentsline{section}{Expr\+Node}{\pageref{class_expr_node}}{} +\begin{DoxyCompactList} +\item \contentsline{section}{Binary\+Op\+Node}{\pageref{class_binary_op_node}}{} +\begin{DoxyCompactList} +\item \contentsline{section}{Mul\+Node}{\pageref{class_mul_node}}{} +\item \contentsline{section}{Sum\+Node}{\pageref{class_sum_node}}{} +\end{DoxyCompactList} +\item \contentsline{section}{Number\+Node}{\pageref{class_number_node}}{} +\end{DoxyCompactList} +\item \contentsline{section}{Statement\+Node}{\pageref{class_statement_node}}{} +\end{DoxyCompactList} +\item \contentsline{section}{Lexer}{\pageref{class_lexer}}{} +\item \contentsline{section}{Location}{\pageref{struct_location}}{} +\item \contentsline{section}{Parser}{\pageref{class_parser}}{} +\item \contentsline{section}{Token}{\pageref{struct_token}}{} +\end{DoxyCompactList} diff --git a/docs/latex/namespace_error.tex b/docs/latex/namespace_error.tex new file mode 100644 index 0000000..65a3a27 --- /dev/null +++ b/docs/latex/namespace_error.tex @@ -0,0 +1,48 @@ +\hypertarget{namespace_error}{}\doxysection{Error Namespace Reference} +\label{namespace_error}\index{Error@{Error}} +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +void \mbox{\hyperlink{namespace_error_aa3680909596c6ac37bc0579385b59632}{show\+\_\+import\+\_\+line}} (const \mbox{\hyperlink{struct_location}{Location}} \&loc, std\+::ostream \&output\+\_\+stream) +\item +void \mbox{\hyperlink{namespace_error_a52e79c9d3b4d7280ffee959c4646675f}{throw\+\_\+error}} (const \mbox{\hyperlink{struct_location}{Location}} \&loc, const std\+::string line\+\_\+text, const std\+::string \&details) +\item +void \mbox{\hyperlink{namespace_error_a97056e92a18863fb0f490c73bc089fbe}{throw\+\_\+error\+\_\+without\+\_\+location}} (const std\+::string \&details) +\item +void \mbox{\hyperlink{namespace_error_ab62bae2c735ea379eab3a8039c2c1ade}{throw\+\_\+warning}} (const \mbox{\hyperlink{struct_location}{Location}} \&loc, const std\+::string line\+\_\+text, const std\+::string \&details) +\item +void \mbox{\hyperlink{namespace_error_a938494fd39f939d79cd611b5bd2f2b67}{show\+\_\+import\+\_\+lines}} (const \mbox{\hyperlink{struct_location}{Location}} \&loc, void($\ast$import\+\_\+line\+\_\+printer)(const \mbox{\hyperlink{struct_location}{Location}} \&, std\+::ostream \&), std\+::ostream \&stream) +\end{DoxyCompactItemize} + + +\doxysubsection{Function Documentation} +\mbox{\Hypertarget{namespace_error_aa3680909596c6ac37bc0579385b59632}\label{namespace_error_aa3680909596c6ac37bc0579385b59632}} +\index{Error@{Error}!show\_import\_line@{show\_import\_line}} +\index{show\_import\_line@{show\_import\_line}!Error@{Error}} +\doxysubsubsection{\texorpdfstring{show\_import\_line()}{show\_import\_line()}} +{\footnotesize\ttfamily void Error\+::show\+\_\+import\+\_\+line (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{struct_location}{Location}} \&}]{loc, }\item[{std\+::ostream \&}]{output\+\_\+stream }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{namespace_error_a938494fd39f939d79cd611b5bd2f2b67}\label{namespace_error_a938494fd39f939d79cd611b5bd2f2b67}} +\index{Error@{Error}!show\_import\_lines@{show\_import\_lines}} +\index{show\_import\_lines@{show\_import\_lines}!Error@{Error}} +\doxysubsubsection{\texorpdfstring{show\_import\_lines()}{show\_import\_lines()}} +{\footnotesize\ttfamily void Error\+::show\+\_\+import\+\_\+lines (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{struct_location}{Location}} \&}]{loc, }\item[{void($\ast$)(const \mbox{\hyperlink{struct_location}{Location}} \&, std\+::ostream \&)}]{import\+\_\+line\+\_\+printer, }\item[{std\+::ostream \&}]{stream }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{namespace_error_a52e79c9d3b4d7280ffee959c4646675f}\label{namespace_error_a52e79c9d3b4d7280ffee959c4646675f}} +\index{Error@{Error}!throw\_error@{throw\_error}} +\index{throw\_error@{throw\_error}!Error@{Error}} +\doxysubsubsection{\texorpdfstring{throw\_error()}{throw\_error()}} +{\footnotesize\ttfamily void Error\+::throw\+\_\+error (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{struct_location}{Location}} \&}]{loc, }\item[{const std\+::string}]{line\+\_\+text, }\item[{const std\+::string \&}]{details }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{namespace_error_a97056e92a18863fb0f490c73bc089fbe}\label{namespace_error_a97056e92a18863fb0f490c73bc089fbe}} +\index{Error@{Error}!throw\_error\_without\_location@{throw\_error\_without\_location}} +\index{throw\_error\_without\_location@{throw\_error\_without\_location}!Error@{Error}} +\doxysubsubsection{\texorpdfstring{throw\_error\_without\_location()}{throw\_error\_without\_location()}} +{\footnotesize\ttfamily void Error\+::throw\+\_\+error\+\_\+without\+\_\+location (\begin{DoxyParamCaption}\item[{const std\+::string \&}]{details }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{namespace_error_ab62bae2c735ea379eab3a8039c2c1ade}\label{namespace_error_ab62bae2c735ea379eab3a8039c2c1ade}} +\index{Error@{Error}!throw\_warning@{throw\_warning}} +\index{throw\_warning@{throw\_warning}!Error@{Error}} +\doxysubsubsection{\texorpdfstring{throw\_warning()}{throw\_warning()}} +{\footnotesize\ttfamily void Error\+::throw\+\_\+warning (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{struct_location}{Location}} \&}]{loc, }\item[{const std\+::string}]{line\+\_\+text, }\item[{const std\+::string \&}]{details }\end{DoxyParamCaption})} + diff --git a/docs/latex/namespace_file_i_o.tex b/docs/latex/namespace_file_i_o.tex new file mode 100644 index 0000000..5c583a0 --- /dev/null +++ b/docs/latex/namespace_file_i_o.tex @@ -0,0 +1,32 @@ +\hypertarget{namespace_file_i_o}{}\doxysection{File\+IO Namespace Reference} +\label{namespace_file_i_o}\index{FileIO@{FileIO}} +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +std\+::string \mbox{\hyperlink{namespace_file_i_o_ab49a427f3ddb1f750b4314dfdb17be2b}{read\+\_\+all}} (const std\+::string \&filename) +\item +void \mbox{\hyperlink{namespace_file_i_o_a84b962dcd17d16c361902d8b179d3b47}{write\+\_\+all}} (const std\+::string \&filename, const std\+::string \&contents) +\item +std\+::string \mbox{\hyperlink{namespace_file_i_o_a3aa60357e37b7acc57f3e89e80d6e7a4}{remove\+\_\+file\+\_\+extension}} (const std\+::string \&filename) +\end{DoxyCompactItemize} + + +\doxysubsection{Function Documentation} +\mbox{\Hypertarget{namespace_file_i_o_ab49a427f3ddb1f750b4314dfdb17be2b}\label{namespace_file_i_o_ab49a427f3ddb1f750b4314dfdb17be2b}} +\index{FileIO@{FileIO}!read\_all@{read\_all}} +\index{read\_all@{read\_all}!FileIO@{FileIO}} +\doxysubsubsection{\texorpdfstring{read\_all()}{read\_all()}} +{\footnotesize\ttfamily std\+::string File\+IO\+::read\+\_\+all (\begin{DoxyParamCaption}\item[{const std\+::string \&}]{filename }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{namespace_file_i_o_a3aa60357e37b7acc57f3e89e80d6e7a4}\label{namespace_file_i_o_a3aa60357e37b7acc57f3e89e80d6e7a4}} +\index{FileIO@{FileIO}!remove\_file\_extension@{remove\_file\_extension}} +\index{remove\_file\_extension@{remove\_file\_extension}!FileIO@{FileIO}} +\doxysubsubsection{\texorpdfstring{remove\_file\_extension()}{remove\_file\_extension()}} +{\footnotesize\ttfamily std\+::string File\+IO\+::remove\+\_\+file\+\_\+extension (\begin{DoxyParamCaption}\item[{const std\+::string \&}]{filename }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{namespace_file_i_o_a84b962dcd17d16c361902d8b179d3b47}\label{namespace_file_i_o_a84b962dcd17d16c361902d8b179d3b47}} +\index{FileIO@{FileIO}!write\_all@{write\_all}} +\index{write\_all@{write\_all}!FileIO@{FileIO}} +\doxysubsubsection{\texorpdfstring{write\_all()}{write\_all()}} +{\footnotesize\ttfamily void File\+IO\+::write\+\_\+all (\begin{DoxyParamCaption}\item[{const std\+::string \&}]{filename, }\item[{const std\+::string \&}]{contents }\end{DoxyParamCaption})} + diff --git a/docs/latex/namespace_importer.tex b/docs/latex/namespace_importer.tex new file mode 100644 index 0000000..e8b2178 --- /dev/null +++ b/docs/latex/namespace_importer.tex @@ -0,0 +1,54 @@ +\hypertarget{namespace_importer}{}\doxysection{Importer Namespace Reference} +\label{namespace_importer}\index{Importer@{Importer}} +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{_lexer_8h_a43f892d4a347a32f8602cfbcff2e237e}{Token\+Stream}} \mbox{\hyperlink{namespace_importer_ae5e2ed66024ff80241bd740c66745bd6}{evaluate}} (const \mbox{\hyperlink{_lexer_8h_a43f892d4a347a32f8602cfbcff2e237e}{Token\+Stream}} \&original) +\item +void \mbox{\hyperlink{namespace_importer_abd3407990e0fe2e71bb95782791ee1c9}{init}} (std\+::string init\+\_\+file) +\end{DoxyCompactItemize} +\doxysubsection*{Variables} +\begin{DoxyCompactItemize} +\item +int \mbox{\hyperlink{namespace_importer_a868c1a6abdf06ce496f3b66e62a6d5f0}{import\+\_\+count}} = 0 +\item +std\+::vector$<$ std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{struct_location}{Location}} $>$ $>$ \mbox{\hyperlink{namespace_importer_a15ee91166a2ddf7756aec26590c5ce93}{import\+\_\+stack}} +\item +std\+::vector$<$ std\+::string $>$ \mbox{\hyperlink{namespace_importer_a9525c45990838226b598b1e618bdb94d}{imported\+\_\+files}} +\end{DoxyCompactItemize} + + +\doxysubsection{Function Documentation} +\mbox{\Hypertarget{namespace_importer_ae5e2ed66024ff80241bd740c66745bd6}\label{namespace_importer_ae5e2ed66024ff80241bd740c66745bd6}} +\index{Importer@{Importer}!evaluate@{evaluate}} +\index{evaluate@{evaluate}!Importer@{Importer}} +\doxysubsubsection{\texorpdfstring{evaluate()}{evaluate()}} +{\footnotesize\ttfamily \mbox{\hyperlink{_lexer_8h_a43f892d4a347a32f8602cfbcff2e237e}{Token\+Stream}} Importer\+::evaluate (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{_lexer_8h_a43f892d4a347a32f8602cfbcff2e237e}{Token\+Stream}} \&}]{original }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{namespace_importer_abd3407990e0fe2e71bb95782791ee1c9}\label{namespace_importer_abd3407990e0fe2e71bb95782791ee1c9}} +\index{Importer@{Importer}!init@{init}} +\index{init@{init}!Importer@{Importer}} +\doxysubsubsection{\texorpdfstring{init()}{init()}} +{\footnotesize\ttfamily void Importer\+::init (\begin{DoxyParamCaption}\item[{std\+::string}]{init\+\_\+file }\end{DoxyParamCaption})} + + + +\doxysubsection{Variable Documentation} +\mbox{\Hypertarget{namespace_importer_a868c1a6abdf06ce496f3b66e62a6d5f0}\label{namespace_importer_a868c1a6abdf06ce496f3b66e62a6d5f0}} +\index{Importer@{Importer}!import\_count@{import\_count}} +\index{import\_count@{import\_count}!Importer@{Importer}} +\doxysubsubsection{\texorpdfstring{import\_count}{import\_count}} +{\footnotesize\ttfamily int Importer\+::import\+\_\+count = 0\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{namespace_importer_a15ee91166a2ddf7756aec26590c5ce93}\label{namespace_importer_a15ee91166a2ddf7756aec26590c5ce93}} +\index{Importer@{Importer}!import\_stack@{import\_stack}} +\index{import\_stack@{import\_stack}!Importer@{Importer}} +\doxysubsubsection{\texorpdfstring{import\_stack}{import\_stack}} +{\footnotesize\ttfamily std\+::vector$<$ std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{struct_location}{Location}} $>$ $>$ Importer\+::import\+\_\+stack\hspace{0.3cm}{\ttfamily [extern]}} + +\mbox{\Hypertarget{namespace_importer_a9525c45990838226b598b1e618bdb94d}\label{namespace_importer_a9525c45990838226b598b1e618bdb94d}} +\index{Importer@{Importer}!imported\_files@{imported\_files}} +\index{imported\_files@{imported\_files}!Importer@{Importer}} +\doxysubsubsection{\texorpdfstring{imported\_files}{imported\_files}} +{\footnotesize\ttfamily std\+::vector$<$ std\+::string $>$ Importer\+::imported\+\_\+files\hspace{0.3cm}{\ttfamily [extern]}} + diff --git a/docs/latex/namespace_normalizer.tex b/docs/latex/namespace_normalizer.tex new file mode 100644 index 0000000..a066820 --- /dev/null +++ b/docs/latex/namespace_normalizer.tex @@ -0,0 +1,16 @@ +\hypertarget{namespace_normalizer}{}\doxysection{Normalizer Namespace Reference} +\label{namespace_normalizer}\index{Normalizer@{Normalizer}} +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{_lexer_8h_a43f892d4a347a32f8602cfbcff2e237e}{Token\+Stream}} \mbox{\hyperlink{namespace_normalizer_a89d929aace148fe5c998416863397f39}{normalize}} (const \mbox{\hyperlink{_lexer_8h_a43f892d4a347a32f8602cfbcff2e237e}{Token\+Stream}} \&input) +\end{DoxyCompactItemize} + + +\doxysubsection{Function Documentation} +\mbox{\Hypertarget{namespace_normalizer_a89d929aace148fe5c998416863397f39}\label{namespace_normalizer_a89d929aace148fe5c998416863397f39}} +\index{Normalizer@{Normalizer}!normalize@{normalize}} +\index{normalize@{normalize}!Normalizer@{Normalizer}} +\doxysubsubsection{\texorpdfstring{normalize()}{normalize()}} +{\footnotesize\ttfamily \mbox{\hyperlink{_lexer_8h_a43f892d4a347a32f8602cfbcff2e237e}{Token\+Stream}} Normalizer\+::normalize (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{_lexer_8h_a43f892d4a347a32f8602cfbcff2e237e}{Token\+Stream}} \&}]{input }\end{DoxyParamCaption})} + diff --git a/docs/latex/namespaces.tex b/docs/latex/namespaces.tex new file mode 100644 index 0000000..0bac55f --- /dev/null +++ b/docs/latex/namespaces.tex @@ -0,0 +1,7 @@ +\doxysection{Namespace List} +Here is a list of all namespaces with brief descriptions\+:\begin{DoxyCompactList} +\item\contentsline{section}{\mbox{\hyperlink{namespace_error}{Error}} }{\pageref{namespace_error}}{} +\item\contentsline{section}{\mbox{\hyperlink{namespace_file_i_o}{File\+IO}} }{\pageref{namespace_file_i_o}}{} +\item\contentsline{section}{\mbox{\hyperlink{namespace_importer}{Importer}} }{\pageref{namespace_importer}}{} +\item\contentsline{section}{\mbox{\hyperlink{namespace_normalizer}{Normalizer}} }{\pageref{namespace_normalizer}}{} +\end{DoxyCompactList} diff --git a/docs/latex/refman.tex b/docs/latex/refman.tex index a5700e4..9d10081 100644 --- a/docs/latex/refman.tex +++ b/docs/latex/refman.tex @@ -171,15 +171,71 @@ \hypersetup{pageanchor=true} %--- Begin generated contents --- +\chapter{Namespace Index} +\input{namespaces} +\chapter{Hierarchical Index} +\input{hierarchy} \chapter{Class Index} \input{annotated} +\chapter{File Index} +\input{files} +\chapter{Namespace Documentation} +\input{namespace_error} +\input{namespace_file_i_o} +\input{namespace_importer} +\input{namespace_normalizer} \chapter{Class Documentation} \input{class____benchmark__impl} -\input{structArguments} -\input{classLexer} -\input{structLocation} -\input{classParser} -\input{structToken} +\input{struct_arguments} +\input{class_a_s_t_node} +\input{class_binary_op_node} +\input{class_expr_node} +\input{class_lexer} +\input{struct_location} +\input{class_mul_node} +\input{class_number_node} +\input{class_parser} +\input{class_statement_node} +\input{class_sum_node} +\input{struct_token} +\chapter{File Documentation} +\input{_arguments_8cpp} +\input{_arguments_8h} +\input{_a_s_t_node_8cpp} +\input{_a_s_t_node_8h} +\input{_binary_op_node_8cpp} +\input{_binary_op_node_8h} +\input{_expr_node_8cpp} +\input{_expr_node_8h} +\input{_mul_node_8cpp} +\input{_mul_node_8h} +\input{_number_node_8cpp} +\input{_number_node_8h} +\input{_statement_node_8cpp} +\input{_statement_node_8h} +\input{_sum_node_8cpp} +\input{_sum_node_8h} +\input{_error_8cpp} +\input{_error_8h} +\input{_file_i_o_8cpp} +\input{_file_i_o_8h} +\input{_format_string_8hpp} +\input{_importer_8cpp} +\input{_importer_8h} +\input{_lexer_8cpp} +\input{_lexer_8h} +\input{_location_8cpp} +\input{_location_8h} +\input{_normalizer_8cpp} +\input{_normalizer_8h} +\input{_parser_8cpp} +\input{_parser_8h} +\input{sapphire_8cpp} +\input{sapphirepch_8h} +\input{_token_8cpp} +\input{_token_8h} +\input{utils_8cpp} +\input{utils_8h} %--- End generated contents --- % Index diff --git a/docs/latex/sapphire_8cpp.tex b/docs/latex/sapphire_8cpp.tex new file mode 100644 index 0000000..d26c4fb --- /dev/null +++ b/docs/latex/sapphire_8cpp.tex @@ -0,0 +1,23 @@ +\hypertarget{sapphire_8cpp}{}\doxysection{src/sapphire.cpp File Reference} +\label{sapphire_8cpp}\index{src/sapphire.cpp@{src/sapphire.cpp}} +{\ttfamily \#include \char`\"{}Arguments.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}File\+IO.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Importer.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Lexer.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}Normalizer.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}sapphirepch.\+h\char`\"{}}\newline +{\ttfamily \#include \char`\"{}utils.\+h\char`\"{}}\newline +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +int \mbox{\hyperlink{sapphire_8cpp_a3c04138a5bfe5d72780bb7e82a18e627}{main}} (int argc, char $\ast$$\ast$argv) +\end{DoxyCompactItemize} + + +\doxysubsection{Function Documentation} +\mbox{\Hypertarget{sapphire_8cpp_a3c04138a5bfe5d72780bb7e82a18e627}\label{sapphire_8cpp_a3c04138a5bfe5d72780bb7e82a18e627}} +\index{sapphire.cpp@{sapphire.cpp}!main@{main}} +\index{main@{main}!sapphire.cpp@{sapphire.cpp}} +\doxysubsubsection{\texorpdfstring{main()}{main()}} +{\footnotesize\ttfamily int main (\begin{DoxyParamCaption}\item[{int}]{argc, }\item[{char $\ast$$\ast$}]{argv }\end{DoxyParamCaption})} + diff --git a/docs/latex/sapphirepch_8h.tex b/docs/latex/sapphirepch_8h.tex new file mode 100644 index 0000000..986ab26 --- /dev/null +++ b/docs/latex/sapphirepch_8h.tex @@ -0,0 +1,9 @@ +\hypertarget{sapphirepch_8h}{}\doxysection{src/sapphirepch.h File Reference} +\label{sapphirepch_8h}\index{src/sapphirepch.h@{src/sapphirepch.h}} +{\ttfamily \#include $<$algorithm$>$}\newline +{\ttfamily \#include $<$cassert$>$}\newline +{\ttfamily \#include $<$iostream$>$}\newline +{\ttfamily \#include $<$memory$>$}\newline +{\ttfamily \#include $<$string$>$}\newline +{\ttfamily \#include $<$string\+\_\+view$>$}\newline +{\ttfamily \#include $<$vector$>$}\newline diff --git a/docs/latex/struct_arguments.tex b/docs/latex/struct_arguments.tex new file mode 100644 index 0000000..4e29571 --- /dev/null +++ b/docs/latex/struct_arguments.tex @@ -0,0 +1,72 @@ +\hypertarget{struct_arguments}{}\doxysection{Arguments Struct Reference} +\label{struct_arguments}\index{Arguments@{Arguments}} + + +{\ttfamily \#include $<$Arguments.\+h$>$} + +\doxysubsection*{Static Public Member Functions} +\begin{DoxyCompactItemize} +\item +static void \mbox{\hyperlink{struct_arguments_a473917d0a36d731d31f89d49c2dc528c}{parse}} (int argc, char $\ast$$\ast$argv) +\end{DoxyCompactItemize} +\doxysubsection*{Static Public Attributes} +\begin{DoxyCompactItemize} +\item +static std\+::string \mbox{\hyperlink{struct_arguments_a415be55e6706062e5a393e9db8761b07}{input\+\_\+fname}} +\item +static std\+::string \mbox{\hyperlink{struct_arguments_ad11fab97672b642a76aab7c0217c9f2b}{output\+\_\+fname}} +\item +static bool \mbox{\hyperlink{struct_arguments_a139f6982398f2c790dc298415fc9b007}{wimport}} +\item +static std\+::string \mbox{\hyperlink{struct_arguments_a30c0e29cd531baee48619881301db9d4}{cpu}} +\item +static llvm\+::\+Triple \mbox{\hyperlink{struct_arguments_a7fad3659de10cf771380b86795c21928}{Target\+Triple}} +\end{DoxyCompactItemize} + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{struct_arguments_a473917d0a36d731d31f89d49c2dc528c}\label{struct_arguments_a473917d0a36d731d31f89d49c2dc528c}} +\index{Arguments@{Arguments}!parse@{parse}} +\index{parse@{parse}!Arguments@{Arguments}} +\doxysubsubsection{\texorpdfstring{parse()}{parse()}} +{\footnotesize\ttfamily void Arguments\+::parse (\begin{DoxyParamCaption}\item[{int}]{argc, }\item[{char $\ast$$\ast$}]{argv }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}} + + + +\doxysubsection{Member Data Documentation} +\mbox{\Hypertarget{struct_arguments_a30c0e29cd531baee48619881301db9d4}\label{struct_arguments_a30c0e29cd531baee48619881301db9d4}} +\index{Arguments@{Arguments}!cpu@{cpu}} +\index{cpu@{cpu}!Arguments@{Arguments}} +\doxysubsubsection{\texorpdfstring{cpu}{cpu}} +{\footnotesize\ttfamily std\+::string Arguments\+::cpu\hspace{0.3cm}{\ttfamily [static]}} + +\mbox{\Hypertarget{struct_arguments_a415be55e6706062e5a393e9db8761b07}\label{struct_arguments_a415be55e6706062e5a393e9db8761b07}} +\index{Arguments@{Arguments}!input\_fname@{input\_fname}} +\index{input\_fname@{input\_fname}!Arguments@{Arguments}} +\doxysubsubsection{\texorpdfstring{input\_fname}{input\_fname}} +{\footnotesize\ttfamily std\+::string Arguments\+::input\+\_\+fname\hspace{0.3cm}{\ttfamily [static]}} + +\mbox{\Hypertarget{struct_arguments_ad11fab97672b642a76aab7c0217c9f2b}\label{struct_arguments_ad11fab97672b642a76aab7c0217c9f2b}} +\index{Arguments@{Arguments}!output\_fname@{output\_fname}} +\index{output\_fname@{output\_fname}!Arguments@{Arguments}} +\doxysubsubsection{\texorpdfstring{output\_fname}{output\_fname}} +{\footnotesize\ttfamily std\+::string Arguments\+::output\+\_\+fname\hspace{0.3cm}{\ttfamily [static]}} + +\mbox{\Hypertarget{struct_arguments_a7fad3659de10cf771380b86795c21928}\label{struct_arguments_a7fad3659de10cf771380b86795c21928}} +\index{Arguments@{Arguments}!TargetTriple@{TargetTriple}} +\index{TargetTriple@{TargetTriple}!Arguments@{Arguments}} +\doxysubsubsection{\texorpdfstring{TargetTriple}{TargetTriple}} +{\footnotesize\ttfamily llvm\+::\+Triple Arguments\+::\+Target\+Triple\hspace{0.3cm}{\ttfamily [static]}} + +\mbox{\Hypertarget{struct_arguments_a139f6982398f2c790dc298415fc9b007}\label{struct_arguments_a139f6982398f2c790dc298415fc9b007}} +\index{Arguments@{Arguments}!wimport@{wimport}} +\index{wimport@{wimport}!Arguments@{Arguments}} +\doxysubsubsection{\texorpdfstring{wimport}{wimport}} +{\footnotesize\ttfamily bool Arguments\+::wimport\hspace{0.3cm}{\ttfamily [static]}} + + + +The documentation for this struct was generated from the following files\+:\begin{DoxyCompactItemize} +\item +src/\mbox{\hyperlink{_arguments_8h}{Arguments.\+h}}\item +src/\mbox{\hyperlink{_arguments_8cpp}{Arguments.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/struct_location.tex b/docs/latex/struct_location.tex new file mode 100644 index 0000000..6940eb8 --- /dev/null +++ b/docs/latex/struct_location.tex @@ -0,0 +1,123 @@ +\hypertarget{struct_location}{}\doxysection{Location Struct Reference} +\label{struct_location}\index{Location@{Location}} + + +{\ttfamily \#include $<$Location.\+h$>$} + +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{struct_location_a7d1957f57b0c5b36b2f546d5833d6be6}{Location}} (int ln, int col, std\+::string file) +\item +\mbox{\hyperlink{struct_location_af5be2c6550bbd96137cbb3144ec3c529}{$\sim$\+Location}} () +\item +std\+::string \mbox{\hyperlink{struct_location_acebfd439c295573434454fdd3e116e0e}{str}} () const +\item +std\+::string \mbox{\hyperlink{struct_location_aaa249a0b41e4208fd9346b4744c0a823}{paren\+\_\+str}} () const +\item +void \mbox{\hyperlink{struct_location_a375ecb41aafad3dba17600684cb16a6f}{advance}} () +\item +void \mbox{\hyperlink{struct_location_ab0754b2857e8fc1bb80f0f8c18c629ab}{pos\+\_\+from\+\_\+char}} (const char \&character) +\item +void \mbox{\hyperlink{struct_location_a8646c981888c9d6423e99a0298f9d795}{operator=}} (const \mbox{\hyperlink{struct_location}{Location}} \&other) +\item +void \mbox{\hyperlink{struct_location_a524b9cec2031554ca8f15405ab5ae9ff}{copy}} (const \mbox{\hyperlink{struct_location}{Location}} \&other) +\end{DoxyCompactItemize} +\doxysubsection*{Public Attributes} +\begin{DoxyCompactItemize} +\item +int \mbox{\hyperlink{struct_location_a20371736bca98414df38bc3ae316bd1c}{line}} +\item +int \mbox{\hyperlink{struct_location_ae9cf292727f8758f402671c80d6c4718}{column}} +\item +std\+::string \mbox{\hyperlink{struct_location_a5b691d1c7f3c5c1b7428cf118d3595c8}{fname}} +\item +std\+::shared\+\_\+ptr$<$ \mbox{\hyperlink{struct_location}{Location}} $>$ \mbox{\hyperlink{struct_location_af047bbd018951f48de8adf5a89938acc}{parent}} = nullptr +\end{DoxyCompactItemize} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{struct_location_a7d1957f57b0c5b36b2f546d5833d6be6}\label{struct_location_a7d1957f57b0c5b36b2f546d5833d6be6}} +\index{Location@{Location}!Location@{Location}} +\index{Location@{Location}!Location@{Location}} +\doxysubsubsection{\texorpdfstring{Location()}{Location()}} +{\footnotesize\ttfamily Location\+::\+Location (\begin{DoxyParamCaption}\item[{int}]{ln, }\item[{int}]{col, }\item[{std\+::string}]{file }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{struct_location_af5be2c6550bbd96137cbb3144ec3c529}\label{struct_location_af5be2c6550bbd96137cbb3144ec3c529}} +\index{Location@{Location}!````~Location@{$\sim$Location}} +\index{````~Location@{$\sim$Location}!Location@{Location}} +\doxysubsubsection{\texorpdfstring{$\sim$Location()}{~Location()}} +{\footnotesize\ttfamily Location\+::$\sim$\+Location (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{struct_location_a375ecb41aafad3dba17600684cb16a6f}\label{struct_location_a375ecb41aafad3dba17600684cb16a6f}} +\index{Location@{Location}!advance@{advance}} +\index{advance@{advance}!Location@{Location}} +\doxysubsubsection{\texorpdfstring{advance()}{advance()}} +{\footnotesize\ttfamily void Location\+::advance (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{struct_location_a524b9cec2031554ca8f15405ab5ae9ff}\label{struct_location_a524b9cec2031554ca8f15405ab5ae9ff}} +\index{Location@{Location}!copy@{copy}} +\index{copy@{copy}!Location@{Location}} +\doxysubsubsection{\texorpdfstring{copy()}{copy()}} +{\footnotesize\ttfamily void Location\+::copy (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{struct_location}{Location}} \&}]{other }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{struct_location_a8646c981888c9d6423e99a0298f9d795}\label{struct_location_a8646c981888c9d6423e99a0298f9d795}} +\index{Location@{Location}!operator=@{operator=}} +\index{operator=@{operator=}!Location@{Location}} +\doxysubsubsection{\texorpdfstring{operator=()}{operator=()}} +{\footnotesize\ttfamily void Location\+::operator= (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{struct_location}{Location}} \&}]{other }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{struct_location_aaa249a0b41e4208fd9346b4744c0a823}\label{struct_location_aaa249a0b41e4208fd9346b4744c0a823}} +\index{Location@{Location}!paren\_str@{paren\_str}} +\index{paren\_str@{paren\_str}!Location@{Location}} +\doxysubsubsection{\texorpdfstring{paren\_str()}{paren\_str()}} +{\footnotesize\ttfamily std\+::string Location\+::paren\+\_\+str (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const} + +\mbox{\Hypertarget{struct_location_ab0754b2857e8fc1bb80f0f8c18c629ab}\label{struct_location_ab0754b2857e8fc1bb80f0f8c18c629ab}} +\index{Location@{Location}!pos\_from\_char@{pos\_from\_char}} +\index{pos\_from\_char@{pos\_from\_char}!Location@{Location}} +\doxysubsubsection{\texorpdfstring{pos\_from\_char()}{pos\_from\_char()}} +{\footnotesize\ttfamily void Location\+::pos\+\_\+from\+\_\+char (\begin{DoxyParamCaption}\item[{const char \&}]{character }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{struct_location_acebfd439c295573434454fdd3e116e0e}\label{struct_location_acebfd439c295573434454fdd3e116e0e}} +\index{Location@{Location}!str@{str}} +\index{str@{str}!Location@{Location}} +\doxysubsubsection{\texorpdfstring{str()}{str()}} +{\footnotesize\ttfamily std\+::string Location\+::str (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const} + + + +\doxysubsection{Member Data Documentation} +\mbox{\Hypertarget{struct_location_ae9cf292727f8758f402671c80d6c4718}\label{struct_location_ae9cf292727f8758f402671c80d6c4718}} +\index{Location@{Location}!column@{column}} +\index{column@{column}!Location@{Location}} +\doxysubsubsection{\texorpdfstring{column}{column}} +{\footnotesize\ttfamily int Location\+::column} + +\mbox{\Hypertarget{struct_location_a5b691d1c7f3c5c1b7428cf118d3595c8}\label{struct_location_a5b691d1c7f3c5c1b7428cf118d3595c8}} +\index{Location@{Location}!fname@{fname}} +\index{fname@{fname}!Location@{Location}} +\doxysubsubsection{\texorpdfstring{fname}{fname}} +{\footnotesize\ttfamily std\+::string Location\+::fname} + +\mbox{\Hypertarget{struct_location_a20371736bca98414df38bc3ae316bd1c}\label{struct_location_a20371736bca98414df38bc3ae316bd1c}} +\index{Location@{Location}!line@{line}} +\index{line@{line}!Location@{Location}} +\doxysubsubsection{\texorpdfstring{line}{line}} +{\footnotesize\ttfamily int Location\+::line} + +\mbox{\Hypertarget{struct_location_af047bbd018951f48de8adf5a89938acc}\label{struct_location_af047bbd018951f48de8adf5a89938acc}} +\index{Location@{Location}!parent@{parent}} +\index{parent@{parent}!Location@{Location}} +\doxysubsubsection{\texorpdfstring{parent}{parent}} +{\footnotesize\ttfamily std\+::shared\+\_\+ptr$<$\mbox{\hyperlink{struct_location}{Location}}$>$ Location\+::parent = nullptr} + + + +The documentation for this struct was generated from the following files\+:\begin{DoxyCompactItemize} +\item +src/\mbox{\hyperlink{_location_8h}{Location.\+h}}\item +src/\mbox{\hyperlink{_location_8cpp}{Location.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/struct_token.tex b/docs/latex/struct_token.tex new file mode 100644 index 0000000..e0612ab --- /dev/null +++ b/docs/latex/struct_token.tex @@ -0,0 +1,182 @@ +\hypertarget{struct_token}{}\doxysection{Token Struct Reference} +\label{struct_token}\index{Token@{Token}} + + +{\ttfamily \#include $<$Token.\+h$>$} + +\doxysubsection*{Public Member Functions} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{struct_token_ab74d6b5fef46e3c194229e7a884cad45}{Token}} (const \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921}{Token\+Type}} \&type) +\item +\mbox{\hyperlink{struct_token_a6d4d66f172376503d15b9a2feb5f90e8}{Token}} (const \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921}{Token\+Type}} \&type, const \mbox{\hyperlink{struct_location}{Location}} \&location) +\item +\mbox{\hyperlink{struct_token_a2efe8a7168e6b2adac5d1cf6750daa7b}{Token}} (const \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921}{Token\+Type}} \&type, const int \&val, const \mbox{\hyperlink{struct_location}{Location}} \&location) +\item +\mbox{\hyperlink{struct_token_a17f818bd7d9ff7472837307d09fb58fa}{Token}} (const \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921}{Token\+Type}} \&type, const std\+::string \&val, const \mbox{\hyperlink{struct_location}{Location}} \&location) +\item +\mbox{\hyperlink{struct_token_ad810ae05b8d953d481e1cbebb2964b17}{Token}} (const \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921}{Token\+Type}} \&type, const std\+::string \&val) +\item +\mbox{\hyperlink{struct_token_a40f4b33a2ffd88acf803132d598c4ab4}{Token}} (const \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921}{Token\+Type}} \&type, const float \&val, const \mbox{\hyperlink{struct_location}{Location}} \&location) +\item +\mbox{\hyperlink{struct_token_a3d7d59eaac1535df1433357d5d372f84}{$\sim$\+Token}} () +\item +std\+::string \mbox{\hyperlink{struct_token_a602aa1415de3415044205333495e72f5}{to\+\_\+string}} () const +\item +std\+::string \mbox{\hyperlink{struct_token_a432fb89b5fed83bd753f99a5ea10e2e6}{line}} () const +\item +void \mbox{\hyperlink{struct_token_ab58cab5077c1c4c4671964595308c3fc}{operator=}} (const \mbox{\hyperlink{struct_token}{Token}} \&other) +\item +\mbox{\hyperlink{struct_token}{Token}} \mbox{\hyperlink{struct_token_a036d56315ccd55329e9e1e2271b16795}{copy\+\_\+with\+\_\+new\+\_\+type}} (const \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921}{Token\+Type}} \&type) +\end{DoxyCompactItemize} +\doxysubsection*{Static Public Member Functions} +\begin{DoxyCompactItemize} +\item +static \mbox{\hyperlink{struct_token}{Token}} \mbox{\hyperlink{struct_token_a6c00b26185c109de4c2b79bd756defa1}{make\+\_\+with\+\_\+line}} (const \mbox{\hyperlink{struct_token}{Token}} \&origin, const std\+::string \&line\+\_\+text) +\item +static void \mbox{\hyperlink{struct_token_a2d401d11a0b5cb39e1505dbaf13fee82}{erase}} (\mbox{\hyperlink{struct_token}{Token}} \&tk) +\item +static bool \mbox{\hyperlink{struct_token_a0eaf331871c69faf7c37d8e87db1f7e6}{match\+\_\+token\+\_\+types}} (const std\+::vector$<$ \mbox{\hyperlink{struct_token}{Token}} $>$ \&a, const std\+::vector$<$ \mbox{\hyperlink{struct_token}{Token}} $>$ \&b, int count) +\end{DoxyCompactItemize} +\doxysubsection*{Public Attributes} +\begin{DoxyCompactItemize} +\item +\mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921}{Token\+Type}} \mbox{\hyperlink{struct_token_afeecd45f0f912778b11fffe0abb299b5}{tk\+\_\+type}} +\item +int \mbox{\hyperlink{struct_token_a0bd1ec80054e52bb87e5f5c4fd2f6931}{int\+\_\+value}} +\item +std\+::string \mbox{\hyperlink{struct_token_a15eec7ad7fced0b21918e04a3e6c639c}{string\+\_\+value}} +\item +float \mbox{\hyperlink{struct_token_a92a5a00e9160db302b651c44c3658051}{float\+\_\+value}} +\item +\mbox{\hyperlink{struct_location}{Location}} \mbox{\hyperlink{struct_token_a33ccd4b1d4d4e2690a54f6ed39a7bf06}{loc}} +\end{DoxyCompactItemize} + + +\doxysubsection{Constructor \& Destructor Documentation} +\mbox{\Hypertarget{struct_token_ab74d6b5fef46e3c194229e7a884cad45}\label{struct_token_ab74d6b5fef46e3c194229e7a884cad45}} +\index{Token@{Token}!Token@{Token}} +\index{Token@{Token}!Token@{Token}} +\doxysubsubsection{\texorpdfstring{Token()}{Token()}\hspace{0.1cm}{\footnotesize\ttfamily [1/6]}} +{\footnotesize\ttfamily Token\+::\+Token (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921}{Token\+Type}} \&}]{type }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{struct_token_a6d4d66f172376503d15b9a2feb5f90e8}\label{struct_token_a6d4d66f172376503d15b9a2feb5f90e8}} +\index{Token@{Token}!Token@{Token}} +\index{Token@{Token}!Token@{Token}} +\doxysubsubsection{\texorpdfstring{Token()}{Token()}\hspace{0.1cm}{\footnotesize\ttfamily [2/6]}} +{\footnotesize\ttfamily Token\+::\+Token (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921}{Token\+Type}} \&}]{type, }\item[{const \mbox{\hyperlink{struct_location}{Location}} \&}]{location }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{struct_token_a2efe8a7168e6b2adac5d1cf6750daa7b}\label{struct_token_a2efe8a7168e6b2adac5d1cf6750daa7b}} +\index{Token@{Token}!Token@{Token}} +\index{Token@{Token}!Token@{Token}} +\doxysubsubsection{\texorpdfstring{Token()}{Token()}\hspace{0.1cm}{\footnotesize\ttfamily [3/6]}} +{\footnotesize\ttfamily Token\+::\+Token (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921}{Token\+Type}} \&}]{type, }\item[{const int \&}]{val, }\item[{const \mbox{\hyperlink{struct_location}{Location}} \&}]{location }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{struct_token_a17f818bd7d9ff7472837307d09fb58fa}\label{struct_token_a17f818bd7d9ff7472837307d09fb58fa}} +\index{Token@{Token}!Token@{Token}} +\index{Token@{Token}!Token@{Token}} +\doxysubsubsection{\texorpdfstring{Token()}{Token()}\hspace{0.1cm}{\footnotesize\ttfamily [4/6]}} +{\footnotesize\ttfamily Token\+::\+Token (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921}{Token\+Type}} \&}]{type, }\item[{const std\+::string \&}]{val, }\item[{const \mbox{\hyperlink{struct_location}{Location}} \&}]{location }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{struct_token_ad810ae05b8d953d481e1cbebb2964b17}\label{struct_token_ad810ae05b8d953d481e1cbebb2964b17}} +\index{Token@{Token}!Token@{Token}} +\index{Token@{Token}!Token@{Token}} +\doxysubsubsection{\texorpdfstring{Token()}{Token()}\hspace{0.1cm}{\footnotesize\ttfamily [5/6]}} +{\footnotesize\ttfamily Token\+::\+Token (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921}{Token\+Type}} \&}]{type, }\item[{const std\+::string \&}]{val }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{struct_token_a40f4b33a2ffd88acf803132d598c4ab4}\label{struct_token_a40f4b33a2ffd88acf803132d598c4ab4}} +\index{Token@{Token}!Token@{Token}} +\index{Token@{Token}!Token@{Token}} +\doxysubsubsection{\texorpdfstring{Token()}{Token()}\hspace{0.1cm}{\footnotesize\ttfamily [6/6]}} +{\footnotesize\ttfamily Token\+::\+Token (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921}{Token\+Type}} \&}]{type, }\item[{const float \&}]{val, }\item[{const \mbox{\hyperlink{struct_location}{Location}} \&}]{location }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{struct_token_a3d7d59eaac1535df1433357d5d372f84}\label{struct_token_a3d7d59eaac1535df1433357d5d372f84}} +\index{Token@{Token}!````~Token@{$\sim$Token}} +\index{````~Token@{$\sim$Token}!Token@{Token}} +\doxysubsubsection{\texorpdfstring{$\sim$Token()}{~Token()}} +{\footnotesize\ttfamily Token\+::$\sim$\+Token (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})} + + + +\doxysubsection{Member Function Documentation} +\mbox{\Hypertarget{struct_token_a036d56315ccd55329e9e1e2271b16795}\label{struct_token_a036d56315ccd55329e9e1e2271b16795}} +\index{Token@{Token}!copy\_with\_new\_type@{copy\_with\_new\_type}} +\index{copy\_with\_new\_type@{copy\_with\_new\_type}!Token@{Token}} +\doxysubsubsection{\texorpdfstring{copy\_with\_new\_type()}{copy\_with\_new\_type()}} +{\footnotesize\ttfamily \mbox{\hyperlink{struct_token}{Token}} Token\+::copy\+\_\+with\+\_\+new\+\_\+type (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921}{Token\+Type}} \&}]{type }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{struct_token_a2d401d11a0b5cb39e1505dbaf13fee82}\label{struct_token_a2d401d11a0b5cb39e1505dbaf13fee82}} +\index{Token@{Token}!erase@{erase}} +\index{erase@{erase}!Token@{Token}} +\doxysubsubsection{\texorpdfstring{erase()}{erase()}} +{\footnotesize\ttfamily void Token\+::erase (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{struct_token}{Token}} \&}]{tk }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}} + +\mbox{\Hypertarget{struct_token_a432fb89b5fed83bd753f99a5ea10e2e6}\label{struct_token_a432fb89b5fed83bd753f99a5ea10e2e6}} +\index{Token@{Token}!line@{line}} +\index{line@{line}!Token@{Token}} +\doxysubsubsection{\texorpdfstring{line()}{line()}} +{\footnotesize\ttfamily std\+::string Token\+::line (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const} + +\mbox{\Hypertarget{struct_token_a6c00b26185c109de4c2b79bd756defa1}\label{struct_token_a6c00b26185c109de4c2b79bd756defa1}} +\index{Token@{Token}!make\_with\_line@{make\_with\_line}} +\index{make\_with\_line@{make\_with\_line}!Token@{Token}} +\doxysubsubsection{\texorpdfstring{make\_with\_line()}{make\_with\_line()}} +{\footnotesize\ttfamily \mbox{\hyperlink{struct_token}{Token}} Token\+::make\+\_\+with\+\_\+line (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{struct_token}{Token}} \&}]{origin, }\item[{const std\+::string \&}]{line\+\_\+text }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}} + +\mbox{\Hypertarget{struct_token_a0eaf331871c69faf7c37d8e87db1f7e6}\label{struct_token_a0eaf331871c69faf7c37d8e87db1f7e6}} +\index{Token@{Token}!match\_token\_types@{match\_token\_types}} +\index{match\_token\_types@{match\_token\_types}!Token@{Token}} +\doxysubsubsection{\texorpdfstring{match\_token\_types()}{match\_token\_types()}} +{\footnotesize\ttfamily bool Token\+::match\+\_\+token\+\_\+types (\begin{DoxyParamCaption}\item[{const std\+::vector$<$ \mbox{\hyperlink{struct_token}{Token}} $>$ \&}]{a, }\item[{const std\+::vector$<$ \mbox{\hyperlink{struct_token}{Token}} $>$ \&}]{b, }\item[{int}]{count }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [static]}} + +\mbox{\Hypertarget{struct_token_ab58cab5077c1c4c4671964595308c3fc}\label{struct_token_ab58cab5077c1c4c4671964595308c3fc}} +\index{Token@{Token}!operator=@{operator=}} +\index{operator=@{operator=}!Token@{Token}} +\doxysubsubsection{\texorpdfstring{operator=()}{operator=()}} +{\footnotesize\ttfamily void Token\+::operator= (\begin{DoxyParamCaption}\item[{const \mbox{\hyperlink{struct_token}{Token}} \&}]{other }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{struct_token_a602aa1415de3415044205333495e72f5}\label{struct_token_a602aa1415de3415044205333495e72f5}} +\index{Token@{Token}!to\_string@{to\_string}} +\index{to\_string@{to\_string}!Token@{Token}} +\doxysubsubsection{\texorpdfstring{to\_string()}{to\_string()}} +{\footnotesize\ttfamily std\+::string Token\+::to\+\_\+string (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption}) const} + + + +\doxysubsection{Member Data Documentation} +\mbox{\Hypertarget{struct_token_a92a5a00e9160db302b651c44c3658051}\label{struct_token_a92a5a00e9160db302b651c44c3658051}} +\index{Token@{Token}!float\_value@{float\_value}} +\index{float\_value@{float\_value}!Token@{Token}} +\doxysubsubsection{\texorpdfstring{float\_value}{float\_value}} +{\footnotesize\ttfamily float Token\+::float\+\_\+value} + +\mbox{\Hypertarget{struct_token_a0bd1ec80054e52bb87e5f5c4fd2f6931}\label{struct_token_a0bd1ec80054e52bb87e5f5c4fd2f6931}} +\index{Token@{Token}!int\_value@{int\_value}} +\index{int\_value@{int\_value}!Token@{Token}} +\doxysubsubsection{\texorpdfstring{int\_value}{int\_value}} +{\footnotesize\ttfamily int Token\+::int\+\_\+value} + +\mbox{\Hypertarget{struct_token_a33ccd4b1d4d4e2690a54f6ed39a7bf06}\label{struct_token_a33ccd4b1d4d4e2690a54f6ed39a7bf06}} +\index{Token@{Token}!loc@{loc}} +\index{loc@{loc}!Token@{Token}} +\doxysubsubsection{\texorpdfstring{loc}{loc}} +{\footnotesize\ttfamily \mbox{\hyperlink{struct_location}{Location}} Token\+::loc} + +\mbox{\Hypertarget{struct_token_a15eec7ad7fced0b21918e04a3e6c639c}\label{struct_token_a15eec7ad7fced0b21918e04a3e6c639c}} +\index{Token@{Token}!string\_value@{string\_value}} +\index{string\_value@{string\_value}!Token@{Token}} +\doxysubsubsection{\texorpdfstring{string\_value}{string\_value}} +{\footnotesize\ttfamily std\+::string Token\+::string\+\_\+value} + +\mbox{\Hypertarget{struct_token_afeecd45f0f912778b11fffe0abb299b5}\label{struct_token_afeecd45f0f912778b11fffe0abb299b5}} +\index{Token@{Token}!tk\_type@{tk\_type}} +\index{tk\_type@{tk\_type}!Token@{Token}} +\doxysubsubsection{\texorpdfstring{tk\_type}{tk\_type}} +{\footnotesize\ttfamily \mbox{\hyperlink{_token_8h_aa520fbf142ba1e7e659590c07da31921}{Token\+Type}} Token\+::tk\+\_\+type} + + + +The documentation for this struct was generated from the following files\+:\begin{DoxyCompactItemize} +\item +src/\mbox{\hyperlink{_token_8h}{Token.\+h}}\item +src/\mbox{\hyperlink{_token_8cpp}{Token.\+cpp}}\end{DoxyCompactItemize} diff --git a/docs/latex/utils_8cpp.tex b/docs/latex/utils_8cpp.tex new file mode 100644 index 0000000..7cb3d4e --- /dev/null +++ b/docs/latex/utils_8cpp.tex @@ -0,0 +1,34 @@ +\hypertarget{utils_8cpp}{}\doxysection{src/utils.cpp File Reference} +\label{utils_8cpp}\index{src/utils.cpp@{src/utils.cpp}} +{\ttfamily \#include \char`\"{}utils.\+h\char`\"{}}\newline +{\ttfamily \#include $<$sstream$>$}\newline +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +bool \mbox{\hyperlink{utils_8cpp_a0159b96c217d65d379016f6aa2c4dd57}{replace}} (std\+::string \&str, const std\+::string \&from, const std\+::string \&to) +\item +std\+::string \mbox{\hyperlink{utils_8cpp_a661f7549af1d9a364fde170b2c7ae0c3}{to\+\_\+string}} (const int \&value) +\item +std\+::string \mbox{\hyperlink{utils_8cpp_ab971c0a329063c89e85cf689bbad5d59}{to\+\_\+string}} (const float \&value) +\end{DoxyCompactItemize} + + +\doxysubsection{Function Documentation} +\mbox{\Hypertarget{utils_8cpp_a0159b96c217d65d379016f6aa2c4dd57}\label{utils_8cpp_a0159b96c217d65d379016f6aa2c4dd57}} +\index{utils.cpp@{utils.cpp}!replace@{replace}} +\index{replace@{replace}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{replace()}{replace()}} +{\footnotesize\ttfamily bool replace (\begin{DoxyParamCaption}\item[{std\+::string \&}]{str, }\item[{const std\+::string \&}]{from, }\item[{const std\+::string \&}]{to }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8cpp_ab971c0a329063c89e85cf689bbad5d59}\label{utils_8cpp_ab971c0a329063c89e85cf689bbad5d59}} +\index{utils.cpp@{utils.cpp}!to\_string@{to\_string}} +\index{to\_string@{to\_string}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{to\_string()}{to\_string()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily std\+::string to\+\_\+string (\begin{DoxyParamCaption}\item[{const float \&}]{value }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8cpp_a661f7549af1d9a364fde170b2c7ae0c3}\label{utils_8cpp_a661f7549af1d9a364fde170b2c7ae0c3}} +\index{utils.cpp@{utils.cpp}!to\_string@{to\_string}} +\index{to\_string@{to\_string}!utils.cpp@{utils.cpp}} +\doxysubsubsection{\texorpdfstring{to\_string()}{to\_string()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily std\+::string to\+\_\+string (\begin{DoxyParamCaption}\item[{const int \&}]{value }\end{DoxyParamCaption})} + diff --git a/docs/latex/utils_8h.tex b/docs/latex/utils_8h.tex new file mode 100644 index 0000000..6d5b2c5 --- /dev/null +++ b/docs/latex/utils_8h.tex @@ -0,0 +1,40 @@ +\hypertarget{utils_8h}{}\doxysection{src/utils.h File Reference} +\label{utils_8h}\index{src/utils.h@{src/utils.h}} +{\ttfamily \#include \char`\"{}Format\+String/\+Format\+String.\+hpp\char`\"{}}\newline +{\ttfamily \#include \char`\"{}sapphirepch.\+h\char`\"{}}\newline +{\ttfamily \#include $<$chrono$>$}\newline +\doxysubsection*{Classes} +\begin{DoxyCompactItemize} +\item +class \mbox{\hyperlink{class____benchmark__impl}{\+\_\+\+\_\+benchmark\+\_\+impl}} +\end{DoxyCompactItemize} +\doxysubsection*{Functions} +\begin{DoxyCompactItemize} +\item +bool \mbox{\hyperlink{utils_8h_a0159b96c217d65d379016f6aa2c4dd57}{replace}} (std\+::string \&str, const std\+::string \&from, const std\+::string \&to) +\item +std\+::string \mbox{\hyperlink{utils_8h_a661f7549af1d9a364fde170b2c7ae0c3}{to\+\_\+string}} (const int \&value) +\item +std\+::string \mbox{\hyperlink{utils_8h_ab971c0a329063c89e85cf689bbad5d59}{to\+\_\+string}} (const float \&value) +\end{DoxyCompactItemize} + + +\doxysubsection{Function Documentation} +\mbox{\Hypertarget{utils_8h_a0159b96c217d65d379016f6aa2c4dd57}\label{utils_8h_a0159b96c217d65d379016f6aa2c4dd57}} +\index{utils.h@{utils.h}!replace@{replace}} +\index{replace@{replace}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{replace()}{replace()}} +{\footnotesize\ttfamily bool replace (\begin{DoxyParamCaption}\item[{std\+::string \&}]{str, }\item[{const std\+::string \&}]{from, }\item[{const std\+::string \&}]{to }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8h_ab971c0a329063c89e85cf689bbad5d59}\label{utils_8h_ab971c0a329063c89e85cf689bbad5d59}} +\index{utils.h@{utils.h}!to\_string@{to\_string}} +\index{to\_string@{to\_string}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{to\_string()}{to\_string()}\hspace{0.1cm}{\footnotesize\ttfamily [1/2]}} +{\footnotesize\ttfamily std\+::string to\+\_\+string (\begin{DoxyParamCaption}\item[{const float \&}]{value }\end{DoxyParamCaption})} + +\mbox{\Hypertarget{utils_8h_a661f7549af1d9a364fde170b2c7ae0c3}\label{utils_8h_a661f7549af1d9a364fde170b2c7ae0c3}} +\index{utils.h@{utils.h}!to\_string@{to\_string}} +\index{to\_string@{to\_string}!utils.h@{utils.h}} +\doxysubsubsection{\texorpdfstring{to\_string()}{to\_string()}\hspace{0.1cm}{\footnotesize\ttfamily [2/2]}} +{\footnotesize\ttfamily std\+::string to\+\_\+string (\begin{DoxyParamCaption}\item[{const int \&}]{value }\end{DoxyParamCaption})} + diff --git a/external/doxygen-awesome-css b/external/doxygen-awesome-css index a5efba0..4cd6230 160000 --- a/external/doxygen-awesome-css +++ b/external/doxygen-awesome-css @@ -1 +1 @@ -Subproject commit a5efba07a3d4fd6317d95657b3095b97e134b791 +Subproject commit 4cd62308d825fe0396d2f66ffbab45d0e247724c