header {* \isaheader{System Classes} *}
theory SystemClasses
imports Decl Exceptions
begin
text {*
  This theory provides definitions for the @{text Object} class,
  and the system exceptions.
*}
definition ObjectC :: "'m cdecl"
where
  "ObjectC ≡ (Object, (undefined,[],[]))"
definition NullPointerC :: "'m cdecl"
where
  "NullPointerC ≡ (NullPointer, (Object,[],[]))"
definition ClassCastC :: "'m cdecl"
where
  "ClassCastC ≡ (ClassCast, (Object,[],[]))"
definition OutOfMemoryC :: "'m cdecl"
where
  "OutOfMemoryC ≡ (OutOfMemory, (Object,[],[]))"
definition SystemClasses :: "'m cdecl list"
where
  "SystemClasses ≡ [ObjectC, NullPointerC, ClassCastC, OutOfMemoryC]"
end