Skip to content

Commit

Permalink
SortedSet, SortedBag: Rename index finding methods
Browse files Browse the repository at this point in the history
Index manipulations in Swift use prepositions indicating horizontal or chronological placement (before/after), not vertical placement (above/below)
  • Loading branch information
lorentey committed Nov 7, 2016
1 parent 7029d32 commit 5334240
Show file tree
Hide file tree
Showing 4 changed files with 24 additions and 24 deletions.
8 changes: 4 additions & 4 deletions Sources/SortedBag.swift
Original file line number Diff line number Diff line change
Expand Up @@ -451,7 +451,7 @@ extension SortedBag {
/// This function never returns `endIndex`. (If it returns non-nil, the returned index can be used to subscript the bag.)
///
/// - Complexity: O(log(`count`))
public func lowestIndex(above element: Element) -> BTreeIndex<Element, Void>? {
public func indexOfFirstElement(after element: Element) -> BTreeIndex<Element, Void>? {
let index = tree.index(forInserting: element, at: .last)
if tree.offset(of: index) == tree.count { return nil }
return index
Expand All @@ -462,7 +462,7 @@ extension SortedBag {
/// This function never returns `endIndex`. (If it returns non-nil, the returned index can be used to subscript the bag.)
///
/// - Complexity: O(log(`count`))
public func lowestIndex(notBelow element: Element) -> BTreeIndex<Element, Void>? {
public func indexOfFirstElement(notBefore element: Element) -> BTreeIndex<Element, Void>? {
let index = tree.index(forInserting: element, at: .first)
if tree.offset(of: index) == tree.count { return nil }
return index
Expand All @@ -473,7 +473,7 @@ extension SortedBag {
/// This function never returns `endIndex`. (If it returns non-nil, the returned index can be used to subscript the bag.)
///
/// - Complexity: O(log(`count`))
public func highestIndex(below element: Element) -> BTreeIndex<Element, Void>? {
public func indexOfLastElement(before element: Element) -> BTreeIndex<Element, Void>? {
var index = tree.index(forInserting: element, at: .first)
if tree.offset(of: index) == 0 { return nil }
tree.formIndex(before: &index)
Expand All @@ -485,7 +485,7 @@ extension SortedBag {
/// This function never returns `endIndex`. (If it returns non-nil, the returned index can be used to subscript the bag.)
///
/// - Complexity: O(log(`count`))
public func highestIndex(notAbove element: Element) -> BTreeIndex<Element, Void>? {
public func indexOfLastElement(notAfter element: Element) -> BTreeIndex<Element, Void>? {
var index = tree.index(forInserting: element, at: .last)
if tree.offset(of: index) == 0 { return nil }
tree.formIndex(before: &index)
Expand Down
8 changes: 4 additions & 4 deletions Sources/SortedSet.swift
Original file line number Diff line number Diff line change
Expand Up @@ -429,7 +429,7 @@ extension SortedSet {
/// This function never returns `endIndex`. (If it returns non-nil, the returned index can be used to subscript the set.)
///
/// - Complexity: O(log(`count`))
public func lowestIndex(above element: Element) -> BTreeIndex<Element, Void>? {
public func indexOfFirstElement(after element: Element) -> BTreeIndex<Element, Void>? {
let index = tree.index(forInserting: element, at: .last)
if tree.offset(of: index) == tree.count { return nil }
return index
Expand All @@ -440,7 +440,7 @@ extension SortedSet {
/// This function never returns `endIndex`. (If it returns non-nil, the returned index can be used to subscript the set.)
///
/// - Complexity: O(log(`count`))
public func lowestIndex(notBelow element: Element) -> BTreeIndex<Element, Void>? {
public func indexOfFirstElement(notBefore element: Element) -> BTreeIndex<Element, Void>? {
let index = tree.index(forInserting: element, at: .first)
if tree.offset(of: index) == tree.count { return nil }
return index
Expand All @@ -451,7 +451,7 @@ extension SortedSet {
/// This function never returns `endIndex`. (If it returns non-nil, the returned index can be used to subscript the set.)
///
/// - Complexity: O(log(`count`))
public func highestIndex(below element: Element) -> BTreeIndex<Element, Void>? {
public func indexOfLastElement(before element: Element) -> BTreeIndex<Element, Void>? {
var index = tree.index(forInserting: element, at: .first)
if tree.offset(of: index) == 0 { return nil }
tree.formIndex(before: &index)
Expand All @@ -463,7 +463,7 @@ extension SortedSet {
/// This function never returns `endIndex`. (If it returns non-nil, the returned index can be used to subscript the set.)
///
/// - Complexity: O(log(`count`))
public func highestIndex(notAbove element: Element) -> BTreeIndex<Element, Void>? {
public func indexOfLastElement(notAfter element: Element) -> BTreeIndex<Element, Void>? {
var index = tree.index(forInserting: element, at: .last)
if tree.offset(of: index) == 0 { return nil }
tree.formIndex(before: &index)
Expand Down
16 changes: 8 additions & 8 deletions Tests/SortedBagTests.swift
Original file line number Diff line number Diff line change
Expand Up @@ -363,12 +363,12 @@ class SortedBagTests: XCTestCase {
}
}

func test_lowestIndexAbove() {
func test_indexOfFirstElementAfter() {
let c = 100
let bag = SortedBag((0 ..< c).map { 2 * $0 }.repeatEach(3))

for i in 0 ..< 2 * c {
let index = bag.lowestIndex(above: i)
let index = bag.indexOfFirstElement(after: i)
if i < 2 * (c - 1) {
XCTAssertNotNil(index)
guard let index = index else { continue }
Expand All @@ -381,12 +381,12 @@ class SortedBagTests: XCTestCase {
}
}

func test_lowestIndexNotBelow() {
func test_indexOfFirstElementNotBefore() {
let c = 100
let bag = SortedBag((0 ..< c).map { 2 * $0 }.repeatEach(3))

for i in 0 ..< 2 * c {
let index = bag.lowestIndex(notBelow: i)
let index = bag.indexOfFirstElement(notBefore: i)
if i < 2 * c - 1 {
XCTAssertNotNil(index)
guard let index = index else { continue }
Expand All @@ -407,12 +407,12 @@ class SortedBagTests: XCTestCase {
}
}

func test_highestIndexBelow() {
func test_indexOfLastElementBefore() {
let c = 100
let bag = SortedBag((0 ..< c).map { 2 * $0 }.repeatEach(3))

for i in -2 ..< 2 * c {
let index = bag.highestIndex(below: i)
let index = bag.indexOfLastElement(before: i)
if i > 0 {
XCTAssertNotNil(index)
guard let index = index else { continue }
Expand All @@ -433,12 +433,12 @@ class SortedBagTests: XCTestCase {
}
}

func test_highestIndexNotAbove() {
func test_indexOfLastElementNotAfter() {
let c = 100
let bag = SortedBag((0 ..< c).map { 2 * $0 }.repeatEach(3))

for i in -2 ..< 2 * c {
let index = bag.highestIndex(notAbove: i)
let index = bag.indexOfLastElement(notAfter: i)
if i >= 0 {
XCTAssertNotNil(index)
guard let index = index else { continue }
Expand Down
16 changes: 8 additions & 8 deletions Tests/SortedSetTests.swift
Original file line number Diff line number Diff line change
Expand Up @@ -320,12 +320,12 @@ class SortedSetTests: XCTestCase {
}
}

func test_lowestIndexAbove() {
func test_indexOfFirstElementAfter() {
let c = 100
let set = SortedSet((0 ..< c).map { 2 * $0 })

for i in 0 ..< 2 * c {
let index = set.lowestIndex(above: i)
let index = set.indexOfFirstElement(after: i)
if i < 2 * (c - 1) {
XCTAssertNotNil(index)
guard let index = index else { continue }
Expand All @@ -343,12 +343,12 @@ class SortedSetTests: XCTestCase {
}
}

func test_lowestIndexNotBelow() {
func test_indexOfFirstElementNotBefore() {
let c = 100
let set = SortedSet((0 ..< c).map { 2 * $0 })

for i in 0 ..< 2 * c {
let index = set.lowestIndex(notBelow: i)
let index = set.indexOfFirstElement(notBefore: i)
if i < 2 * c - 1 {
XCTAssertNotNil(index)
guard let index = index else { continue }
Expand All @@ -366,12 +366,12 @@ class SortedSetTests: XCTestCase {
}
}

func test_highestIndexBelow() {
func test_indexOfLastElementBefore() {
let c = 100
let set = SortedSet((0 ..< c).map { 2 * $0 })

for i in -2 ..< 2 * c {
let index = set.highestIndex(below: i)
let index = set.indexOfLastElement(before: i)
if i > 0 {
XCTAssertNotNil(index)
guard let index = index else { continue }
Expand All @@ -389,12 +389,12 @@ class SortedSetTests: XCTestCase {
}
}

func test_highestIndexNotAbove() {
func test_indexOfLastElementNotAfter() {
let c = 100
let set = SortedSet((0 ..< c).map { 2 * $0 })

for i in -2 ..< 2 * c {
let index = set.highestIndex(notAbove: i)
let index = set.indexOfLastElement(notAfter: i)
if i >= 0 {
XCTAssertNotNil(index)
guard let index = index else { continue }
Expand Down

0 comments on commit 5334240

Please sign in to comment.