summaryrefslogtreecommitdiff
path: root/doc/src
diff options
context:
space:
mode:
authorNeil Conway <neilc@samurai.com>2006-11-23 05:43:32 +0000
committerNeil Conway <neilc@samurai.com>2006-11-23 05:43:32 +0000
commit34036c865804d46f80007e22dc952b1ebce8c7bc (patch)
tree8de432f97942043958d2072fc2263047a7f09aad /doc/src
parentebf071643a0346474de269d013941a8a098fe8b7 (diff)
More minor SGML improvements for xfunc.sgml, including making some
titles more concise. (We usually don't need to repeat the name of a section in the title of one of its subsections.)
Diffstat (limited to 'doc/src')
-rw-r--r--doc/src/sgml/xfunc.sgml46
1 files changed, 23 insertions, 23 deletions
diff --git a/doc/src/sgml/xfunc.sgml b/doc/src/sgml/xfunc.sgml
index 947dd5f1e5b..75699eb79b3 100644
--- a/doc/src/sgml/xfunc.sgml
+++ b/doc/src/sgml/xfunc.sgml
@@ -1,4 +1,4 @@
-<!-- $PostgreSQL: pgsql/doc/src/sgml/xfunc.sgml,v 1.119 2006/11/23 05:28:18 neilc Exp $ -->
+<!-- $PostgreSQL: pgsql/doc/src/sgml/xfunc.sgml,v 1.120 2006/11/23 05:43:32 neilc Exp $ -->
<sect1 id="xfunc">
<title>User-Defined Functions</title>
@@ -1587,7 +1587,7 @@ memcpy(destination-&gt;data, buffer, 40);
</sect2>
<sect2>
- <title>Calling Conventions Version 0 for C-Language Functions</title>
+ <title>Version 0 Calling Conventions</title>
<para>
We present the <quote>old style</quote> calling convention first &mdash; although
@@ -1651,7 +1651,7 @@ copytext(text *t)
*/
memcpy((void *) VARDATA(new_t), /* destination */
(void *) VARDATA(t), /* source */
- VARSIZE(t)-VARHDRSZ); /* how many bytes */
+ VARSIZE(t) - VARHDRSZ); /* how many bytes */
return new_t;
}
@@ -1662,9 +1662,9 @@ concat_text(text *arg1, text *arg2)
text *new_text = (text *) palloc(new_text_size);
VARATT_SIZEP(new_text) = new_text_size;
- memcpy(VARDATA(new_text), VARDATA(arg1), VARSIZE(arg1)-VARHDRSZ);
- memcpy(VARDATA(new_text) + (VARSIZE(arg1)-VARHDRSZ),
- VARDATA(arg2), VARSIZE(arg2)-VARHDRSZ);
+ memcpy(VARDATA(new_text), VARDATA(arg1), VARSIZE(arg1) - VARHDRSZ);
+ memcpy(VARDATA(new_text) + (VARSIZE(arg1) - VARHDRSZ),
+ VARDATA(arg2), VARSIZE(arg2) - VARHDRSZ);
return new_text;
}
</programlisting>
@@ -1735,7 +1735,7 @@ CREATE FUNCTION concat_text(text, text) RETURNS text
</sect2>
<sect2>
- <title>Calling Conventions Version 1 for C-Language Functions</title>
+ <title>Version 1 Calling Conventions</title>
<para>
The version-1 calling convention relies on macros to suppress most
@@ -1837,7 +1837,7 @@ copytext(PG_FUNCTION_ARGS)
*/
memcpy((void *) VARDATA(new_t), /* destination */
(void *) VARDATA(t), /* source */
- VARSIZE(t)-VARHDRSZ); /* how many bytes */
+ VARSIZE(t) - VARHDRSZ); /* how many bytes */
PG_RETURN_TEXT_P(new_t);
}
@@ -1852,9 +1852,9 @@ concat_text(PG_FUNCTION_ARGS)
text *new_text = (text *) palloc(new_text_size);
VARATT_SIZEP(new_text) = new_text_size;
- memcpy(VARDATA(new_text), VARDATA(arg1), VARSIZE(arg1)-VARHDRSZ);
- memcpy(VARDATA(new_text) + (VARSIZE(arg1)-VARHDRSZ),
- VARDATA(arg2), VARSIZE(arg2)-VARHDRSZ);
+ memcpy(VARDATA(new_text), VARDATA(arg1), VARSIZE(arg1) - VARHDRSZ);
+ memcpy(VARDATA(new_text) + (VARSIZE(arg1) - VARHDRSZ),
+ VARDATA(arg2), VARSIZE(arg2) - VARHDRSZ);
PG_RETURN_TEXT_P(new_text);
}
</programlisting>
@@ -2261,7 +2261,7 @@ include $(PGXS)
<sect2>
- <title>Composite-Type Arguments in C-Language Functions</title>
+ <title>Composite-Type Arguments</title>
<para>
Composite types do not have a fixed layout like C structures.
@@ -2366,7 +2366,7 @@ CREATE FUNCTION c_overpaid(emp, integer) RETURNS boolean
</sect2>
<sect2>
- <title>Returning Rows (Composite Types) from C-Language Functions</title>
+ <title>Returning Rows (Composite Types)</title>
<para>
To return a row or composite-type value from a C-language
@@ -2517,7 +2517,7 @@ HeapTupleGetDatum(HeapTuple tuple)
</sect2>
<sect2 id="xfunc-c-return-set">
- <title>Returning Sets from C-Language Functions</title>
+ <title>Returning Sets</title>
<para>
There is also a special API that provides support for returning
@@ -2910,30 +2910,30 @@ CREATE FUNCTION make_array(anyelement) RETURNS anyarray
</para>
</sect2>
<sect2>
- <title>Shared Memory and LWLocks in C-Language Functions</title>
+ <title>Shared Memory and LWLocks</title>
<para>
Add-ins may reserve LWLocks and an allocation of shared memory on server
- startup. The add-in's shared library must be preloaded, by specifying
+ startup. The add-in's shared library must be preloaded by specifying
it in
- <xref linkend="guc-shared-preload-libraries"><indexterm><primary>shared-preload-libraries</></>,
- and the shared memory must be reserved by calling:
+ <xref linkend="guc-shared-preload-libraries"><indexterm><primary>shared-preload-libraries</></>.
+ Shared memory is reserved by calling:
<programlisting>
void RequestAddinShmemSpace(int size)
</programlisting>
from your <function>_PG_init</> function.
</para>
<para>
- LWLocks are reserved by calling:
+ LWLocks are reserved by calling:
<programlisting>
void RequestAddinLWLocks(int n)
</programlisting>
- from <function>_PG_init</>.
+ from <function>_PG_init</>.
</para>
<para>
- To avoid possible race-conditions, each backend should use the LWLock
- <function>AddinShmemInitLock</> when connecting to and initializing
- its allocation of shared memory, as shown here:
+ To avoid possible race-conditions, each backend should use the LWLock
+ <function>AddinShmemInitLock</> when connecting to and initializing
+ its allocation of shared memory, as shown here:
<programlisting>
static mystruct *ptr = NULL;