예제 #1
0
static void destroy(grib_context* context,grib_action* act)
{
    grib_action_gen* a = ( grib_action_gen*)act;

    if(a->params !=  act->default_value)
        grib_arguments_free(context, a->params);
    grib_arguments_free(context, act->default_value);

    grib_context_free_persistent(context, act->name);
    grib_context_free_persistent(context, act->op);
    grib_context_free_persistent(context, act->name_space);
    if (act->set)
        grib_context_free_persistent(context, act->set);
}
예제 #2
0
static void destroy(grib_context* context, grib_action* act)
{
	grib_action_put* a = ( grib_action_put*)act;

	grib_arguments_free(context, a->args);
	grib_context_free_persistent(context, act->name);
	grib_context_free_persistent(context, act->op);
}
예제 #3
0
/* COMEBACK */
static void destroy(grib_context* context,grib_action* act)
{
	grib_action_trigger* a = (grib_action_trigger*)act;

	grib_action *b = a->block;

	while(b)
	{
		grib_action *n = b->next;
		grib_action_delete(context,b);
		b = n;
	}

	grib_arguments_free(context, a->trigger_on);
	grib_context_free_persistent(context, act->name);
	grib_context_free_persistent(context, act->op);
}
예제 #4
0
static void destroy(grib_context* context,grib_action* act)
{
    grib_action_switch* a = (grib_action_switch*) act;
    grib_case *t = a->Case;

    while(t)
    {
        grib_case *nt = t->next;
        grib_action_delete(context,t->action);
        grib_arguments_free(context,t->values);
        grib_context_free(context,t);
        t = nt;
    }

    grib_action_delete(context,a->Default);

    grib_context_free_persistent(context, act->name);
    grib_context_free_persistent(context, act->op);
}