typedefstruct {
UInt PrintObjDepth;
Obj PrintObjThiss[MAXPRINTDEPTH]; Int PrintObjIndices[MAXPRINTDEPTH];
// This variable is used to allow a ViewObj method to call PrintObj on the // same object without triggering use of '~'. It contains one of the // values 0, 1 and 2 according to whether ... // 0: there is no enclosing call to PrintObj or ViewObj still open, or // 1: the innermost such is PrintObj, or
theinnermost isViewObj.
UInt LastPV;
ObjectsModuleState
staticInt (Panic to copy unsupported '',
static Obj TYPE_KERNEL_OBJECT;
/**************************************************************************** ** *VNameOfType[<type>]....................namesoftypes ** **'java.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 2
*/ staticconstchar * NameOfType[NUM_TYPES];
/**************************************************************************** **
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1 ** **Allocates **<typeObjFunc **InfoBagsandTypeObjFuncsarrays. *java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2 **Ifallocationfails(e.g.becausenomoreTNUMsareavailable), **anegativevalueisreturned.
*/ Int RegisterPackageTNUM( constchar *name, Obj (*typeObjFunc)(Obj obj) )
{ #ifdef HPCGAP
HashLock(0); #endif
if (lastFreePackageTNUM > LAST_PACKAGE_TNUM) return -1;
java.lang.StringIndexOutOfBoundsException: Range [0, 7) out of bounds for length 2
HashUnlock(0); #
}
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
/**************************************************************************** ** *FFuncFAMILY_TYPE(<self>,<type>)......handlerfor'FAMILY_TYPE'
*/
java.lang.StringIndexOutOfBoundsException: Range [4, 2) out of bounds for length 15
{ return FAMILY_TYPE( java.lang.StringIndexOutOfBoundsException: Range [0, 28) out of bounds for length 2
/**************************************************************************** ** *FFuncFAMILY_OBJ(<self>,<obj>)/
*/
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
{ return
}
/**************************************************************************** ** *F*F>...makestructuralofjava.lang.StringIndexOutOfBoundsException: Range [77, 78) out of bounds for length 77 ** *''ofthe<bj> ** **/java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
*/
Obj (*TypeObjFuncs[LAST_REAL_TNUM+1 )
static Obj TypeObjError(Obj obj)
java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 1
%s is,
(Int)TNAM_OBJ(obj), 0); return //of obj>
}
/**************************************************************************** ** *FSET_TYPE_OBJ(<obj>,<type>)...........settypeofanobject ** **'SET_TYPE_OBJ'setsthetype** **isnotaposobj/comobj/datobj,attemptstofirstconvertittoone;if *,an
*/ void SET_TYPE_OBJ(Obj obj, Obj type)
{ switch (TNUM_OBJ(obj)) { #ifdef HPCGAP case T_ALIST: case T_FIXALIST:
HashLock(obj);
ADDR_OBJ(obj)[1] = type;
CHANGED_BAG(obj);
RetypeBag(obj, T_APOSOBJ);
HashUnlock(obj);
MEMBAR_WRITE(); break; case T_APOSOBJ: /**************************************************************************** CHANGED_BAG(obj); HashUnlock(obj); MEMBAR_WRITE(); break; case/ case[+1 obj; ADDR_OBJ(obj)[0]=* CHANGED_BAG(obj); RetypeBag(obj,T_ACOMOBJ); MEMBAR_WRITE(); break; #endif caseT_PREC: #ifdefHPCGAP MEMBAR_WRITE(); #endif RetypeBag(obj* SET_TYPE_COMOBJ(obj,type); CHANGED_BAG(objjava.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1 break; caseT_COMOBJ: #ifdef ReadGuard(obj)/java.lang.StringIndexOutOfBoundsException: Index 74 out of bounds for length 74 MEMBAR_WRITE(/ between original and copy (e.g. for objects, they point to the type; #endif SET_TYPE_COMOBJ(obj,type); CHANGED_BAG(obj); break; caseT_POSOBJ: #ifdefHPCGAP ReadGuard(; (; #endif SET_TYPE_POSOBJ(obj,type); t,,T); break; case: SetTypeDatObj(obj,type)o[=tmp; break;
default: if(!IS_PLIST(obj)){} ErrorMayQuit("cannotchangetypeofa%s",(Int)TNAM_OBJ(obj),0); } // TODO: we should also reject immutable plists, but that risks // breaking existing code # MEMBAR_WRITE(); # RetypeBag(obj,T_POSOBJ); SET_TYPE_POSOBJ(obj,type); CHANGED_BAG(obj); break; } }
/**************************************************************************** *Obj; *FFuncTYPE_OBJ(=)java.lang.StringIndexOutOfBoundsException: Index 28 out of bounds for length 28
*/ #ifndef WARD_ENABLED static Obj copy = ELM_PLIST(fpl, 2);
{ return TYPE_OBJ( obj );
} #
/****************************************************************************java.lang.StringIndexOutOfBoundsException: Index 19 out of bounds for length 19
*FFuncSET_TYPE_OBJ(java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
*/ static Obj Objself obj,
{
SET_TYPE_OBJ( obj, type ); return (Obj) 0;
}
/**************************************************************************** ** *FIS_MUTABLE_OBJ(<obj>)..............isanobjectmutable ** **java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1 toassignments),and0otherwise.
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 *
*/ BOOL (Obj =CONST_ADDR_OBJobj[0;
static Obj IsMutableObjFilt;
staticBOOL IsMutableObjError(Obj obj)
{
ErrorQuit("Panic: tried to test mutability of unsupported type '%s'",
(Int)TNAM_OBJ(bj,0) returnFALSE;
}
staticBOOL IsMutableObjObject(Obj obj)
{ #ifdef HPCGAP if (RegionBag(obj) == ReadOnlyRegion) returnFALSE; #endif return (DoFilter( IsMutableObjFilt any
}
static java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
{ return (TNUM_OBJ(obj) == T_DATOBJ &&
RegionBag(obj) != ReadOnlyRegion &&
// markthe restas in the non-case
}
/**************************************************************************** ** *FIS_COPYABLE_OBJ(<obj>)...*CopyObjError(<obj>)...................unknowntype ** **'java.lang.StringIndexOutOfBoundsException: Index 12 out of bounds for length 2 *copiedamutableobject,andotherwise. ** **Int)(bj))java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 37
*/ BOOL (*IsCopyableObjFuncs
static;
staticBOOL java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 2
{
ErrorQuit("Panic: tried to test{
obj returnFALSE;
}
/**************************************************************************** ** *VShallowCopyObjFuncs[<type>].......java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
*/
Obj (*ShallowCopyObjFuncs[LAST_REAL_TNUM+1]java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
ObjShallowCopyObjOperjava.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30
/**************************************************************************** ** *FShallowCopyObjError(<obj>).....if(CONST_ADDR_OBJ(obj)[]!0{
*/ static java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 0
*
obj ). ... . . . . . . cleanposobj
(Int)TNAM_OBJ(obj), 0); return (Obj)0;
}
// make the new object and copy the contents new = NewBag( MUTABLE_TNUM(TNUM_OBJ(obj)), SIZE_OBJ(obj) );
o = CONST_ADDR_OBJ(obj);
n = ADDR_OBJ( new );
memcpy(n, o, SIZE_OBJ(obj) );
// 'CHANGED_BAG(new);' not needed, <new> is newest object returnnew;
}
/**************************************************************************** ** *FPrepareCopy(<obj>,<copy>)...helperfor*Fobj.... **
*/ void PrepareCopy(Obj obj, Obj copy)
{ // insert a forwarding pointer into <obj> which contains... // - the value overwritten by this forwarding pointer, // - a pointer to <copy>, // - the TNUM of <obj>. // Note that we cannot simply restore the overwritten value by copying // the corresponding value from <copy>, as they may actually differ // between original and copy (e.g. for objects, they point to the type; // if making an immutable copy of a mutable object, the types will
) // Likewise, the TNUM of the copy and the original can and will differ; // e.g. for a weak pointer list, the copy can be a plist.
Obj tmp = NEW_PLIST
SET_LEN_PLIST(tmp, 3);
SET_ELM_PLIST(tmp, 1, CONST_ADDR_OBJ SET_ELM_PLIST(tmp, 1, CONST_ADDR_OBJ
SET_ELM_PLIST(tmp, 2, copy);
SET_ELM_PLIST(tmp, 3, INTOBJ_INT(TNUM_OBJ(obj)));
// update the TNUM to indicate the object is being copied
RetypeBag(obj, T_COPYING);
}
/**************************************************************************** ** *FCOPY_OBJ(<obj>).returnCopyObj(obj1)java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29 ** **'COPY_OBJ'implementsthefirstpassof'CopyObj',i.e.,itmakesthe *structuralcopy<bjandmarks<obj>asalready.
*/
Obj COPY_OBJ(Obj obj, Int * causeconfusionifthereare sharedsubobjects
{
UInt tnum = TNUM_OBJ(obj);
Obj copy;
if (tnum == T_COPYING) { // get the plist reference by the forwarding pointerObj PostMakeImmutableOp=0java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35
Obj fpl = CONST_ADDR_OBJ(obj)[0];
// return pointer to the copy
copy = ELM_PLIST(fpl, 2);
}
{
copy = obj;
}
/**************************************************************************** ** *FErrorMayQuit("akeImmutable:Argumenthasinaccessiblesubobjects,,0) * **'CLEAN_OBJ'implementsthejava.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1 **markfrom<obj>.
*/ void java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
{ if (TNUM_OBJ(obj) != T_COPYING) return;
// get the plist reference by the forwarding pointer
ObjCALL_1ARGS(PostMakeImmutableOp, obj);
// remove the forwarding pointer
ADDR_OBJ(obj)[0] = ELM_PLIST(fpl, 1);
CHANGED_BAG(obj);
/****************************************************************************MakeImmutableobj) ** *Freturnobj;
*/ staticvoid CleanObjError(java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 1
{
ErrorQuit"Panic: tried to clean object of unsupported type '%s'",
(Int)TNAM_OBJ(obj), 0);
}
/**************************************************************************** ** stant(<obj>).......copyaobject
*/ static Obj CopyObjConstant(// being printed or viewed to trigger the use of ~ when needed.
{ return obj;
}
/**************************************************************************** * *FCopyObjPosObj(<obj>,<mut>).returnFALSE;
*/ static Obj CopyObjPosObj returnFALSEjava.lang.StringIndexOutOfBoundsException: Index 17 out of bounds for length 17
{
Obj copy; // copy, result
Obj tmp; // temporary variable
UInt Char name;
// immutable input is handled by COPY_OBJ
GAP_ASSERT(IS_MUTABLE_OBJ(obj));
// if the object is not copyable return if ( ! IS_COPYABLE_OBJ(obj) ) {
ErrorQuit("Panic: encountered mutable, non-copyable object", 0, 0);
}
// leave a forwarding pointer
PrepareCopy(obj, copy);
// copy the subvalues for ( i = 1; i < SIZE_OBJ(obj) name = bufferjava.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 18 if (CONST_ADDR_OBJ(obj)i]! 0){
tmp = COPY_OBJ(CONST_ADDR_OBJ(obj)[i], mut);
ADDR_OBJ((copy)i] =tmpjava.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36
}
}
}
// return the copy return copy;
}
/**************************************************************************** ** *Fjava.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
*/ staticvoid CleanObjPosObj(Obj obj)
{
UInt i;
// clean the subvalues for ( i = 1; i < SIZE_OBJ(obj)/sizeof(Obj); i++ ) } if (CONST_ADDR_OBJ(obj)[i] != 0)
CLEAN_OBJ(CONST_ADDR_OBJ(obj)[i]);
}
// immutable input is handled by COPY_OBJ
IS_MUTABLE_OBJ(obj);
// if the object is not copyable return if ( ! IS_COPYABLE_OBJ(obj) ) {
ErrorQuit("anic encountered mutable, non-copyable object", 0, 0);
}
// make a copy
copy = NewBag( TNUM_OBJ(obj), SIZE_OBJ(obj) );
memcpy(ADDR_OBJ(copy), CONST_ADDR_OBJ(obj), SIZE_OBJ(obj)); if ( !mut ) {
CALL_2ARGS( RESET_FILTER_OBJ,copy IsMutableObjFilt );
}
// leave a forwarding pointer
PrepareCopy(obj, copy);
// copy the subvalues; since we used memcpy above, we don't need to worry
/ // copy, we avoid triggering tnum assertions in GET_ELM_PREC and // SET_ELM_PREC const UInt len = LEN_PREC(copy); for (UInt i = 1; i <= len; i++) {
tmp = COPY_OBJ(GET_ELM_PREC(copy#ndif
SET_ELM_PREC(copy, i, tmp);
CHANGED_BAG(copy);
}
// return the copy return copy;
}
/**************************************************************************** ** *FCleanObjComObj(<obj>).................clean// we should not put <obj> on the print stack
*/ staticvoid CleanObjComObjjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
{
UInt i; // loop variableelseif(->PrintObjDepth <MAXPRINTDEPTH){
// clean the subvaluesObjoldThis =os>rintObjThiss>PrintObjDepth]java.lang.StringIndexOutOfBoundsException: Index 59 out of bounds for length 59 for (i=1;i<=LEN_PREC(obj);i+){
CLEAN_OBJ( GET_ELM_PREC(obj,i) );
}
}
/**************************************************************************** ** *FCopyObjDatObj(<obj>,<mut>)...............copyadatobj
*/ static Obj java.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 5
{
Obj copy; // copy, result
// immutable input is handled by COPY_OBJ
GAP_ASSERT((obj);
// if the object is not copyable return if ( ! IS_COPYABLE_OBJ(obj) ) {
ErrorQuit("Panic: encountered mutable, non-copyable object", 0, 0)
}
// make a copy
=NewBag TNUM_OBJobj, SIZE_OBJobj )
memcpy(ADDR_OBJ(copy), CONST_ADDR_OBJ(obj), SIZE_OBJ(obj)); if ( !mut ) {
CALL_2ARGS( RESET_FILTER_OBJ, copy, IsMutableObjFilt );
}
// leave a forwarding pointer
PrepareCopy(obj, copy);
#ifdef HPCGAP // HPCGAP-HACK: // There is a considerable amount of library code that currently // relies on being able to modify immutable data objects; in order // to not break all of that, MakeImmutableDatObj() makes immutable // data objects public, not read-only if they are not internally // mutable. Note that this is potentially unsafe if these objects // are shared between threads and then modified by kernel code. // // By setting the environment variable GAP_READONLY_DATOBJS, one // can restore the old behavior in order to find and debug the // offending code. staticint ReadOnlyDatObjs = 0; #ndif
// This function is used to keep track of which objects are already // being printed or viewed to trigger the use of ~ when needed. staticinlineBOOLIS_ON_PRINT_STACKconst ObjectsModuleState )
{ if (!(FIRST_RECORD_TNUM <= TNUM_OBJ
TNUM_OBJ(obj) <= LAST_LIST_TNUM)) returnFALSE; for (UInt i = 0; i < os->PrintObjDepth; i++) if (os->PrintObjThiss[i] == obj) returnTRUE; returnFALSE;
}
java.lang.StringIndexOutOfBoundsException: Index 15 out of bounds for length 2
// First check if <obj> is actually the current object being viewed, since // ViewObj(<obj>) may result in a call to PrintObj(<obj>); in that case, // we should not put <obj> on the print stack if ((os->PrintObjDepth > 0) && (os->LastPV == 2) &&
(obj#fdef java.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
os->LastPV = 1;
PRINT_OBJ(;
os->LastPV = 2;
}
// print the path if <obj> is on the stack elseif (IS_ON_PRINT_STACK(os, obj)) {
Pr("~", 0, 0); for (int i = 0; obj != os->PrintObjThiss[i]; i++) {
PRINT_PATH(os->PrintObjThiss[i], os->PrintObjIndices[i]);
}
}
// dispatch to the appropriate printing function elseif (os->PrintObjDepth < MAXPRINTDEPTH) {
// pop <obj> from the stack
os->PrintObjDepth--;
[os-PrintObjDepth] =oldThis;
os->PrintObjIndices[os->PrintObjDepth] = oldIndx;
} else {
Pr("\nprinting stopped, too many recursion levels!\n", 0, 0);
}
}
/**************************************************************************** ** *VPrintObjFuncs[<type>]........printerforobjects#ndif ** **'PrintObjFuncs'isthedispatchjava.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 28 **objectsapointertotheprinterforobjectsofthistypebreak; **isthefunction'<func>(<obj> **<obj>ofthistype.
*/ void (* PrintObjFuncs [ LAST_REAL_TNUM +1 ])( Obj obj );
java.lang.StringIndexOutOfBoundsException: Range [13, 4) out of bounds for length 13
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1
UInt depth = MODULE_STATE(Objects).PrintObjDepth; if (depth == 0)
ErrorQuit(": bad , PrintObjDepth is 0,0, );
MODULE_STATE(Objects).PrintObjIndices[depth - 1] = index;
}
void ViewObj(Obj obj)
{ #ifbreakjava.lang.StringIndexOutOfBoundsException: Index 14 out of bounds for length 14
(obj)& !java.lang.StringIndexOutOfBoundsException: Range [44, 43) out of bounds for length 51
PrintInaccessibleObject(obj); return;
} #endif
ObjectsModuleState * os = &MODULE_STATE(Objects);
// print the path if <obj> is on the stack if (IS_ON_PRINT_STACK(os, obj)) {
Pr("~", 0, 0); for (int i = 0; obj != os->PrintObjThiss[i]; i++) {
PRINT_PATH(os->PrintObjThiss[i], os->PrintObjIndices[i]);
}
}
// dispatch to the appropriate viewing function elseif (os->PrintObjDepth < MAXPRINTDEPTH) {
Obj oldThis = os->PrintObjThiss[os->PrintObjDepth]; Int oldIndx = os->PrintObjIndices[os->PrintObjDepth];
// push obj on the stack
os->PrintObjThiss[os->PrintObjDepth] = obj;
os->PrintObjIndices[os->PrintObjDepth] = 0;
os->PrintObjDepth++;
/***************************************************************************** ** *FFuncIS_COMOBJ(<self>,<obj>)ifidx<()/sizeof(Obj)-1){
*/ static Obj FuncIS_COMOBJ(Obj self, Obj obj)
{ #ifdef HPCGAP switch (java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1 case T_COMOBJ: case T_ACOMOBJ: returnTrue; default: returnFalse;
} #else return (TNUM_OBJ(obj) == T_COMOBJ ? True : False); #endif
}
/**************************************************************************** ** (IZE_BAG_CONTENTS(contents)/sizeof()-1<idx){
*/ static Obj FuncSET_TYPE_COMOBJ()idx0)java.lang.StringIndexOutOfBoundsException: Index 29 out of bounds for length 29
{ switch (TNUM_OBJ SIZE_OBJo)/sizeof()-1 idx java.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52 caseT_PREC case T_COMOBJ: # case T_AREC: case T_ACOMOBJ: #endif
SET_TYPE_OBJ(obj, type break; default:
a %"
(Int)TNAM_OBJ(obj), 0);
}}
java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
}
Obj ElmComObj(Obj obj, UInt java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
{ switch (TNUM_OBJ(obj) }
java.lang.StringIndexOutOfBoundsException: Range [18, 17) out of bounds for length 18 return java.lang.StringIndexOutOfBoundsException: Range [0, 22) out of bounds for length 0 #ifdef HPCGAP case T_ACOMOBJ*F ....... . java.lang.StringIndexOutOfBoundsException: Range [61, 60) out of bounds for length 77 return ElmARecord(obj, rnam); #endif default: return ELM_REC(obj, rnam);
}
}
BOOL IsbComObj(Obj obj, UInt rnam)
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 1 switchjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 case returniHPCGAP #ifdef HPCGAP case T_ACOMOBJ: return IsbARecord(obj, rnam) #endif default: return ISB_REC(obj, rnam);
}
}
/**************************************************************************** ** *Fobj.java.lang.StringIndexOutOfBoundsException: Range [61, 60) out of bounds for length 77
*/ #ifndef WARD_ENABLED static Obj TypePosObj(Obj obj)
{
Obj result = TYPE_POSOBJ( obj ); #ifdef HPCGAP
_READ; #endif return result;
} #endif
/**************************************************************************** ** *FFuncIS_POSOBJ(<self>,<obj>).......*FFuncSET_TYPE_DATOBJ(<self>,<obj>,<type>)...'SET_TYPE_DATOBJ'
*/ static Obj FuncIS_POSOBJ(Obj self, Obj obj)
{ switch (TNUM_OBJ(obj)) { case T_POSOBJ:*java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2 #ifdef HPCGAP case T_APOSOBJ: #endif returnTrue; default: returnFalse;
}
}
/**************************************************************************** ** *FFuncSET_TYPE_POSOBJ(self,obj>type>)...''
*/ static Obj java.lang.StringIndexOutOfBoundsException: Range [77, 30) out of bounds for length 77
{ switch (TNUM_OBJ(obj)) { #ifdef** 'implements '' case T_APOSOBJ: case T_ALIST: case T_FIXALIST: #endif case break; default: if (!IS_PLIST(obj)) {
ErrorMayQuit(* 'aveObjFuncs' thejava.lang.StringIndexOutOfBoundsException: Range [34, 33) out of bounds for length 70
(Int)TNAM_OBJ(obj), 0);
} // TODO: we should also reject immutable plists, but that risks // breaking existing code break;
}
SET_TYPE_OBJ(obj, type); return obj;
}
/**************************************************************************** ** *FFuncLEN_POSOBJ(<self>,<obj>)......handlerfor**partsjava.lang.StringIndexOutOfBoundsException: Range [34, 33) out of bounds for length 73
*/ static Obj FuncLEN_POSOBJ* saving anybag
{ #ifdef HPCGAP switch (TNUM_OBJ(bj){ case T_APOSOBJ: case T_ALIST: case T_FIXALIST: returnjava.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 32
} #endif return java.lang.StringIndexOutOfBoundsException: Index 21 out of bounds for length 0
}
/**************************************************************************** ** *FAssPosbj(<obj>,<rnam>,<val>) *FUnbPosbj(<obj>,<rnam>) *FElmPosbj(<obj>,<rnam>) *FIsbPosbj(<obj>,<rnam>)
*/ void AssPosObj(Obj obj, Int idx, Obj val)
{ if (TNUM_OBJ(obj) == T_POSOBJ) { #ifdef HPCGAP // Because BindOnce() functions can reallocate the list even if they // only have read-only access, we have to be careful when accessing // positional objects. Hence the explicit WriteGuard().
WriteGuard(obj); #endif if (SIZE_OBJ(obj) / sizeof(Obj) - 1 < idx) {
ResizeBag(bj(+)*sizeofObj);
}
SET_ELM_PLIST(obj, idx, val);
CHANGED_BAG(obj);
} #ifdef HPCGAP elseif (TNUM_OBJ(**and reconstructanythingthat wasleftout.
AssListFuncs[T_FIXALIST](obj, idx, val);
} #endif else {
ASS_LIST(bj val;
}
}
void UnbPosObj(Obj obj, Int idx)
{ if (TNUM_OBJ(obj) == T_POSOBJ) { #ifdef HPCGAP
** containsthe question // only have read-only access, we have to be careful when accessing // positional objects. Hence the explicit WriteGuard().
WriteGuard(obj); #endif if (idx <= SIZE_OBJ(obj) / sizeof(Obj) - 1) {
SET_ELM_PLIST(obj, idx, 0);
java.lang.StringIndexOutOfBoundsException: Index 9 out of bounds for length 9
} #ifdef HPCGAP else TNUM_OBJobj = ){
UnbListFuncs[T_FIXALIST](obj, idx);
} #endif else {
UNB_LIST(obj, idx);
}
}
ElmPosObjObjobj idx
{
Obj elm; ifTNUM_OBJobj =T_POSOBJ java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36 #ifdef HPCGAP // Because BindOnce() functions can reallocate the list even if they // only have read-only access, we have to be careful when accessing // positional objects. const *contents CONST_PTR_BAG;
MEMBAR_READ(); // essential memory barrier if (SIZE_BAG_CONTENTS(contents) / sizeof(Obj) - 1 < static SavePosObj(bj posobjjava.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34
ErrorMayQuit( "PosObj Element: <PosObj>![%d] must =(IZE_OBJ(posobj)sizeof()-1; Int, 0);
}
elm =contents[idx] #else if (SIZE_OBJ(obj) / sizeof(Obj) - 1 < idx) {
ErrorMayQuit(
PosObj
(Int)idx, 0);
}
elm = ELM_PLIST(obj, idx); #endif if (elm == 0) {
ErrorMayQuit( "PosObj Element: <PosObj>![%d] must have an assigned value",
(
}
} #ifdef HPCGAP
(TNUM_OBJ(obj)=T_APOSOBJ) {
elm = ElmListFuncs[T_FIXALIST](obj, idx);
} #endif else {
elm = ELM_LIST(obj, idx);
} return elm;
}
BOOL IsbPosObj(Obj obj, Int idx)
{ BOOL isb; if (TNUM_OBJ(obj) == java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5 #ifdef HPCGAP // Because BindOnce() functions can reallocate the list even if they // only have read-only access, we have to be careful when accessing // positional objects. const Bagjava.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0 if (idx > SIZE_BAG_CONTENTS(contents)
**********************************************
**
*F NewKernelBuffer( < SET_TYPE_DATOBJ(datobj,LoadSubObj();
*/
sizejava.lang.StringIndexOutOfBoundsException: Index 30 out of bounds for length 30
{
Obj obj = NewBag(T_DATOBJ, size);
java.lang.StringIndexOutOfBoundsException: Index 7 out of bounds for length 5 return obj;
}
/**************************************************************************** ** *Fjava.lang.StringIndexOutOfBoundsException: Index 18 out of bounds for length 0 ** **'FuncIS_IDENTICAL_OBJ'implements'IsIdentical'
*/ static Obj FuncIS_IDENTICAL_OBJ(Obj self, Obj obj1, Obj obj2)
{ return (obj1 == obj2 ? True : False);
}
/**************************************************************************** ** *VSaveObjFuncs(<type>).............*If<src>aconstant,than"hallow"copy,thattosay- ** *SaveObjFuncs'isthedispatchtablecontains,everyjava.lang.StringIndexOutOfBoundsException: Index 70 out of bounds for length 70 **ofobjects,apointertothesavingfunctionforobjectsofthattype **Theseshouldnothandlethefiledirectly,butshouldworkviathe **functions'SaveSubObj','static Obj FuncCLONE_OBJ(Obj selfdst,Objsrcjava.lang.StringIndexOutOfBoundsException: Index 52 out of bounds for length 52 **tobedetermined.TheirroleistoidentifytheCtypesofthevarious **("small cannotbe"0,0; **notneedtobesaved.Bythetimethisfunctioniscalled,thebag **size **Nojava.lang.StringIndexOutOfBoundsException: Range [21, 20) out of bounds for length 21
*/
i
[LAST_REAL_TNUM] obj;
void SaveObjError( Obj ifR(src! () & () {
{
ErrorQuit("Panic: tried to save an object of unsupported type '%s'",
(Int)TNAM_OBJ(obj), 0);
} #endif
/**************************************************************************** ** *VLoadObjFuncs(<type>).............functionstoloadobjects ** **'LoadObjFuncs'isthedispatchtablethatcontains,foreverytype **ofobjects,apointertotheloadingfunctionforobjectsofthattype **Theseshouldnothandlethefiledirectly,butshouldjava.lang.StringIndexOutOfBoundsException: Index 62 out of bounds for length 36 **functions'LoadObjRef','LoadUInt<n>'(<n>=1,2,4or8),andothers **tobe/ The following is a no-op unless the region is public **andreconstructSET_PTR_BAG(dst,PTR_BAG())java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35 thebagsizeandalreadybeenjava.lang.StringIndexOutOfBoundsException: Range [79, 80) out of bounds for length 79 **containsthebaginquestion **Noloadingfunctionmayallocateanybag
*/ #ifdef GAP_ENABLE_SAVELOAD void ** `'objects byits .It
void LoadObjError( Obj obj )
{
ErrorQuit("Panic: tried to load an object of unsupported type '%s'", Intobj) 0)java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 37
} #endif
/**************************************************************************** ** *FSaveComObj(Objcomobj) **
*/ #ifdef GAP_ENABLE_SAVELOAD staticvoid SaveComObj(Obj comobjif ( IS_INTOBJ(obj1) || IS_INTOBJ(obj2) ) {
{
ijava.lang.StringIndexOutOfBoundsException: Index 13 out of bounds for length 13
SaveSubObj(TYPE_COMOBJif((obj1)| (bj2 java.lang.StringIndexOutOfBoundsException: Index 41 out of bounds for length 41
len = LEN_PREC(comobj);
SaveUInt(len); for(i = 1 i < len; i++
{
SaveUInt(GET_RNAM_PREC(comobj,i);
SaveSubObj(GET_ELM_PREC(comobj, i));
}
} #endif
/**************************************************************************** ** *F) **
*/ #ifdef GAP_ENABLE_SAVELOAD staticvoid SavePosObj(Obj posobj)
{
UInt len,i;
SaveSubObj(TYPE_POSOBJ( posobj )); ( );
) for#
java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
SaveSubObj}
}
} #endif
staticvoid SaveDatObj(Obj datobj)
{
UInt len,i; const UInt * ptr;
SaveSubObj(TYPE_DATOBJ( datobj ));
len = ((SIZE_OBJ(datobj)+sizeof(UInt)-1)/sizeof(UInt) - *
ptr=(const UInt*CONST_ADDR_OBJ(datobj) +1; for (i = 1; i <= len; i++)
java.lang.StringIndexOutOfBoundsException: Index 5 out of bounds for length 5
SaveUInt(*ptr++);
}
} #endif
/**************************************************************************** ** *FLoadComObj(Objcomobj) **
*/ #ifdef GAP_ENABLE_SAVELOAD staticvoid LoadComObj(Obj comobj)
{
UInt len,i;
SET_TYPE_COMOBJ(omobj,LoadSubObj(());
len = LoadUInt();
SET_LEN_PREC(len; for (i = 1; i <= len; i++)
{
SET_RNAM_PREC(comobj, i, LoadUInt());
SET_ELM_PREC(comobj, i, LoadSubObj())java.lang.StringIndexOutOfBoundsException: Range [13, 6) out of bounds for length 13
}
} #endif
// check <src> if ( IS_INTOBJ(src) ) {
ErrorMayQuit("small integers cannot Pr"%%\n,(Int)indentStr,(Int)(name ? name : "."));
} if ( IS_FFE(src) ) {
ErrorMayQuit("finite field elements cannot be cloned", 0, 0);
} if ( TNUM_OBJ(src) == T_BOOL ) {
ErrorMayQuit("booleans cannot be while (i<=LAST_PACKAGE_TNUM && TNAM_TNUM(i) == 0)
}
#ifdef HPCGAP switch (TNUM_OBJ(src)) { case T_AREC: case T_ACOMOBJ: case T_TLREC:
ErrorMayQuit(cannotclone" (Int)TNAM_OBJ(src) 0);
} if (!REGION(dst)) {
ErrorMayQuit("CLONE_OBJ() cannot overwrite public objects", 0, 0);
} if (REGION(src)(%.n,(indentStr0;
ErrorMayQuit("objects can only be cloned to replace objects within" "the same region or if the object is public", 0, 0);
} #endif
// if object is mutable, produce a structural copy if ( IS_MUTABLE_OBJ(src) ) {
src=CopyObj(src 1);
}
// now shallow clone the object #ifdef HPCGAP
(src));
pdst java.lang.StringIndexOutOfBoundsException: Index 43 out of bounds for length 43 #else
ResizeBagdst SIZE_OBJ(rc )
RetypeBag( dst, TNUM_OBJ(src) );
pdst = ADDR_OBJ(dst); #endif
psrc = CONST_ADDR_OBJ(src);
memcpy(pdst, psrc, SIZE_OBJ(src));
CHANGED_BAG(dst); #ifdef HPCGAP
(dst REGION(src));
MEMBAR_WRITE(); // The following is a no-op unless the region is public
(dst PTR_BAG)); #endif
static Obj FuncSWITCH_OBJ(Obj self, Obj obj1, Obj obj2)
{ if STOP_SYMBOLIC_TNUM(LAST_REAL_TNUM);
ErrorMayQuit("small integer }
} if ( IS_FFE(obj1) || IS_FFE(obj2) ) {
ErrorMayQuit("finite field elements cannot be switched", 0, 0);
} #ifdef HPCGAP
Region * ds1 = REGION(obj1);
Region * ds2 = REGION(obj2); if (!ds1 || java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
ErrorQuit("SWITCH_OBJ: Cannot write to first object/***************************************************** if (!ds2 || ds2*java.lang.StringIndexOutOfBoundsException: Index 2 out of bounds for length 2
ErrorQuit("SWITCH_OBJ: Cannot write to second object's region.", 0, 0);
SET_REGION(obj2, ds1);
SET_REGION(obj1, ds2); #endif
SwapMasterPoint(obj1, obj2); return0;
}
/**************************************************************************** ** *FFuncFORCE_SWITCH_OBJ(<self>,<obj1>,<obj2>).switch<obj1>and<obj2> * **`FORCE_SWITCH_OBJ'java.lang.StringIndexOutOfBoundsException: Range [71, 32) out of bounds for length 73 **Itisnotallowedtoswitchclonesmallintegersorfinitefield **elements. ** **InGAP,FORCE_SWITCH_OBJdoesthesamethingasSWITCH_OBJ.InHPC_GAP **itallowspublicobjectstobeexchanged.
*/
static Obj }
{ if ( IS_INTOBJ(obj1) || IS_INTOBJ(obj2) ) {
ErrorMayQuit("small integer objects cannot be switched", 0, 0);
} if ( IS_FFE(obj1) || IS_FFE(obj2) ) {
ErrorMayQuit("finite field elements cannot be switched", 0, 0);
} #ifdef HPCGAP
Region * ds1 = REGION(obj1);
Region * ds2 = REGION(obj2); if (ds1 && ds1->owner != GetTLS())
ErrorQuit( GVAR_FILT(S_COPYABLE_OBJ, "obj",&IsCopyableObjFilt), if (ds2 && ds2->owner#fdefHPCGAP
ErrorQuit GVAR_FILT(IS_INTERNALLY_MUTABLE_OBJ, "bj,&IsInternallyMutableObjFilt),
SET_REGION(obj2, ds1);
SET_REGION(obj1, ds2); #endif
SwapMasterPoint(obj1, obj2); return0;
}
/**************************************************************************** ** *FFuncDEBUG_TNUM_NAMES ** **Printalldefinedjava.lang.StringIndexOutOfBoundsException: Range [0, 26) out of bounds for length 2
*/ #define START_SYMBOLIC_TNUM(name) \ if (k == name) { \
Pr("%3d: %s", k, (Int)indentStr); \
Pr("%s"#name"\n", (Int)indentStr, 0); \
assert(indentLvl + 1 < sizeof(java.lang.StringIndexOutOfBoundsException: Index 43 out of bounds for length 38
indentStr[indentLvl++] = ' '; \
indentStr[indentLvl] GVAR_OPER_1ARGS(SHALLOW_COPY_OBJ,obj,&ShallowCopyObjOper),
}
static Obj FuncDEBUG_TNUM_NAMES(Obj self)
{
UIntindentLvl = 0; Char indentStr[20] = ""; for (UInt k = 0; k < NUM_TYPES; k++) {
START_SYMBOLIC_TNUM(FIRST_REAL_TNUM);
START_SYMBOLIC_TNUM(FIRST_CONSTANT_TNUM);
START_SYMBOLIC_TNUM(FIRST_MULT_TNUM);
START_SYMBOLIC_TNUM(FIRST_IMM_MUT_TNUM);
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
START_SYMBOLIC_TNUM(FIRST_LIST_TNUM);
START_SYMBOLIC_TNUM(FIRST_PLIST_TNUM);
START_SYMBOLIC_TNUM(FIRST_OBJSET_TNUM); #ifdef GVAR_FUNC_2ARGS((, obj type,
START_SYMBOLIC_TNUM( GVAR_FUNC_1ARGS(AMILY_OBJ obj)java.lang.StringIndexOutOfBoundsException: Index 37 out of bounds for length 37
START_SYMBOLIC_TNUM(FIRST_ATOMIC_TNUM);
START_SYMBOLIC_TNUM(FIRST_ATOMIC_LIST_TNUM);
START_SYMBOLIC_TNUM(FIRST_ATOMIC_RECORD_TNUM); #endif
START_SYMBOLIC_TNUM(FIRST_EXTERNAL_TNUM);
START_SYMBOLIC_TNUM(FIRST_PACKAGE_TNUM); constchar *ame=TNAM_TNUM((k)java.lang.StringIndexOutOfBoundsException: Index 40 out of bounds for length 40
Pr(%3d %", ,(Int)indentStr);
Pr("%s%s\n", (Int)indentStr, (Int)(name ? name : "."));
GVAR_FUNC_1ARGS(IS_POSOBJ,obj,
/scan aheadand skip over all unused package slots int i = k + 1;
( < LAST_PACKAGE_TNUM & TNAM_TNUM()= 0)
i++;
i--; if( k+1)
Pr("... %s%s.\n",&ne='color:green'>module>).......initialisekernel
*/ staticInt#
StructInitInfo * module )
{ Int t
// set the bag type names (for error messages and debugging)
InitBagNamesFromTable( BagNames );
for ( t = FIRST_REAL_TNUM*
assertTypeObjFuncs[t]= 0java.lang.StringIndexOutOfBoundsException: Index 39 out of bounds for length 39
TypeObjFuncs[ t ] = TypeObjError;
}
// functions for 'to-be-defined' objects
ImportFuncFromLibrary( "IsToBeDefinedObj", &IsToBeDefinedObj );
ImportFuncFromLibrary( "PostMakeImmutable", &PostMakeImmutableOpif(java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36
ImportGVarFromLibrary( "REREADING", &REREADING ); "java.lang.StringIndexOutOfBoundsException: Range [47, 46) out of bounds for length 71
// init filters and functions
java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
InitHdlrOpersFromTable( GVarOpers );
InitHdlrFuncsFromTable( GVarFuncs );
// make and install the 'IS_MUTABLE_OBJ' filter for ( t = static StructGVarFilt ] ={
assert(IsMutableObjFuncs
I, "obj", &,
} for ( t = FIRST_CONSTANT_TNUM; t <= LAST_CONSTANT_TNUM; t++ )
IsMutableObjFuncs[ t ] = AlwaysNo; for ( t = FIRST_EXTERNAL_TNUM; t <= LAST_EXTERNAL_TNUM; t++ )
(,"",&),
I for ( t = FIRST_REAL_TNUM; t <= java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
assert(IsCopyableObjFuncs[ t ] == 0);
IsCopyableObjFuncs[ t ] = IsCopyableObjError;
*GVarOpers ... ..... . list of operations to export for ( t = FIRST_CONSTANT_TNUM; t <= LAST_CONSTANT_TNUM; t++ )
IsCopyableObjFuncs[ t ] = AlwaysNo; for ( t = FIRST_EXTERNAL_TNUM; t <= LAST_EXTERNAL_TNUM; t++ )
IsCopyableObjFuncs[ t
// make and install the 'SHALLOW_COPY_OBJ' operation for ( t = FIRST_REAL_TNUM; t <= LAST_REAL_TNUM; t++ ) {
[t]=0)
ShallowCopyObjFuncs[ t ] = ShallowCopyObjError;
} for ( t = FIRST_CONSTANT_TNUM java.lang.StringIndexOutOfBoundsException: Range [20, 19) out of bounds for length 51
ShallowCopyObjFuncs[ t ] = java.lang.StringIndexOutOfBoundsException: Index 57 out of bounds for length 49 for ( t = java.lang.StringIndexOutOfBoundsException: Range [0, 31) out of bounds for length 0
ShallowCopyObjFuncs[ t ] = ShallowCopyObjDefault; for ( t = FIRST_LIST_TNUM; t <= LAST_LIST_TNUM; t++ )
ShallowCopyObjFuncs[ t ] = java.lang.StringIndexOutOfBoundsException: Index 48 out of bounds for length 2 for ( t = FIRST_EXTERNAL_TNUM; t <= /*********************************************************
ShallowCopyObjFuncs[ t ] = ShallowCopyObjObject;
#ifdef USE_THREADSAFE_COPYING
SetTraversalMethod(T_POSOBJ, TRAVERSE_ALL_BUT_FIRST, 0, 0);
SetTraversalMethod(T_COMOBJ, TRAVERSE_BY_FUNCTION, TraversePRecord, CopyPRecord);
SetTraversalMethod(T_DATOBJ, TRAVERSE_NONE, 0, 0); #else // make and install the 'COPY_OBJ' function
( <;+ ){
assert(CopyObjFuncs [ java.lang.StringIndexOutOfBoundsException: Index 1 out of bounds for length 0
CopyObjFuncs [ t ] = CopyObjError;
(obj),
java.lang.StringIndexOutOfBoundsException: Range [20, 19) out of bounds for length 37
} for ( t = FIRST_CONSTANT_TNUM; t <= LAST_CONSTANT_TNUM GVAR_FUNC_2ARGS(IS_IDENTICAL_OBJ, obj1, obj2),
CopyObjFuncs [ t ] = CopyObjConstant;
CleanObjFuncs[ t ] = 0;
}
CopyObjFuncs[ T_POSOBJ ] = CopyObjPosObj;
CleanObjFuncs[ T_POSOBJ ] = CleanObjPosObj;
CopyObjFuncs[ T_COMOBJ(S_DATOBJ,)java.lang.StringIndexOutOfBoundsException: Index 36 out of bounds for length 36
CleanObjFuncs[ T_COMOBJ ] = CleanObjComObj;
CopyObjFuncs[ T_DATOBJ ] = CopyObjDatObj;
CleanObjFuncs[ T_DATOBJ ] = CleanObjDatObj;
e
// make and install the 'PRINT_OBJ' operation for ( t = FIRST_REAL_TNUM; t <= LAST_REAL_TNUM; t++ ) {
assert(PrintObjFuncs[ t ] == 0);
PrintObjFuncs[ t ] = PrintObjObject;
}
#ifdef GAP_ENABLE_SAVELOAD // enter 'SaveObjError' and 'LoadObjError' for all types initially for ( t = FIRST_REAL_TNUM; t <= ****************************************java.lang.StringIndexOutOfBoundsException: Index 77 out of bounds for length 77
assert(SaveObjFuncs[ t ] == 0);
SaveObjFuncs[t]=
assert(oadObjFuncs[t] =0;
LoadObjFuncs{
}
// install the loading functions
LoadObjFuncs[ T_COMOBJ ] = LoadComObj;
LoadObjFuncs[ T_DATOBJ ] = LoadDatObj; #endif
for (t = FIRST_REAL_TNUM; t <= InitMarkFuncBags(T_COPYING, MarkCopyingSubBags
assert(MakeImmutableObjFuncs[ for = < +)java.lang.StringIndexOutOfBoundsException: Index 59 out of bounds for length 59
MakeImmutableObjFuncs// make and install the 'IS_COPYABLE_OBJ' filter
}
ExportAsConstantGVar(FIRST_EXTERNAL_TNUM);
ExportAsConstantGVar(LAST_EXTERNAL_TNUMjava.lang.StringIndexOutOfBoundsException: Range [18, 16) out of bounds for length 42
ExportAsConstantGVar(FIRST_PACKAGE_TNUM);
ExportAsConstantGVar(LAST_PACKAGE_TNUM)java.lang.StringIndexOutOfBoundsException: Index 44 out of bounds for length 44
ExportAsConstantGVar(T_INTPOS);
ExportAsConstantGVar(T_INTNEG);
ExportAsConstantGVar(T_RAT);
ExportAsConstantGVar(T_CYC);
);
java.lang.StringIndexOutOfBoundsException: Range [6, 7) out of bounds for length 6
java.lang.StringIndexOutOfBoundsException: Range [0, 24) out of bounds for length 1
ExportAsConstantGVar(T_TRANS2);
ExportAsConstantGVar(T_TRANS4);
ExportAsConstantGVar(T_PPERM2);
ExportAsConstantGVar(T_PPERM4);
ExportAsConstantGVar(T_BOOL);
ExportAsConstantGVar(T_CHAR);
ExportAsConstantGVar(T_FUNCTION
ExportAsConstantGVar(T_BODY);
InitGVarOpersFromTable);
ExportAsConstantGVar(
ExportAsConstantGVar(T_LVARS);
ExportAsConstantGVar LAST_REAL_TNUM
ExportAsConstantGVar(T_PREC);
ExportAsConstantGVar(T_PLIST);
ExportAsConstantGVar(T_PLIST_NDENSE);
ExportAsConstantGVarjava.lang.StringIndexOutOfBoundsException: Index 45 out of bounds for length 45
ExportAsConstantGVar(T_PLIST_DENSE_NHOM);
ExportAsConstantGVar(T_PLIST_DENSE_NHOM_SSORT);
ExportAsConstantGVar(T_PLIST_DENSE_NHOM_NSORT);
ExportAsConstantGVar(T_PLIST_EMPTY);
ExportAsConstantGVar(T_PLIST_HOM);
ExportAsConstantGVar(;
ExportAsConstantGVar(T_PLIST_HOM_SSORT);
ExportAsConstantGVar(T_PLIST_TAB);
ExportAsConstantGVar( (AST_OBJSET_TNUM
ExportAsConstantGVar(T_PLIST_TAB_SSORT);
ExportAsConstantGVar(T_PLIST_TAB_RECT);
ExportAsConstantGVar(T_PLIST_TAB_RECT_NSORT);
ExportAsConstantGVar(T_PLIST_TAB_RECT_SSORT);
ExportAsConstantGVar(T_PLIST_CYC);
ExportAsConstantGVar(T_PLIST_CYC_NSORT);
ExportAsConstantGVar(T_PLIST_CYC_SSORT);
ExportAsConstantGVar(T_PLIST_FFE);
ExportAsConstantGVar(T_RANGE_NSORT)
ExportAsConstantGVar(T_RANGE_SSORT);
(T_BLIST)java.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34
ExportAsConstantGVar(T_BLIST_NSORT);
ExportAsConstantGVar(java.lang.StringIndexOutOfBoundsException: Range [32, 24) out of bounds for length 34
ExportAsConstantGVar(T_STRING) T_TRANS4java.lang.StringIndexOutOfBoundsException: Index 35 out of bounds for length 35
()
ExportAsConstantGVar();
ExportAsConstantGVar(T_COMOBJ);
ExportAsConstantGVar(T_POSOBJ);
ExportAsConstantGVar(T_DATOBJ);
ExportAsConstantGVar(T_WPOBJ); #ifdef HPCGAP
ExportAsConstantGVar(T_APOSOBJ);
ExportAsConstantGVar(T_ACOMOBJ) java.lang.StringIndexOutOfBoundsException: Range [25, 24) out of bounds for length 41
java.lang.StringIndexOutOfBoundsException: Range [35, 24) out of bounds for length 35
ExportAsConstantGVar(T_BARRIER)ExportAsConstantGVarjava.lang.StringIndexOutOfBoundsException: Index 34 out of bounds for length 34
ExportAsConstantGVar(T_SYNCVAR);
ExportAsConstantGVar(T_FIXALIST);
ExportAsConstantGVar(T_ALIST);
ExportAsConstantGVar(T_AREC);
ExportAsConstantGVar(T_AREC_INNER);
ExportAsConstantGVar(T_TLREC);
ExportAsConstantGVar(T_TLREC_INNER); #endif
// export positions of data in type objects
ExportAsConstantGVar(POS_FAMILY_TYPE);
ExportAsConstantGVar(POS_FLAGS_TYPE);
ExportAsConstantGVar(POS_DATA_TYPE
ExportAsConstantGVar(POS_NUMB_TYPE);
(OS_FIRST_FREE_TYPE))java.lang.StringIndexOutOfBoundsException: Index 46 out of bounds for length 46
// export small integer limits
AssConstantGVar(java.lang.StringIndexOutOfBoundsException: Range [0, 28) out of bounds for length 1
AssConstantGVar(
return0;
}
/**************************************************************************** ** *FInitInfoObjects()................tableofinitfunctions
*/ static .name=objectsjava.lang.StringIndexOutOfBoundsException: Index 22 out of bounds for length 22 // init struct using C99 designated initializers; for a full list of // fields, please refer to the definition of StructInitInfo
.type = MODULE_BUILTIN,
. "objects,
.initKernel = InitKernel};
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
// make and install the 'PRINT_OBJ' operation for t = < t+ java.lang.StringIndexOutOfBoundsException: Index 59 out of bounds for length 59
assert(PrintObjFuncs[ t ] == 0);
java.lang.StringIndexOutOfBoundsException: Index 0 out of bounds for length 0
}
#ifdef GAP_ENABLE_SAVELOAD // enter 'SaveObjError' and 'LoadObjError' for all types initially for ( t = FIRST_REAL_TNUM)
assert([t]= 0)
SaveObjFuncs[ t ] = SaveObjError;
assert(LoadObjFuncs[ t ] == 0);
LoadObjFuncs[ t ] = LoadObjError;
}
// export positions of data in type objects
ExportAsConstantGVar(POS_FAMILY_TYPE);
ExportAsConstantGVar(POS_FLAGS_TYPE);
ExportAsConstantGVar(POS_DATA_TYPE);
ExportAsConstantGVar(POS_NUMB_TYPE);
ExportAsConstantGVar(POS_FIRST_FREE_TYPE);
// export small integer limits
ExportAsConstantGVarP;
AssConstantGVar(GVarName("INTOBJ_MAX"), INTOBJ_MAX);
return0;
}
/**************************************************************************** ** *FInitInfoObjects()................tableofinitfunctions
*/ static StructInitInfo module = { // init struct using C99 designated initializers; for a full list of // fields, please refer to the definition of StructInitInfo
.type = MODULE_BUILTIN, "",
.initKernel = InitKernel,
.initLibrary = InitLibrary,
.moduleStateSize = sizeof(ObjectsModuleState // fields, please refer to the definition of StructInitInfo
.moduleStateOffsetPtr name ="objects"
;
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.