On Thu, Jun 17, 2010 at 12:52 PM, Tom Lane <t...@sss.pgh.pa.us> wrote: > Robert Haas <robertmh...@gmail.com> writes: >> On Thu, Jun 17, 2010 at 11:25 AM, Tom Lane <t...@sss.pgh.pa.us> wrote: >>> I'm >>> inclined to think that associating #2 with casts might be better, >>> because clearly casting numerics or bools to JSON ought to act like #2. >>> If we do it as you suggest then casting text to JSON behaves differently >>> from casting anything else to JSON. > >> I think this is going to turn into a thicket of semantic ambiguity. > > True. Maybe it would be better to *not have* casts as such between JSON > and non-text data types, but make you write something like > json_literal(numeric) > to get a JSON literal representing a value. Then json_literal(text) > would do an unsurprising thing (analogous to quote_literal), and we > could use the casts between text and json for the behavior where the > text is interpreted as a valid JSON object.
Yep, I agree. Except you need a way to generate not only JSON objects that are quoted strings, but also hashes, arrays, booleans, numbers, and nulls... -- Robert Haas EnterpriseDB: http://www.enterprisedb.com The Enterprise Postgres Company -- Sent via pgsql-hackers mailing list (pgsql-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgsql-hackers