Re: [PATCH] Add pretty-printed XML output option
От | Jim Jones |
---|---|
Тема | Re: [PATCH] Add pretty-printed XML output option |
Дата | |
Msg-id | fb2a543b-e615-d9ba-8402-909631f9b212@uni-muenster.de обсуждение исходный текст |
Ответ на | Re: [PATCH] Add pretty-printed XML output option (Peter Smith <smithpb2250@gmail.com>) |
Ответы |
Re: [PATCH] Add pretty-printed XML output option
|
Список | pgsql-hackers |
On 22.02.23 23:45, Peter Smith wrote: > src/backend/executor/execExprInterp.c >> 2. ExecEvalXmlExpr >> >> @@ -3829,7 +3829,8 @@ ExecEvalXmlExpr(ExprState *state, ExprEvalStep *op) >> { >> Datum *argvalue = op->d.xmlexpr.argvalue; >> bool *argnull = op->d.xmlexpr.argnull; >> - >> + bool indent = op->d.xmlexpr.xexpr->indent; >> + text *data; >> /* argument type is known to be xml */ >> Assert(list_length(xexpr->args) == 1); >> Missing whitespace after the variable declarations > Whitespace added. > > ~ > > Oh, I meant something different to that fix. I meant there is a > missing blank line after the last ('data') variable declaration. I believe I see it now (it took me a while) :) > ====== > Test code. > > I wondered if there ought to be a test that demonstrates explicitly > saying NO INDENT will give the identical result to just omitting it. > > For example: > > test=# -- no indent is default > test=# SELECT xmlserialize(DOCUMENT '<foo><bar><val > x="y">42</val></bar></foo>' AS text) = xmlserialize(DOCUMENT > '<foo><bar><val x="y">42</val></bar></foo>' AS text NO INDENT); > ?column? > ---------- > t > (1 row) > > test=# SELECT xmlserialize(CONTENT '<foo><bar><val > x="y">42</val></bar></foo>' AS text) = xmlserialize(CONTENT > '<foo><bar><val x="y">42</val></bar></foo>' AS text NO INDENT); > ?column? > ---------- > t > (1 row) Actually NO INDENT just ignores this feature and doesn't call the function at all, so in this particular case the result sets will always be identical. But yes, I totally agree that a test case for that is also important. v17 attached. Thanks! Best, Jim
Вложения
В списке pgsql-hackers по дате отправления: