From 59283c6f8ac302b424ce80654e25113b91e19c95 Mon Sep 17 00:00:00 2001 From: "Ryan C. Gordon" Date: Mon, 25 Oct 2010 03:57:01 -0400 Subject: [PATCH] Renamed function "arguments" to function "parameters" in the AST. --- mojoshader_compiler.c | 58 ++++++++++++++++++------------------ mojoshader_parser_hlsl.lemon | 58 ++++++++++++++++++------------------ 2 files changed, 58 insertions(+), 58 deletions(-) diff --git a/mojoshader_compiler.c b/mojoshader_compiler.c index 73d02f78..9141345a 100644 --- a/mojoshader_compiler.c +++ b/mojoshader_compiler.c @@ -137,7 +137,7 @@ typedef enum ASTNodeType AST_STATEMENT_END_RANGE, AST_MISC_START_RANGE, - AST_FUNCTION_ARGS, + AST_FUNCTION_PARAMS, AST_FUNCTION_SIGNATURE, AST_SCALAR_OR_ARRAY, AST_TYPEDEF, @@ -311,7 +311,7 @@ typedef enum InterpolationModifier INTERPMOD_SAMPLE } InterpolationModifier; -typedef struct FunctionArguments +typedef struct FunctionParameters { ASTNode ast; InputModifier input_modifier; @@ -320,15 +320,15 @@ typedef struct FunctionArguments const char *semantic; InterpolationModifier interpolation_modifier; Expression *initializer; - struct FunctionArguments *next; -} FunctionArguments; + struct FunctionParameters *next; +} FunctionParameters; typedef struct FunctionSignature { ASTNode ast; const char *datatype; const char *identifier; - FunctionArguments *args; + FunctionParameters *params; FunctionStorageClass storage_class; const char *semantic; } FunctionSignature; @@ -855,7 +855,7 @@ static void delete_expr(Context *ctx, Expression *expr) Free(ctx, expr); } // delete_expr -static FunctionArguments *new_function_arg(Context *ctx, +static FunctionParameters *new_function_param(Context *ctx, const InputModifier inputmod, const char *datatype, const char *identifier, @@ -863,7 +863,7 @@ static FunctionArguments *new_function_arg(Context *ctx, const InterpolationModifier interpmod, Expression *initializer) { - NEW_AST_NODE(retval, FunctionArguments, AST_FUNCTION_ARGS); + NEW_AST_NODE(retval, FunctionParameters, AST_FUNCTION_PARAMS); retval->input_modifier = inputmod; retval->datatype = datatype; retval->identifier = identifier; @@ -872,25 +872,25 @@ static FunctionArguments *new_function_arg(Context *ctx, retval->initializer = initializer; retval->next = NULL; return retval; -} // new_function_arg +} // new_function_param -static void delete_function_args(Context *ctx, FunctionArguments *args) +static void delete_function_params(Context *ctx, FunctionParameters *params) { - DELETE_AST_NODE(args); - delete_function_args(ctx, args->next); - delete_expr(ctx, args->initializer); - Free(ctx, args); -} // delete_function_args + DELETE_AST_NODE(params); + delete_function_params(ctx, params->next); + delete_expr(ctx, params->initializer); + Free(ctx, params); +} // delete_function_params static FunctionSignature *new_function_signature(Context *ctx, const char *datatype, const char *identifier, - FunctionArguments *args) + FunctionParameters *params) { NEW_AST_NODE(retval, FunctionSignature, AST_FUNCTION_SIGNATURE); retval->datatype = datatype; retval->identifier = identifier; - retval->args = args; + retval->params = params; retval->storage_class = FNSTORECLS_NONE; retval->semantic = NULL; return retval; @@ -899,7 +899,7 @@ static FunctionSignature *new_function_signature(Context *ctx, static void delete_function_signature(Context *ctx, FunctionSignature *sig) { DELETE_AST_NODE(sig); - delete_function_args(ctx, sig->args); + delete_function_params(ctx, sig->params); Free(ctx, sig); } // delete_function_signature @@ -2057,8 +2057,8 @@ static void print_ast(const int substmt, void *ast) printf(";%s", nl); break; - case AST_FUNCTION_ARGS: - switch (((FunctionArguments *) ast)->input_modifier) + case AST_FUNCTION_PARAMS: + switch (((FunctionParameters *) ast)->input_modifier) { case INPUTMOD_NONE: break; case INPUTMOD_IN: printf("in "); break; @@ -2067,12 +2067,12 @@ static void print_ast(const int substmt, void *ast) case INPUTMOD_UNIFORM: printf("uniform "); break; } // switch - printf("%s %s", (((FunctionArguments *) ast)->datatype), - (((FunctionArguments *) ast)->identifier)); - if (((FunctionArguments *) ast)->semantic) - printf(" : %s", ((FunctionArguments *) ast)->semantic); + printf("%s %s", (((FunctionParameters *) ast)->datatype), + (((FunctionParameters *) ast)->identifier)); + if (((FunctionParameters *) ast)->semantic) + printf(" : %s", ((FunctionParameters *) ast)->semantic); - switch (((FunctionArguments *) ast)->interpolation_modifier) + switch (((FunctionParameters *) ast)->interpolation_modifier) { case INTERPMOD_NONE: break; case INTERPMOD_LINEAR: printf(" linear"); break; @@ -2082,16 +2082,16 @@ static void print_ast(const int substmt, void *ast) case INTERPMOD_SAMPLE: printf(" sample"); break; } // switch - if (((FunctionArguments *) ast)->initializer) + if (((FunctionParameters *) ast)->initializer) { printf(" = "); - print_ast(0, ((FunctionArguments *) ast)->initializer); + print_ast(0, ((FunctionParameters *) ast)->initializer); } // if - if (((FunctionArguments *) ast)->next) + if (((FunctionParameters *) ast)->next) { printf(", "); - print_ast(0, ((FunctionArguments *) ast)->next); + print_ast(0, ((FunctionParameters *) ast)->next); } // if break; @@ -2105,7 +2105,7 @@ static void print_ast(const int substmt, void *ast) ((FunctionSignature *) ast)->datatype ? ((FunctionSignature *) ast)->datatype : "void", ((FunctionSignature *) ast)->identifier); - print_ast(0, ((FunctionSignature *) ast)->args); + print_ast(0, ((FunctionSignature *) ast)->params); printf(")"); if (((FunctionSignature *) ast)->semantic) printf(" : %s", ((FunctionSignature *) ast)->semantic); diff --git a/mojoshader_parser_hlsl.lemon b/mojoshader_parser_hlsl.lemon index 9f420101..1d974757 100644 --- a/mojoshader_parser_hlsl.lemon +++ b/mojoshader_parser_hlsl.lemon @@ -107,8 +107,8 @@ function_signature(A) ::= function_details(B). { A = B; } %type function_details { FunctionSignature * } %destructor function_details { delete_function_signature(ctx, $$); } -function_details(A) ::= datatype(B) IDENTIFIER(C) LPAREN function_arguments(D) RPAREN. { A = new_function_signature(ctx, B, C.string, D); } -function_details(A) ::= VOID IDENTIFIER(B) LPAREN function_arguments(C) RPAREN. { A = new_function_signature(ctx, NULL, B.string, C); } +function_details(A) ::= datatype(B) IDENTIFIER(C) LPAREN function_parameters(D) RPAREN. { A = new_function_signature(ctx, B, C.string, D); } +function_details(A) ::= VOID IDENTIFIER(B) LPAREN function_parameters(C) RPAREN. { A = new_function_signature(ctx, NULL, B.string, C); } // !!! FIXME: there is a "target" storage class that is the name of the // !!! FIXME: platform that this function is meant for...but I don't know @@ -120,36 +120,36 @@ function_details(A) ::= VOID IDENTIFIER(B) LPAREN function_arguments(C) RPAREN. //function_storageclass(A) ::= target(B). { A = B; } function_storageclass(A) ::= INLINE. { A = FNSTORECLS_INLINE; } -%type function_arguments { FunctionArguments * } -%destructor function_arguments { delete_function_args(ctx, $$); } -function_arguments(A) ::= VOID. { A = NULL; } -function_arguments(A) ::= function_argument_list(B). { REVERSE_LINKED_LIST(FunctionArguments, B); A = B; } -function_arguments(A) ::= . { A = NULL; } +%type function_parameters { FunctionParameters * } +%destructor function_parameters { delete_function_params(ctx, $$); } +function_parameters(A) ::= VOID. { A = NULL; } +function_parameters(A) ::= function_parameter_list(B). { REVERSE_LINKED_LIST(FunctionParameters, B); A = B; } +function_parameters(A) ::= . { A = NULL; } -%type function_argument_list { FunctionArguments * } -%destructor function_argument_list { delete_function_args(ctx, $$); } -function_argument_list(A) ::= function_argument(B). { A = B; } -function_argument_list(A) ::= function_argument_list(B) COMMA function_argument(C). { C->next = B; A = C; } +%type function_parameter_list { FunctionParameters * } +%destructor function_parameter_list { delete_function_params(ctx, $$); } +function_parameter_list(A) ::= function_parameter(B). { A = B; } +function_parameter_list(A) ::= function_parameter_list(B) COMMA function_parameter(C). { C->next = B; A = C; } // !!! FIXME: this is pretty unreadable. -%type function_argument { FunctionArguments * } -%destructor function_argument { delete_function_args(ctx, $$); } -function_argument(A) ::= input_modifier(B) datatype(C) IDENTIFIER(D) semantic(E) interpolation_mod(F) initializer(G). { A = new_function_arg(ctx, B, C, D.string, E, F, G); } -function_argument(A) ::= input_modifier(B) datatype(C) IDENTIFIER(D) semantic(E) interpolation_mod(F). { A = new_function_arg(ctx, B, C, D.string, E, F, NULL); } -function_argument(A) ::= input_modifier(B) datatype(C) IDENTIFIER(D) semantic(E) initializer(F). { A = new_function_arg(ctx, B, C, D.string, E, INTERPMOD_NONE, F); } -function_argument(A) ::= input_modifier(B) datatype(C) IDENTIFIER(D) semantic(E). { A = new_function_arg(ctx, B, C, D.string, E, INTERPMOD_NONE, NULL); } -function_argument(A) ::= input_modifier(B) datatype(C) IDENTIFIER(D) interpolation_mod(E) initializer(F). { A = new_function_arg(ctx, B, C, D.string, NULL, E, F); } -function_argument(A) ::= input_modifier(B) datatype(C) IDENTIFIER(D) interpolation_mod(E). { A = new_function_arg(ctx, B, C, D.string, NULL, E, NULL); } -function_argument(A) ::= input_modifier(B) datatype(C) IDENTIFIER(D) initializer(E). { A = new_function_arg(ctx, B, C, D.string, NULL, INTERPMOD_NONE, E); } -function_argument(A) ::= input_modifier(B) datatype(C) IDENTIFIER(D). { A = new_function_arg(ctx, B, C, D.string, NULL, INTERPMOD_NONE, NULL); } -function_argument(A) ::= datatype(B) IDENTIFIER(C) semantic(D) interpolation_mod(E) initializer(F). { A = new_function_arg(ctx, INPUTMOD_NONE, B, C.string, D, E, F); } -function_argument(A) ::= datatype(B) IDENTIFIER(C) semantic(D) interpolation_mod(E). { A = new_function_arg(ctx, INPUTMOD_NONE, B, C.string, D, E, NULL); } -function_argument(A) ::= datatype(B) IDENTIFIER(C) semantic(D) initializer(E). { A = new_function_arg(ctx, INPUTMOD_NONE, B, C.string, D, INTERPMOD_NONE, E); } -function_argument(A) ::= datatype(B) IDENTIFIER(C) semantic(D). { A = new_function_arg(ctx, INPUTMOD_NONE, B, C.string, D, INTERPMOD_NONE, NULL); } -function_argument(A) ::= datatype(B) IDENTIFIER(C) interpolation_mod(D) initializer(E). { A = new_function_arg(ctx, INPUTMOD_NONE, B, C.string, NULL, D, E); } -function_argument(A) ::= datatype(B) IDENTIFIER(C) interpolation_mod(D). { A = new_function_arg(ctx, INPUTMOD_NONE, B, C.string, NULL, D, NULL); } -function_argument(A) ::= datatype(B) IDENTIFIER(C) initializer(D). { A = new_function_arg(ctx, INPUTMOD_NONE, B, C.string, NULL, INTERPMOD_NONE, D); } -function_argument(A) ::= datatype(B) IDENTIFIER(C). { A = new_function_arg(ctx, INPUTMOD_NONE, B, C.string, NULL, INTERPMOD_NONE, NULL); } +%type function_parameter { FunctionParameters * } +%destructor function_parameter { delete_function_params(ctx, $$); } +function_parameter(A) ::= input_modifier(B) datatype(C) IDENTIFIER(D) semantic(E) interpolation_mod(F) initializer(G). { A = new_function_param(ctx, B, C, D.string, E, F, G); } +function_parameter(A) ::= input_modifier(B) datatype(C) IDENTIFIER(D) semantic(E) interpolation_mod(F). { A = new_function_param(ctx, B, C, D.string, E, F, NULL); } +function_parameter(A) ::= input_modifier(B) datatype(C) IDENTIFIER(D) semantic(E) initializer(F). { A = new_function_param(ctx, B, C, D.string, E, INTERPMOD_NONE, F); } +function_parameter(A) ::= input_modifier(B) datatype(C) IDENTIFIER(D) semantic(E). { A = new_function_param(ctx, B, C, D.string, E, INTERPMOD_NONE, NULL); } +function_parameter(A) ::= input_modifier(B) datatype(C) IDENTIFIER(D) interpolation_mod(E) initializer(F). { A = new_function_param(ctx, B, C, D.string, NULL, E, F); } +function_parameter(A) ::= input_modifier(B) datatype(C) IDENTIFIER(D) interpolation_mod(E). { A = new_function_param(ctx, B, C, D.string, NULL, E, NULL); } +function_parameter(A) ::= input_modifier(B) datatype(C) IDENTIFIER(D) initializer(E). { A = new_function_param(ctx, B, C, D.string, NULL, INTERPMOD_NONE, E); } +function_parameter(A) ::= input_modifier(B) datatype(C) IDENTIFIER(D). { A = new_function_param(ctx, B, C, D.string, NULL, INTERPMOD_NONE, NULL); } +function_parameter(A) ::= datatype(B) IDENTIFIER(C) semantic(D) interpolation_mod(E) initializer(F). { A = new_function_param(ctx, INPUTMOD_NONE, B, C.string, D, E, F); } +function_parameter(A) ::= datatype(B) IDENTIFIER(C) semantic(D) interpolation_mod(E). { A = new_function_param(ctx, INPUTMOD_NONE, B, C.string, D, E, NULL); } +function_parameter(A) ::= datatype(B) IDENTIFIER(C) semantic(D) initializer(E). { A = new_function_param(ctx, INPUTMOD_NONE, B, C.string, D, INTERPMOD_NONE, E); } +function_parameter(A) ::= datatype(B) IDENTIFIER(C) semantic(D). { A = new_function_param(ctx, INPUTMOD_NONE, B, C.string, D, INTERPMOD_NONE, NULL); } +function_parameter(A) ::= datatype(B) IDENTIFIER(C) interpolation_mod(D) initializer(E). { A = new_function_param(ctx, INPUTMOD_NONE, B, C.string, NULL, D, E); } +function_parameter(A) ::= datatype(B) IDENTIFIER(C) interpolation_mod(D). { A = new_function_param(ctx, INPUTMOD_NONE, B, C.string, NULL, D, NULL); } +function_parameter(A) ::= datatype(B) IDENTIFIER(C) initializer(D). { A = new_function_param(ctx, INPUTMOD_NONE, B, C.string, NULL, INTERPMOD_NONE, D); } +function_parameter(A) ::= datatype(B) IDENTIFIER(C). { A = new_function_param(ctx, INPUTMOD_NONE, B, C.string, NULL, INTERPMOD_NONE, NULL); } %type input_modifier { InputModifier } input_modifier(A) ::= IN. { A = INPUTMOD_IN; }