pub enum AnyIntrospector {
Postgres(PostgresIntrospector),
}Expand description
Enum dispatch for database introspectors.
Uses enum dispatch instead of Box<dyn DatabaseIntrospector> because the
trait uses async_fn_in_trait and cannot be object-safe.
Variants§
Postgres(PostgresIntrospector)
PostgreSQL introspector.
Trait Implementations§
Source§impl DatabaseIntrospector for AnyIntrospector
impl DatabaseIntrospector for AnyIntrospector
Source§async fn list_fact_tables(&self) -> Result<Vec<String>>
async fn list_fact_tables(&self) -> Result<Vec<String>>
List all fact tables in the database (tables starting with “tf_”). Read more
Source§async fn get_columns(
&self,
table_name: &str,
) -> Result<Vec<(String, String, bool)>>
async fn get_columns( &self, table_name: &str, ) -> Result<Vec<(String, String, bool)>>
Query column information for a table. Read more
Source§async fn get_indexed_columns(&self, table_name: &str) -> Result<Vec<String>>
async fn get_indexed_columns(&self, table_name: &str) -> Result<Vec<String>>
Query indexes for a table. Read more
Source§fn database_type(&self) -> DatabaseType
fn database_type(&self) -> DatabaseType
Get database type (for SQL type parsing).
Source§async fn get_sample_jsonb(
&self,
table_name: &str,
column_name: &str,
) -> Result<Option<Value>>
async fn get_sample_jsonb( &self, table_name: &str, column_name: &str, ) -> Result<Option<Value>>
Get sample JSONB data from a column to extract dimension paths. Read more
Source§async fn list_relations(&self) -> Result<Vec<RelationInfo>>
async fn list_relations(&self) -> Result<Vec<RelationInfo>>
List all relations (tables and views) in the database. Read more
Auto Trait Implementations§
impl Freeze for AnyIntrospector
impl !RefUnwindSafe for AnyIntrospector
impl Send for AnyIntrospector
impl Sync for AnyIntrospector
impl Unpin for AnyIntrospector
impl UnsafeUnpin for AnyIntrospector
impl !UnwindSafe for AnyIntrospector
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more