Engine

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 can be reused for several set of rules and GTFS files using the same set of environment.

Companion:
object
class Object
trait Matchable
class Any

Value members

Concrete methods

def matches(ctx: Ctx, row: CsvRow[String], matcher: Matcher): Boolean
def process[G <: (F)](rulesets: List[RuleSet[G]], from: GtfsFile[F], to: GtfsFile[F], ctx: Ctx): F[Unit]

Applies the rule sets to the from file, writing results in to.

Applies the rule sets to the from file, writing results in to.

Rule sets are fused to avoid going over the same file several times when several rule sets apply to the same file. The order in which the files are processed is not specified (and can even be done in parallel) but the different rule sets operating on a single file are ensured to be run in the same order as provided.