PropertyList
open class PropertyList : ListBase, Sequence
A list of item type Property
.
-
Undocumented
Declaration
Swift
public subscript(index: Int) -> Property { get set }
-
An immutable empty
PropertyList
.Declaration
Swift
public static let empty: PropertyList
-
Construct a new list with
length
of zero and optional initialcapacity
. A list can expand in length beyond its initial capacity, but best performance will be obtained if the initial capacity is close to (and not less than) the list’s maximum length.Declaration
Swift
override public init(capacity: Int = (4 as Int))
Parameters
capacity
Optional initial capacity.
-
Add
item
to the end of this list.Declaration
Swift
open func append(_ item: Property)
Parameters
item
Item to be added.
-
Add all the items of
list
to the end of this list.Declaration
Swift
open func append(contentsOf list: PropertyList)
Parameters
list
Items to be added.
-
An ordering function for the item type of this list.
Declaration
Swift
override open var comparer: Comparer { get }
-
Declaration
Swift
open func copy() -> PropertyList
Return Value
A shallow copy of this list.
-
An equality function for the item type of this list.
Declaration
Swift
override open var equality: Equality { get }
-
Declaration
Swift
open func filter(_ predicate: @escaping (Property) -> Bool) -> PropertyList
Parameters
predicate
Function to be applied to each item of this list. Items matching this predicate will be returned in the new list.
Return Value
A new list which contains the items of this list that match a specified predicate function. Ordering is preserved.
-
Throws
EmptyListException
if the list is empty.Declaration
Swift
open func first() -> Property
Return Value
The first item in this list.
-
Convert array to list.
Declaration
Swift
open class func fromArray(_ array: Array<Property>) -> PropertyList
Parameters
array
Array with source items.
Return Value
New list with items copied from
array
parameter. -
Declaration
Swift
open func indexOf(item: Property, start: Int = (0 as Int)) -> Int
Parameters
item
start
Zero-based starting index (search moves forwards from this index).
Return Value
First index in this list of
item
, or-1
if not found. -
Insert
item
into this list, before the item (if any) atindex
.Throws
ListIndexException
ifindex
is out of range (0 tolength
).Declaration
Swift
open func insert(at index: Int, item: Property)
Parameters
index
Zero-based index.
item
Item to be added.
-
Insert all items of
list
into this list, before the item (if any) atindex
.Throws
ListIndexException
ifindex
is out of range (0 tolength
).Declaration
Swift
open func insert(at index: Int, contentsOf list: PropertyList)
Parameters
index
Zero-based index.
list
List of items to be inserted.
-
Throws
ListIndexException
ifindex
is out of range (0 tolength
- 1).Declaration
Swift
open func item(at index: Int) -> Property
Parameters
index
Zero-based index.
Return Value
The item in this list at the specified
index
. -
Throws
EmptyListException
if the list is empty.Declaration
Swift
open func last() -> Property
Return Value
The last item in this list.
-
Declaration
Swift
open func lastIndexOf(item: Property, start: Int = (2147483647 as Int)) -> Int
Parameters
item
start
Zero-based starting index (search moves backwards from this index).
Return Value
Last index in this list of
item
, or-1
if not found. -
Declaration
Swift
open func makeIterator() -> IndexingIterator<Array<Property>>
Return Value
This list converted to a Swift iterator.
-
Return a new
PropertyList
that shares theListBase.untypedList
as thelist
parameter. To ensure type safety, items inlist
that do not have the item typeProperty
will be removed.Declaration
Swift
open class func share(_ list: ListBase) -> PropertyList
Parameters
list
List whose items will be shared by the resulting list.
Return Value
A new list of item type
Property
, sharing the same items aslist
. -
Throws
EmptyListException
if the list has no items,NotUniqueException
if the list has multiple items.Declaration
Swift
open func single() -> Property
Return Value
A single item from this list.
-
Declaration
Swift
open func slice(start: Int, end: Int = (2147483647 as Int)) -> PropertyList
Parameters
start
Zero-based starting index (inclusive), or negative for starting index relative to the end of this list.
end
Zero-based ending index (exclusive), or negative for ending index relative to the end of this list.
Return Value
A slice of this list from index
start
(inclusive) to indexend
(exclusive). -
Declaration
Swift
open func sortedByKind() throws -> PropertyList
Return Value
a copy of this list, sorted by key properties, non-key properties, extension properties, then relationship properties (then by name within each of these groupings).
-
Declaration
Swift
open func sortedByLine() throws -> PropertyList
Return Value
a copy of this list, sorted by
Property.sourceLine
. -
Declaration
Swift
open func sortedByName() throws -> PropertyList
Return Value
a copy of this list, sorted by
Property.name
. -
Convert list to array.
Declaration
Swift
open func toArray() -> Array<Property>
Return Value
New array with items copied from this list.
-
Set the item in this list at the specified
index
.Declaration
Swift
open func update(at index: Int, item: Property)
Parameters
index
Zero-based index.
item
Item value.