TetherColumn class abstract

An interface representing a database column, used by generated Supabase builders.

This abstraction allows for type-safe column references in queries and provides various name formats (original, local, qualified) for different contexts. Implementations are typically generated enums or classes for each table.

Example (conceptual generated enum):

enum UsersColumn implements SupabaseColumn {
  id('id', 'id', 'users'),
  email('email', 'email', 'users'),
  createdAt('created_at', 'createdAt', 'users');

  // ... SupabaseColumn implementation ...
}
Implementers

Constructors

TetherColumn.new()

Properties

dartName String
no setter
dbName String
no setter
hashCode int
The hash code for this object.
no setterinherited
localName String
no setter
originalName String
no setter
qualified String
The column name qualified with its base table name (e.g., 'users.id'). Useful for disambiguating columns in SQL joins.
no setter
relationshipPrefix String?
no setter
runtimeType Type
A representation of the runtime type of the object.
no setterinherited
tableAlias String?
no setter
tableName String
no setter

Methods

fullyQualified(String? prefix) String
The fully qualified column name, potentially including a relationshipPrefix. This is the name that should be used in filters (e.g., eq(PostsColumn.userId, 1) might translate to a filter on 'user_id' or 'posts.user_id' or 'author.id' depending on context and prefix).
noSuchMethod(Invocation invocation) → dynamic
Invoked when a nonexistent method or property is accessed.
inherited
Creates a new TetherColumn instance that represents this column as accessed through a named relationship.
toString() String
A string representation of this object.
inherited
withAlias(String? alias) TetherColumn
Creates a new column reference with a table alias.

Operators

operator ==(Object other) bool
The equality operator.
inherited