Module com.darkcollective.relix.processor


module com.darkcollective.relix.processor
Query execution engine for the relix relational algebra system.

This module evaluates a validated SemanticModel against in-memory and external data sources, producing lazy Stream<Row> pipelines. Operators fuse naturally via Java Streams: only aggregation, sort, and set operations require intermediate materialisation.

Key packages:

  • com.darkcollective.relix.processor — Row interface and ArrayRow implementation; the central runtime data types.

The scalar values a Row holds are not defined here: the sealed Value hierarchy lives in its own module, relix-value, which this module re-exports so a consumer of a row also sees the values in it.

Neither are the source connectors. This module declares the seam a connector plugs into — DataSourceConnector, the connector package's RelixConnector SPI, and the Fetcher a download goes through — and ships no implementation of any of them, so an embedder inherits no JDBC stack and no HTTP client. The standard CSV/JSON/HTTP/JDBC set is a discovered provider (relix-connectors-std) on exactly the footing an out-of-tree plugin has.