mirror of
https://github.com/Ed94/raddebugger.git
synced 2026-10-14 04:49:41 -07:00
33 lines
1.2 KiB
C
33 lines
1.2 KiB
C
// Copyright (c) Epic Games Tools
|
|
// Licensed under the MIT license (https://opensource.org/license/mit/)
|
|
|
|
#pragma once
|
|
|
|
typedef struct LNK_CmdOption
|
|
{
|
|
struct LNK_CmdOption *next;
|
|
String8 string;
|
|
String8List value_strings;
|
|
} LNK_CmdOption;
|
|
|
|
typedef struct LNK_CmdLine
|
|
{
|
|
U64 option_count;
|
|
LNK_CmdOption *first_option;
|
|
LNK_CmdOption *last_option;
|
|
String8List input_list;
|
|
String8List raw_cmd_line;
|
|
} LNK_CmdLine;
|
|
|
|
internal String8List lnk_arg_list_parse_windows_rules(Arena *arena, String8 string);
|
|
internal LNK_CmdLine lnk_cmd_line_parse_windows_rules(Arena *arena, String8List arg_list);
|
|
internal LNK_CmdOption * lnk_cmd_line_option_from_string(LNK_CmdLine cmd_line, String8 string);
|
|
internal B32 lnk_cmd_line_has_option_string(LNK_CmdLine cmd_line, String8 string);
|
|
internal B32 lnk_cmd_line_has_option(LNK_CmdLine cmd_line, char *string);
|
|
|
|
internal LNK_CmdOption * lnk_cmd_line_push_option(Arena *arena, LNK_CmdLine *cmd_line, char *string, char *value);
|
|
internal LNK_CmdOption * lnk_cmd_line_push_option_if_not_present(Arena *arena, LNK_CmdLine *cmd_line, char *string, char *value);
|
|
|
|
internal String8List lnk_data_from_cmd_line(Arena *arena, LNK_CmdLine cmd_line);
|
|
|