LocationService
protocol LocationService : Mapper, ServiceProvider
Provides location-related functionality
-
Current coordinate measured
Declaration
Swift
var current: CLLocationCoordinate2D? { get }
-
Last coordinate measured
Declaration
Swift
var here: CLLocationCoordinate2D? { get }
-
Last location contained in
Declaration
Swift
var inside: Location? { get }
-
Last calculated distances
Declaration
Swift
var distances: Distances { get }
-
distance(to:)
Default implementationDistance to a place
Default Implementation
Distance to a place
Declaration
Swift
func distance(to: Mappable) -> CLLocationDistance
Parameters
to
Place
Return Value
Distance
-
Calculate nearest place of type
Declaration
Parameters
list
Checklist
id
Place ID
coordinate
Center
Return Value
Nearest place if found
-
Request permission
Declaration
Swift
func request(permission: LocationPermission)
Parameters
permission
Permission
-
Start with intended permission
Declaration
Swift
func start(permission: LocationPermission)
Parameters
permission
Permission
-
Insert a typed tracker in our listeners
Declaration
Swift
func insert<T>(tracker: T) where T : LocationTracker, T : Hashable
Parameters
tracker
New listener
-
Remove a typed tracker from our listeners
Declaration
Swift
func remove<T>(tracker: T) where T : LocationTracker, T : Hashable
Parameters
tracker
Former listener
-
Handle dependency injection
Declaration
Swift
func inject(handler: LocationHandler)
Parameters
handler
Location handler
-
Calculate distances
Declaration
Swift
func calculateDistances()
-
start(tracker:)
Extension methodStart with tracker
Declaration
Swift
@discardableResult func start(tracker: LocationTracker?) -> CLAuthorizationStatus
Parameters
tracker
Tracker
Return Value
Authorization