refactor: move escapeIdent function to Identifiers.hs

Moves the functions `escapeIdent` and `trimNullChars` to
SchemaCache/Identifiers.hs module.

Signed-off-by: Taimoor Zaeem <taimoorzaeem@gmail.com>
(cherry picked from commit 66f84c5903)
This commit is contained in:
Taimoor Zaeem
2025-10-30 12:24:49 -05:00
committed by Steve Chavez
parent 6150d53592
commit 939061baff
3 changed files with 12 additions and 9 deletions
+8
View File
@@ -8,8 +8,10 @@ module PostgREST.SchemaCache.Identifiers
, Schema
, TableName
, dumpQi
, escapeIdent
, isAnyElement
, toQi
, trimNullChars
) where
import qualified Data.Aeson as JSON
@@ -46,6 +48,12 @@ toQi txt = case T.drop 1 <$> T.breakOn "." txt of
(i, "") -> QualifiedIdentifier mempty i
(s, i) -> QualifiedIdentifier s i
escapeIdent :: Text -> Text
escapeIdent x = "\"" <> T.replace "\"" "\"\"" (trimNullChars x) <> "\""
trimNullChars :: Text -> Text
trimNullChars = T.takeWhile (/= '\x0')
type Schema = Text
type TableName = Text
type FieldName = Text