Not sure if I understood correctly, but here is an idea.
Define your own Collection class based on collection and write your access code in there, for example:
local loCollection
loCollection = createobject('MyCollection')
loCollection.Add('A')
loCollection.Add('B')
loCollection.Add('C')
loCollection.Add('D')
? loCollection.GetItemByIndex(2)
define class MyCollection as Collection
function GetItemByIndex(tnIndex)
return this.Item(tnIndex)
endfunc
enddefine
HTH
"The five senses obstruct or deform the apprehension of reality."
Jorge L. Borges?
"Premature optimization is the root of all evil in programming."
Donald Knuth, repeating C. A. R. Hoare
"To die for a religion is easier than to live it absolutely"
Jorge L. Borges