com.mobimeo.gtfs.rules

Type members

Classlikes

sealed trait Action[+F[_]]
Companion:
object
object Action
Companion:
class
sealed trait Arity
Companion:
object
object Arity
Companion:
class
sealed trait Ctx

A rule context is a trie map of strings. It allows for providing scoped values that can be used in the rules.

A rule context is a trie map of strings. It allows for providing scoped values that can be used in the rules.

Companion:
object
object Ctx
Companion:
class
case class DocumentedFunction[F[_]](f: List[String] => F[String], arity: Arity, doc: Option[String])
Companion:
object
Companion:
class
class Dsl[F[_]]
class Engine[F[_]](interpreter: Interpreter[F])(implicit F: Sync[F], logger: StructuredLogger[F])

An engine is used to apply set of processing rules to GTFS files. It provides a common environment composed of functions that can be used in the rules.

An engine is used to apply set of processing rules to GTFS files. It provides a common environment composed of functions that can be used in the rules.

An engine can be reused for several set of rules and GTFS files using the same set of environment.

Companion:
object
object Engine
Companion:
class
sealed trait Expr[+F[_]]
Companion:
object
object Expr
Companion:
class
class Interpreter[F[_]](val functions: Map[String, DocumentedFunction[F]])(implicit F: MonadError[F, Throwable])

An interpreter is used in the context of the engine to evaluate the various expressions from the Matcher s and Transformation s.

An interpreter is used in the context of the engine to evaluate the various expressions from the Matcher s and Transformation s.

Expressions are pure, and cannot perform any side effects. Applicable functions transform a string value into another one without access to any context.

Companion:
object
Companion:
class
enum LogLevel(val entryName: String)
Companion:
object
object LogLevel
Companion:
class
sealed trait Matcher
Companion:
object
object Matcher
Companion:
class
case class Rule[+F[_]](name: String, matcher: Matcher, action: Action[F])
case class RuleSet[+F[_]](file: String, rules: List[Rule[F]], additions: List[NonEmptyList[String]])
sealed trait Transformation[+F[_]]
Companion:
object
Companion:
class
sealed trait Value
Companion:
object
object Value
Companion:
class
sealed trait Variable extends Value