mirror of
https://github.com/postgres/postgres.git
synced 2025-12-07 12:02:30 +03:00
Fix stray references to SubscriptRef
This type never existed. SubscriptingRef was meant instead. Reviewed-by: Tom Lane <tgl@sss.pgh.pa.us> Discussion: https://www.postgresql.org/message-id/flat/2eaa45e3-efc5-4d75-b082-f8159f51445f%40eisentraut.org
This commit is contained in:
@@ -74,7 +74,7 @@ hstore_subscript_transform(SubscriptingRef *sbsref,
|
|||||||
errmsg("hstore subscript must have type text"),
|
errmsg("hstore subscript must have type text"),
|
||||||
parser_errposition(pstate, exprLocation(ai->uidx))));
|
parser_errposition(pstate, exprLocation(ai->uidx))));
|
||||||
|
|
||||||
/* ... and store the transformed subscript into the SubscriptRef node */
|
/* ... and store the transformed subscript into the SubscriptingRef node */
|
||||||
sbsref->refupperindexpr = list_make1(subexpr);
|
sbsref->refupperindexpr = list_make1(subexpr);
|
||||||
sbsref->reflowerindexpr = NIL;
|
sbsref->reflowerindexpr = NIL;
|
||||||
|
|
||||||
|
|||||||
@@ -140,7 +140,7 @@ array_subscript_transform(SubscriptingRef *sbsref,
|
|||||||
upperIndexpr = lappend(upperIndexpr, subexpr);
|
upperIndexpr = lappend(upperIndexpr, subexpr);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* ... and store the transformed lists into the SubscriptRef node */
|
/* ... and store the transformed lists into the SubscriptingRef node */
|
||||||
sbsref->refupperindexpr = upperIndexpr;
|
sbsref->refupperindexpr = upperIndexpr;
|
||||||
sbsref->reflowerindexpr = lowerIndexpr;
|
sbsref->reflowerindexpr = lowerIndexpr;
|
||||||
|
|
||||||
|
|||||||
@@ -152,7 +152,7 @@ jsonb_subscript_transform(SubscriptingRef *sbsref,
|
|||||||
upperIndexpr = lappend(upperIndexpr, subExpr);
|
upperIndexpr = lappend(upperIndexpr, subExpr);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* store the transformed lists into the SubscriptRef node */
|
/* store the transformed lists into the SubscriptingRef node */
|
||||||
sbsref->refupperindexpr = upperIndexpr;
|
sbsref->refupperindexpr = upperIndexpr;
|
||||||
sbsref->reflowerindexpr = NIL;
|
sbsref->reflowerindexpr = NIL;
|
||||||
|
|
||||||
|
|||||||
@@ -35,14 +35,14 @@ typedef struct SubscriptExecSteps SubscriptExecSteps;
|
|||||||
* several bool flags that specify properties of the subscripting actions
|
* several bool flags that specify properties of the subscripting actions
|
||||||
* this data type can perform:
|
* this data type can perform:
|
||||||
*
|
*
|
||||||
* fetch_strict indicates that a fetch SubscriptRef is strict, i.e., returns
|
* fetch_strict indicates that a fetch SubscriptingRef is strict, i.e., returns
|
||||||
* NULL if any input (either the container or any subscript) is NULL.
|
* NULL if any input (either the container or any subscript) is NULL.
|
||||||
*
|
*
|
||||||
* fetch_leakproof indicates that a fetch SubscriptRef is leakproof, i.e.,
|
* fetch_leakproof indicates that a fetch SubscriptingRef is leakproof, i.e.,
|
||||||
* will not throw any data-value-dependent errors. Typically this requires
|
* will not throw any data-value-dependent errors. Typically this requires
|
||||||
* silently returning NULL for invalid subscripts.
|
* silently returning NULL for invalid subscripts.
|
||||||
*
|
*
|
||||||
* store_leakproof similarly indicates whether an assignment SubscriptRef is
|
* store_leakproof similarly indicates whether an assignment SubscriptingRef is
|
||||||
* leakproof. (It is common to prefer throwing errors for invalid subscripts
|
* leakproof. (It is common to prefer throwing errors for invalid subscripts
|
||||||
* in assignments; that's fine, but it makes the operation not leakproof.
|
* in assignments; that's fine, but it makes the operation not leakproof.
|
||||||
* In current usage there is no advantage in making assignments leakproof.)
|
* In current usage there is no advantage in making assignments leakproof.)
|
||||||
@@ -51,7 +51,7 @@ typedef struct SubscriptExecSteps SubscriptExecSteps;
|
|||||||
* undesirable, since for example a null subscript in an assignment would
|
* undesirable, since for example a null subscript in an assignment would
|
||||||
* cause the entire container to become NULL.
|
* cause the entire container to become NULL.
|
||||||
*
|
*
|
||||||
* Regardless of these flags, all SubscriptRefs are expected to be immutable,
|
* Regardless of these flags, all SubscriptingRefs are expected to be immutable,
|
||||||
* that is they must always give the same results for the same inputs.
|
* that is they must always give the same results for the same inputs.
|
||||||
* They are expected to always be parallel-safe, as well.
|
* They are expected to always be parallel-safe, as well.
|
||||||
*/
|
*/
|
||||||
@@ -159,9 +159,10 @@ typedef struct SubscriptRoutines
|
|||||||
{
|
{
|
||||||
SubscriptTransform transform; /* parse analysis function */
|
SubscriptTransform transform; /* parse analysis function */
|
||||||
SubscriptExecSetup exec_setup; /* expression compilation function */
|
SubscriptExecSetup exec_setup; /* expression compilation function */
|
||||||
bool fetch_strict; /* is fetch SubscriptRef strict? */
|
bool fetch_strict; /* is fetch SubscriptingRef strict? */
|
||||||
bool fetch_leakproof; /* is fetch SubscriptRef leakproof? */
|
bool fetch_leakproof; /* is fetch SubscriptingRef leakproof? */
|
||||||
bool store_leakproof; /* is assignment SubscriptRef leakproof? */
|
bool store_leakproof; /* is assignment SubscriptingRef
|
||||||
|
* leakproof? */
|
||||||
} SubscriptRoutines;
|
} SubscriptRoutines;
|
||||||
|
|
||||||
#endif /* SUBSCRIPTING_H */
|
#endif /* SUBSCRIPTING_H */
|
||||||
|
|||||||
Reference in New Issue
Block a user