From 34a048f7daaf93b16ae4121bf5238f9008f3465b Mon Sep 17 00:00:00 2001 From: gingerBill Date: Fri, 9 Dec 2022 11:29:28 +0000 Subject: Replace compiler for loops for the hash-table types to simplify code usage --- src/docs_writer.cpp | 36 +++++++++++++++++------------------- 1 file changed, 17 insertions(+), 19 deletions(-) (limited to 'src/docs_writer.cpp') diff --git a/src/docs_writer.cpp b/src/docs_writer.cpp index 5246971ff..313d7b25a 100644 --- a/src/docs_writer.cpp +++ b/src/docs_writer.cpp @@ -480,11 +480,11 @@ OdinDocTypeIndex odin_doc_type(OdinDocWriter *w, Type *type) { if (found) { return *found; } - for_array(i, w->type_cache.entries) { + for (auto const &entry : w->type_cache) { // NOTE(bill): THIS IS SLOW - Type *other = w->type_cache.entries[i].key; + Type *other = entry.key; if (are_types_identical_unique_tuples(type, other)) { - OdinDocTypeIndex index = w->type_cache.entries[i].value; + OdinDocTypeIndex index = entry.value; map_set(&w->type_cache, type, index); return index; } @@ -914,23 +914,21 @@ OdinDocEntityIndex odin_doc_add_entity(OdinDocWriter *w, Entity *e) { void odin_doc_update_entities(OdinDocWriter *w) { { // NOTE(bill): Double pass, just in case entities are created on odin_doc_type - auto entities = array_make(heap_allocator(), w->entity_cache.entries.count); + auto entities = array_make(heap_allocator(), 0, w->entity_cache.entries.count); defer (array_free(&entities)); - for_array(i, w->entity_cache.entries) { - Entity *e = w->entity_cache.entries[i].key; - entities[i] = e; + for (auto const &entry : w->entity_cache) { + array_add(&entities, entry.key); } - for_array(i, entities) { - Entity *e = entities[i]; + for (Entity *e : entities) { OdinDocTypeIndex type_index = odin_doc_type(w, e->type); gb_unused(type_index); } } - for_array(i, w->entity_cache.entries) { - Entity *e = w->entity_cache.entries[i].key; - OdinDocEntityIndex entity_index = w->entity_cache.entries[i].value; + for (auto const &entry : w->entity_cache) { + Entity *e = entry.key; + OdinDocEntityIndex entity_index = entry.value; OdinDocTypeIndex type_index = odin_doc_type(w, e->type); OdinDocEntityIndex foreign_library = 0; @@ -948,8 +946,8 @@ void odin_doc_update_entities(OdinDocWriter *w) { auto pges = array_make(heap_allocator(), 0, e->ProcGroup.entities.count); defer (array_free(&pges)); - for_array(j, e->ProcGroup.entities) { - OdinDocEntityIndex index = odin_doc_add_entity(w, e->ProcGroup.entities[j]); + for (Entity *entity : e->ProcGroup.entities) { + OdinDocEntityIndex index = odin_doc_add_entity(w, entity); array_add(&pges, index); } grouped_entities = odin_write_slice(w, pges.data, pges.count); @@ -979,9 +977,9 @@ OdinDocArray odin_doc_add_pkg_entries(OdinDocWriter *w, AstPa auto entries = array_make(heap_allocator(), 0, w->entity_cache.entries.count); defer (array_free(&entries)); - for_array(i, pkg->scope->elements.entries) { - String name = pkg->scope->elements.entries[i].key.string; - Entity *e = pkg->scope->elements.entries[i].value; + for (auto const &entry : pkg->scope->elements) { + String name = entry.key.string; + Entity *e = entry.value; switch (e->kind) { case Entity_Invalid: case Entity_Nil: @@ -1021,8 +1019,8 @@ OdinDocArray odin_doc_add_pkg_entries(OdinDocWriter *w, AstPa void odin_doc_write_docs(OdinDocWriter *w) { auto pkgs = array_make(heap_allocator(), 0, w->info->packages.entries.count); defer (array_free(&pkgs)); - for_array(i, w->info->packages.entries) { - AstPackage *pkg = w->info->packages.entries[i].value; + for (auto const &entry : w->info->packages) { + AstPackage *pkg = entry.value; if (build_context.cmd_doc_flags & CmdDocFlag_AllPackages) { array_add(&pkgs, pkg); } else { -- cgit v1.2.3 From be22f0d1e1d5bb7c822dd31b1b60d7863fca6264 Mon Sep 17 00:00:00 2001 From: gingerBill Date: Fri, 9 Dec 2022 11:32:52 +0000 Subject: Fix variable shadow in compiler --- src/docs_writer.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'src/docs_writer.cpp') diff --git a/src/docs_writer.cpp b/src/docs_writer.cpp index 313d7b25a..b7b17cb1a 100644 --- a/src/docs_writer.cpp +++ b/src/docs_writer.cpp @@ -977,9 +977,9 @@ OdinDocArray odin_doc_add_pkg_entries(OdinDocWriter *w, AstPa auto entries = array_make(heap_allocator(), 0, w->entity_cache.entries.count); defer (array_free(&entries)); - for (auto const &entry : pkg->scope->elements) { - String name = entry.key.string; - Entity *e = entry.value; + for (auto const &element : pkg->scope->elements) { + String name = element.key.string; + Entity *e = element.value; switch (e->kind) { case Entity_Invalid: case Entity_Nil: -- cgit v1.2.3 From 66ce990e0b9072a49943b37630c8597713a5c6ae Mon Sep 17 00:00:00 2001 From: gingerBill Date: Sun, 18 Dec 2022 21:51:04 +0000 Subject: `gb_internal` to docs and other auxiliary files --- src/bug_report.cpp | 12 +++++----- src/docs.cpp | 21 ++++++++--------- src/docs_format.cpp | 4 ++-- src/docs_writer.cpp | 68 ++++++++++++++++++++++++++--------------------------- src/query_data.cpp | 46 ++++++++++++++++++------------------ 5 files changed, 75 insertions(+), 76 deletions(-) (limited to 'src/docs_writer.cpp') diff --git a/src/bug_report.cpp b/src/bug_report.cpp index f4f1b51be..fbf616efb 100644 --- a/src/bug_report.cpp +++ b/src/bug_report.cpp @@ -30,7 +30,7 @@ NOTE(Jeroen): This prints the Windows product edition only, to be called from `print_platform_details`. */ #if defined(GB_SYSTEM_WINDOWS) -void report_windows_product_type(DWORD ProductType) { +gb_internal void report_windows_product_type(DWORD ProductType) { switch (ProductType) { case PRODUCT_ULTIMATE: gb_printf("Ultimate"); @@ -154,7 +154,7 @@ void report_windows_product_type(DWORD ProductType) { } #endif -void odin_cpuid(int leaf, int result[]) { +gb_internal void odin_cpuid(int leaf, int result[]) { #if defined(GB_CPU_ARM) return; @@ -169,7 +169,7 @@ void odin_cpuid(int leaf, int result[]) { #endif } -void report_cpu_info() { +gb_internal void report_cpu_info() { gb_printf("\tCPU: "); #if defined(GB_CPU_X86) @@ -220,7 +220,7 @@ void report_cpu_info() { /* Report the amount of installed RAM. */ -void report_ram_info() { +gb_internal void report_ram_info() { gb_printf("\tRAM: "); #if defined(GB_SYSTEM_WINDOWS) @@ -271,7 +271,7 @@ void report_ram_info() { #endif } -void report_os_info() { +gb_internal void report_os_info() { gb_printf("\tOS: "); #if defined(GB_SYSTEM_WINDOWS) @@ -966,7 +966,7 @@ void report_os_info() { } // NOTE(Jeroen): `odin report` prints some system information for easier bug reporting. -void print_bug_report_help() { +gb_internal void print_bug_report_help() { gb_printf("Where to find more information and get into contact when you encounter a bug:\n\n"); gb_printf("\tWebsite: https://odin-lang.org\n"); gb_printf("\tGitHub: https://github.com/odin-lang/Odin/issues\n"); diff --git a/src/docs.cpp b/src/docs.cpp index b07181e28..33b1e8361 100644 --- a/src/docs.cpp +++ b/src/docs.cpp @@ -28,7 +28,7 @@ gb_global char const *print_entity_names[Entity_Count] = { }; -GB_COMPARE_PROC(cmp_entities_for_printing) { +gb_internal GB_COMPARE_PROC(cmp_entities_for_printing) { GB_ASSERT(a != nullptr); GB_ASSERT(b != nullptr); Entity *x = *cast(Entity **)a; @@ -56,7 +56,7 @@ GB_COMPARE_PROC(cmp_entities_for_printing) { return res; } -GB_COMPARE_PROC(cmp_ast_package_by_name) { +gb_internal GB_COMPARE_PROC(cmp_ast_package_by_name) { GB_ASSERT(a != nullptr); GB_ASSERT(b != nullptr); AstPackage *x = *cast(AstPackage **)a; @@ -67,7 +67,7 @@ GB_COMPARE_PROC(cmp_ast_package_by_name) { #include "docs_format.cpp" #include "docs_writer.cpp" -void print_doc_line(i32 indent, String const &data) { +gb_internal void print_doc_line(i32 indent, String const &data) { while (indent --> 0) { gb_printf("\t"); } @@ -75,7 +75,7 @@ void print_doc_line(i32 indent, String const &data) { gb_printf("\n"); } -void print_doc_line(i32 indent, char const *fmt, ...) { +gb_internal void print_doc_line(i32 indent, char const *fmt, ...) { while (indent --> 0) { gb_printf("\t"); } @@ -85,7 +85,7 @@ void print_doc_line(i32 indent, char const *fmt, ...) { va_end(va); gb_printf("\n"); } -void print_doc_line_no_newline(i32 indent, char const *fmt, ...) { +gb_internal void print_doc_line_no_newline(i32 indent, char const *fmt, ...) { while (indent --> 0) { gb_printf("\t"); } @@ -94,7 +94,7 @@ void print_doc_line_no_newline(i32 indent, char const *fmt, ...) { gb_printf_va(fmt, va); va_end(va); } -void print_doc_line_no_newline(i32 indent, String const &data) { +gb_internal void print_doc_line_no_newline(i32 indent, String const &data) { while (indent --> 0) { gb_printf("\t"); } @@ -102,7 +102,7 @@ void print_doc_line_no_newline(i32 indent, String const &data) { } -bool print_doc_comment_group_string(i32 indent, CommentGroup *g) { +gb_internal bool print_doc_comment_group_string(i32 indent, CommentGroup *g) { if (g == nullptr) { return false; } @@ -191,7 +191,7 @@ bool print_doc_comment_group_string(i32 indent, CommentGroup *g) { -void print_doc_expr(Ast *expr) { +gb_internal void print_doc_expr(Ast *expr) { gbString s = nullptr; if (build_context.cmd_doc_flags & CmdDocFlag_Short) { s = expr_to_string_shorthand(expr); @@ -202,8 +202,7 @@ void print_doc_expr(Ast *expr) { gb_string_free(s); } - -void print_doc_package(CheckerInfo *info, AstPackage *pkg) { +gb_internal void print_doc_package(CheckerInfo *info, AstPackage *pkg) { if (pkg == nullptr) { return; } @@ -320,7 +319,7 @@ void print_doc_package(CheckerInfo *info, AstPackage *pkg) { } -void generate_documentation(Checker *c) { +gb_internal void generate_documentation(Checker *c) { CheckerInfo *info = &c->info; if (build_context.cmd_doc_flags & CmdDocFlag_DocFormat) { diff --git a/src/docs_format.cpp b/src/docs_format.cpp index b13b8b364..34114f08e 100644 --- a/src/docs_format.cpp +++ b/src/docs_format.cpp @@ -27,14 +27,14 @@ struct OdinDocHeaderBase { }; template -Slice from_array(OdinDocHeaderBase *base, OdinDocArray const &a) { +gb_internal Slice from_array(OdinDocHeaderBase *base, OdinDocArray const &a) { Slice s = {}; s.data = cast(T *)(cast(uintptr)base + cast(uintptr)a.offset); s.count = cast(isize)a.length; return s; } -String from_string(OdinDocHeaderBase *base, OdinDocString const &s) { +gb_internal String from_string(OdinDocHeaderBase *base, OdinDocString const &s) { String str = {}; str.text = cast(u8 *)(cast(uintptr)base + cast(uintptr)s.offset); str.len = cast(isize)s.length; diff --git a/src/docs_writer.cpp b/src/docs_writer.cpp index b7b17cb1a..bab97158d 100644 --- a/src/docs_writer.cpp +++ b/src/docs_writer.cpp @@ -11,7 +11,7 @@ enum OdinDocWriterState { OdinDocWriterState_Writing, }; -char const* OdinDocWriterState_strings[] { +gb_global char const* OdinDocWriterState_strings[] { "preparing", "writing ", }; @@ -40,17 +40,17 @@ struct OdinDocWriter { OdinDocWriterItemTracker blob; }; -OdinDocEntityIndex odin_doc_add_entity(OdinDocWriter *w, Entity *e); -OdinDocTypeIndex odin_doc_type(OdinDocWriter *w, Type *type); +gb_internal OdinDocEntityIndex odin_doc_add_entity(OdinDocWriter *w, Entity *e); +gb_internal OdinDocTypeIndex odin_doc_type(OdinDocWriter *w, Type *type); template -void odin_doc_writer_item_tracker_init(OdinDocWriterItemTracker *t, isize size) { +gb_internal void odin_doc_writer_item_tracker_init(OdinDocWriterItemTracker *t, isize size) { t->len = size; t->cap = size; } -void odin_doc_writer_prepare(OdinDocWriter *w) { +gb_internal void odin_doc_writer_prepare(OdinDocWriter *w) { w->state = OdinDocWriterState_Preparing; gbAllocator a = heap_allocator(); @@ -70,7 +70,7 @@ void odin_doc_writer_prepare(OdinDocWriter *w) { } -void odin_doc_writer_destroy(OdinDocWriter *w) { +gb_internal void odin_doc_writer_destroy(OdinDocWriter *w) { gb_free(heap_allocator(), w->data); string_map_destroy(&w->string_cache); @@ -83,7 +83,7 @@ void odin_doc_writer_destroy(OdinDocWriter *w) { template -void odin_doc_writer_tracker_size(isize *offset, OdinDocWriterItemTracker *t, isize alignment=1) { +gb_internal void odin_doc_writer_tracker_size(isize *offset, OdinDocWriterItemTracker *t, isize alignment=1) { isize size = t->cap*gb_size_of(T); isize align = gb_max(gb_align_of(T), alignment); *offset = align_formula_isize(*offset, align); @@ -91,7 +91,7 @@ void odin_doc_writer_tracker_size(isize *offset, OdinDocWriterItemTracker *t, *offset += size; } -isize odin_doc_writer_calc_total_size(OdinDocWriter *w) { +gb_internal isize odin_doc_writer_calc_total_size(OdinDocWriter *w) { isize total_size = gb_size_of(OdinDocHeader); odin_doc_writer_tracker_size(&total_size, &w->files); odin_doc_writer_tracker_size(&total_size, &w->pkgs); @@ -102,7 +102,7 @@ isize odin_doc_writer_calc_total_size(OdinDocWriter *w) { return total_size; } -void odin_doc_writer_start_writing(OdinDocWriter *w) { +gb_internal void odin_doc_writer_start_writing(OdinDocWriter *w) { w->state = OdinDocWriterState_Writing; string_map_clear(&w->string_cache); @@ -118,7 +118,7 @@ void odin_doc_writer_start_writing(OdinDocWriter *w) { w->header = cast(OdinDocHeader *)w->data; } -u32 hash_data_after_header(OdinDocHeaderBase *base, void *data, isize data_len) { +gb_internal u32 hash_data_after_header(OdinDocHeaderBase *base, void *data, isize data_len) { u8 *start = cast(u8 *)data; u8 *end = start + base->total_size; start += base->header_size; @@ -132,13 +132,13 @@ u32 hash_data_after_header(OdinDocHeaderBase *base, void *data, isize data_len) template -void odin_doc_writer_assign_tracker(OdinDocArray *array, OdinDocWriterItemTracker const &t) { +gb_internal void odin_doc_writer_assign_tracker(OdinDocArray *array, OdinDocWriterItemTracker const &t) { array->offset = cast(u32)t.offset; array->length = cast(u32)t.len; } -void odin_doc_writer_end_writing(OdinDocWriter *w) { +gb_internal void odin_doc_writer_end_writing(OdinDocWriter *w) { OdinDocHeader *h = w->header; gb_memmove(h->base.magic, OdinDocHeader_MagicString, gb_strlen(OdinDocHeader_MagicString)); @@ -156,7 +156,7 @@ void odin_doc_writer_end_writing(OdinDocWriter *w) { } template -u32 odin_doc_write_item(OdinDocWriter *w, OdinDocWriterItemTracker *t, T const *item, T **dst=nullptr) { +gb_internal u32 odin_doc_write_item(OdinDocWriter *w, OdinDocWriterItemTracker *t, T const *item, T **dst=nullptr) { if (w->state == OdinDocWriterState_Preparing) { t->cap += 1; if (dst) *dst = nullptr; @@ -175,7 +175,7 @@ u32 odin_doc_write_item(OdinDocWriter *w, OdinDocWriterItemTracker *t, T cons } template -T *odin_doc_get_item(OdinDocWriter *w, OdinDocWriterItemTracker *t, u32 index) { +gb_internal T *odin_doc_get_item(OdinDocWriter *w, OdinDocWriterItemTracker *t, u32 index) { if (w->state != OdinDocWriterState_Writing) { return nullptr; } @@ -184,7 +184,7 @@ T *odin_doc_get_item(OdinDocWriter *w, OdinDocWriterItemTracker *t, u32 index return cast(T *)data; } -OdinDocString odin_doc_write_string_without_cache(OdinDocWriter *w, String const &str) { +gb_internal OdinDocString odin_doc_write_string_without_cache(OdinDocWriter *w, String const &str) { OdinDocString res = {}; if (w->state == OdinDocWriterState_Preparing) { @@ -204,7 +204,7 @@ OdinDocString odin_doc_write_string_without_cache(OdinDocWriter *w, String const return res; } -OdinDocString odin_doc_write_string(OdinDocWriter *w, String const &str) { +gb_internal OdinDocString odin_doc_write_string(OdinDocWriter *w, String const &str) { OdinDocString *c = string_map_get(&w->string_cache, str); if (c != nullptr) { if (w->state == OdinDocWriterState_Writing) { @@ -223,7 +223,7 @@ OdinDocString odin_doc_write_string(OdinDocWriter *w, String const &str) { template -OdinDocArray odin_write_slice(OdinDocWriter *w, T *data, isize len) { +gb_internal OdinDocArray odin_write_slice(OdinDocWriter *w, T *data, isize len) { GB_ASSERT(gb_align_of(T) <= 4); if (len <= 0) { return {0, 0}; @@ -249,12 +249,12 @@ OdinDocArray odin_write_slice(OdinDocWriter *w, T *data, isize len) { template -OdinDocArray odin_write_item_as_slice(OdinDocWriter *w, T data) { +gb_internal OdinDocArray odin_write_item_as_slice(OdinDocWriter *w, T data) { return odin_write_slice(w, &data, 1); } -OdinDocPosition odin_doc_token_pos_cast(OdinDocWriter *w, TokenPos const &pos) { +gb_internal OdinDocPosition odin_doc_token_pos_cast(OdinDocWriter *w, TokenPos const &pos) { OdinDocFileIndex file_index = 0; if (pos.file_id != 0) { AstFile *file = global_files[pos.file_id]; @@ -273,7 +273,7 @@ OdinDocPosition odin_doc_token_pos_cast(OdinDocWriter *w, TokenPos const &pos) { return doc_pos; } -bool odin_doc_append_comment_group_string(Array *buf, CommentGroup *g) { +gb_internal bool odin_doc_append_comment_group_string(Array *buf, CommentGroup *g) { if (g == nullptr) { return false; } @@ -361,7 +361,7 @@ bool odin_doc_append_comment_group_string(Array *buf, CommentGroup *g) { return false; } -OdinDocString odin_doc_pkg_doc_string(OdinDocWriter *w, AstPackage *pkg) { +gb_internal OdinDocString odin_doc_pkg_doc_string(OdinDocWriter *w, AstPackage *pkg) { if (pkg == nullptr) { return {}; } @@ -378,7 +378,7 @@ OdinDocString odin_doc_pkg_doc_string(OdinDocWriter *w, AstPackage *pkg) { return odin_doc_write_string_without_cache(w, make_string(buf.data, buf.count)); } -OdinDocString odin_doc_comment_group_string(OdinDocWriter *w, CommentGroup *g) { +gb_internal OdinDocString odin_doc_comment_group_string(OdinDocWriter *w, CommentGroup *g) { if (g == nullptr) { return {}; } @@ -389,7 +389,7 @@ OdinDocString odin_doc_comment_group_string(OdinDocWriter *w, CommentGroup *g) { return odin_doc_write_string_without_cache(w, make_string(buf.data, buf.count)); } -OdinDocString odin_doc_expr_string(OdinDocWriter *w, Ast *expr) { +gb_internal OdinDocString odin_doc_expr_string(OdinDocWriter *w, Ast *expr) { if (expr == nullptr) { return {}; } @@ -402,7 +402,7 @@ OdinDocString odin_doc_expr_string(OdinDocWriter *w, Ast *expr) { return odin_doc_write_string(w, make_string(cast(u8 *)s, gb_string_length(s))); } -OdinDocArray odin_doc_attributes(OdinDocWriter *w, Array const &attributes) { +gb_internal OdinDocArray odin_doc_attributes(OdinDocWriter *w, Array const &attributes) { isize count = 0; for_array(i, attributes) { Ast *attr = attributes[i]; @@ -448,7 +448,7 @@ OdinDocArray odin_doc_attributes(OdinDocWriter *w, Array odin_doc_where_clauses(OdinDocWriter *w, Slice const &where_clauses) { +gb_internal OdinDocArray odin_doc_where_clauses(OdinDocWriter *w, Slice const &where_clauses) { if (where_clauses.count == 0) { return {}; } @@ -462,17 +462,17 @@ OdinDocArray odin_doc_where_clauses(OdinDocWriter *w, Slice odin_doc_type_as_slice(OdinDocWriter *w, Type *type) { +gb_internal OdinDocArray odin_doc_type_as_slice(OdinDocWriter *w, Type *type) { OdinDocTypeIndex index = odin_doc_type(w, type); return odin_write_item_as_slice(w, index); } -OdinDocArray odin_doc_add_entity_as_slice(OdinDocWriter *w, Entity *e) { +gb_internal OdinDocArray odin_doc_add_entity_as_slice(OdinDocWriter *w, Entity *e) { OdinDocEntityIndex index = odin_doc_add_entity(w, e); return odin_write_item_as_slice(w, index); } -OdinDocTypeIndex odin_doc_type(OdinDocWriter *w, Type *type) { +gb_internal OdinDocTypeIndex odin_doc_type(OdinDocWriter *w, Type *type) { if (type == nullptr) { return 0; } @@ -750,7 +750,7 @@ OdinDocTypeIndex odin_doc_type(OdinDocWriter *w, Type *type) { } return type_index; } -OdinDocEntityIndex odin_doc_add_entity(OdinDocWriter *w, Entity *e) { +gb_internal OdinDocEntityIndex odin_doc_add_entity(OdinDocWriter *w, Entity *e) { if (e == nullptr) { return 0; } @@ -911,7 +911,7 @@ OdinDocEntityIndex odin_doc_add_entity(OdinDocWriter *w, Entity *e) { return doc_entity_index; } -void odin_doc_update_entities(OdinDocWriter *w) { +gb_internal void odin_doc_update_entities(OdinDocWriter *w) { { // NOTE(bill): Double pass, just in case entities are created on odin_doc_type auto entities = array_make(heap_allocator(), 0, w->entity_cache.entries.count); @@ -966,7 +966,7 @@ void odin_doc_update_entities(OdinDocWriter *w) { -OdinDocArray odin_doc_add_pkg_entries(OdinDocWriter *w, AstPackage *pkg) { +gb_internal OdinDocArray odin_doc_add_pkg_entries(OdinDocWriter *w, AstPackage *pkg) { if (pkg->scope == nullptr) { return {}; } @@ -1016,7 +1016,7 @@ OdinDocArray odin_doc_add_pkg_entries(OdinDocWriter *w, AstPa } -void odin_doc_write_docs(OdinDocWriter *w) { +gb_internal void odin_doc_write_docs(OdinDocWriter *w) { auto pkgs = array_make(heap_allocator(), 0, w->info->packages.entries.count); defer (array_free(&pkgs)); for (auto const &entry : w->info->packages) { @@ -1091,7 +1091,7 @@ void odin_doc_write_docs(OdinDocWriter *w) { } -void odin_doc_write_to_file(OdinDocWriter *w, char const *filename) { +gb_internal void odin_doc_write_to_file(OdinDocWriter *w, char const *filename) { gbFile f = {}; gbFileError err = gb_file_open_mode(&f, gbFileMode_Write, filename); if (err != gbFileError_None) { @@ -1106,7 +1106,7 @@ void odin_doc_write_to_file(OdinDocWriter *w, char const *filename) { } } -void odin_doc_write(CheckerInfo *info, char const *filename) { +gb_internal void odin_doc_write(CheckerInfo *info, char const *filename) { OdinDocWriter w_ = {}; OdinDocWriter *w = &w_; defer (odin_doc_writer_destroy(w)); diff --git a/src/query_data.cpp b/src/query_data.cpp index ebf955fd4..86487a058 100644 --- a/src/query_data.cpp +++ b/src/query_data.cpp @@ -1,7 +1,7 @@ struct QueryValue; struct QueryValuePair; -gbAllocator query_value_allocator = {}; +gb_global gbAllocator query_value_allocator = {}; enum QueryKind { Query_Invalid, @@ -189,16 +189,16 @@ struct QueryValueMap : QueryValue { return v; \ } -DEF_QUERY_PROC(QueryValueString, String const &, query_value_string); -DEF_QUERY_PROC(QueryValueBoolean, bool, query_value_boolean); -DEF_QUERY_PROC(QueryValueInteger, i64, query_value_integer); -DEF_QUERY_PROC(QueryValueFloat, f64, query_value_float); -DEF_QUERY_PROC(QueryValueArray, Array const &, query_value_array); -DEF_QUERY_PROC(QueryValueMap, Array const &, query_value_map); -DEF_QUERY_PROC0(QueryValueArray, query_value_array); -DEF_QUERY_PROC0(QueryValueMap, query_value_map); +gb_internal DEF_QUERY_PROC(QueryValueString, String const &, query_value_string); +gb_internal DEF_QUERY_PROC(QueryValueBoolean, bool, query_value_boolean); +gb_internal DEF_QUERY_PROC(QueryValueInteger, i64, query_value_integer); +gb_internal DEF_QUERY_PROC(QueryValueFloat, f64, query_value_float); +gb_internal DEF_QUERY_PROC(QueryValueArray, Array const &, query_value_array); +gb_internal DEF_QUERY_PROC(QueryValueMap, Array const &, query_value_map); +gb_internal DEF_QUERY_PROC0(QueryValueArray, query_value_array); +gb_internal DEF_QUERY_PROC0(QueryValueMap, query_value_map); -isize qprintf(bool format, isize indent, char const *fmt, ...) { +gb_internal isize qprintf(bool format, isize indent, char const *fmt, ...) { if (format) while (indent --> 0) { gb_printf("\t"); } @@ -209,7 +209,7 @@ isize qprintf(bool format, isize indent, char const *fmt, ...) { return res; } -bool qv_valid_char(u8 c) { +gb_internal bool qv_valid_char(u8 c) { if (c >= 0x80) { return false; } @@ -227,7 +227,7 @@ bool qv_valid_char(u8 c) { return true; } -void print_query_data_as_json(QueryValue *value, bool format = true, isize indent = 0) { +gb_internal void print_query_data_as_json(QueryValue *value, bool format = true, isize indent = 0) { if (value == nullptr) { gb_printf("null"); return; @@ -359,7 +359,7 @@ void print_query_data_as_json(QueryValue *value, bool format = true, isize inden -int query_data_package_compare(void const *a, void const *b) { +gb_internal int query_data_package_compare(void const *a, void const *b) { AstPackage *x = *cast(AstPackage *const *)a; AstPackage *y = *cast(AstPackage *const *)b; @@ -377,7 +377,7 @@ int query_data_package_compare(void const *a, void const *b) { return 0; } -int query_data_definition_compare(void const *a, void const *b) { +gb_internal int query_data_definition_compare(void const *a, void const *b) { Entity *x = *cast(Entity *const *)a; Entity *y = *cast(Entity *const *)b; @@ -399,7 +399,7 @@ int query_data_definition_compare(void const *a, void const *b) { return string_compare(x->token.string, y->token.string); } -int entity_name_compare(void const *a, void const *b) { +gb_internal int entity_name_compare(void const *a, void const *b) { Entity *x = *cast(Entity *const *)a; Entity *y = *cast(Entity *const *)b; if (x == y) { @@ -413,10 +413,10 @@ int entity_name_compare(void const *a, void const *b) { } -void generate_and_print_query_data_global_definitions(Checker *c, Timings *timings); -void generate_and_print_query_data_go_to_definitions(Checker *c); +gb_internal void generate_and_print_query_data_global_definitions(Checker *c, Timings *timings); +gb_internal void generate_and_print_query_data_go_to_definitions(Checker *c); -void generate_and_print_query_data(Checker *c, Timings *timings) { +gb_internal void generate_and_print_query_data(Checker *c, Timings *timings) { query_value_allocator = heap_allocator(); switch (build_context.query_data_set_settings.kind) { case QueryDataSet_GlobalDefinitions: @@ -429,7 +429,7 @@ void generate_and_print_query_data(Checker *c, Timings *timings) { } -void generate_and_print_query_data_global_definitions(Checker *c, Timings *timings) { +gb_internal void generate_and_print_query_data_global_definitions(Checker *c, Timings *timings) { auto *root = query_value_map(); if (global_error_collector.errors.count > 0) { @@ -805,7 +805,7 @@ struct BinaryArray { }; template -Array binary_array_from_data(BinaryArray ba, void *data) { +gb_internal Array binary_array_from_data(BinaryArray ba, void *data) { Array res = {}; res.data = cast(T *)(cast(u8 *)data + ba.offset); res.count = ba.length; @@ -841,7 +841,7 @@ struct GoToDefFileMap { }; -int go_to_def_file_map_compare(void const *a, void const *b) { +gb_internal int go_to_def_file_map_compare(void const *a, void const *b) { GoToDefFileMap const *x = cast(GoToDefFileMap const *)a; GoToDefFileMap const *y = cast(GoToDefFileMap const *)b; if (x == y) { @@ -859,7 +859,7 @@ int go_to_def_file_map_compare(void const *a, void const *b) { return 0; } -int quick_ident_compare(void const *a, void const *b) { +gb_internal int quick_ident_compare(void const *a, void const *b) { Ast *x = *cast(Ast **)a; Ast *y = *cast(Ast **)b; @@ -873,7 +873,7 @@ int quick_ident_compare(void const *a, void const *b) { } -void generate_and_print_query_data_go_to_definitions(Checker *c) { +gb_internal void generate_and_print_query_data_go_to_definitions(Checker *c) { GB_ASSERT(c->info.allow_identifier_uses); gbAllocator a = query_value_allocator; -- cgit v1.2.3