You are viewing a plain text version of this content. The canonical link for it is here.
Posted to java-dev@axis.apache.org by sa...@apache.org on 2007/09/28 12:29:43 UTC
svn commit: r580289 [2/20] - in /webservices/axis2/trunk/c:
guththila/include/ guththila/samples/ guththila/src/ guththila/tests/
neethi/include/ neethi/src/ neethi/src/secpolicy/builder/
neethi/src/secpolicy/model/ neethi/test/ samples/client/echo/ sa...
Modified: webservices/axis2/trunk/c/guththila/src/guththila_attribute.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/guththila/src/guththila_attribute.c?rev=580289&r1=580288&r2=580289&view=diff
==============================================================================
--- webservices/axis2/trunk/c/guththila/src/guththila_attribute.c (original)
+++ webservices/axis2/trunk/c/guththila/src/guththila_attribute.c Fri Sep 28 03:29:16 2007
@@ -1,3 +1,4 @@
+
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
@@ -13,89 +14,127 @@
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- */
+ */
#include <guththila_attribute.h>
#include <guththila_stack.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
-
-int GUTHTHILA_CALL guththila_attr_list_grow(guththila_attr_list_t *at_list, int addition, const axutil_env_t *env)
-{
- int i = 0;
- if (addition > 0 || (addition < 0 && at_list->capacity + addition > 0 && at_list->capacity + addition >= at_list->size)) {
- at_list->list = (guththila_attr_t *)realloc(at_list->list, sizeof(guththila_attr_t) * (at_list->capacity + addition));
- if (at_list->list){
- for (i = at_list->capacity; i < at_list->capacity + addition; i++){
- guththila_stack_push(&at_list->fr_stack, at_list->list + i, env);
- }
- at_list->capacity += addition;
- } else {
- return GUTHTHILA_FAILURE;
- }
- }
- return 0;
-}
-
-guththila_attr_list_t * GUTHTHILA_CALL guththila_attr_list_create(const axutil_env_t *env)
-{
- int i = 0;
- guththila_attr_list_t *at_list = (guththila_attr_list_t *) AXIS2_MALLOC(env->allocator, sizeof(guththila_attr_list_t));
- if (!at_list) return NULL;
-
- at_list->list = (guththila_attr_t *)AXIS2_MALLOC(env->allocator, sizeof(guththila_attr_t) * GUTHTHILA_ATTR_DEF_SIZE);
-
- if (at_list->list && guththila_stack_init(&at_list->fr_stack, env))
- {
- at_list->capacity = GUTHTHILA_ATTR_DEF_SIZE;
- at_list->size = 0;
- for (i = 0;i < GUTHTHILA_ATTR_DEF_SIZE; i++){
- guththila_stack_push(&at_list->fr_stack, at_list->list + i, env);
- }
- return at_list;
- }
- return NULL;
-}
-
-int GUTHTHILA_CALL guththila_attr_list_init(guththila_attr_list_t *at_list, const axutil_env_t *env)
-{
- int i = 0;
- at_list->list = (guththila_attr_t *)AXIS2_MALLOC(env->allocator, sizeof(guththila_attr_t) * GUTHTHILA_ATTR_DEF_SIZE);
-
- if (at_list->list && guththila_stack_init(&at_list->fr_stack, env))
- {
- at_list->capacity = GUTHTHILA_ATTR_DEF_SIZE;
- at_list->size = 0;
- for (i = 0;i < GUTHTHILA_ATTR_DEF_SIZE; i++){
- guththila_stack_push(&at_list->fr_stack, at_list->list + i, env);
- }
- return GUTHTHILA_SUCCESS;
- }
- return GUTHTHILA_FAILURE;
-}
-
-guththila_attr_t * GUTHTHILA_CALL guththila_attr_list_get(guththila_attr_list_t *at_list, const axutil_env_t *env)
-{
- if (at_list->fr_stack.top > 0 || guththila_attr_list_grow(at_list, GUTHTHILA_ATTR_DEF_SIZE, env)){
- return guththila_stack_pop(&at_list->fr_stack, env);
- }
- return NULL;
-}
-int GUTHTHILA_CALL guththila_attr_list_release(guththila_attr_list_t *at_list, guththila_attr_t *attr, const axutil_env_t *env)
-{
- return guththila_stack_push(&at_list->fr_stack, attr, env);
-}
-
-void GUTHTHILA_CALL msuila_attr_list_free_data(guththila_attr_list_t *at_list, const axutil_env_t *env)
-{
- AXIS2_FREE(env->allocator, at_list->list);
- guththila_stack_un_init(&at_list->fr_stack, env);
-}
-
-void GUTHTHILA_CALL guththila_attr_list_free(guththila_attr_list_t *at_list, const axutil_env_t *env)
-{
- AXIS2_FREE(env->allocator, at_list->list);
- guththila_stack_un_init(&at_list->fr_stack, env);
- AXIS2_FREE(env->allocator, at_list);
-}
-
+
int GUTHTHILA_CALL
+guththila_attr_list_grow(
+ guththila_attr_list_t * at_list,
+ int addition,
+ const axutil_env_t * env)
+{
+
int i = 0;
+
if (addition > 0 ||
+ (addition < 0 && at_list->capacity + addition > 0 &&
+ at_list->capacity + addition >= at_list->size))
+ {
+
at_list->list =
+ (guththila_attr_t *) realloc(at_list->list,
+ sizeof(guththila_attr_t) *
+ (at_list->capacity + addition));
+
if (at_list->list)
+ {
+
for (i = at_list->capacity; i < at_list->capacity + addition; i++)
+ {
+
guththila_stack_push(&at_list->fr_stack, at_list->list + i,
+ env);
+
}
+
at_list->capacity += addition;
+
}
+ else
+ {
+
return GUTHTHILA_FAILURE;
+
}
+
}
+
return 0;
+
}
+
+
guththila_attr_list_t *
+ GUTHTHILA_CALL guththila_attr_list_create(const axutil_env_t * env)
+{
+
int i = 0;
+
guththila_attr_list_t * at_list =
+ (guththila_attr_list_t *) AXIS2_MALLOC(env->allocator,
+ sizeof(guththila_attr_list_t));
+
if (!at_list)
+ return NULL;
+
at_list->list =
+ (guththila_attr_t *) AXIS2_MALLOC(env->allocator,
+ sizeof(guththila_attr_t) *
+ GUTHTHILA_ATTR_DEF_SIZE);
+
if (at_list->list && guththila_stack_init(&at_list->fr_stack, env))
+
+ {
+
at_list->capacity = GUTHTHILA_ATTR_DEF_SIZE;
+
at_list->size = 0;
+
for (i = 0; i < GUTHTHILA_ATTR_DEF_SIZE; i++)
+ {
+
guththila_stack_push(&at_list->fr_stack, at_list->list + i, env);
+
}
+
return at_list;
+
}
+
return NULL;
+
}
+
int GUTHTHILA_CALL
+guththila_attr_list_init(
+ guththila_attr_list_t * at_list,
+ const axutil_env_t * env)
+{
+
int i = 0;
+
at_list->list =
+ (guththila_attr_t *) AXIS2_MALLOC(env->allocator,
+ sizeof(guththila_attr_t) *
+ GUTHTHILA_ATTR_DEF_SIZE);
+
if (at_list->list && guththila_stack_init(&at_list->fr_stack, env))
+
+ {
+
at_list->capacity = GUTHTHILA_ATTR_DEF_SIZE;
+
at_list->size = 0;
+
for (i = 0; i < GUTHTHILA_ATTR_DEF_SIZE; i++)
+ {
+
guththila_stack_push(&at_list->fr_stack, at_list->list + i, env);
+
}
+
return GUTHTHILA_SUCCESS;
+
}
+
return GUTHTHILA_FAILURE;
+
}
+
+
guththila_attr_t *
+ GUTHTHILA_CALL guththila_attr_list_get(guththila_attr_list_t * at_list,
+ const axutil_env_t * env)
+{
+
if (at_list->fr_stack.top > 0 ||
+ guththila_attr_list_grow(at_list, GUTHTHILA_ATTR_DEF_SIZE, env))
+ {
+
return guththila_stack_pop(&at_list->fr_stack, env);
+
}
+
return NULL;
+
}
+
int GUTHTHILA_CALL
+guththila_attr_list_release(
+ guththila_attr_list_t * at_list,
+ guththila_attr_t * attr,
+ const axutil_env_t * env)
+{
+
return guththila_stack_push(&at_list->fr_stack, attr, env);
+
}
+
void GUTHTHILA_CALL
+msuila_attr_list_free_data(
+ guththila_attr_list_t * at_list,
+ const axutil_env_t * env)
+{
+
AXIS2_FREE(env->allocator, at_list->list);
+
guththila_stack_un_init(&at_list->fr_stack, env);
+
}
void GUTHTHILA_CALL
+
+guththila_attr_list_free(
+ guththila_attr_list_t * at_list,
+ const axutil_env_t * env)
+{
+
AXIS2_FREE(env->allocator, at_list->list);
+
guththila_stack_un_init(&at_list->fr_stack, env);
+
AXIS2_FREE(env->allocator, at_list);
+
}
Modified: webservices/axis2/trunk/c/guththila/src/guththila_buffer.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/guththila/src/guththila_buffer.c?rev=580289&r1=580288&r2=580289&view=diff
==============================================================================
--- webservices/axis2/trunk/c/guththila/src/guththila_buffer.c (original)
+++ webservices/axis2/trunk/c/guththila/src/guththila_buffer.c Fri Sep 28 03:29:16 2007
@@ -1,3 +1,4 @@
+
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
@@ -13,86 +14,122 @@
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- */
+ */
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <guththila_buffer.h>
-
-int GUTHTHILA_CALL guththila_buffer_init(guththila_buffer_t *buffer, int size, const axutil_env_t *env)
-{
- buffer->type = GUTHTHILA_MULTIPLE_BUFFER;
-
- buffer->data_size = (size_t *)AXIS2_MALLOC(env->allocator, sizeof(size_t) * GUTHTHILA_BUFFER_NUMBER_OF_BUFFERS);
- buffer->buffs_size = (size_t *)AXIS2_MALLOC(env->allocator, sizeof(size_t) * GUTHTHILA_BUFFER_NUMBER_OF_BUFFERS);
- buffer->buff = (char **)AXIS2_MALLOC(env->allocator, sizeof(char *) * GUTHTHILA_BUFFER_NUMBER_OF_BUFFERS);
- buffer->cur_buff = -1;
- buffer->pre_tot_data = 0;
- buffer->no_buffers = GUTHTHILA_BUFFER_NUMBER_OF_BUFFERS;
- if (size > 0 ){
- buffer->buff[0] = (guththila_char *)AXIS2_MALLOC(env->allocator, sizeof(guththila_char) * size);
- buffer->data_size[0] = 0;
- buffer->buffs_size[0] = size;
- buffer->cur_buff = 0;
- }
- return GUTHTHILA_SUCCESS;
-}
-
-int GUTHTHILA_CALL guththila_buffer_un_init(guththila_buffer_t *buffer, const axutil_env_t *env)
-{
- int i = 0;
- if (buffer->type == GUTHTHILA_SINGLE_BUFFER && buffer->buff && buffer->cur_buff == 0) {
-
- /*This is commented. because the ownership of the buffer is with the user. */
-
- /*if (buffer->buff[0]) AXIS2_FREE(env->allocator, buffer->buff[0]);*/
- if (buffer->buffs_size) AXIS2_FREE(env->allocator, buffer->buffs_size);
- if (buffer->data_size) AXIS2_FREE(env->allocator, buffer->data_size);
- AXIS2_FREE(env->allocator, buffer->buff);
- } else if (buffer->type == GUTHTHILA_MULTIPLE_BUFFER && buffer->buff){
- for (i = 0; i <= buffer->cur_buff; i++) {
- AXIS2_FREE(env->allocator, buffer->buff[i]);
- }
- AXIS2_FREE(env->allocator, buffer->buff);
- if (buffer->data_size) AXIS2_FREE(env->allocator, buffer->data_size);
- if (buffer->buffs_size) AXIS2_FREE(env->allocator, buffer->buffs_size);
- }
- return GUTHTHILA_SUCCESS;
-}
-
-int GUTHTHILA_CALL guththila_buffer_init_for_buffer(guththila_buffer_t *buffer, char *buff, int size, const axutil_env_t *env)
-{
- buffer->type = GUTHTHILA_SINGLE_BUFFER;
-
- buffer->buff = (char **)AXIS2_MALLOC(env->allocator, sizeof(char *) * GUTHTHILA_BUFFER_DEF_SIZE);
- buffer->buff[0] = buff;
- buffer->cur_buff = 0;
- buffer->buffs_size = (size_t *)AXIS2_MALLOC(env->allocator, sizeof(size_t) * GUTHTHILA_BUFFER_DEF_SIZE);
- buffer->buffs_size[0] = size;
- buffer->pre_tot_data = 0;
- buffer->data_size = (size_t *)AXIS2_MALLOC(env->allocator, sizeof(size_t) * GUTHTHILA_BUFFER_DEF_SIZE);
- buffer->data_size[0] = size;
- buffer->no_buffers = 1;
- return GUTHTHILA_SUCCESS;
-}
-
-void * GUTHTHILA_CALL guththila_buffer_get(guththila_buffer_t * buffer, const axutil_env_t *env)
-{
- size_t size = 0, current_size = 0;
- int i = 0;
- char *buff = NULL;
- for (i = 0; i <= buffer->cur_buff; i++) {
- size += buffer->data_size[i];
- }
- buff = (char *) AXIS2_MALLOC(env->allocator, sizeof(char) * (size + 1));
-
- for (i = 0; i <= buffer->cur_buff; i++) {
- memcpy(buff + current_size, buffer->buff[i] , buffer->data_size[i]);
- current_size += buffer->data_size[i];
- }
- buff[current_size] = '\0';
- return buff;
-}
-
-
-
+
int GUTHTHILA_CALL
+guththila_buffer_init(
+ guththila_buffer_t * buffer,
+ int size,
+ const axutil_env_t * env)
+{
+
buffer->type = GUTHTHILA_MULTIPLE_BUFFER;
+
buffer->data_size =
+ (size_t *) AXIS2_MALLOC(env->allocator,
+ sizeof(size_t) *
+ GUTHTHILA_BUFFER_NUMBER_OF_BUFFERS);
+
buffer->buffs_size =
+ (size_t *) AXIS2_MALLOC(env->allocator,
+ sizeof(size_t) *
+ GUTHTHILA_BUFFER_NUMBER_OF_BUFFERS);
+
buffer->buff =
+ (char **) AXIS2_MALLOC(env->allocator,
+ sizeof(char *) *
+ GUTHTHILA_BUFFER_NUMBER_OF_BUFFERS);
+
buffer->cur_buff = -1;
+
buffer->pre_tot_data = 0;
+
buffer->no_buffers = GUTHTHILA_BUFFER_NUMBER_OF_BUFFERS;
+
if (size > 0)
+ {
+
buffer->buff[0] =
+ (guththila_char *) AXIS2_MALLOC(env->allocator,
+ sizeof(guththila_char) * size);
+
buffer->data_size[0] = 0;
+
buffer->buffs_size[0] = size;
+
buffer->cur_buff = 0;
+
}
+
return GUTHTHILA_SUCCESS;
+
}
+
int GUTHTHILA_CALL
+guththila_buffer_un_init(
+ guththila_buffer_t * buffer,
+ const axutil_env_t * env)
+{
+
int i = 0;
+
if (buffer->type == GUTHTHILA_SINGLE_BUFFER && buffer->buff &&
+ buffer->cur_buff == 0)
+ {
+
+ /*This is commented. because the ownership of the buffer is with the user. */
+
+ /*if (buffer->buff[0]) AXIS2_FREE(env->allocator, buffer->buff[0]); */
+ if (buffer->buffs_size)
+ AXIS2_FREE(env->allocator, buffer->buffs_size);
+
if (buffer->data_size)
+ AXIS2_FREE(env->allocator, buffer->data_size);
+
AXIS2_FREE(env->allocator, buffer->buff);
+
}
+ else if (buffer->type == GUTHTHILA_MULTIPLE_BUFFER && buffer->buff)
+ {
+
for (i = 0; i <= buffer->cur_buff; i++)
+ {
+
AXIS2_FREE(env->allocator, buffer->buff[i]);
+
}
+
AXIS2_FREE(env->allocator, buffer->buff);
+
if (buffer->data_size)
+ AXIS2_FREE(env->allocator, buffer->data_size);
+
if (buffer->buffs_size)
+ AXIS2_FREE(env->allocator, buffer->buffs_size);
+
}
+
return GUTHTHILA_SUCCESS;
+
}
+
int GUTHTHILA_CALL
+guththila_buffer_init_for_buffer(
+ guththila_buffer_t * buffer,
+ char *buff,
+ int size,
+ const axutil_env_t * env)
+{
+
buffer->type = GUTHTHILA_SINGLE_BUFFER;
+
buffer->buff =
+ (char **) AXIS2_MALLOC(env->allocator,
+ sizeof(char *) * GUTHTHILA_BUFFER_DEF_SIZE);
+
buffer->buff[0] = buff;
+
buffer->cur_buff = 0;
+
buffer->buffs_size =
+ (size_t *) AXIS2_MALLOC(env->allocator,
+ sizeof(size_t) * GUTHTHILA_BUFFER_DEF_SIZE);
+
buffer->buffs_size[0] = size;
+
buffer->pre_tot_data = 0;
+
buffer->data_size =
+ (size_t *) AXIS2_MALLOC(env->allocator,
+ sizeof(size_t) * GUTHTHILA_BUFFER_DEF_SIZE);
+
buffer->data_size[0] = size;
+
buffer->no_buffers = 1;
+
return GUTHTHILA_SUCCESS;
+
}
+
void *GUTHTHILA_CALL
+guththila_buffer_get(
+ guththila_buffer_t * buffer,
+ const axutil_env_t * env)
+{
+
size_t size = 0, current_size = 0;
+
int i = 0;
+
char *buff = NULL;
+
for (i = 0; i <= buffer->cur_buff; i++)
+ {
+
size += buffer->data_size[i];
+
}
+
buff = (char *) AXIS2_MALLOC(env->allocator, sizeof(char) * (size + 1));
+
for (i = 0; i <= buffer->cur_buff; i++)
+ {
+
memcpy(buff + current_size, buffer->buff[i], buffer->data_size[i]);
+
current_size += buffer->data_size[i];
+
}
+
buff[current_size] = '\0';
+
return buff;
+
}
+
+
Modified: webservices/axis2/trunk/c/guththila/src/guththila_namespace.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/guththila/src/guththila_namespace.c?rev=580289&r1=580288&r2=580289&view=diff
==============================================================================
--- webservices/axis2/trunk/c/guththila/src/guththila_namespace.c (original)
+++ webservices/axis2/trunk/c/guththila/src/guththila_namespace.c Fri Sep 28 03:29:16 2007
@@ -1,3 +1,4 @@
+
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
@@ -13,87 +14,134 @@
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- */
+ */
#include <guththila_namespace.h>
#include <guththila_stack.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
-
-int GUTHTHILA_CALL guththila_namespace_list_grow(guththila_namespace_list_t *namesp_list, int addition, const axutil_env_t *env)
-{
- int i = 0;
- if (addition > 0 || (addition < 0 && namesp_list->capacity + addition > 0 && namesp_list->capacity + addition >= namesp_list->size)) {
- namesp_list->list = (guththila_namespace_t *)realloc(namesp_list->list, sizeof(guththila_namespace_t) * (namesp_list->capacity + addition));
- if (namesp_list->list){
- for (i = namesp_list->capacity; i < namesp_list->capacity + addition; i++){
- guththila_stack_push(&namesp_list->fr_stack, namesp_list->list + i, env);
- }
- namesp_list->capacity += addition;
- } else {
- return GUTHTHILA_FAILURE;
- }
- }
- return 0;
-}
-
-guththila_namespace_list_t * GUTHTHILA_CALL guththila_namespace_list_create(const axutil_env_t *env)
-{
- int i = 0;
- guththila_namespace_list_t *namesp_list = (guththila_namespace_list_t *) AXIS2_MALLOC(env->allocator, sizeof(guththila_namespace_list_t));
- if (!namesp_list) return NULL;
-
- namesp_list->list = (guththila_namespace_t *)AXIS2_MALLOC(env->allocator, sizeof(guththila_namespace_t) * GUTHTHILA_NAMESPACE_DEF_SIZE);
-
- if (namesp_list->list && guththila_stack_init(&namesp_list->fr_stack, env)){
- namesp_list->capacity = GUTHTHILA_NAMESPACE_DEF_SIZE;
- namesp_list->size = 0;
- for (i = 0;i < GUTHTHILA_NAMESPACE_DEF_SIZE; i++){
- guththila_stack_push(&namesp_list->fr_stack, namesp_list->list + i, env);
- }
- return namesp_list;
- }
- return NULL;
-}
-
-int GUTHTHILA_CALL guththila_namespace_list_init(guththila_namespace_list_t *namesp_list, const axutil_env_t *env)
-{
- int i = 0;
- namesp_list->list = (guththila_namespace_t *)AXIS2_MALLOC(env->allocator, sizeof(guththila_namespace_t) * GUTHTHILA_NAMESPACE_DEF_SIZE);
-
- if (namesp_list->list && guththila_stack_init(&namesp_list->fr_stack, env)){
- namesp_list->capacity = GUTHTHILA_NAMESPACE_DEF_SIZE;
- namesp_list->size = 0;
- for (i = 0;i < GUTHTHILA_NAMESPACE_DEF_SIZE; i++){
- guththila_stack_push(&namesp_list->fr_stack, namesp_list->list + i, env);
- }
- return GUTHTHILA_SUCCESS;
- }
- return GUTHTHILA_FAILURE;
-}
-
-guththila_namespace_t * GUTHTHILA_CALL guththila_namespace_list_get(guththila_namespace_list_t *namesp_list, const axutil_env_t *env)
-{
- if (namesp_list->fr_stack.top > 0 || guththila_namespace_list_grow(namesp_list, GUTHTHILA_NAMESPACE_DEF_SIZE, env)){
- return guththila_stack_pop(&namesp_list->fr_stack, env);
- }
- return NULL;
-}
-int GUTHTHILA_CALL guththila_namespace_list_release(guththila_namespace_list_t *namesp_list, guththila_namespace_t *namespace, const axutil_env_t *env)
-{
- return guththila_stack_push(&namesp_list->fr_stack, namespace, env);
-}
-
-void GUTHTHILA_CALL msuila_namespace_list_free_data(guththila_namespace_list_t *namesp_list, const axutil_env_t *env)
-{
- AXIS2_FREE(env->allocator, namesp_list->list);
- guththila_stack_un_init(&namesp_list->fr_stack, env);
-}
-
-void GUTHTHILA_CALL guththila_namespace_list_free(guththila_namespace_list_t *namesp_list, const axutil_env_t *env)
-{
- AXIS2_FREE(env->allocator, namesp_list->list);
- guththila_stack_un_init(&namesp_list->fr_stack, env);
- AXIS2_FREE(env->allocator, namesp_list);
-}
-
+
int GUTHTHILA_CALL
+guththila_namespace_list_grow(
+ guththila_namespace_list_t * namesp_list,
+ int addition,
+ const axutil_env_t * env)
+{
+
int i = 0;
+
if (addition > 0 ||
+ (addition < 0 && namesp_list->capacity + addition > 0 &&
+ namesp_list->capacity + addition >= namesp_list->size))
+ {
+
namesp_list->list =
+ (guththila_namespace_t *) realloc(namesp_list->list,
+ sizeof(guththila_namespace_t) *
+ (namesp_list->capacity +
+ addition));
+
if (namesp_list->list)
+ {
+
for (i = namesp_list->capacity;
+ i < namesp_list->capacity + addition; i++)
+ {
+
guththila_stack_push(&namesp_list->fr_stack,
+ namesp_list->list + i, env);
+
}
+
namesp_list->capacity += addition;
+
}
+ else
+ {
+
return GUTHTHILA_FAILURE;
+
}
+
}
+
return 0;
+
}
+
+
guththila_namespace_list_t *
+ GUTHTHILA_CALL guththila_namespace_list_create(const axutil_env_t * env)
+{
+
int i = 0;
+
guththila_namespace_list_t * namesp_list =
+ (guththila_namespace_list_t *) AXIS2_MALLOC(env->allocator,
+ sizeof
+ (guththila_namespace_list_t));
+
if (!namesp_list)
+ return NULL;
+
namesp_list->list =
+ (guththila_namespace_t *) AXIS2_MALLOC(env->allocator,
+ sizeof(guththila_namespace_t) *
+ GUTHTHILA_NAMESPACE_DEF_SIZE);
+
if (namesp_list->list &&
+ guththila_stack_init(&namesp_list->fr_stack, env))
+ {
+
namesp_list->capacity = GUTHTHILA_NAMESPACE_DEF_SIZE;
+
namesp_list->size = 0;
+
for (i = 0; i < GUTHTHILA_NAMESPACE_DEF_SIZE; i++)
+ {
+
guththila_stack_push(&namesp_list->fr_stack, namesp_list->list + i,
+ env);
+
}
+
return namesp_list;
+
}
+
return NULL;
+
}
+
int GUTHTHILA_CALL
+guththila_namespace_list_init(
+ guththila_namespace_list_t * namesp_list,
+ const axutil_env_t * env)
+{
+
int i = 0;
+
namesp_list->list =
+ (guththila_namespace_t *) AXIS2_MALLOC(env->allocator,
+ sizeof(guththila_namespace_t) *
+ GUTHTHILA_NAMESPACE_DEF_SIZE);
+
if (namesp_list->list &&
+ guththila_stack_init(&namesp_list->fr_stack, env))
+ {
+
namesp_list->capacity = GUTHTHILA_NAMESPACE_DEF_SIZE;
+
namesp_list->size = 0;
+
for (i = 0; i < GUTHTHILA_NAMESPACE_DEF_SIZE; i++)
+ {
+
guththila_stack_push(&namesp_list->fr_stack, namesp_list->list + i,
+ env);
+
}
+
return GUTHTHILA_SUCCESS;
+
}
+
return GUTHTHILA_FAILURE;
+
}
+
+
guththila_namespace_t *
+ GUTHTHILA_CALL guththila_namespace_list_get(guththila_namespace_list_t *
+ namesp_list,
+ const axutil_env_t * env)
+{
+
if (namesp_list->fr_stack.top > 0 ||
+ guththila_namespace_list_grow(namesp_list,
+ GUTHTHILA_NAMESPACE_DEF_SIZE, env))
+ {
+
return guththila_stack_pop(&namesp_list->fr_stack, env);
+
}
+
return NULL;
+
}
+
int GUTHTHILA_CALL
+guththila_namespace_list_release(
+ guththila_namespace_list_t * namesp_list,
+ guththila_namespace_t * namespace,
+ const axutil_env_t * env)
+{
+
return guththila_stack_push(&namesp_list->fr_stack, namespace, env);
+
}
+
void GUTHTHILA_CALL
+msuila_namespace_list_free_data(
+ guththila_namespace_list_t * namesp_list,
+ const axutil_env_t * env)
+{
+
AXIS2_FREE(env->allocator, namesp_list->list);
+
guththila_stack_un_init(&namesp_list->fr_stack, env);
+
}
void GUTHTHILA_CALL
+
+guththila_namespace_list_free(
+ guththila_namespace_list_t * namesp_list,
+ const axutil_env_t * env)
+{
+
AXIS2_FREE(env->allocator, namesp_list->list);
+
guththila_stack_un_init(&namesp_list->fr_stack, env);
+
AXIS2_FREE(env->allocator, namesp_list);
+
}
Modified: webservices/axis2/trunk/c/guththila/src/guththila_reader.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/guththila/src/guththila_reader.c?rev=580289&r1=580288&r2=580289&view=diff
==============================================================================
--- webservices/axis2/trunk/c/guththila/src/guththila_reader.c (original)
+++ webservices/axis2/trunk/c/guththila/src/guththila_reader.c Fri Sep 28 03:29:16 2007
@@ -1,3 +1,4 @@
+
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
@@ -13,82 +14,98 @@
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- */
+ */
#include <stdlib.h>
#include <string.h>
#include <guththila_reader.h>
-
-GUTHTHILA_EXPORT guththila_reader_t * GUTHTHILA_CALL
-guththila_reader_create_for_file (char* file_name, const axutil_env_t *env)
-{
- guththila_reader_t *reader = NULL;
- FILE *f = NULL;
- if (!file_name)
- return NULL;
- reader = (guththila_reader_t *) AXIS2_MALLOC(env->allocator, sizeof(guththila_reader_t));
- if (!reader)
- return NULL;
- f = fopen(file_name, "r");
-
- if (!f) {
- AXIS2_FREE(env->allocator, reader);
- return NULL;
- }
- reader->fp = f;
- reader->type = GUTHTHILA_FILE_READER;
- return reader;
-}
-
-GUTHTHILA_EXPORT guththila_reader_t * GUTHTHILA_CALL
-guththila_reader_create_for_memory(void *buffer, int size, const axutil_env_t *env)
-{
- guththila_reader_t *reader = (guththila_reader_t *) AXIS2_MALLOC(env->allocator, sizeof(guththila_reader_t));
- if (reader) {
- reader->type = GUTHTHILA_MEMORY_READER;
- reader->buff = buffer;
- reader->buff_size = size;
- reader->fp = NULL;
- return reader;
- }
- return NULL;
-}
-
-GUTHTHILA_EXPORT guththila_reader_t * GUTHTHILA_CALL
-guththila_reader_create_for_io(GUTHTHILA_READ_INPUT_CALLBACK input_read_callback, void *ctx, const axutil_env_t *env)
-{
- guththila_reader_t *reader = (guththila_reader_t *)AXIS2_MALLOC(env->allocator, sizeof(guththila_reader_t));
- if (reader){
- reader->input_read_callback = input_read_callback;
- reader->context = ctx;
- reader->type = GUTHTHILA_IO_READER;
- return reader;
- }
- return NULL;
-}
-
-GUTHTHILA_EXPORT void GUTHTHILA_CALL
-guththila_reader_free(guththila_reader_t * r, const axutil_env_t *env)
-{
- if (r->type == GUTHTHILA_FILE_READER && r->fp){
- fclose(r->fp);
- }
- AXIS2_FREE(env->allocator, r);
-}
-
-GUTHTHILA_EXPORT int GUTHTHILA_CALL
-guththila_reader_read (guththila_reader_t *r, guththila_char *buffer, int offset, int length, const axutil_env_t *env)
-{
- int rt = r->type;
- switch (rt) {
- case GUTHTHILA_FILE_READER :
- return (int)fread(buffer + offset, 1, length, r->fp);
- case GUTHTHILA_IO_READER :
- return r->input_read_callback((buffer + offset), length, r->context);
- default:
- return 0;
- }
- return 0;
-}
-
-
-
+
GUTHTHILA_EXPORT guththila_reader_t * GUTHTHILA_CALL
+guththila_reader_create_for_file(char *file_name, const axutil_env_t * env)
+{
+
guththila_reader_t * reader = NULL;
+
FILE * f = NULL;
+
if (!file_name)
+
return NULL;
+
reader =
+ (guththila_reader_t *) AXIS2_MALLOC(env->allocator,
+ sizeof(guththila_reader_t));
+
if (!reader)
+
return NULL;
+
f = fopen(file_name, "r");
+
if (!f)
+ {
+
AXIS2_FREE(env->allocator, reader);
+
return NULL;
+
}
+
reader->fp = f;
+
reader->type = GUTHTHILA_FILE_READER;
+
return reader;
+
}
+
+
GUTHTHILA_EXPORT guththila_reader_t * GUTHTHILA_CALL
+guththila_reader_create_for_memory(void *buffer, int size,
+ const axutil_env_t * env)
+{
+
guththila_reader_t * reader =
+ (guththila_reader_t *) AXIS2_MALLOC(env->allocator,
+ sizeof(guththila_reader_t));
+
if (reader)
+ {
+
reader->type = GUTHTHILA_MEMORY_READER;
+
reader->buff = buffer;
+
reader->buff_size = size;
+
reader->fp = NULL;
+
return reader;
+
}
+
return NULL;
+
}
+
+
GUTHTHILA_EXPORT guththila_reader_t * GUTHTHILA_CALL
+guththila_reader_create_for_io(GUTHTHILA_READ_INPUT_CALLBACK
+ input_read_callback, void *ctx,
+ const axutil_env_t * env)
+{
+
guththila_reader_t * reader =
+ (guththila_reader_t *) AXIS2_MALLOC(env->allocator,
+ sizeof(guththila_reader_t));
+
if (reader)
+ {
+
reader->input_read_callback = input_read_callback;
+
reader->context = ctx;
+
reader->type = GUTHTHILA_IO_READER;
+
return reader;
+
}
+
return NULL;
+
}
+
GUTHTHILA_EXPORT void GUTHTHILA_CALL
+guththila_reader_free(
+ guththila_reader_t * r,
+ const axutil_env_t * env)
+{
+
if (r->type == GUTHTHILA_FILE_READER && r->fp)
+ {
+
fclose(r->fp);
+
}
+
AXIS2_FREE(env->allocator, r);
+
}
+
GUTHTHILA_EXPORT int GUTHTHILA_CALL
+guththila_reader_read(
+ guththila_reader_t * r,
+ guththila_char * buffer,
+ int offset,
+ int length,
+ const axutil_env_t * env)
+{
+
int rt = r->type;
+
switch (rt)
+ {
+
case GUTHTHILA_FILE_READER:
+
return (int) fread(buffer + offset, 1, length, r->fp);
+
case GUTHTHILA_IO_READER:
+
return r->input_read_callback((buffer + offset), length, r->context);
+
default:
+
return 0;
+
}
+
return 0;
+
}
+
+
Modified: webservices/axis2/trunk/c/guththila/src/guththila_stack.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/guththila/src/guththila_stack.c?rev=580289&r1=580288&r2=580289&view=diff
==============================================================================
--- webservices/axis2/trunk/c/guththila/src/guththila_stack.c (original)
+++ webservices/axis2/trunk/c/guththila/src/guththila_stack.c Fri Sep 28 03:29:16 2007
@@ -1,3 +1,4 @@
+
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
@@ -13,104 +14,148 @@
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- */
+ */
#include <guththila_stack.h>
-
-guththila_stack_t* GUTHTHILA_CALL guththila_stack_create(const axutil_env_t *env)
-{
- guththila_stack_t *stack = NULL;
- stack = (guththila_stack_t *)AXIS2_MALLOC(env->allocator, sizeof(guththila_stack_t));
-
- if (!stack) return NULL;
-
- stack->data = NULL;
- stack->data = (void **)AXIS2_MALLOC(env->allocator, sizeof(void **) * GUTHTHILA_STACK_DEFAULT);
-
- if (!stack->data){
- AXIS2_FREE(env->allocator, stack);
- return NULL;
- } else {
- stack->max = GUTHTHILA_STACK_DEFAULT;
- stack->top = 0;
- return stack;
- }
-}
-
-int GUTHTHILA_CALL guththila_stack_init(guththila_stack_t *stack, const axutil_env_t *env)
-{
- stack->top = 0;
- stack->data = (void **)AXIS2_MALLOC(env->allocator, sizeof(void **) * GUTHTHILA_STACK_DEFAULT);
-
- if (!stack->data){
- return GUTHTHILA_FAILURE;
- } else {
- stack->max = GUTHTHILA_STACK_DEFAULT;
- return GUTHTHILA_SUCCESS;
- }
-}
-
-void GUTHTHILA_CALL guththila_stack_free(guththila_stack_t *stack, const axutil_env_t *env)
-{
- if (stack->data) AXIS2_FREE (env->allocator, stack->data);
- AXIS2_FREE(env->allocator, stack);
-}
-
-void GUTHTHILA_CALL guththila_stack_un_init(guththila_stack_t *stack, const axutil_env_t *env)
-{
- if (stack->data) AXIS2_FREE (env->allocator, stack->data);
-}
-
-void * GUTHTHILA_CALL guththila_stack_pop(guththila_stack_t *stack, const axutil_env_t *env)
-{
- if (stack->top > 0){
- return stack->data[stack->top-- - 1];;
- }
- return NULL;
-}
-
-int GUTHTHILA_CALL guththila_stack_push(guththila_stack_t *stack, void *data, const axutil_env_t *env)
-{
- int i = 0;
- void **temp = NULL;
- if (stack->top >= stack->max) {
- /*stack->data = (void **) realloc(stack->data, sizeof(void **) * (stack->max += GUTHTHILA_STACK_DEFAULT));*/
- temp = (void **) AXIS2_MALLOC(env->allocator, sizeof(void **) * (stack->max += GUTHTHILA_STACK_DEFAULT));
- for (i = 0; i < stack->top; i++) {
- temp[i] = stack->data[i];
- }
- AXIS2_FREE(env->allocator, stack->data);
- stack->data = temp;
- if (!stack->data) return GUTHTHILA_FAILURE;
- }
- stack->data[stack->top] = data;
- return stack->top++;
-}
-
-void * GUTHTHILA_CALL guththila_stack_peek(guththila_stack_t *stack, const axutil_env_t *env)
-{
- if (stack->top > 0){
- return stack->data[stack->top - 1];
- } else {
- return NULL;
- }
-}
-
-int GUTHTHILA_CALL guththila_stack_del_top(guththila_stack_t *stack, const axutil_env_t *env)
-{
- if (stack->top > 0){
- AXIS2_FREE(env->allocator, stack->data[stack->top]);
- return GUTHTHILA_SUCCESS;
- }
- return GUTHTHILA_FAILURE;
-}
-
-int GUTHTHILA_CALL guththila_stack_is_empty(guththila_stack_t *stack, const axutil_env_t *env)
-{
- return stack->top == 0 ? 1 : 0;
-}
-
-void * GUTHTHILA_CALL guththila_stack_get_by_index(guththila_stack_t *stack, int index, const axutil_env_t *env)
-{
- return index < stack->top ? stack->data[index] : NULL;
-}
-
+
guththila_stack_t *
+ GUTHTHILA_CALL guththila_stack_create(const axutil_env_t * env)
+{
+
guththila_stack_t * stack = NULL;
+
stack =
+ (guththila_stack_t *) AXIS2_MALLOC(env->allocator,
+ sizeof(guththila_stack_t));
+
if (!stack)
+ return NULL;
+
stack->data = NULL;
+
stack->data =
+ (void **) AXIS2_MALLOC(env->allocator,
+ sizeof(void **) * GUTHTHILA_STACK_DEFAULT);
+
if (!stack->data)
+ {
+
AXIS2_FREE(env->allocator, stack);
+
return NULL;
+
}
+ else
+ {
+
stack->max = GUTHTHILA_STACK_DEFAULT;
+
stack->top = 0;
+
return stack;
+
}
+
}
+
int GUTHTHILA_CALL
+guththila_stack_init(
+ guththila_stack_t * stack,
+ const axutil_env_t * env)
+{
+
stack->top = 0;
+
stack->data =
+ (void **) AXIS2_MALLOC(env->allocator,
+ sizeof(void **) * GUTHTHILA_STACK_DEFAULT);
+
if (!stack->data)
+ {
+
return GUTHTHILA_FAILURE;
+
}
+ else
+ {
+
stack->max = GUTHTHILA_STACK_DEFAULT;
+
return GUTHTHILA_SUCCESS;
+
}
+
}
+
void GUTHTHILA_CALL
+guththila_stack_free(
+ guththila_stack_t * stack,
+ const axutil_env_t * env)
+{
+
if (stack->data)
+ AXIS2_FREE(env->allocator, stack->data);
+
AXIS2_FREE(env->allocator, stack);
+
}
+
void GUTHTHILA_CALL
+guththila_stack_un_init(
+ guththila_stack_t * stack,
+ const axutil_env_t * env)
+{
+
if (stack->data)
+ AXIS2_FREE(env->allocator, stack->data);
+
}
+
void *GUTHTHILA_CALL
+guththila_stack_pop(
+ guththila_stack_t * stack,
+ const axutil_env_t * env)
+{
+
if (stack->top > 0)
+ {
+
return stack->data[stack->top-- - 1];;
+
}
+
return NULL;
+
}
+
int GUTHTHILA_CALL
+guththila_stack_push(
+ guththila_stack_t * stack,
+ void *data,
+ const axutil_env_t * env)
+{
+
int i = 0;
+
void **temp = NULL;
+
if (stack->top >= stack->max)
+ {
+
+ /*stack->data = (void **) realloc(stack->data, sizeof(void **) * (stack->max += GUTHTHILA_STACK_DEFAULT)); */
+ temp =
+ (void **) AXIS2_MALLOC(env->allocator,
+ sizeof(void **) * (stack->max +=
+ GUTHTHILA_STACK_DEFAULT));
+
for (i = 0; i < stack->top; i++)
+ {
+
temp[i] = stack->data[i];
+
}
+
AXIS2_FREE(env->allocator, stack->data);
+
stack->data = temp;
+
if (!stack->data)
+ return GUTHTHILA_FAILURE;
+
}
+
stack->data[stack->top] = data;
+
return stack->top++;
+
}
+
void *GUTHTHILA_CALL
+guththila_stack_peek(
+ guththila_stack_t * stack,
+ const axutil_env_t * env)
+{
+
if (stack->top > 0)
+ {
+
return stack->data[stack->top - 1];
+
}
+ else
+ {
+
return NULL;
+
}
+
}
+
int GUTHTHILA_CALL
+guththila_stack_del_top(
+ guththila_stack_t * stack,
+ const axutil_env_t * env)
+{
+
if (stack->top > 0)
+ {
+
AXIS2_FREE(env->allocator, stack->data[stack->top]);
+
return GUTHTHILA_SUCCESS;
+
}
+
return GUTHTHILA_FAILURE;
+
}
+
int GUTHTHILA_CALL
+guththila_stack_is_empty(
+ guththila_stack_t * stack,
+ const axutil_env_t * env)
+{
+
return stack->top == 0 ? 1 : 0;
+
}
+
void *GUTHTHILA_CALL
+guththila_stack_get_by_index(
+ guththila_stack_t * stack,
+ int index,
+ const axutil_env_t * env)
+{
+
return index < stack->top ? stack->data[index] : NULL;
+
}
+
+
Modified: webservices/axis2/trunk/c/guththila/src/guththila_token.c
URL: http://svn.apache.org/viewvc/webservices/axis2/trunk/c/guththila/src/guththila_token.c?rev=580289&r1=580288&r2=580289&view=diff
==============================================================================
--- webservices/axis2/trunk/c/guththila/src/guththila_token.c (original)
+++ webservices/axis2/trunk/c/guththila/src/guththila_token.c Fri Sep 28 03:29:16 2007
@@ -1,3 +1,4 @@
+
/*
* Licensed to the Apache Software Foundation (ASF) under one or more
* contributor license agreements. See the NOTICE file distributed with
@@ -13,151 +14,221 @@
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
- */
+ */
#include <guththila_token.h>
-
+
#include <stdlib.h>
#include <stdio.h>
-
+
#define TOK_LIST_FREE(tok_list) \
- (if (tok_list) {AXIS2_FREE(tok_list)})
-
+ (if (tok_list)
+ {
+ AXIS2_FREE(tok_list)}
+
+)
+
#define TOK_LIST_SIZE(tok_list) (tok_list->size)
-
-guththila_tok_list_t * GUTHTHILA_CALL guththila_tok_list_create(const axutil_env_t *env)
-{
- int i = 0;
- guththila_tok_list_t *tok_list = (guththila_tok_list_t *)AXIS2_MALLOC(env->allocator, sizeof(guththila_tok_list_t));
- if (!tok_list) return NULL;
-
- tok_list->list = (guththila_token_t **)AXIS2_MALLOC(env->allocator, sizeof(guththila_token_t *) * GUTHTHILA_TOK_DEF_LIST_SIZE);
-
- if (tok_list->list && guththila_stack_init(&tok_list->fr_stack, env)){
- tok_list->capacity = (int *)AXIS2_MALLOC(env->allocator, sizeof(int) * GUTHTHILA_TOK_DEF_LIST_SIZE);
- if (tok_list->capacity) {
- tok_list->no_list = GUTHTHILA_TOK_DEF_LIST_SIZE;
- tok_list->list[0] = (guththila_token_t *)AXIS2_MALLOC(env->allocator, sizeof(guththila_token_t ) * GUTHTHILA_TOK_DEF_SIZE);
- for (i = 0;i < GUTHTHILA_TOK_DEF_SIZE; i++){
- guththila_stack_push(&tok_list->fr_stack, &tok_list->list[0][i], env);
- }
- tok_list->capacity[0] = GUTHTHILA_TOK_DEF_SIZE;
- tok_list->cur_list = 0;
- tok_list->no_list = GUTHTHILA_TOK_DEF_LIST_SIZE;
- return tok_list;
- }
- }
- AXIS2_FREE(env->allocator, tok_list);
- return NULL;
-}
-
-int GUTHTHILA_CALL guththila_tok_list_grow(guththila_tok_list_t *tok_list, const axutil_env_t *env)
-{
- int i = 0;
- int cur = 0;
- int cur_cap = 0;
- guththila_token_t **list = NULL;
- if (tok_list->cur_list < tok_list->no_list -1) {
- cur = ++tok_list->cur_list;
- cur_cap = tok_list->capacity[cur -1] * 2;
- tok_list->list[cur] = (guththila_token_t *)AXIS2_MALLOC(env->allocator, sizeof(guththila_token_t ) * cur_cap);
- for (i = 0;i < cur_cap; i++){
- guththila_stack_push(&tok_list->fr_stack, &tok_list->list[cur][i], env);
- }
- tok_list->capacity[cur] = cur_cap;
- return GUTHTHILA_SUCCESS;
- } else {
- list = (guththila_token_t **)AXIS2_MALLOC(env->allocator, sizeof(guththila_token_t *) * tok_list->no_list * 2);
- if (list) {
- for (i = 0; i <= tok_list->cur_list; i++) {
- list[i] = tok_list->list[i];
- }
- tok_list->no_list = tok_list->no_list * 2;
- AXIS2_FREE(env->allocator, tok_list->list);
- tok_list->list = list;
- guththila_tok_list_grow(tok_list, env);
- }
- }
- return GUTHTHILA_FAILURE;
-}
-
-int GUTHTHILA_CALL guththila_tok_list_init(guththila_tok_list_t *tok_list, const axutil_env_t *env)
-{
- int i = 0;
- tok_list->list = (guththila_token_t **)AXIS2_MALLOC(env->allocator, sizeof(guththila_token_t *) * GUTHTHILA_TOK_DEF_LIST_SIZE);
-
- if (tok_list->list && guththila_stack_init(&tok_list->fr_stack, env)){
- tok_list->capacity = (int *)AXIS2_MALLOC(env->allocator, sizeof(int) * GUTHTHILA_TOK_DEF_LIST_SIZE);
- if (tok_list->capacity) {
- tok_list->no_list = GUTHTHILA_TOK_DEF_LIST_SIZE;
- tok_list->list[0] = (guththila_token_t *)AXIS2_MALLOC(env->allocator, sizeof(guththila_token_t ) * GUTHTHILA_TOK_DEF_SIZE);
- for (i = 0;i < GUTHTHILA_TOK_DEF_SIZE; i++){
- guththila_stack_push(&tok_list->fr_stack, &tok_list->list[0][i], env);
- }
- tok_list->capacity[0] = GUTHTHILA_TOK_DEF_SIZE;
- tok_list->cur_list = 0;
- tok_list->no_list = GUTHTHILA_TOK_DEF_LIST_SIZE;
- return GUTHTHILA_SUCCESS;
- }
- }
- return GUTHTHILA_FAILURE;
-}
-
-void GUTHTHILA_CALL guththila_tok_list_free(guththila_tok_list_t *tok_list, const axutil_env_t *env)
-{
- int i = 0;
- guththila_stack_un_init(&tok_list->fr_stack, env);
- for (; i <= tok_list->cur_list; i++) {
- AXIS2_FREE(env->allocator, tok_list->list[i]);
- }
- AXIS2_FREE(env->allocator, tok_list->list);
- AXIS2_FREE(env->allocator, tok_list);
-}
-
-void GUTHTHILA_CALL guththila_tok_list_free_data(guththila_tok_list_t *tok_list, const axutil_env_t *env)
-{
- int i = 0;
- guththila_stack_un_init(&tok_list->fr_stack, env);
-
- for (; i <= tok_list->cur_list; i++) {
- AXIS2_FREE(env->allocator, tok_list->list[i]);
- }
- AXIS2_FREE(env->allocator, tok_list->list);
-}
-
-guththila_token_t * GUTHTHILA_CALL guththila_tok_list_get_token(guththila_tok_list_t *tok_list, const axutil_env_t *env)
-{
- if (tok_list->fr_stack.top > 0 || guththila_tok_list_grow(tok_list, env)){
- return guththila_stack_pop(&tok_list->fr_stack, env);
- }
- return NULL;
-}
-
-int GUTHTHILA_CALL guththila_tok_list_release_token(guththila_tok_list_t *tok_list, guththila_token_t *token, const axutil_env_t *env)
-{
- return guththila_stack_push(&tok_list->fr_stack, token, env);
-}
-
-int GUTHTHILA_CALL guththila_tok_str_cmp(guththila_token_t *tok, char *str, size_t str_len, const axutil_env_t *env)
-{
- unsigned int i = 0;
- if (tok->size != str_len) return -1;
- for (; i < tok->size; i++) {
- if (tok->start[i] != str[i]) {
- return -1;
- }
- }
- return 0;
-}
-
-int GUTHTHILA_CALL guththila_tok_tok_cmp(guththila_token_t *tok1, guththila_token_t *tok2, const axutil_env_t *env)
-{
- unsigned int i = 0;
- if (tok1->size != tok2->size) return -1;
- for (; i < tok1->size; i++) {
- if (tok1->start[i] != tok2->start[i]) {
- return -1;
- }
- }
- return 0;
-}
-
+
guththila_tok_list_t *
+ GUTHTHILA_CALL guththila_tok_list_create(const axutil_env_t * env)
+ {
+
int i = 0;
+
guththila_tok_list_t * tok_list =
+ (guththila_tok_list_t *) AXIS2_MALLOC(env->allocator,
+ sizeof(guththila_tok_list_t));
+
if (!tok_list)
+ return NULL;
+
tok_list->list =
+ (guththila_token_t **) AXIS2_MALLOC(env->allocator,
+ sizeof(guththila_token_t *) *
+ GUTHTHILA_TOK_DEF_LIST_SIZE);
+
if (tok_list->list && guththila_stack_init(&tok_list->fr_stack, env))
+ {
+
tok_list->capacity =
+ (int *) AXIS2_MALLOC(env->allocator,
+ sizeof(int) * GUTHTHILA_TOK_DEF_LIST_SIZE);
+
if (tok_list->capacity)
+ {
+
tok_list->no_list = GUTHTHILA_TOK_DEF_LIST_SIZE;
+
tok_list->list[0] =
+ (guththila_token_t *) AXIS2_MALLOC(env->allocator,
+ sizeof(guththila_token_t)
+ *
+ GUTHTHILA_TOK_DEF_SIZE);
+
for (i = 0; i < GUTHTHILA_TOK_DEF_SIZE; i++)
+ {
+
guththila_stack_push(&tok_list->fr_stack,
+ &tok_list->list[0][i], env);
+
}
+
tok_list->capacity[0] = GUTHTHILA_TOK_DEF_SIZE;
+
tok_list->cur_list = 0;
+
tok_list->no_list = GUTHTHILA_TOK_DEF_LIST_SIZE;
+
return tok_list;
+
}
+
}
+
AXIS2_FREE(env->allocator, tok_list);
+
return NULL;
+
}
+
int GUTHTHILA_CALL
+guththila_tok_list_grow(
+ guththila_tok_list_t * tok_list,
+ const axutil_env_t * env)
+{
+
int i = 0;
+
int cur = 0;
+
int cur_cap = 0;
+
guththila_token_t ** list = NULL;
+
if (tok_list->cur_list < tok_list->no_list - 1)
+ {
+
cur = ++tok_list->cur_list;
+
cur_cap = tok_list->capacity[cur - 1] * 2;
+
tok_list->list[cur] =
+ (guththila_token_t *) AXIS2_MALLOC(env->allocator,
+ sizeof(guththila_token_t) *
+ cur_cap);
+
for (i = 0; i < cur_cap; i++)
+ {
+
guththila_stack_push(&tok_list->fr_stack, &tok_list->list[cur][i],
+ env);
+
}
+
tok_list->capacity[cur] = cur_cap;
+
return GUTHTHILA_SUCCESS;
+
}
+ else
+ {
+
list =
+ (guththila_token_t **) AXIS2_MALLOC(env->allocator,
+ sizeof(guththila_token_t *) *
+ tok_list->no_list * 2);
+
if (list)
+ {
+
for (i = 0; i <= tok_list->cur_list; i++)
+ {
+
list[i] = tok_list->list[i];
+
}
+
tok_list->no_list = tok_list->no_list * 2;
+
AXIS2_FREE(env->allocator, tok_list->list);
+
tok_list->list = list;
+
guththila_tok_list_grow(tok_list, env);
+
}
+
}
+
return GUTHTHILA_FAILURE;
+
}
+
int GUTHTHILA_CALL
+guththila_tok_list_init(
+ guththila_tok_list_t * tok_list,
+ const axutil_env_t * env)
+{
+
int i = 0;
+
tok_list->list =
+ (guththila_token_t **) AXIS2_MALLOC(env->allocator,
+ sizeof(guththila_token_t *) *
+ GUTHTHILA_TOK_DEF_LIST_SIZE);
+
if (tok_list->list && guththila_stack_init(&tok_list->fr_stack, env))
+ {
+
tok_list->capacity =
+ (int *) AXIS2_MALLOC(env->allocator,
+ sizeof(int) * GUTHTHILA_TOK_DEF_LIST_SIZE);
+
if (tok_list->capacity)
+ {
+
tok_list->no_list = GUTHTHILA_TOK_DEF_LIST_SIZE;
+
tok_list->list[0] =
+ (guththila_token_t *) AXIS2_MALLOC(env->allocator,
+ sizeof(guththila_token_t) *
+ GUTHTHILA_TOK_DEF_SIZE);
+
for (i = 0; i < GUTHTHILA_TOK_DEF_SIZE; i++)
+ {
+
guththila_stack_push(&tok_list->fr_stack,
+ &tok_list->list[0][i], env);
+
}
+
tok_list->capacity[0] = GUTHTHILA_TOK_DEF_SIZE;
+
tok_list->cur_list = 0;
+
tok_list->no_list = GUTHTHILA_TOK_DEF_LIST_SIZE;
+
return GUTHTHILA_SUCCESS;
+
}
+
}
+
return GUTHTHILA_FAILURE;
+
}
+
void GUTHTHILA_CALL
+guththila_tok_list_free(
+ guththila_tok_list_t * tok_list,
+ const axutil_env_t * env)
+{
+
int i = 0;
+
guththila_stack_un_init(&tok_list->fr_stack, env);
+
for (; i <= tok_list->cur_list; i++)
+ {
+
AXIS2_FREE(env->allocator, tok_list->list[i]);
+
}
+
AXIS2_FREE(env->allocator, tok_list->list);
+
AXIS2_FREE(env->allocator, tok_list);
+
}
+
void GUTHTHILA_CALL
+guththila_tok_list_free_data(
+ guththila_tok_list_t * tok_list,
+ const axutil_env_t * env)
+{
+
int i = 0;
+
guththila_stack_un_init(&tok_list->fr_stack, env);
+
for (; i <= tok_list->cur_list; i++)
+ {
+
AXIS2_FREE(env->allocator, tok_list->list[i]);
+
}
+
AXIS2_FREE(env->allocator, tok_list->list);
+
}
+
guththila_token_t *
+ GUTHTHILA_CALL guththila_tok_list_get_token(guththila_tok_list_t * tok_list,
+ const axutil_env_t * env)
+{
+
if (tok_list->fr_stack.top > 0 || guththila_tok_list_grow(tok_list, env))
+ {
+
return guththila_stack_pop(&tok_list->fr_stack, env);
+
}
+
return NULL;
+
}
+
int GUTHTHILA_CALL
+guththila_tok_list_release_token(
+ guththila_tok_list_t * tok_list,
+ guththila_token_t * token,
+ const axutil_env_t * env)
+{
+
return guththila_stack_push(&tok_list->fr_stack, token, env);
+
}
+
int GUTHTHILA_CALL
+guththila_tok_str_cmp(
+ guththila_token_t * tok,
+ char *str,
+ size_t str_len,
+ const axutil_env_t * env)
+{
+
unsigned int i = 0;
+
if (tok->size != str_len)
+ return -1;
+
for (; i < tok->size; i++)
+ {
+
if (tok->start[i] != str[i])
+ {
+
return -1;
+
}
+
}
+
return 0;
+
}
+
int GUTHTHILA_CALL
+guththila_tok_tok_cmp(
+ guththila_token_t * tok1,
+ guththila_token_t * tok2,
+ const axutil_env_t * env)
+{
+
unsigned int i = 0;
+
if (tok1->size != tok2->size)
+ return -1;
+
for (; i < tok1->size; i++)
+ {
+
if (tok1->start[i] != tok2->start[i])
+ {
+
return -1;
+
}
+
}
+
return 0;
+
}
+
+
---------------------------------------------------------------------
To unsubscribe, e-mail: axis-cvs-unsubscribe@ws.apache.org
For additional commands, e-mail: axis-cvs-help@ws.apache.org