Member Junction
    Preparing search index...

    Resolved return-shape context computed by GenericDatabaseProvider.ResolveSaveReturnContext and passed to dialect-specific save-wrapping hooks (WrapSaveCallForResult, ProjectSaveCallToDatestamps, and WrapSaveCallWithRecordChange).

    Centralizes the SaveReturnMode decision logic and quoted column-list construction in GenericDatabaseProvider so dialect subclasses only supply dialect-specific SQL grammar.

    interface SaveReturnContext {
        datestampSelectColumnsSQL: string;
        effectiveReturnMode: "full" | "datestamps_only";
        finalSelectColumnsSQL: string;
        needsDatestampProjection: boolean;
        routineSelectColumnsSQL: string;
        spReturnMode: "full" | "datestamps_only";
        spReturnsDatestampsOnly: boolean;
    }
    Index

    Properties

    datestampSelectColumnsSQL: string

    Comma-separated, dialect-quoted column list for EntityInfo.DatestampReturnFields (built via QuoteIdentifier).

    effectiveReturnMode: "full" | "datestamps_only"

    The effective return mode requested for this save call (options?.SaveReturnMode ?? spReturnMode).

    finalSelectColumnsSQL: string

    Column list to select from an intermediate result capture table or CTE (datestampSelectColumnsSQL when effectiveReturnMode === 'datestamps_only', otherwise '*').

    needsDatestampProjection: boolean

    True when runtime options requested 'datestamps_only' on an entity whose compiled SP/function returns the full row (!spReturnsDatestampsOnly && effectiveReturnMode === 'datestamps_only').

    routineSelectColumnsSQL: string

    Column list to select directly from the routine call when the dialect selects from the routine (datestampSelectColumnsSQL when needsDatestampProjection is true, otherwise '*').

    spReturnMode: "full" | "datestamps_only"

    The return mode compiled into the entity's generated SP/function (EntityInfo.SaveReturnMode).

    spReturnsDatestampsOnly: boolean

    True when the compiled SP/function already returns only PK + datestamps (spReturnMode === 'datestamps_only').