blob: 63c10d54550f158795640e147c6ef5a74856a246 [file]
/*
* Copyright (c) 2010 IBM Corporation.
* All rights reserved. This program and the accompanying materials
* are made available under the terms of the Eclipse Public License v1.0
* which accompanies this distribution, and is available at
* http://www.eclipse.org/legal/epl-v10.html
*/
#include "config.h"
#include <stdio.h>
#include <stdlib.h>
#include "x10/x10_variable.h"
/*
* Create a new x10variable_t
*/
x10variable_t *
X10VariableNew()
{
x10variable_t * x10Variable = (x10variable_t *)malloc(sizeof(x10variable_t));
x10Variable->name = NULL;
x10Variable->cpp_name = NULL;
x10Variable->cpp_full_name = NULL;
x10Variable->type = X10DTNull;
x10Variable->type_index = -1;
x10Variable->map_index = -1;
x10Variable->type_name = NULL;
x10Variable->size = -1;
x10Variable->offset = -1;
x10Variable->location = NULL;
x10Variable->num_children = 0;
x10Variable->is_reference = 0;
x10Variable->is_array = 0;
return x10Variable;
}
/*
* Free up the memory of an x10variable_t.
*/
void
X10VariableFree(x10variable_t *x10Variable)
{
if (x10Variable != NULL) {
if (NULL != x10Variable->name) {
free(x10Variable->name);
}
if (NULL != x10Variable->cpp_name) {
free(x10Variable->cpp_name);
}
if (NULL != x10Variable->cpp_full_name) {
free(x10Variable->cpp_full_name);
}
if (NULL != x10Variable->type_name) {
free(x10Variable->type_name);
}
if (NULL != x10Variable->location) {
free(x10Variable->location);
}
free(x10Variable);
}
}