PostgresFunctionDefinition
PostgreSQL SQL-language function definition for RLS helper functions. Implements [RLS-PG-SUPPORT-DDL].
public sealed record PostgresFunctionDefinition : IEquatable<PostgresFunctionDefinition>
Properties
Schema
public string Schema { get; init; }
Function schema.
Name
public string Name { get; init; }
Function name.
Arguments
public IReadOnlyList<PostgresFunctionArgumentDefinition> Arguments { get; init; }
Function arguments in declaration order.
Returns
public string Returns { get; init; }
PostgreSQL return type, such as uuid or boolean.
Language
public string Language { get; init; }
Function language. NAP RLS helpers use sql.
Volatility
public string Volatility { get; init; }
PostgreSQL volatility keyword: volatile, stable, or immutable.
SecurityDefiner
public bool SecurityDefiner { get; init; }
Whether to emit SECURITY DEFINER.
Body
public string Body { get; init; }
Function body placed between PostgreSQL dollar quotes.
BodyLql
public string? BodyLql { get; init; }
LQL function body expression. Mutually exclusive with ``. Emits a SQL-language function body for PostgreSQL.
ExecuteRoles
public IReadOnlyList<string> ExecuteRoles { get; init; }
Roles granted EXECUTE on this function.
RevokePublicExecute
public bool RevokePublicExecute { get; init; }
Whether PUBLIC execute must be revoked.