myhtml_status_t myhtml_tag_init(myhtml_tag_t *tags) { tags->context_size = 4096 * 50; tags->context = (myhtml_tag_context_t*)mymalloc(sizeof(myhtml_tag_context_t) * tags->context_size); if(tags->context == NULL) { tags->cache_name = NULL; tags->index_nodes = NULL; return MyHTML_STATUS_TAGS_ERROR_MEMORY_ALLOCATION; } tags->cache_name_size = tags->context_size * 12; tags->cache_name = (char*)mymalloc(sizeof(char) * tags->cache_name_size); if(tags->cache_name == NULL) { tags->index_nodes = NULL; return MyHTML_STATUS_TAGS_ERROR_CACHE_MEMORY_ALLOCATION; } tags->tree = mctree_create(32); myhtml_tag_clean(tags); myhtml_tag_init_tags(tags); myhtml_tag_init_tags_categories(tags); tags->index_nodes = mcobject_async_create(); mcobject_async_status_t mcstatus = mcobject_async_init(tags->index_nodes, 128, 4096, sizeof(myhtml_tag_index_node_t)); if(mcstatus != MCOBJECT_ASYNC_STATUS_OK) return MyHTML_STATUS_TAGS_ERROR_MCOBJECT_CREATE; return MyHTML_STATUS_OK; }
myhtml_status_t myhtml_tag_init(myhtml_tree_t *tree, myhtml_tag_t *tags) { tags->context_size = MyHTML_TAG_LAST_ENTRY + 128; tags->context = (myhtml_tag_context_t*)mymalloc(sizeof(myhtml_tag_context_t) * tags->context_size); if(tags->context == NULL) return MyHTML_STATUS_TAGS_ERROR_MEMORY_ALLOCATION; tags->mchar_node = mchar_async_node_add(tree->myhtml->mchar); tags->tree = mctree_create(32); tags->mchar = tree->myhtml->mchar; tags->tag_index = tree->myhtml->tag_index; myhtml_tag_clean(tags); return MyHTML_STATUS_OK; }
myhtml_status_t myhtml_tag_init(myhtml_tree_t *tree, myhtml_tag_t *tags) { tags->mcsimple_context = mcsimple_create(); if(tags->mcsimple_context == NULL) return MyHTML_STATUS_TAGS_ERROR_MEMORY_ALLOCATION; mcsimple_init(tags->mcsimple_context, 128, 1024, sizeof(myhtml_tag_context_t)); tags->mchar_node = mchar_async_node_add(tree->myhtml->mchar); tags->tree = mctree_create(32); tags->mchar = tree->myhtml->mchar; tags->tag_index = tree->myhtml->tag_index; tags->tags_count = MyHTML_TAG_LAST_ENTRY; myhtml_tag_clean(tags); return MyHTML_STATUS_OK; }