01: /*
02: * Licensed to the Apache Software Foundation (ASF) under one or more
03: * contributor license agreements. See the NOTICE file distributed with
04: * this work for additional information regarding copyright ownership.
05: * The ASF licenses this file to You under the Apache License, Version 2.0
06: * (the "License"); you may not use this file except in compliance with
07: * the License. You may obtain a copy of the License at
08: *
09: * http://www.apache.org/licenses/LICENSE-2.0
10: *
11: * Unless required by applicable law or agreed to in writing, software
12: * distributed under the License is distributed on an "AS IS" BASIS,
13: * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14: * See the License for the specific language governing permissions and
15: * limitations under the License.
16: */
17:
18: package org.apache.xerces.xs;
19:
20: /**
21: * The <code>XSObjectList</code> interface provides the abstraction of an
22: * immutable ordered collection of <code>XSObject</code>s, without defining
23: * or constraining how this collection is implemented.
24: */
25: public interface XSObjectList {
26: /**
27: * The number of <code>XSObjects</code> in the list. The range of valid
28: * child object indices is 0 to <code>length-1</code> inclusive.
29: */
30: public int getLength();
31:
32: /**
33: * Returns the <code>index</code>th item in the collection or
34: * <code>null</code> if <code>index</code> is greater than or equal to
35: * the number of objects in the list. The index starts at 0.
36: * @param index index into the collection.
37: * @return The <code>XSObject</code> at the <code>index</code>th
38: * position in the <code>XSObjectList</code>, or <code>null</code> if
39: * the index specified is not valid.
40: */
41: public XSObject item(int index);
42:
43: }
|