src/HOL/MicroJava/J/SystemClasses.thy
author haftmann
Fri, 17 Jun 2005 16:12:49 +0200
changeset 16417 9bc16273c2d4
parent 12951 a9fdcb71d252
child 28524 644b62cf678f
permissions -rw-r--r--
migrated theory headers to new format
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
12951
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
     1
(*  Title:      HOL/MicroJava/J/SystemClasses.thy
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
     2
    ID:         $Id$
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
     3
    Author:     Gerwin Klein
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
     4
    Copyright   2002 Technische Universitaet Muenchen
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
     5
*)
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
     6
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
     7
header {* \isaheader{System Classes} *}
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
     8
16417
9bc16273c2d4 migrated theory headers to new format
haftmann
parents: 12951
diff changeset
     9
theory SystemClasses imports Decl begin
12951
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
    10
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
    11
text {*
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
    12
  This theory provides definitions for the @{text Object} class,
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
    13
  and the system exceptions.
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
    14
*}
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
    15
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
    16
constdefs
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
    17
  ObjectC :: "'c cdecl"
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
    18
  "ObjectC \<equiv> (Object, (arbitrary,[],[]))"
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
    19
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
    20
  NullPointerC :: "'c cdecl"
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
    21
  "NullPointerC \<equiv> (Xcpt NullPointer, (Object,[],[]))"
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
    22
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
    23
  ClassCastC :: "'c cdecl"
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
    24
  "ClassCastC \<equiv> (Xcpt ClassCast, (Object,[],[]))"
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
    25
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
    26
  OutOfMemoryC :: "'c cdecl"
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
    27
  "OutOfMemoryC \<equiv> (Xcpt OutOfMemory, (Object,[],[]))"
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
    28
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
    29
  SystemClasses :: "'c cdecl list"
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
    30
  "SystemClasses \<equiv> [ObjectC, NullPointerC, ClassCastC, OutOfMemoryC]"
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
    31
a9fdcb71d252 introduces SystemClasses and BVExample
kleing
parents:
diff changeset
    32
end