src/HOL/MicroJava/J/SystemClasses.thy
author haftmann
Tue, 07 Oct 2008 16:07:50 +0200
changeset 28524 644b62cf678f
parent 16417 9bc16273c2d4
child 35416 d8d7d1b785af
permissions -rw-r--r--
arbitrary is undefined
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"
28524
644b62cf678f arbitrary is undefined
haftmann
parents: 16417
diff changeset
    18
  "ObjectC \<equiv> (Object, (undefined,[],[]))"
12951
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