author | Andreas Lochbihler |
Fri, 05 Aug 2011 14:16:44 +0200 | |
changeset 44035 | 322d1657c40c |
parent 35416 | d8d7d1b785af |
child 45231 | d85a2fdc586c |
permissions | -rw-r--r-- |
12951 | 1 |
(* Title: HOL/MicroJava/J/SystemClasses.thy |
2 |
Author: Gerwin Klein |
|
3 |
Copyright 2002 Technische Universitaet Muenchen |
|
4 |
*) |
|
5 |
||
6 |
header {* \isaheader{System Classes} *} |
|
7 |
||
16417 | 8 |
theory SystemClasses imports Decl begin |
12951 | 9 |
|
10 |
text {* |
|
11 |
This theory provides definitions for the @{text Object} class, |
|
12 |
and the system exceptions. |
|
13 |
*} |
|
14 |
||
35416
d8d7d1b785af
replaced a couple of constsdefs by definitions (also some old primrecs by modern ones)
haftmann
parents:
28524
diff
changeset
|
15 |
definition ObjectC :: "'c cdecl" where |
44035
322d1657c40c
replace old SML code generator by new code generator in MicroJava/JVM and /BV
Andreas Lochbihler
parents:
35416
diff
changeset
|
16 |
[code_inline]: "ObjectC \<equiv> (Object, (undefined,[],[]))" |
12951 | 17 |
|
35416
d8d7d1b785af
replaced a couple of constsdefs by definitions (also some old primrecs by modern ones)
haftmann
parents:
28524
diff
changeset
|
18 |
definition NullPointerC :: "'c cdecl" where |
44035
322d1657c40c
replace old SML code generator by new code generator in MicroJava/JVM and /BV
Andreas Lochbihler
parents:
35416
diff
changeset
|
19 |
[code_inline]: "NullPointerC \<equiv> (Xcpt NullPointer, (Object,[],[]))" |
12951 | 20 |
|
35416
d8d7d1b785af
replaced a couple of constsdefs by definitions (also some old primrecs by modern ones)
haftmann
parents:
28524
diff
changeset
|
21 |
definition ClassCastC :: "'c cdecl" where |
44035
322d1657c40c
replace old SML code generator by new code generator in MicroJava/JVM and /BV
Andreas Lochbihler
parents:
35416
diff
changeset
|
22 |
[code_inline]: "ClassCastC \<equiv> (Xcpt ClassCast, (Object,[],[]))" |
12951 | 23 |
|
35416
d8d7d1b785af
replaced a couple of constsdefs by definitions (also some old primrecs by modern ones)
haftmann
parents:
28524
diff
changeset
|
24 |
definition OutOfMemoryC :: "'c cdecl" where |
44035
322d1657c40c
replace old SML code generator by new code generator in MicroJava/JVM and /BV
Andreas Lochbihler
parents:
35416
diff
changeset
|
25 |
[code_inline]: "OutOfMemoryC \<equiv> (Xcpt OutOfMemory, (Object,[],[]))" |
12951 | 26 |
|
35416
d8d7d1b785af
replaced a couple of constsdefs by definitions (also some old primrecs by modern ones)
haftmann
parents:
28524
diff
changeset
|
27 |
definition SystemClasses :: "'c cdecl list" where |
44035
322d1657c40c
replace old SML code generator by new code generator in MicroJava/JVM and /BV
Andreas Lochbihler
parents:
35416
diff
changeset
|
28 |
[code_inline]: "SystemClasses \<equiv> [ObjectC, NullPointerC, ClassCastC, OutOfMemoryC]" |
12951 | 29 |
|
30 |
end |