1Obj(3) OCaml library Obj(3)
2
3
4
6 Obj - Operations on internal representations of values.
7
9 Module Obj
10
12 Module Obj
13 : sig end
14
15
16 Operations on internal representations of values.
17
18 Not for the casual user.
19
20
21
22
23
24
25 type t
26
27
28
29
30
31 val repr : 'a -> t
32
33
34
35
36 val obj : t -> 'a
37
38
39
40
41 val magic : 'a -> 'b
42
43
44
45
46 val is_block : t -> bool
47
48
49
50
51 val is_int : t -> bool
52
53
54
55
56 val tag : t -> int
57
58
59
60
61 val set_tag : t -> int -> unit
62
63
64
65
66 val size : t -> int
67
68
69
70
71 val truncate : t -> int -> unit
72
73
74
75
76 val field : t -> int -> t
77
78
79
80
81 val set_field : t -> int -> t -> unit
82
83
84
85
86 val new_block : int -> int -> t
87
88
89
90
91 val dup : t -> t
92
93
94
95
96 val lazy_tag : int
97
98
99
100
101 val closure_tag : int
102
103
104
105
106 val object_tag : int
107
108
109
110
111 val infix_tag : int
112
113
114
115
116 val forward_tag : int
117
118
119
120
121 val no_scan_tag : int
122
123
124
125
126 val abstract_tag : int
127
128
129
130
131 val string_tag : int
132
133
134
135
136 val double_tag : int
137
138
139
140
141 val double_array_tag : int
142
143
144
145
146 val custom_tag : int
147
148
149
150
151 val final_tag : int
152
153
154
155
156 val int_tag : int
157
158
159
160
161 val out_of_heap_tag : int
162
163
164
165
166
167 === The following two functions are deprecated. Use module Marshal
168 instead. ===
169
170
171 val marshal : t -> string
172
173
174
175
176 val unmarshal : string -> int -> t * int
177
178
179
180
181
182
183OCamldoc 2007-05-24 Obj(3)