class OpenEdge.Core.Collections.Array
	implements OpenEdge.Core.Collections.IList:

	constructor public Array ( piSize as integer):
	end.

	constructor public Array ( poArray as Progress.Lang.Object extent ):
	end.

	constructor public Array ():
	end.

     constructor static Array():
    end.
    
    destructor Array():
    end.
    
    define public static property DefaultArraySize as integer no-undo
     get.
     set.
    
	define public property AutoExpand as logical no-undo
		public get.
		public set.

	define public property DiscardOnShrink as logical no-undo
		public get.
		public set.

	define protected property Value as Progress.Lang.Object extent no-undo
		protected get.
		private set.

	define public property Size as integer no-undo
		public get.
		public set.

	method public void SetValue ( poValue as Progress.Lang.Object):
	end.

	method public Progress.Lang.Object GetValue ( piExtent as integer):
	end.

	method public void SetValue ( poValue as Progress.Lang.Object, piExtent as integer):
	end.

	method public logical Add ( o as Progress.Lang.Object):
	end.

	method public logical AddAll ( c as OpenEdge.Core.Collections.ICollection):
	end.

	method public logical AddArray ( c as Progress.Lang.Object extent ):
	end.

	method public void Clear ():
	end.

	method public logical Contains ( o as Progress.Lang.Object):
	end.

	method public logical ContainsAll ( poCollection as OpenEdge.Core.Collections.ICollection):
	end.

	method public OpenEdge.Core.Collections.IIterator Iterator ():
	end.

	method public logical IsEmpty ():
	end.

	method public logical Remove ( o as Progress.Lang.Object):
	end.

	method public logical RemoveAll ( c as OpenEdge.Core.Collections.ICollection):
	end.

	method public logical RetainAll ( oCollection as OpenEdge.Core.Collections.ICollection):
	end.

	method public void ToTable ( output table-handle p1):
	end.

	method public Progress.Lang.Object extent ToArray ():
	end.

	method public override Progress.Lang.Object Clone ():
	end.

	method protected void CloneElements ( poClone as OpenEdge.Core.Collections.ICollection):
	end.
    
    method protected void InsertElement (input pIndex as integer,
                                        input pElement as Progress.Lang.Object):
    end.
    
    method protected void InsertElements(input pIndex as integer,
                                         input pElement as Progress.Lang.Object extent):
    end.
    
    method public logical Add(input pIndex as integer,
                              input pElement as Progress.Lang.Object):
    end.
    
    method public logical AddAll(input pIndex as integer,
                                 input pCollection as ICollection):
    end.  
    
    method public logical AddArray(input pIndex as integer,
                                   input pArray as Progress.Lang.Object extent):
    end.
    
    method public Progress.Lang.Object Get(input pIndex as integer ):
    end.
    
    method public integer IndexOf( input pElement as Progress.Lang.Object ):
    end.
    
    method public IListIterator ListIterator():
    end.
    
    method public IListIterator ListIterator(input pIndex as integer):
    end.
    
    method public integer LastIndexOf(input pElement as Progress.Lang.Object):
    end.
    
    method public Progress.Lang.Object Remove(input pIndex as integer):
    end.
    
    method public Object GetValue(input piExtent as integer):
    end.
    
    method public void SetValue(input poValue as Object,
                                input piExtent as integer):
    end.
    
    method public IList SubList(input pFromIndex as integer,
                                input pToIndex as integer):
    end.
    
    method public override logical Equals(o as Object):
    end.
end.
