class System.GC
   inherits System.Object
   abstract:

   def public static property MaxGeneration as integer
      get.

   method public final static void AddMemoryPressure(input bytesAllocated as int64):
   end method.

   method public final static void RemoveMemoryPressure(input bytesAllocated as int64):
   end method.

   method public final static integer GetGeneration(input obj as System.Object):
   end method.

   method public final static void Collect(input generation as integer):
   end method.

   method public final static void Collect():
   end method.

   method public final static void Collect(input generation as integer, input mode as System.GCCollectionMode):
   end method.

   method public final static void Collect(input generation as integer, input mode as System.GCCollectionMode, input blocking as logical):
   end method.

   method public final static void Collect(input generation as integer, input mode as System.GCCollectionMode, input blocking as logical, input compacting as logical):
   end method.

   method public final static integer CollectionCount(input generation as integer):
   end method.

   method public final static void KeepAlive(input obj as System.Object):
   end method.

   method public final static integer GetGeneration(input wo as System.WeakReference):
   end method.

   method public final static void WaitForPendingFinalizers():
   end method.

   method public final static void SuppressFinalize(input obj as System.Object):
   end method.

   method public final static void ReRegisterForFinalize(input obj as System.Object):
   end method.

   method public final static int64 GetTotalMemory(input forceFullCollection as logical):
   end method.

   method public final static void RegisterForFullGCNotification(input maxGenerationThreshold as integer, input largeObjectHeapThreshold as integer):
   end method.

   method public final static void CancelFullGCNotification():
   end method.

   method public final static System.GCNotificationStatus WaitForFullGCApproach():
   end method.

   method public final static System.GCNotificationStatus WaitForFullGCApproach(input millisecondsTimeout as integer):
   end method.

   method public final static System.GCNotificationStatus WaitForFullGCComplete():
   end method.

   method public final static System.GCNotificationStatus WaitForFullGCComplete(input millisecondsTimeout as integer):
   end method.

   method public final static logical TryStartNoGCRegion(input totalSize as int64):
   end method.

   method public final static logical TryStartNoGCRegion(input totalSize as int64, input lohSize as int64):
   end method.

   method public final static logical TryStartNoGCRegion(input totalSize as int64, input disallowFullBlockingGC as logical):
   end method.

   method public final static logical TryStartNoGCRegion(input totalSize as int64, input lohSize as int64, input disallowFullBlockingGC as logical):
   end method.

   method public final static void EndNoGCRegion():
   end method.

end class.
