mirror of
https://github.com/Ed94/metadesk.git
synced 2026-08-04 14:48:44 +00:00
adding arena (p3)
This commit is contained in:
@@ -2,6 +2,8 @@
|
||||
#include "md.h"
|
||||
#include "md.c"
|
||||
|
||||
static MD_Arena *arena = 0;
|
||||
|
||||
#define INDENT_SPACES 2
|
||||
static void Print(FILE* file, int indent_count, char* fmt, ...) {
|
||||
for(int i = 0; i < indent_count*INDENT_SPACES; i += 1)
|
||||
@@ -31,7 +33,7 @@ static void PrintNode(MD_Node* node, FILE* file, int indent_count) {
|
||||
|
||||
Print(file, indent_count+1, "Flags: %s,\n", binary_flags);
|
||||
Print(file, indent_count+1, "Flag Names: ", binary_flags);
|
||||
MD_String8List flags_list = MD_StringListFromNodeFlags(node->flags);
|
||||
MD_String8List flags_list = MD_StringListFromNodeFlags(arena, node->flags);
|
||||
|
||||
MD_StringJoin join = MD_ZERO_STRUCT;
|
||||
join.mid = MD_S8CString(", ");
|
||||
@@ -62,7 +64,7 @@ static void PrintNode(MD_Node* node, FILE* file, int indent_count) {
|
||||
|
||||
int main(int argument_count, char **arguments)
|
||||
{
|
||||
MD_Arena *arena = MD_ArenaNew(1ull << 40);
|
||||
arena = MD_ArenaNew(1ull << 40);
|
||||
|
||||
// NOTE(pmh): Parse all the files passed in via command line.
|
||||
MD_Node *list = MD_MakeList();
|
||||
|
||||
@@ -37,7 +37,8 @@ int main(int argument_count, char **arguments)
|
||||
arena = MD_ArenaNew(1ull << 40);
|
||||
|
||||
//~ NOTE(rjf): Parse command line arguments.
|
||||
MD_CmdLine cmdln = MD_MakeCmdLineFromOptions(MD_StringListFromArgCV(argument_count, arguments));
|
||||
MD_String8List arg_list = MD_StringListFromArgCV(arena, argument_count, arguments);
|
||||
MD_CmdLine cmdln = MD_MakeCmdLineFromOptions(arena, arg_list);
|
||||
MD_String8 site_info_path = MD_S8ListJoin(MD_CmdLineValuesFromString(cmdln, MD_S8Lit("siteinfo")), 0);
|
||||
MD_String8 page_dir_path = MD_S8ListJoin(MD_CmdLineValuesFromString(cmdln, MD_S8Lit("pagedir")), 0);
|
||||
if(!MD_CmdLineB32FromString(cmdln, MD_S8Lit("siteinfo")) ||
|
||||
@@ -406,7 +407,8 @@ GeneratePageContent(MD_Map *index_table, SiteInfo *site_info, PageInfo *page_inf
|
||||
{
|
||||
MD_S8Lit("\n\n"),
|
||||
};
|
||||
MD_String8List strlist = MD_S8Split(node->string, sizeof(splits)/sizeof(splits[0]), splits);
|
||||
MD_String8List strlist = MD_S8Split(arena, node->string, sizeof(splits)/sizeof(splits[0]),
|
||||
splits);
|
||||
|
||||
for(MD_String8Node *strnode = strlist.first; strnode; strnode = strnode->next)
|
||||
{
|
||||
|
||||
@@ -183,7 +183,8 @@ int main(int argument_count, char **arguments)
|
||||
MD_Arena *arena = MD_ArenaNew(1ull << 40);
|
||||
|
||||
//- rjf: parse command line
|
||||
MD_CmdLine cmdln = MD_MakeCmdLineFromOptions(MD_StringListFromArgCV(argument_count, arguments));
|
||||
MD_String8List arg_list = MD_StringListFromArgCV(arena, argument_count, arguments);
|
||||
MD_CmdLine cmdln = MD_MakeCmdLineFromOptions(arena, arg_list);
|
||||
|
||||
//- rjf: parse all input files
|
||||
MD_Node *file_list = MD_MakeList();
|
||||
|
||||
Reference in New Issue
Block a user