Fixed doxygen docu.
[libfirm] / ir / tr / typegmod.h
1 /*
2  * typegmod.h
3  *
4  * (C) 2001 by Universitaet Karlsruhe
5  * Goetz Lindenmaier
6  *
7  * $Id$
8  */
9
10 # ifndef _TYPEGMOD_H_
11 # define _TYPEGMOD_H_
12
13 # include "type.h"
14
15 /**
16  *
17  * @file typegmod.h
18  *  This module supplies routines that support changing the type graph.
19  */
20
21 /**
22  *   replaces one type by the other.
23  *
24  *   Old type is replaced by new_type.  All references to old_type
25  *   now point to new_type.  The memory for the old type is destroyed,
26  *   but still used.  Therefore it is not freed.
27  *   All referenced to this memory will be lost after a certain while.
28  *   An exception is the list of types in irp (irprog.h).
29  *   In the future there might be a routine to recover the memory, but
30  *   this will be at considerable runtime cost.
31  *
32  *  @param old_type  - The old type that shall be replaced by the new type.
33  *  @param new_type  - The new type that will replace old_type.
34  *
35  */
36 INLINE void exchange_types(type *old_type, type *new_type);
37
38 /**
39  *   skip id types until a useful type is reached.
40  *
41  *   @param tp - A type of arbitrary kind.
42  *
43  *   @return
44  *   tp if it is not an id type.
45  *   If tp is an id type returns the real type it stands for.
46  */
47 INLINE type *skip_tid(type *tp);
48
49 # endif /*_TYPEGMOD_H_ */