pub trait SystemTable {
// Required methods
fn table_id(&self) -> TableId;
fn table_name(&self) -> &'static str;
fn schema(&self) -> SchemaRef;
fn to_stream(
&self,
request: ScanRequest,
) -> Result<SendableRecordBatchStream>;
// Provided methods
fn scan_plan(
&self,
_request: ScanRequest,
) -> Result<Option<Arc<dyn ExecutionPlan>>> { ... }
fn table_type(&self) -> TableType { ... }
}Required Methods§
fn table_id(&self) -> TableId
fn table_name(&self) -> &'static str
fn schema(&self) -> SchemaRef
fn to_stream(&self, request: ScanRequest) -> Result<SendableRecordBatchStream>
Provided Methods§
fn scan_plan( &self, _request: ScanRequest, ) -> Result<Option<Arc<dyn ExecutionPlan>>>
fn table_type(&self) -> TableType
Dyn Compatibility§
This trait is dyn compatible.
In older versions of Rust, dyn compatibility was called "object safety".