Module com.darkcollective.relix.symbol


module com.darkcollective.relix.symbol
Symbol table, type system, and relation/function symbol hierarchy for the relix system.

This module provides the structures needed to record what names are in scope during semantic analysis — which relations exist, what columns they have, what functions are available, and what types they work with. It deliberately contains no parsing and no query-execution logic; it is a pure data-representation and lookup layer.

Key packages:

  • com.darkcollective.relix.symbol — root types: Symbol sealed interface, enums (ScalarType, Provenance, ShadowPolicy, FunctionProperty), and schema/error value objects.
  • com.darkcollective.relix.symbol.relation — the relation symbol hierarchy (DatabaseRelationSymbol, InlineRelationSymbol, QueryRelationSymbol, SourceRelationSymbol, SystemRelationSymbol).
  • com.darkcollective.relix.symbol.function — the function symbol hierarchy (ScalarFunctionSymbol with its Builder).
  • com.darkcollective.relix.symbol.table — SymbolTable interface, InMemorySymbolTable implementation, and the SymbolRepository persistence contract.
  • com.darkcollective.relix.symbol.graph — the schema graph: SchemaGraph, Relationship, Endpoint, EdgeOrigin — relationship metadata between relations.