{"payload":{"allShortcutsEnabled":false,"fileTree":{"":{"items":[{"name":"GL","path":"GL","contentType":"directory"},{"name":"misc","path":"misc","contentType":"directory"},{"name":"tests","path":"tests","contentType":"directory"},{"name":"utils","path":"utils","contentType":"directory"},{"name":".hgignore","path":".hgignore","contentType":"file"},{"name":"CMakeLists.txt","path":"CMakeLists.txt","contentType":"file"},{"name":"LICENSE.txt","path":"LICENSE.txt","contentType":"file"},{"name":"README.txt","path":"README.txt","contentType":"file"},{"name":"counts.sh","path":"counts.sh","contentType":"file"},{"name":"mojoshader.c","path":"mojoshader.c","contentType":"file"},{"name":"mojoshader.h","path":"mojoshader.h","contentType":"file"},{"name":"mojoshader_assembler.c","path":"mojoshader_assembler.c","contentType":"file"},{"name":"mojoshader_common.c","path":"mojoshader_common.c","contentType":"file"},{"name":"mojoshader_compiler.c","path":"mojoshader_compiler.c","contentType":"file"},{"name":"mojoshader_internal.h","path":"mojoshader_internal.h","contentType":"file"},{"name":"mojoshader_lexer.c","path":"mojoshader_lexer.c","contentType":"file"},{"name":"mojoshader_lexer.re","path":"mojoshader_lexer.re","contentType":"file"},{"name":"mojoshader_opengl.c","path":"mojoshader_opengl.c","contentType":"file"},{"name":"mojoshader_parser_hlsl.lemon","path":"mojoshader_parser_hlsl.lemon","contentType":"file"},{"name":"mojoshader_preprocessor.c","path":"mojoshader_preprocessor.c","contentType":"file"}],"totalCount":20}},"fileTreeProcessingTime":4.660964,"foldersToFetch":[],"repo":{"id":137922932,"defaultBranch":"main","name":"mojoshader","ownerLogin":"icculus","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2018-06-19T17:20:36.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/673562?v=4","public":true,"private":false,"isOrgOwned":false},"symbolsExpanded":false,"treeExpanded":true,"refInfo":{"name":"e8e921086851845fff8c6c097e00363046415b6d","listCacheKey":"v0:1624917734.114502","canEdit":false,"refType":"tree","currentOid":"e8e921086851845fff8c6c097e00363046415b6d"},"path":"mojoshader_common.c","currentUser":null,"blob":{"rawLines":["#define __MOJOSHADER_INTERNAL__ 1","#include \"mojoshader_internal.h\"","","typedef struct HashItem","{"," const void *key;"," const void *value;"," struct HashItem *next;","} HashItem;","","struct HashTable","{"," HashItem **table;"," uint32 table_len;"," int stackable;"," HashTable_HashFn hash;"," HashTable_KeyMatchFn keymatch;"," HashTable_NukeFn nuke;"," MOJOSHADER_malloc malloc;"," MOJOSHADER_free free;"," void *malloc_data;","};","","int hash_find(const HashTable *table, const void *key, const void **_value)","{"," HashItem *i;"," const uint32 hash = table->hash(key) & table->table_len;"," for (i = table->table[hash]; i != NULL; i = i->next)"," {"," if (table->keymatch(key, i->key))"," {"," if (_value != NULL)"," *_value = i->value;"," return 1;"," } // if"," } // for",""," return 0;","} // hash_find","","int hash_insert(HashTable *table, const void *key, const void *value)","{"," HashItem *item = NULL;"," const uint32 hash = table->hash(key) & table->table_len;"," if ( (!table->stackable) && (hash_find(table, key, NULL)) )"," return 0;",""," // !!! FIXME: grow and rehash table if it gets too saturated."," item = (HashItem *) table->malloc(sizeof (HashItem), table->malloc_data);"," if (item == NULL)"," return -1;",""," item->key = key;"," item->value = value;"," item->next = table->table[hash];"," table->table[hash] = item;",""," return 1;","} // hash_insert","","HashTable *hash_create(const uint32 initial_table_size,"," const HashTable_HashFn hashfn,"," const HashTable_KeyMatchFn keymatchfn,"," const HashTable_NukeFn nukefn,"," const int stackable,"," MOJOSHADER_malloc m, MOJOSHADER_free f, void *d)","{"," const uint32 alloc_len = sizeof (HashItem *) * initial_table_size;"," HashTable *table = (HashTable *) m(sizeof (HashTable), d);"," if (table == NULL)"," return NULL;"," memset(table, '\\0', sizeof (HashTable));",""," table->table = (HashItem **) m(alloc_len, d);"," if (table->table == NULL)"," {"," f(table, d);"," return NULL;"," } // if",""," memset(table->table, '\\0', alloc_len);"," table->table_len = initial_table_size;"," table->stackable = stackable;"," table->hash = hashfn;"," table->keymatch = keymatchfn;"," table->nuke = nukefn;"," table->malloc = m;"," table->free = f;"," table->malloc_data = d;"," return table;","} // hash_create","","void hash_destroy(HashTable *table)","{"," uint32 i;"," for (i = 0; i < table->table_len; i++)"," {"," HashItem *item = table->table[i];"," while (item != NULL)"," {"," HashItem *next = item->next;"," table->nuke(item->key, item->value);"," table->free(item, table->malloc_data);"," item = next;"," } // while"," } // for",""," table->free(table->table, table->malloc_data);"," table->free(table, table->malloc_data);","} // hash_destroy","","int hash_remove(HashTable *table, const void *key)","{"," HashItem *item = NULL;"," HashItem *prev = NULL;"," const uint32 hash = table->hash(key) & table->table_len;"," for (item = table->table[hash]; item != NULL; item = item->next)"," {"," if (table->keymatch(key, item->key))"," {"," if (prev != NULL)"," prev->next = item->next;"," else"," table->table[hash] = item->next;",""," table->nuke(item->key, item->value);"," table->free(item, table->malloc_data);"," return 1;"," } // if",""," prev = item;"," } // for",""," return 0;","} // hash_remove","","","// this is djb's xor hashing function.","uint32 hash_hash_string(const void *_sym)","{"," register const char *sym = (const char *) _sym;"," register uint32 hash = 5381;"," while (*sym)"," hash = ((hash << 5) + hash) ^ *(sym++);"," return hash;","} // hash_hash_string","","int hash_keymatch_string(const void *a, const void *b)","{"," return (strcmp((const char *) a, (const char *) b) == 0);","} // hash_keymatch_string","","// end of mojoshader_common.c ..."],"stylingDirectives":[[{"start":0,"end":7,"cssClass":"pl-k"},{"start":8,"end":31,"cssClass":"pl-s1"}],[{"start":0,"end":8,"cssClass":"pl-k"},{"start":9,"end":32,"cssClass":"pl-s"}],[],[{"start":0,"end":7,"cssClass":"pl-k"},{"start":8,"end":14,"cssClass":"pl-k"},{"start":15,"end":23,"cssClass":"pl-smi"}],[],[{"start":4,"end":9,"cssClass":"pl-k"},{"start":10,"end":14,"cssClass":"pl-smi"},{"start":15,"end":16,"cssClass":"pl-c1"},{"start":16,"end":19,"cssClass":"pl-c1"}],[{"start":4,"end":9,"cssClass":"pl-k"},{"start":10,"end":14,"cssClass":"pl-smi"},{"start":15,"end":16,"cssClass":"pl-c1"},{"start":16,"end":21,"cssClass":"pl-c1"}],[{"start":4,"end":10,"cssClass":"pl-k"},{"start":11,"end":19,"cssClass":"pl-smi"},{"start":20,"end":21,"cssClass":"pl-c1"},{"start":21,"end":25,"cssClass":"pl-c1"}],[{"start":2,"end":10,"cssClass":"pl-smi"}],[],[{"start":0,"end":6,"cssClass":"pl-k"},{"start":7,"end":16,"cssClass":"pl-smi"}],[],[{"start":4,"end":12,"cssClass":"pl-smi"},{"start":13,"end":14,"cssClass":"pl-c1"},{"start":14,"end":15,"cssClass":"pl-c1"},{"start":15,"end":20,"cssClass":"pl-c1"}],[{"start":4,"end":10,"cssClass":"pl-smi"},{"start":11,"end":20,"cssClass":"pl-c1"}],[{"start":4,"end":7,"cssClass":"pl-smi"},{"start":8,"end":17,"cssClass":"pl-c1"}],[{"start":4,"end":20,"cssClass":"pl-smi"},{"start":21,"end":25,"cssClass":"pl-c1"}],[{"start":4,"end":24,"cssClass":"pl-smi"},{"start":25,"end":33,"cssClass":"pl-c1"}],[{"start":4,"end":20,"cssClass":"pl-smi"},{"start":21,"end":25,"cssClass":"pl-c1"}],[{"start":4,"end":21,"cssClass":"pl-smi"},{"start":22,"end":28,"cssClass":"pl-c1"}],[{"start":4,"end":19,"cssClass":"pl-smi"},{"start":20,"end":24,"cssClass":"pl-c1"}],[{"start":4,"end":8,"cssClass":"pl-smi"},{"start":9,"end":10,"cssClass":"pl-c1"},{"start":10,"end":21,"cssClass":"pl-c1"}],[],[],[{"start":0,"end":3,"cssClass":"pl-smi"},{"start":4,"end":13,"cssClass":"pl-en"},{"start":14,"end":19,"cssClass":"pl-k"},{"start":20,"end":29,"cssClass":"pl-smi"},{"start":30,"end":31,"cssClass":"pl-c1"},{"start":31,"end":36,"cssClass":"pl-s1"},{"start":38,"end":43,"cssClass":"pl-k"},{"start":44,"end":48,"cssClass":"pl-smi"},{"start":49,"end":50,"cssClass":"pl-c1"},{"start":50,"end":53,"cssClass":"pl-s1"},{"start":55,"end":60,"cssClass":"pl-k"},{"start":61,"end":65,"cssClass":"pl-smi"},{"start":66,"end":67,"cssClass":"pl-c1"},{"start":67,"end":68,"cssClass":"pl-c1"},{"start":68,"end":74,"cssClass":"pl-s1"}],[],[{"start":4,"end":12,"cssClass":"pl-smi"},{"start":13,"end":14,"cssClass":"pl-c1"},{"start":14,"end":15,"cssClass":"pl-s1"}],[{"start":4,"end":9,"cssClass":"pl-k"},{"start":10,"end":16,"cssClass":"pl-smi"},{"start":17,"end":21,"cssClass":"pl-s1"},{"start":22,"end":23,"cssClass":"pl-c1"},{"start":24,"end":29,"cssClass":"pl-s1"},{"start":29,"end":31,"cssClass":"pl-c1"},{"start":31,"end":35,"cssClass":"pl-en"},{"start":36,"end":39,"cssClass":"pl-s1"},{"start":41,"end":42,"cssClass":"pl-c1"},{"start":43,"end":48,"cssClass":"pl-s1"},{"start":48,"end":50,"cssClass":"pl-c1"},{"start":50,"end":59,"cssClass":"pl-c1"}],[{"start":4,"end":7,"cssClass":"pl-k"},{"start":9,"end":10,"cssClass":"pl-s1"},{"start":11,"end":12,"cssClass":"pl-c1"},{"start":13,"end":18,"cssClass":"pl-s1"},{"start":18,"end":20,"cssClass":"pl-c1"},{"start":20,"end":25,"cssClass":"pl-c1"},{"start":26,"end":30,"cssClass":"pl-s1"},{"start":33,"end":34,"cssClass":"pl-s1"},{"start":35,"end":37,"cssClass":"pl-c1"},{"start":38,"end":42,"cssClass":"pl-c1"},{"start":44,"end":45,"cssClass":"pl-s1"},{"start":46,"end":47,"cssClass":"pl-c1"},{"start":48,"end":49,"cssClass":"pl-s1"},{"start":49,"end":51,"cssClass":"pl-c1"},{"start":51,"end":55,"cssClass":"pl-c1"}],[],[{"start":8,"end":10,"cssClass":"pl-k"},{"start":12,"end":17,"cssClass":"pl-s1"},{"start":17,"end":19,"cssClass":"pl-c1"},{"start":19,"end":27,"cssClass":"pl-en"},{"start":28,"end":31,"cssClass":"pl-s1"},{"start":33,"end":34,"cssClass":"pl-s1"},{"start":34,"end":36,"cssClass":"pl-c1"},{"start":36,"end":39,"cssClass":"pl-c1"}],[],[{"start":12,"end":14,"cssClass":"pl-k"},{"start":16,"end":22,"cssClass":"pl-s1"},{"start":23,"end":25,"cssClass":"pl-c1"},{"start":26,"end":30,"cssClass":"pl-c1"}],[{"start":16,"end":17,"cssClass":"pl-c1"},{"start":17,"end":23,"cssClass":"pl-s1"},{"start":24,"end":25,"cssClass":"pl-c1"},{"start":26,"end":27,"cssClass":"pl-s1"},{"start":27,"end":29,"cssClass":"pl-c1"},{"start":29,"end":34,"cssClass":"pl-c1"}],[{"start":12,"end":18,"cssClass":"pl-k"},{"start":19,"end":20,"cssClass":"pl-c1"}],[{"start":10,"end":15,"cssClass":"pl-c"}],[{"start":6,"end":12,"cssClass":"pl-c"}],[],[{"start":4,"end":10,"cssClass":"pl-k"},{"start":11,"end":12,"cssClass":"pl-c1"}],[{"start":2,"end":14,"cssClass":"pl-c"}],[],[{"start":0,"end":3,"cssClass":"pl-smi"},{"start":4,"end":15,"cssClass":"pl-en"},{"start":16,"end":25,"cssClass":"pl-smi"},{"start":26,"end":27,"cssClass":"pl-c1"},{"start":27,"end":32,"cssClass":"pl-s1"},{"start":34,"end":39,"cssClass":"pl-k"},{"start":40,"end":44,"cssClass":"pl-smi"},{"start":45,"end":46,"cssClass":"pl-c1"},{"start":46,"end":49,"cssClass":"pl-s1"},{"start":51,"end":56,"cssClass":"pl-k"},{"start":57,"end":61,"cssClass":"pl-smi"},{"start":62,"end":63,"cssClass":"pl-c1"},{"start":63,"end":68,"cssClass":"pl-s1"}],[],[{"start":4,"end":12,"cssClass":"pl-smi"},{"start":13,"end":14,"cssClass":"pl-c1"},{"start":14,"end":18,"cssClass":"pl-s1"},{"start":19,"end":20,"cssClass":"pl-c1"},{"start":21,"end":25,"cssClass":"pl-c1"}],[{"start":4,"end":9,"cssClass":"pl-k"},{"start":10,"end":16,"cssClass":"pl-smi"},{"start":17,"end":21,"cssClass":"pl-s1"},{"start":22,"end":23,"cssClass":"pl-c1"},{"start":24,"end":29,"cssClass":"pl-s1"},{"start":29,"end":31,"cssClass":"pl-c1"},{"start":31,"end":35,"cssClass":"pl-en"},{"start":36,"end":39,"cssClass":"pl-s1"},{"start":41,"end":42,"cssClass":"pl-c1"},{"start":43,"end":48,"cssClass":"pl-s1"},{"start":48,"end":50,"cssClass":"pl-c1"},{"start":50,"end":59,"cssClass":"pl-c1"}],[{"start":4,"end":6,"cssClass":"pl-k"},{"start":11,"end":16,"cssClass":"pl-s1"},{"start":16,"end":18,"cssClass":"pl-c1"},{"start":18,"end":27,"cssClass":"pl-c1"},{"start":29,"end":31,"cssClass":"pl-c1"},{"start":33,"end":42,"cssClass":"pl-en"},{"start":43,"end":48,"cssClass":"pl-s1"},{"start":50,"end":53,"cssClass":"pl-s1"},{"start":55,"end":59,"cssClass":"pl-c1"}],[{"start":8,"end":14,"cssClass":"pl-k"},{"start":15,"end":16,"cssClass":"pl-c1"}],[],[{"start":4,"end":65,"cssClass":"pl-c"}],[{"start":4,"end":8,"cssClass":"pl-s1"},{"start":9,"end":10,"cssClass":"pl-c1"},{"start":12,"end":20,"cssClass":"pl-smi"},{"start":21,"end":22,"cssClass":"pl-c1"},{"start":24,"end":29,"cssClass":"pl-s1"},{"start":29,"end":31,"cssClass":"pl-c1"},{"start":31,"end":37,"cssClass":"pl-en"},{"start":38,"end":44,"cssClass":"pl-k"},{"start":46,"end":54,"cssClass":"pl-s1"},{"start":57,"end":62,"cssClass":"pl-s1"},{"start":62,"end":64,"cssClass":"pl-c1"},{"start":64,"end":75,"cssClass":"pl-c1"}],[{"start":4,"end":6,"cssClass":"pl-k"},{"start":8,"end":12,"cssClass":"pl-s1"},{"start":13,"end":15,"cssClass":"pl-c1"},{"start":16,"end":20,"cssClass":"pl-c1"}],[{"start":8,"end":14,"cssClass":"pl-k"},{"start":15,"end":17,"cssClass":"pl-c1"}],[],[{"start":4,"end":8,"cssClass":"pl-s1"},{"start":8,"end":10,"cssClass":"pl-c1"},{"start":10,"end":13,"cssClass":"pl-c1"},{"start":14,"end":15,"cssClass":"pl-c1"},{"start":16,"end":19,"cssClass":"pl-s1"}],[{"start":4,"end":8,"cssClass":"pl-s1"},{"start":8,"end":10,"cssClass":"pl-c1"},{"start":10,"end":15,"cssClass":"pl-c1"},{"start":16,"end":17,"cssClass":"pl-c1"},{"start":18,"end":23,"cssClass":"pl-s1"}],[{"start":4,"end":8,"cssClass":"pl-s1"},{"start":8,"end":10,"cssClass":"pl-c1"},{"start":10,"end":14,"cssClass":"pl-c1"},{"start":15,"end":16,"cssClass":"pl-c1"},{"start":17,"end":22,"cssClass":"pl-s1"},{"start":22,"end":24,"cssClass":"pl-c1"},{"start":24,"end":29,"cssClass":"pl-c1"},{"start":30,"end":34,"cssClass":"pl-s1"}],[{"start":4,"end":9,"cssClass":"pl-s1"},{"start":9,"end":11,"cssClass":"pl-c1"},{"start":11,"end":16,"cssClass":"pl-c1"},{"start":17,"end":21,"cssClass":"pl-s1"},{"start":23,"end":24,"cssClass":"pl-c1"},{"start":25,"end":29,"cssClass":"pl-s1"}],[],[{"start":4,"end":10,"cssClass":"pl-k"},{"start":11,"end":12,"cssClass":"pl-c1"}],[{"start":2,"end":16,"cssClass":"pl-c"}],[],[{"start":0,"end":9,"cssClass":"pl-smi"},{"start":10,"end":11,"cssClass":"pl-c1"},{"start":11,"end":22,"cssClass":"pl-en"},{"start":23,"end":28,"cssClass":"pl-k"},{"start":29,"end":35,"cssClass":"pl-smi"},{"start":36,"end":54,"cssClass":"pl-s1"}],[{"start":14,"end":19,"cssClass":"pl-k"},{"start":20,"end":36,"cssClass":"pl-smi"},{"start":37,"end":43,"cssClass":"pl-s1"}],[{"start":14,"end":19,"cssClass":"pl-k"},{"start":20,"end":40,"cssClass":"pl-smi"},{"start":41,"end":51,"cssClass":"pl-s1"}],[{"start":14,"end":19,"cssClass":"pl-k"},{"start":20,"end":36,"cssClass":"pl-smi"},{"start":37,"end":43,"cssClass":"pl-s1"}],[{"start":14,"end":19,"cssClass":"pl-k"},{"start":20,"end":23,"cssClass":"pl-smi"},{"start":24,"end":33,"cssClass":"pl-s1"}],[{"start":14,"end":31,"cssClass":"pl-smi"},{"start":32,"end":33,"cssClass":"pl-s1"},{"start":35,"end":50,"cssClass":"pl-smi"},{"start":51,"end":52,"cssClass":"pl-s1"},{"start":54,"end":58,"cssClass":"pl-smi"},{"start":59,"end":60,"cssClass":"pl-c1"},{"start":60,"end":61,"cssClass":"pl-s1"}],[],[{"start":4,"end":9,"cssClass":"pl-k"},{"start":10,"end":16,"cssClass":"pl-smi"},{"start":17,"end":26,"cssClass":"pl-s1"},{"start":27,"end":28,"cssClass":"pl-c1"},{"start":29,"end":35,"cssClass":"pl-k"},{"start":37,"end":45,"cssClass":"pl-smi"},{"start":46,"end":47,"cssClass":"pl-c1"},{"start":49,"end":50,"cssClass":"pl-c1"},{"start":51,"end":69,"cssClass":"pl-s1"}],[{"start":4,"end":13,"cssClass":"pl-smi"},{"start":14,"end":15,"cssClass":"pl-c1"},{"start":15,"end":20,"cssClass":"pl-s1"},{"start":21,"end":22,"cssClass":"pl-c1"},{"start":24,"end":33,"cssClass":"pl-smi"},{"start":34,"end":35,"cssClass":"pl-c1"},{"start":37,"end":38,"cssClass":"pl-en"},{"start":39,"end":45,"cssClass":"pl-k"},{"start":47,"end":56,"cssClass":"pl-s1"},{"start":59,"end":60,"cssClass":"pl-s1"}],[{"start":4,"end":6,"cssClass":"pl-k"},{"start":8,"end":13,"cssClass":"pl-s1"},{"start":14,"end":16,"cssClass":"pl-c1"},{"start":17,"end":21,"cssClass":"pl-c1"}],[{"start":8,"end":14,"cssClass":"pl-k"},{"start":15,"end":19,"cssClass":"pl-c1"}],[{"start":4,"end":10,"cssClass":"pl-en"},{"start":11,"end":16,"cssClass":"pl-s1"},{"start":18,"end":22,"cssClass":"pl-c1"},{"start":24,"end":30,"cssClass":"pl-k"},{"start":32,"end":41,"cssClass":"pl-s1"}],[],[{"start":4,"end":9,"cssClass":"pl-s1"},{"start":9,"end":11,"cssClass":"pl-c1"},{"start":11,"end":16,"cssClass":"pl-c1"},{"start":17,"end":18,"cssClass":"pl-c1"},{"start":20,"end":28,"cssClass":"pl-smi"},{"start":29,"end":30,"cssClass":"pl-c1"},{"start":30,"end":31,"cssClass":"pl-c1"},{"start":33,"end":34,"cssClass":"pl-en"},{"start":35,"end":44,"cssClass":"pl-s1"},{"start":46,"end":47,"cssClass":"pl-s1"}],[{"start":4,"end":6,"cssClass":"pl-k"},{"start":8,"end":13,"cssClass":"pl-s1"},{"start":13,"end":15,"cssClass":"pl-c1"},{"start":15,"end":20,"cssClass":"pl-c1"},{"start":21,"end":23,"cssClass":"pl-c1"},{"start":24,"end":28,"cssClass":"pl-c1"}],[],[{"start":8,"end":9,"cssClass":"pl-en"},{"start":10,"end":15,"cssClass":"pl-s1"},{"start":17,"end":18,"cssClass":"pl-s1"}],[{"start":8,"end":14,"cssClass":"pl-k"},{"start":15,"end":19,"cssClass":"pl-c1"}],[{"start":6,"end":11,"cssClass":"pl-c"}],[],[{"start":4,"end":10,"cssClass":"pl-en"},{"start":11,"end":16,"cssClass":"pl-s1"},{"start":16,"end":18,"cssClass":"pl-c1"},{"start":18,"end":23,"cssClass":"pl-c1"},{"start":25,"end":29,"cssClass":"pl-c1"},{"start":31,"end":40,"cssClass":"pl-s1"}],[{"start":4,"end":9,"cssClass":"pl-s1"},{"start":9,"end":11,"cssClass":"pl-c1"},{"start":11,"end":20,"cssClass":"pl-c1"},{"start":21,"end":22,"cssClass":"pl-c1"},{"start":23,"end":41,"cssClass":"pl-s1"}],[{"start":4,"end":9,"cssClass":"pl-s1"},{"start":9,"end":11,"cssClass":"pl-c1"},{"start":11,"end":20,"cssClass":"pl-c1"},{"start":21,"end":22,"cssClass":"pl-c1"},{"start":23,"end":32,"cssClass":"pl-s1"}],[{"start":4,"end":9,"cssClass":"pl-s1"},{"start":9,"end":11,"cssClass":"pl-c1"},{"start":11,"end":15,"cssClass":"pl-c1"},{"start":16,"end":17,"cssClass":"pl-c1"},{"start":18,"end":24,"cssClass":"pl-s1"}],[{"start":4,"end":9,"cssClass":"pl-s1"},{"start":9,"end":11,"cssClass":"pl-c1"},{"start":11,"end":19,"cssClass":"pl-c1"},{"start":20,"end":21,"cssClass":"pl-c1"},{"start":22,"end":32,"cssClass":"pl-s1"}],[{"start":4,"end":9,"cssClass":"pl-s1"},{"start":9,"end":11,"cssClass":"pl-c1"},{"start":11,"end":15,"cssClass":"pl-c1"},{"start":16,"end":17,"cssClass":"pl-c1"},{"start":18,"end":24,"cssClass":"pl-s1"}],[{"start":4,"end":9,"cssClass":"pl-s1"},{"start":9,"end":11,"cssClass":"pl-c1"},{"start":11,"end":17,"cssClass":"pl-c1"},{"start":18,"end":19,"cssClass":"pl-c1"},{"start":20,"end":21,"cssClass":"pl-s1"}],[{"start":4,"end":9,"cssClass":"pl-s1"},{"start":9,"end":11,"cssClass":"pl-c1"},{"start":11,"end":15,"cssClass":"pl-c1"},{"start":16,"end":17,"cssClass":"pl-c1"},{"start":18,"end":19,"cssClass":"pl-s1"}],[{"start":4,"end":9,"cssClass":"pl-s1"},{"start":9,"end":11,"cssClass":"pl-c1"},{"start":11,"end":22,"cssClass":"pl-c1"},{"start":23,"end":24,"cssClass":"pl-c1"},{"start":25,"end":26,"cssClass":"pl-s1"}],[{"start":4,"end":10,"cssClass":"pl-k"},{"start":11,"end":16,"cssClass":"pl-s1"}],[{"start":2,"end":16,"cssClass":"pl-c"}],[],[{"start":0,"end":4,"cssClass":"pl-smi"},{"start":5,"end":17,"cssClass":"pl-en"},{"start":18,"end":27,"cssClass":"pl-smi"},{"start":28,"end":29,"cssClass":"pl-c1"},{"start":29,"end":34,"cssClass":"pl-s1"}],[],[{"start":4,"end":10,"cssClass":"pl-smi"},{"start":11,"end":12,"cssClass":"pl-s1"}],[{"start":4,"end":7,"cssClass":"pl-k"},{"start":9,"end":10,"cssClass":"pl-s1"},{"start":11,"end":12,"cssClass":"pl-c1"},{"start":13,"end":14,"cssClass":"pl-c1"},{"start":16,"end":17,"cssClass":"pl-s1"},{"start":18,"end":19,"cssClass":"pl-c1"},{"start":20,"end":25,"cssClass":"pl-s1"},{"start":25,"end":27,"cssClass":"pl-c1"},{"start":27,"end":36,"cssClass":"pl-c1"},{"start":38,"end":39,"cssClass":"pl-s1"},{"start":39,"end":41,"cssClass":"pl-c1"}],[],[{"start":8,"end":16,"cssClass":"pl-smi"},{"start":17,"end":18,"cssClass":"pl-c1"},{"start":18,"end":22,"cssClass":"pl-s1"},{"start":23,"end":24,"cssClass":"pl-c1"},{"start":25,"end":30,"cssClass":"pl-s1"},{"start":30,"end":32,"cssClass":"pl-c1"},{"start":32,"end":37,"cssClass":"pl-c1"},{"start":38,"end":39,"cssClass":"pl-s1"}],[{"start":8,"end":13,"cssClass":"pl-k"},{"start":15,"end":19,"cssClass":"pl-s1"},{"start":20,"end":22,"cssClass":"pl-c1"},{"start":23,"end":27,"cssClass":"pl-c1"}],[],[{"start":12,"end":20,"cssClass":"pl-smi"},{"start":21,"end":22,"cssClass":"pl-c1"},{"start":22,"end":26,"cssClass":"pl-s1"},{"start":27,"end":28,"cssClass":"pl-c1"},{"start":29,"end":33,"cssClass":"pl-s1"},{"start":33,"end":35,"cssClass":"pl-c1"},{"start":35,"end":39,"cssClass":"pl-c1"}],[{"start":12,"end":17,"cssClass":"pl-s1"},{"start":17,"end":19,"cssClass":"pl-c1"},{"start":19,"end":23,"cssClass":"pl-en"},{"start":24,"end":28,"cssClass":"pl-s1"},{"start":28,"end":30,"cssClass":"pl-c1"},{"start":30,"end":33,"cssClass":"pl-c1"},{"start":35,"end":39,"cssClass":"pl-s1"},{"start":39,"end":41,"cssClass":"pl-c1"},{"start":41,"end":46,"cssClass":"pl-c1"}],[{"start":12,"end":17,"cssClass":"pl-s1"},{"start":17,"end":19,"cssClass":"pl-c1"},{"start":19,"end":23,"cssClass":"pl-en"},{"start":24,"end":28,"cssClass":"pl-s1"},{"start":30,"end":35,"cssClass":"pl-s1"},{"start":35,"end":37,"cssClass":"pl-c1"},{"start":37,"end":48,"cssClass":"pl-c1"}],[{"start":12,"end":16,"cssClass":"pl-s1"},{"start":17,"end":18,"cssClass":"pl-c1"},{"start":19,"end":23,"cssClass":"pl-s1"}],[{"start":10,"end":18,"cssClass":"pl-c"}],[{"start":6,"end":12,"cssClass":"pl-c"}],[],[{"start":4,"end":9,"cssClass":"pl-s1"},{"start":9,"end":11,"cssClass":"pl-c1"},{"start":11,"end":15,"cssClass":"pl-en"},{"start":16,"end":21,"cssClass":"pl-s1"},{"start":21,"end":23,"cssClass":"pl-c1"},{"start":23,"end":28,"cssClass":"pl-c1"},{"start":30,"end":35,"cssClass":"pl-s1"},{"start":35,"end":37,"cssClass":"pl-c1"},{"start":37,"end":48,"cssClass":"pl-c1"}],[{"start":4,"end":9,"cssClass":"pl-s1"},{"start":9,"end":11,"cssClass":"pl-c1"},{"start":11,"end":15,"cssClass":"pl-en"},{"start":16,"end":21,"cssClass":"pl-s1"},{"start":23,"end":28,"cssClass":"pl-s1"},{"start":28,"end":30,"cssClass":"pl-c1"},{"start":30,"end":41,"cssClass":"pl-c1"}],[{"start":2,"end":17,"cssClass":"pl-c"}],[],[{"start":0,"end":3,"cssClass":"pl-smi"},{"start":4,"end":15,"cssClass":"pl-en"},{"start":16,"end":25,"cssClass":"pl-smi"},{"start":26,"end":27,"cssClass":"pl-c1"},{"start":27,"end":32,"cssClass":"pl-s1"},{"start":34,"end":39,"cssClass":"pl-k"},{"start":40,"end":44,"cssClass":"pl-smi"},{"start":45,"end":46,"cssClass":"pl-c1"},{"start":46,"end":49,"cssClass":"pl-s1"}],[],[{"start":4,"end":12,"cssClass":"pl-smi"},{"start":13,"end":14,"cssClass":"pl-c1"},{"start":14,"end":18,"cssClass":"pl-s1"},{"start":19,"end":20,"cssClass":"pl-c1"},{"start":21,"end":25,"cssClass":"pl-c1"}],[{"start":4,"end":12,"cssClass":"pl-smi"},{"start":13,"end":14,"cssClass":"pl-c1"},{"start":14,"end":18,"cssClass":"pl-s1"},{"start":19,"end":20,"cssClass":"pl-c1"},{"start":21,"end":25,"cssClass":"pl-c1"}],[{"start":4,"end":9,"cssClass":"pl-k"},{"start":10,"end":16,"cssClass":"pl-smi"},{"start":17,"end":21,"cssClass":"pl-s1"},{"start":22,"end":23,"cssClass":"pl-c1"},{"start":24,"end":29,"cssClass":"pl-s1"},{"start":29,"end":31,"cssClass":"pl-c1"},{"start":31,"end":35,"cssClass":"pl-en"},{"start":36,"end":39,"cssClass":"pl-s1"},{"start":41,"end":42,"cssClass":"pl-c1"},{"start":43,"end":48,"cssClass":"pl-s1"},{"start":48,"end":50,"cssClass":"pl-c1"},{"start":50,"end":59,"cssClass":"pl-c1"}],[{"start":4,"end":7,"cssClass":"pl-k"},{"start":9,"end":13,"cssClass":"pl-s1"},{"start":14,"end":15,"cssClass":"pl-c1"},{"start":16,"end":21,"cssClass":"pl-s1"},{"start":21,"end":23,"cssClass":"pl-c1"},{"start":23,"end":28,"cssClass":"pl-c1"},{"start":29,"end":33,"cssClass":"pl-s1"},{"start":36,"end":40,"cssClass":"pl-s1"},{"start":41,"end":43,"cssClass":"pl-c1"},{"start":44,"end":48,"cssClass":"pl-c1"},{"start":50,"end":54,"cssClass":"pl-s1"},{"start":55,"end":56,"cssClass":"pl-c1"},{"start":57,"end":61,"cssClass":"pl-s1"},{"start":61,"end":63,"cssClass":"pl-c1"},{"start":63,"end":67,"cssClass":"pl-c1"}],[],[{"start":8,"end":10,"cssClass":"pl-k"},{"start":12,"end":17,"cssClass":"pl-s1"},{"start":17,"end":19,"cssClass":"pl-c1"},{"start":19,"end":27,"cssClass":"pl-en"},{"start":28,"end":31,"cssClass":"pl-s1"},{"start":33,"end":37,"cssClass":"pl-s1"},{"start":37,"end":39,"cssClass":"pl-c1"},{"start":39,"end":42,"cssClass":"pl-c1"}],[],[{"start":12,"end":14,"cssClass":"pl-k"},{"start":16,"end":20,"cssClass":"pl-s1"},{"start":21,"end":23,"cssClass":"pl-c1"},{"start":24,"end":28,"cssClass":"pl-c1"}],[{"start":16,"end":20,"cssClass":"pl-s1"},{"start":20,"end":22,"cssClass":"pl-c1"},{"start":22,"end":26,"cssClass":"pl-c1"},{"start":27,"end":28,"cssClass":"pl-c1"},{"start":29,"end":33,"cssClass":"pl-s1"},{"start":33,"end":35,"cssClass":"pl-c1"},{"start":35,"end":39,"cssClass":"pl-c1"}],[{"start":12,"end":16,"cssClass":"pl-k"}],[{"start":16,"end":21,"cssClass":"pl-s1"},{"start":21,"end":23,"cssClass":"pl-c1"},{"start":23,"end":28,"cssClass":"pl-c1"},{"start":29,"end":33,"cssClass":"pl-s1"},{"start":35,"end":36,"cssClass":"pl-c1"},{"start":37,"end":41,"cssClass":"pl-s1"},{"start":41,"end":43,"cssClass":"pl-c1"},{"start":43,"end":47,"cssClass":"pl-c1"}],[],[{"start":12,"end":17,"cssClass":"pl-s1"},{"start":17,"end":19,"cssClass":"pl-c1"},{"start":19,"end":23,"cssClass":"pl-en"},{"start":24,"end":28,"cssClass":"pl-s1"},{"start":28,"end":30,"cssClass":"pl-c1"},{"start":30,"end":33,"cssClass":"pl-c1"},{"start":35,"end":39,"cssClass":"pl-s1"},{"start":39,"end":41,"cssClass":"pl-c1"},{"start":41,"end":46,"cssClass":"pl-c1"}],[{"start":12,"end":17,"cssClass":"pl-s1"},{"start":17,"end":19,"cssClass":"pl-c1"},{"start":19,"end":23,"cssClass":"pl-en"},{"start":24,"end":28,"cssClass":"pl-s1"},{"start":30,"end":35,"cssClass":"pl-s1"},{"start":35,"end":37,"cssClass":"pl-c1"},{"start":37,"end":48,"cssClass":"pl-c1"}],[{"start":12,"end":18,"cssClass":"pl-k"},{"start":19,"end":20,"cssClass":"pl-c1"}],[{"start":10,"end":15,"cssClass":"pl-c"}],[],[{"start":8,"end":12,"cssClass":"pl-s1"},{"start":13,"end":14,"cssClass":"pl-c1"},{"start":15,"end":19,"cssClass":"pl-s1"}],[{"start":6,"end":12,"cssClass":"pl-c"}],[],[{"start":4,"end":10,"cssClass":"pl-k"},{"start":11,"end":12,"cssClass":"pl-c1"}],[{"start":2,"end":16,"cssClass":"pl-c"}],[],[],[{"start":0,"end":38,"cssClass":"pl-c"}],[{"start":0,"end":6,"cssClass":"pl-smi"},{"start":7,"end":23,"cssClass":"pl-en"},{"start":24,"end":29,"cssClass":"pl-k"},{"start":30,"end":34,"cssClass":"pl-smi"},{"start":35,"end":36,"cssClass":"pl-c1"},{"start":36,"end":40,"cssClass":"pl-s1"}],[],[{"start":13,"end":18,"cssClass":"pl-k"},{"start":19,"end":23,"cssClass":"pl-smi"},{"start":24,"end":25,"cssClass":"pl-c1"},{"start":25,"end":28,"cssClass":"pl-s1"},{"start":29,"end":30,"cssClass":"pl-c1"},{"start":32,"end":37,"cssClass":"pl-k"},{"start":38,"end":42,"cssClass":"pl-smi"},{"start":43,"end":44,"cssClass":"pl-c1"},{"start":46,"end":50,"cssClass":"pl-s1"}],[{"start":13,"end":19,"cssClass":"pl-smi"},{"start":20,"end":24,"cssClass":"pl-s1"},{"start":25,"end":26,"cssClass":"pl-c1"},{"start":27,"end":31,"cssClass":"pl-c1"}],[{"start":4,"end":9,"cssClass":"pl-k"},{"start":11,"end":12,"cssClass":"pl-c1"},{"start":12,"end":15,"cssClass":"pl-s1"}],[{"start":8,"end":12,"cssClass":"pl-s1"},{"start":13,"end":14,"cssClass":"pl-c1"},{"start":17,"end":21,"cssClass":"pl-s1"},{"start":25,"end":26,"cssClass":"pl-c1"},{"start":28,"end":29,"cssClass":"pl-c1"},{"start":30,"end":34,"cssClass":"pl-s1"},{"start":38,"end":39,"cssClass":"pl-c1"},{"start":40,"end":43,"cssClass":"pl-s1"},{"start":43,"end":45,"cssClass":"pl-c1"}],[{"start":4,"end":10,"cssClass":"pl-k"},{"start":11,"end":15,"cssClass":"pl-s1"}],[{"start":2,"end":21,"cssClass":"pl-c"}],[],[{"start":0,"end":3,"cssClass":"pl-smi"},{"start":4,"end":24,"cssClass":"pl-en"},{"start":25,"end":30,"cssClass":"pl-k"},{"start":31,"end":35,"cssClass":"pl-smi"},{"start":36,"end":37,"cssClass":"pl-c1"},{"start":37,"end":38,"cssClass":"pl-s1"},{"start":40,"end":45,"cssClass":"pl-k"},{"start":46,"end":50,"cssClass":"pl-smi"},{"start":51,"end":52,"cssClass":"pl-c1"},{"start":52,"end":53,"cssClass":"pl-s1"}],[],[{"start":4,"end":10,"cssClass":"pl-k"},{"start":12,"end":18,"cssClass":"pl-en"},{"start":20,"end":25,"cssClass":"pl-k"},{"start":26,"end":30,"cssClass":"pl-smi"},{"start":31,"end":32,"cssClass":"pl-c1"},{"start":34,"end":35,"cssClass":"pl-s1"},{"start":38,"end":43,"cssClass":"pl-k"},{"start":44,"end":48,"cssClass":"pl-smi"},{"start":49,"end":50,"cssClass":"pl-c1"},{"start":52,"end":53,"cssClass":"pl-s1"},{"start":55,"end":57,"cssClass":"pl-c1"},{"start":58,"end":59,"cssClass":"pl-c1"}],[{"start":2,"end":25,"cssClass":"pl-c"}],[],[{"start":0,"end":33,"cssClass":"pl-c"}],[]],"colorizedLines":null,"csv":null,"csvError":null,"dependabotInfo":{"showConfigurationBanner":false,"configFilePath":null,"networkDependabotPath":"/icculus/mojoshader/network/updates","dismissConfigurationNoticePath":"/settings/dismiss-notice/dependabot_configuration_notice","configurationNoticeDismissed":null},"displayName":"mojoshader_common.c","displayUrl":"https://github.com/icculus/mojoshader/blame/e8e921086851845fff8c6c097e00363046415b6d/mojoshader_common.c?raw=true","headerInfo":{"blobSize":"3.91 KB","deleteTooltip":"You must be signed in to make or propose changes","editTooltip":"You must be signed in to make or propose changes","ghDesktopPath":null,"isGitLfs":false,"onBranch":false,"shortPath":"50684bb","siteNavLoginPath":"/login?return_to=https%3A%2F%2Fgithub.com%2Ficculus%2Fmojoshader%2Fblame%2Fe8e921086851845fff8c6c097e00363046415b6d%2Fmojoshader_common.c","isCSV":false,"isRichtext":false,"toc":null,"lineInfo":{"truncatedLoc":"154","truncatedSloc":"132"},"mode":"file"},"image":false,"isCodeownersFile":null,"isPlain":false,"isValidLegacyIssueTemplate":false,"issueTemplate":null,"discussionTemplate":null,"language":"C","languageID":41,"large":false,"planSupportInfo":{"repoIsFork":null,"repoOwnedByCurrentUser":null,"requestFullPath":"/icculus/mojoshader/blame/e8e921086851845fff8c6c097e00363046415b6d/mojoshader_common.c","showFreeOrgGatedFeatureMessage":null,"showPlanSupportBanner":null,"upgradeDataAttributes":null,"upgradePath":null},"publishBannersInfo":{"dismissActionNoticePath":"/settings/dismiss-notice/publish_action_from_dockerfile","releasePath":"/icculus/mojoshader/releases/new?marketplace=true","showPublishActionBanner":false},"rawBlobUrl":"https://github.com/icculus/mojoshader/raw/e8e921086851845fff8c6c097e00363046415b6d/mojoshader_common.c","renderImageOrRaw":false,"richText":null,"renderedFileInfo":null,"shortPath":null,"symbolsEnabled":true,"tabSize":8,"topBannersInfo":{"overridingGlobalFundingFile":false,"globalPreferredFundingPath":null,"showInvalidCitationWarning":false,"citationHelpUrl":"https://docs.github.com/github/creating-cloning-and-archiving-repositories/creating-a-repository-on-github/about-citation-files","actionsOnboardingTip":null},"truncated":false,"viewable":true,"workflowRedirectUrl":null,"symbols":{"timed_out":false,"not_analyzed":false,"symbols":[{"name":"__MOJOSHADER_INTERNAL__","kind":"macro","ident_start":8,"ident_end":31,"extent_start":0,"extent_end":34,"fully_qualified_name":"__MOJOSHADER_INTERNAL__","ident_utf16":{"start":{"line_number":0,"utf16_col":8},"end":{"line_number":0,"utf16_col":31}},"extent_utf16":{"start":{"line_number":0,"utf16_col":0},"end":{"line_number":1,"utf16_col":0}}},{"name":"HashItem","kind":"class","ident_start":83,"ident_end":91,"extent_start":76,"extent_end":166,"fully_qualified_name":"HashItem","ident_utf16":{"start":{"line_number":3,"utf16_col":15},"end":{"line_number":3,"utf16_col":23}},"extent_utf16":{"start":{"line_number":3,"utf16_col":8},"end":{"line_number":8,"utf16_col":1}}},{"name":"HashItem","kind":"type","ident_start":167,"ident_end":175,"extent_start":68,"extent_end":176,"fully_qualified_name":"HashItem","ident_utf16":{"start":{"line_number":8,"utf16_col":2},"end":{"line_number":8,"utf16_col":10}},"extent_utf16":{"start":{"line_number":3,"utf16_col":0},"end":{"line_number":8,"utf16_col":11}}},{"name":"HashTable","kind":"class","ident_start":185,"ident_end":194,"extent_start":178,"extent_end":429,"fully_qualified_name":"HashTable","ident_utf16":{"start":{"line_number":10,"utf16_col":7},"end":{"line_number":10,"utf16_col":16}},"extent_utf16":{"start":{"line_number":10,"utf16_col":0},"end":{"line_number":21,"utf16_col":1}}},{"name":"hash_find","kind":"function","ident_start":436,"ident_end":445,"extent_start":436,"extent_end":507,"fully_qualified_name":"hash_find","ident_utf16":{"start":{"line_number":23,"utf16_col":4},"end":{"line_number":23,"utf16_col":13}},"extent_utf16":{"start":{"line_number":23,"utf16_col":4},"end":{"line_number":23,"utf16_col":75}}},{"name":"hash_insert","kind":"function","ident_start":857,"ident_end":868,"extent_start":857,"extent_end":922,"fully_qualified_name":"hash_insert","ident_utf16":{"start":{"line_number":40,"utf16_col":4},"end":{"line_number":40,"utf16_col":15}},"extent_utf16":{"start":{"line_number":40,"utf16_col":4},"end":{"line_number":40,"utf16_col":69}}},{"name":"hash_create","kind":"function","ident_start":1440,"ident_end":1451,"extent_start":1440,"extent_end":1725,"fully_qualified_name":"hash_create","ident_utf16":{"start":{"line_number":60,"utf16_col":11},"end":{"line_number":60,"utf16_col":22}},"extent_utf16":{"start":{"line_number":60,"utf16_col":11},"end":{"line_number":65,"utf16_col":62}}},{"name":"hash_destroy","kind":"function","ident_start":2412,"ident_end":2424,"extent_start":2412,"extent_end":2442,"fully_qualified_name":"hash_destroy","ident_utf16":{"start":{"line_number":92,"utf16_col":5},"end":{"line_number":92,"utf16_col":17}},"extent_utf16":{"start":{"line_number":92,"utf16_col":5},"end":{"line_number":92,"utf16_col":35}}},{"name":"hash_remove","kind":"function","ident_start":2906,"ident_end":2917,"extent_start":2906,"extent_end":2952,"fully_qualified_name":"hash_remove","ident_utf16":{"start":{"line_number":111,"utf16_col":4},"end":{"line_number":111,"utf16_col":15}},"extent_utf16":{"start":{"line_number":111,"utf16_col":4},"end":{"line_number":111,"utf16_col":50}}},{"name":"hash_hash_string","kind":"function","ident_start":3591,"ident_end":3607,"extent_start":3591,"extent_end":3625,"fully_qualified_name":"hash_hash_string","ident_utf16":{"start":{"line_number":138,"utf16_col":7},"end":{"line_number":138,"utf16_col":23}},"extent_utf16":{"start":{"line_number":138,"utf16_col":7},"end":{"line_number":138,"utf16_col":41}}},{"name":"hash_keymatch_string","kind":"function","ident_start":3822,"ident_end":3842,"extent_start":3822,"extent_end":3872,"fully_qualified_name":"hash_keymatch_string","ident_utf16":{"start":{"line_number":147,"utf16_col":4},"end":{"line_number":147,"utf16_col":24}},"extent_utf16":{"start":{"line_number":147,"utf16_col":4},"end":{"line_number":147,"utf16_col":54}}}]}},"copilotInfo":null,"copilotAccessAllowed":false,"blame":{"ranges":{"1":{"start":1,"oldStart":1,"end":60,"oldEnd":60,"commitOid":"493d81c6e0362780325daaa2fb0086c116546580","reblamePath":null},"61":{"start":61,"oldStart":61,"end":61,"oldEnd":61,"commitOid":"0161f626a9efc9cb3430751ff1df8b288f1eeca5","reblamePath":"mojoshader_common.c"},"62":{"start":62,"oldStart":62,"end":68,"oldEnd":68,"commitOid":"493d81c6e0362780325daaa2fb0086c116546580","reblamePath":null},"69":{"start":69,"oldStart":69,"end":69,"oldEnd":69,"commitOid":"e8e921086851845fff8c6c097e00363046415b6d","reblamePath":"mojoshader_common.c"},"70":{"start":70,"oldStart":70,"end":70,"oldEnd":70,"commitOid":"0161f626a9efc9cb3430751ff1df8b288f1eeca5","reblamePath":"mojoshader_common.c"},"71":{"start":71,"oldStart":71,"end":71,"oldEnd":71,"commitOid":"e8e921086851845fff8c6c097e00363046415b6d","reblamePath":"mojoshader_common.c"},"72":{"start":72,"oldStart":70,"end":72,"oldEnd":70,"commitOid":"493d81c6e0362780325daaa2fb0086c116546580","reblamePath":null},"73":{"start":73,"oldStart":73,"end":73,"oldEnd":73,"commitOid":"0161f626a9efc9cb3430751ff1df8b288f1eeca5","reblamePath":"mojoshader_common.c"},"74":{"start":74,"oldStart":71,"end":75,"oldEnd":72,"commitOid":"493d81c6e0362780325daaa2fb0086c116546580","reblamePath":null},"76":{"start":76,"oldStart":76,"end":77,"oldEnd":77,"commitOid":"0161f626a9efc9cb3430751ff1df8b288f1eeca5","reblamePath":"mojoshader_common.c"},"78":{"start":78,"oldStart":78,"end":78,"oldEnd":78,"commitOid":"e8e921086851845fff8c6c097e00363046415b6d","reblamePath":"mojoshader_common.c"},"79":{"start":79,"oldStart":79,"end":79,"oldEnd":79,"commitOid":"0161f626a9efc9cb3430751ff1df8b288f1eeca5","reblamePath":"mojoshader_common.c"},"80":{"start":80,"oldStart":74,"end":89,"oldEnd":83,"commitOid":"493d81c6e0362780325daaa2fb0086c116546580","reblamePath":null},"90":{"start":90,"oldStart":90,"end":90,"oldEnd":90,"commitOid":"e8e921086851845fff8c6c097e00363046415b6d","reblamePath":"mojoshader_common.c"},"91":{"start":91,"oldStart":91,"end":91,"oldEnd":91,"commitOid":"0161f626a9efc9cb3430751ff1df8b288f1eeca5","reblamePath":"mojoshader_common.c"},"92":{"start":92,"oldStart":86,"end":92,"oldEnd":86,"commitOid":"493d81c6e0362780325daaa2fb0086c116546580","reblamePath":null},"93":{"start":93,"oldStart":93,"end":93,"oldEnd":93,"commitOid":"0161f626a9efc9cb3430751ff1df8b288f1eeca5","reblamePath":"mojoshader_common.c"},"94":{"start":94,"oldStart":88,"end":108,"oldEnd":102,"commitOid":"493d81c6e0362780325daaa2fb0086c116546580","reblamePath":null},"109":{"start":109,"oldStart":109,"end":110,"oldEnd":110,"commitOid":"0161f626a9efc9cb3430751ff1df8b288f1eeca5","reblamePath":"mojoshader_common.c"},"111":{"start":111,"oldStart":105,"end":136,"oldEnd":130,"commitOid":"493d81c6e0362780325daaa2fb0086c116546580","reblamePath":null},"137":{"start":137,"oldStart":137,"end":152,"oldEnd":152,"commitOid":"a6d2ae04aa937a0bb708be74009ce497d576666b","reblamePath":"mojoshader_common.c"},"153":{"start":153,"oldStart":131,"end":154,"oldEnd":132,"commitOid":"493d81c6e0362780325daaa2fb0086c116546580","reblamePath":null}},"commits":{"493d81c6e0362780325daaa2fb0086c116546580":{"oid":"493d81c6e0362780325daaa2fb0086c116546580","message":"Added mojoshader_common.c with first shot at generic hashtable.","shortMessageHtmlLink":"Added mojoshader_common.c with first shot at generic hashtable.","authorAvatarUrl":"https://avatars.githubusercontent.com/u/673562?s=80&v=4","committerName":"Ryan C. Gordon","committerEmail":"icculus@icculus.org","committedDate":"2009-04-05T03:20:53.000-04:00","firstParentOid":"fb5c6ee1caf0d48450dc316cb8721e6d2a4dc935"},"0161f626a9efc9cb3430751ff1df8b288f1eeca5":{"oid":"0161f626a9efc9cb3430751ff1df8b288f1eeca5","message":"Reworked hashtable create/destroy functions.","shortMessageHtmlLink":"Reworked hashtable create/destroy functions.","authorAvatarUrl":"https://avatars.githubusercontent.com/u/673562?s=80&v=4","committerName":"Ryan C. Gordon","committerEmail":"icculus@icculus.org","committedDate":"2009-04-05T03:31:52.000-04:00","firstParentOid":"493d81c6e0362780325daaa2fb0086c116546580"},"e8e921086851845fff8c6c097e00363046415b6d":{"oid":"e8e921086851845fff8c6c097e00363046415b6d","message":"Patched to compile.","shortMessageHtmlLink":"Patched to compile.","authorAvatarUrl":"https://avatars.githubusercontent.com/u/673562?s=80&v=4","committerName":"Ryan C. Gordon","committerEmail":"icculus@icculus.org","committedDate":"2009-04-08T00:29:15.000-04:00","firstParentOid":"a6d2ae04aa937a0bb708be74009ce497d576666b"},"a6d2ae04aa937a0bb708be74009ce497d576666b":{"oid":"a6d2ae04aa937a0bb708be74009ce497d576666b","message":"Added string hash/compare functions.","shortMessageHtmlLink":"Added string hash/compare functions.","authorAvatarUrl":"https://avatars.githubusercontent.com/u/673562?s=80&v=4","committerName":"Ryan C. Gordon","committerEmail":"icculus@icculus.org","committedDate":"2009-04-05T03:32:33.000-04:00","firstParentOid":"0161f626a9efc9cb3430751ff1df8b288f1eeca5"}},"ignoreRevs":{"path":".git-blame-ignore-revs","present":false,"timedOut":null}},"csrf_tokens":{"/icculus/mojoshader/branches":{"post":"8cdGHaH_9E8auXIoI94AMyOSqaQGbd2rV2O8o9gh3LSbBCLU43p-bYt7y_pjzz3vF0HAvkAr_r_E24uxqPGQFw"},"/repos/preferences":{"post":"Z1z2Es6N5hXq7uISK4fwA-d-3mWIAQ82Em4W1KUrbYiPYg1vigQqrMxp72pM0NSXWn6WlucykiU06Vb7RsaIuA"}}},"title":"Blaming mojoshader/mojoshader_common.c at e8e921086851845fff8c6c097e00363046415b6d ยท icculus/mojoshader"}