pike.git / src / array.c

version» Context lines:

pike.git/src/array.c:1:   /*   || This file is part of Pike. For copyright information see COPYRIGHT.   || Pike is distributed under GPL, LGPL and MPL. See the file COPYING   || for more information. - || $Id: array.c,v 1.141 2003/04/27 16:17:33 mast Exp $ + || $Id: array.c,v 1.142 2003/04/27 17:46:47 mast Exp $   */      #include "global.h"   #include "svalue.h"   #include "array.h"   #include "object.h"   #include "las.h"   #include "stralloc.h"   #include "interpret.h"   #include "opcodes.h"
pike.git/src/array.c:19:   #include "builtin_functions.h"   #include "pike_memory.h"   #include "gc.h"   #include "main.h"   #include "security.h"   #include "stuff.h"   #include "bignum.h"   #include "cyclic.h"   #include "multiset.h"    - RCSID("$Id: array.c,v 1.141 2003/04/27 16:17:33 mast Exp $"); + RCSID("$Id: array.c,v 1.142 2003/04/27 17:46:47 mast Exp $");      PMOD_EXPORT struct array empty_array=   {    PIKE_CONSTANT_MEMOBJ_INIT(1), /* Never free */    &weak_empty_array, /* Next */    &weak_shrink_empty_array, /* previous (circular) */    0, /* Size = 0 */    0, /* malloced Size = 0 */    0, /* no types */    0, /* no flags */
pike.git/src/array.c:206:    struct svalue sval;    data->type_field = BIT_MIXED | BIT_UNFINISHED;    for(e=0;e<data->size;e++)    {    index_no_free(&sval, ITEM(data)+e, index);    types |= 1 << sval.type;    free_svalue(ITEM(data)+e);    move_svalue (ITEM(data) + e, &sval);    }    data->type_field = types; +  add_ref (data);    return data;    }       if((a=(struct array *)BEGIN_CYCLIC(data,0)))    {    add_ref(a);    }else{    push_array(a=allocate_array(data->size));    SET_CYCLIC_RET(a);