Swiftpack.co - DavidSkrundz/Collections as Swift Package

Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.
See all packages published by DavidSkrundz.
DavidSkrundz/Collections 2.0.0
Various Collections and Data Structures
⭐️ 1
🕓 3 years ago
.package(url: "https://github.com/DavidSkrundz/Collections.git", from: "2.0.0")

Collections

Various Collections and Data Structures

Importing

import Generator
import Graph
import Pair
dependencies: [
	.package(url: "https://github.com/DavidSkrundz/Collections.git",
	         from: "2.0.0")
],
targets: [
	.target(
		name: "",
		dependencies: [
			"Generator", "Graph", "Pair"
		]),
]

Generator

Implements to Iterator but also allows reversing (previous() -> Element?)

Graph

A basic graph class that implements:

func neighbours(of vertex: Vertex<T>) -> [Vertex<T>]
func reachable(from vertex: Vertex<T>) -> [Vertex<T>]
reachable(from vertex: Vertex<T>, where canReach: (_ distance: Int, _ edge: U?) -> Bool) -> [Vertex<T>]

pair(_:_:)

Like zip(_:_:) but returns a Sequence containing the cartesian product (all pairs) of the two sequences

Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco | API | Analytics