mirror of
https://github.com/Mercury-Language/mercury.git
synced 2025-12-13 21:04:00 +00:00
Add pointers in each file to the other, since they contain respectively
Estimated hours taken: 0.1 Branches: main runtime/mercury_type_info.h: runtime/mercury_typeclass_info.h: Add pointers in each file to the other, since they contain respectively the current and prospective new designs for the implementation of typeclass_infos. Add a XXX for missing documentation.
This commit is contained in:
@@ -2,15 +2,19 @@
|
|||||||
** vim: ts=4 sw=4 expandtab
|
** vim: ts=4 sw=4 expandtab
|
||||||
*/
|
*/
|
||||||
/*
|
/*
|
||||||
** Copyright (C) 1995-2007, 2009, 2011 The University of Melbourne.
|
** Copyright (C) 1995-2007, 2009, 2011-2012 The University of Melbourne.
|
||||||
** This file may only be copied under the terms of the GNU Library General
|
** 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.
|
** Public License - see the file COPYING.LIB in the Mercury distribution.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** mercury_type_info.h -
|
** Definitions of the types defining the type_ctor_infos, type_infos,
|
||||||
** Definitions for accessing the type_infos, type_layouts, and
|
** pseudo_type_infos, base_typeclass_infos and typeclass_infos generated
|
||||||
** type_functors tables generated by the Mercury compiler.
|
** by the Mercury compiler, together with the macros and functions for
|
||||||
|
** manipulating them.
|
||||||
|
**
|
||||||
|
** There is a newer and better design for representing typeclass_infos
|
||||||
|
** in mercury_typeclass_info.h, but it is not used yet.
|
||||||
**
|
**
|
||||||
** Changes to the structures of type_infos and pseudo_type_infos
|
** Changes to the structures of type_infos and pseudo_type_infos
|
||||||
** may also require changes in:
|
** may also require changes in:
|
||||||
@@ -47,6 +51,9 @@
|
|||||||
**
|
**
|
||||||
** java/ *.java
|
** java/ *.java
|
||||||
** (for updating the Java backend RTTI structures)
|
** (for updating the Java backend RTTI structures)
|
||||||
|
**
|
||||||
|
** XXX Document what files changes may be required in after changes to the
|
||||||
|
** structures of base_typeclass_infos and typeclass_infos.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifndef MERCURY_TYPE_INFO_H
|
#ifndef MERCURY_TYPE_INFO_H
|
||||||
|
|||||||
@@ -2,15 +2,17 @@
|
|||||||
** vim: ts=4 sw=4 expandtab
|
** vim: ts=4 sw=4 expandtab
|
||||||
*/
|
*/
|
||||||
/*
|
/*
|
||||||
** Copyright (C) 2002-2005, 2007 The University of Melbourne.
|
** Copyright (C) 2002-2005, 2007, 2012 The University of Melbourne.
|
||||||
** This file may only be copied under the terms of the GNU Library General
|
** 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.
|
** Public License - see the file COPYING.LIB in the Mercury distribution.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
** This file contains design for a new runtime representation of typeclass
|
** This file contains design for a new runtime representation of typeclass
|
||||||
** information. It is not used yet. The mail that introduced this file
|
** information. It is not used yet; the design we DO use is implemented
|
||||||
** follows.
|
** in mercury_type_info.h.
|
||||||
|
**
|
||||||
|
** The mail that introduced this file follows.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
/*
|
/*
|
||||||
@@ -50,7 +52,7 @@ the growth is mostly in statically allocated data structures. Also, the new
|
|||||||
design is in type-safe C, for ease of debugging its implementation. There
|
design is in type-safe C, for ease of debugging its implementation. There
|
||||||
should be a type-safe Mercury version of it as well, for future use in the
|
should be a type-safe Mercury version of it as well, for future use in the
|
||||||
Java and IL backends. The reason why there isn't one yet is that some these
|
Java and IL backends. The reason why there isn't one yet is that some these
|
||||||
structures must contain references to polymporphic procedures, since methods
|
structures must contain references to polymorphic procedures, since methods
|
||||||
may be polymorphic. Mercury doesn't (yet) support polymorphic procedures,
|
may be polymorphic. Mercury doesn't (yet) support polymorphic procedures,
|
||||||
even if (as here) only the compiler can create them.
|
even if (as here) only the compiler can create them.
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user