# Theory SystemClasses

Up to index of Isabelle/HOL/MicroJava

theory SystemClasses
imports Decl
begin

    (*  Title:      HOL/MicroJava/J/SystemClasses.thy
        ID:         $Id: SystemClasses.thy,v 1.2 2005/06/17 14:13:09 haftmann Exp $
        Author:     Gerwin Klein
        Copyright   2002 Technische Universitaet Muenchen
    *)

    header {* \isaheader{System Classes} *}

    theory SystemClasses imports Decl begin

    text {*
      This theory provides definitions for the @{text Object} class,
      and the system exceptions.
    *}

    constdefs
      ObjectC :: "'c cdecl"
      "ObjectC ≡ (Object, (arbitrary,[],[]))"

      NullPointerC :: "'c cdecl"
      "NullPointerC ≡ (Xcpt NullPointer, (Object,[],[]))"

      ClassCastC :: "'c cdecl"
      "ClassCastC ≡ (Xcpt ClassCast, (Object,[],[]))"

      OutOfMemoryC :: "'c cdecl"
      "OutOfMemoryC ≡ (Xcpt OutOfMemory, (Object,[],[]))"

      SystemClasses :: "'c cdecl list"
      "SystemClasses ≡ [ObjectC, NullPointerC, ClassCastC, OutOfMemoryC]"

    end