Files
mercury/java/TypeLayout.java
Julien Fischer 3c2d58163d Classes used by the Java backend, particularly in the implementation
Estimated hours taken: 10.

Classes used by the Java backend, particularly in the implementation
of RTTI.

java/Compare.java:
java/Unify.java:
 	New files.  Java classes for implementation of wrapper classes
	around the builtin `unify'and `compare' predicates.

java/JavaInternal.java:
 	New file.  Java class for storing runtime information such
	as command line arguments.

java/DuExistInfo.java:
java/DuExistLocn.java:
java/DuFunctorDesc.java:
java/DuPtagLayout.java:
java/EnumFunctorDesc.java:
java/NotagFunctorDesc.java:
java/ProcAddr.java:
java/PseudoTypeInfo.java:
java/Sectag_Locn.java:
java/TypeCtorInfo_Struct.java
java/TypeCtorRep.java:
java/TypeFunctors.java:
java/TypeLayout.java:
 	New files.  Java classes for implementing Mercury RTTI.

java/UnreachableDefault.java:
 	New file.  Runtime exception that signals that unreachable
	default case in a switch statement has been reached.

runtime/mercury_type_info.h:
	Update comments to mention that Java runtime classes will
	need to be altered if structures in this file are.
2001-02-23 01:11:04 +00:00

36 lines
1.0 KiB
Java

//
// Copyright (C) 2001 The University of Melbourne.
// This file may only be copied under the terms of the GNU Library General
// Public License - see the file COPYING.LIB in the Mercury distribution.
//
package mercury.runtime;
public class TypeLayout {
//
// In runtime/mercury_type_info.h:
// typedef MR_DuPtagLayout *MR_DuTypeLayout;
// so here we just use DuPtagLayout[]
//
public mercury.runtime.DuPtagLayout[] layout_du;
//
// In runtime/mercury_type_info.h:
// typedef MR_EnumFunctorDesc **EnumTypeLayout;
// so here we just use EnumFunctorDesc[][]
//
public mercury.runtime.EnumFunctorDesc[] layout_enum;
//
// In runtime/mercury_type_info.h:
// typedef MR_NotagFunctorDesc *MR_NotagTypeLayout;
// so here we just us NotagFunctorDesc[]
//
public mercury.runtime.NotagFunctorDesc[] layout_notag;
//
// In runtime/mercury_type_info.h:
// typedef MR_PseudoTypeInfo MR_EquivType;
// so here we just use MR_PseudoTypeInfo
//
public mercury.runtime.PseudoTypeInfo layout_equiv;
}