mirror of
https://github.com/KevinMidboe/linguist.git
synced 2025-10-29 09:40:21 +00:00
The grand language renaming bonanza (#3278)
* Removing FORTRAN samples because OS X case-insensitive filesystems :-\ * Adding Fotran samples back * FORTRAN -> Fortran * Groff -> Roff * GAS -> Unix Assembly * Cucumber -> Gherkin * Nimrod -> Nim * Ragel in Ruby Host -> Ragel * Jade -> Pug * VimL -> Vim script
This commit is contained in:
committed by
Brandon Black
parent
9b941a34f0
commit
d8b91bd5c4
275
samples/Roff/Tcl.n
Normal file
275
samples/Roff/Tcl.n
Normal file
@@ -0,0 +1,275 @@
|
||||
'\"
|
||||
'\" Copyright (c) 1993 The Regents of the University of California.
|
||||
'\" Copyright (c) 1994-1996 Sun Microsystems, Inc.
|
||||
'\"
|
||||
'\" See the file "license.terms" for information on usage and redistribution
|
||||
'\" of this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
||||
'\"
|
||||
.TH Tcl n "8.6" Tcl "Tcl Built-In Commands"
|
||||
.so man.macros
|
||||
.BS
|
||||
.SH NAME
|
||||
Tcl \- Tool Command Language
|
||||
.SH SYNOPSIS
|
||||
Summary of Tcl language syntax.
|
||||
.BE
|
||||
.SH DESCRIPTION
|
||||
.PP
|
||||
The following rules define the syntax and semantics of the Tcl language:
|
||||
.IP "[1] \fBCommands.\fR"
|
||||
A Tcl script is a string containing one or more commands.
|
||||
Semi-colons and newlines are command separators unless quoted as
|
||||
described below.
|
||||
Close brackets are command terminators during command substitution
|
||||
(see below) unless quoted.
|
||||
.IP "[2] \fBEvaluation.\fR"
|
||||
A command is evaluated in two steps.
|
||||
First, the Tcl interpreter breaks the command into \fIwords\fR
|
||||
and performs substitutions as described below.
|
||||
These substitutions are performed in the same way for all
|
||||
commands.
|
||||
Secondly, the first word is used to locate a command procedure to
|
||||
carry out the command, then all of the words of the command are
|
||||
passed to the command procedure.
|
||||
The command procedure is free to interpret each of its words
|
||||
in any way it likes, such as an integer, variable name, list,
|
||||
or Tcl script.
|
||||
Different commands interpret their words differently.
|
||||
.IP "[3] \fBWords.\fR"
|
||||
Words of a command are separated by white space (except for
|
||||
newlines, which are command separators).
|
||||
.IP "[4] \fBDouble quotes.\fR"
|
||||
If the first character of a word is double-quote
|
||||
.PQ \N'34'
|
||||
then the word is terminated by the next double-quote character.
|
||||
If semi-colons, close brackets, or white space characters
|
||||
(including newlines) appear between the quotes then they are treated
|
||||
as ordinary characters and included in the word.
|
||||
Command substitution, variable substitution, and backslash substitution
|
||||
are performed on the characters between the quotes as described below.
|
||||
The double-quotes are not retained as part of the word.
|
||||
.IP "[5] \fBArgument expansion.\fR"
|
||||
If a word starts with the string
|
||||
.QW {*}
|
||||
followed by a non-whitespace character, then the leading
|
||||
.QW {*}
|
||||
is removed and the rest of the word is parsed and substituted as any other
|
||||
word. After substitution, the word is parsed as a list (without command or
|
||||
variable substitutions; backslash substitutions are performed as is normal for
|
||||
a list and individual internal words may be surrounded by either braces or
|
||||
double-quote characters), and its words are added to the command being
|
||||
substituted. For instance,
|
||||
.QW "cmd a {*}{b [c]} d {*}{$e f {g h}}"
|
||||
is equivalent to
|
||||
.QW "cmd a b {[c]} d {$e} f {g h}" .
|
||||
.IP "[6] \fBBraces.\fR"
|
||||
If the first character of a word is an open brace
|
||||
.PQ {
|
||||
and rule [5] does not apply, then
|
||||
the word is terminated by the matching close brace
|
||||
.PQ } "" .
|
||||
Braces nest within the word: for each additional open
|
||||
brace there must be an additional close brace (however,
|
||||
if an open brace or close brace within the word is
|
||||
quoted with a backslash then it is not counted in locating the
|
||||
matching close brace).
|
||||
No substitutions are performed on the characters between the
|
||||
braces except for backslash-newline substitutions described
|
||||
below, nor do semi-colons, newlines, close brackets,
|
||||
or white space receive any special interpretation.
|
||||
The word will consist of exactly the characters between the
|
||||
outer braces, not including the braces themselves.
|
||||
.IP "[7] \fBCommand substitution.\fR"
|
||||
If a word contains an open bracket
|
||||
.PQ [
|
||||
then Tcl performs \fIcommand substitution\fR.
|
||||
To do this it invokes the Tcl interpreter recursively to process
|
||||
the characters following the open bracket as a Tcl script.
|
||||
The script may contain any number of commands and must be terminated
|
||||
by a close bracket
|
||||
.PQ ] "" .
|
||||
The result of the script (i.e. the result of its last command) is
|
||||
substituted into the word in place of the brackets and all of the
|
||||
characters between them.
|
||||
There may be any number of command substitutions in a single word.
|
||||
Command substitution is not performed on words enclosed in braces.
|
||||
.IP "[8] \fBVariable substitution.\fR"
|
||||
If a word contains a dollar-sign
|
||||
.PQ $
|
||||
followed by one of the forms
|
||||
described below, then Tcl performs \fIvariable
|
||||
substitution\fR: the dollar-sign and the following characters are
|
||||
replaced in the word by the value of a variable.
|
||||
Variable substitution may take any of the following forms:
|
||||
.RS
|
||||
.TP 15
|
||||
\fB$\fIname\fR
|
||||
.
|
||||
\fIName\fR is the name of a scalar variable; the name is a sequence
|
||||
of one or more characters that are a letter, digit, underscore,
|
||||
or namespace separators (two or more colons).
|
||||
Letters and digits are \fIonly\fR the standard ASCII ones (\fB0\fR\(en\fB9\fR,
|
||||
\fBA\fR\(en\fBZ\fR and \fBa\fR\(en\fBz\fR).
|
||||
.TP 15
|
||||
\fB$\fIname\fB(\fIindex\fB)\fR
|
||||
.
|
||||
\fIName\fR gives the name of an array variable and \fIindex\fR gives
|
||||
the name of an element within that array.
|
||||
\fIName\fR must contain only letters, digits, underscores, and
|
||||
namespace separators, and may be an empty string.
|
||||
Letters and digits are \fIonly\fR the standard ASCII ones (\fB0\fR\(en\fB9\fR,
|
||||
\fBA\fR\(en\fBZ\fR and \fBa\fR\(en\fBz\fR).
|
||||
Command substitutions, variable substitutions, and backslash
|
||||
substitutions are performed on the characters of \fIindex\fR.
|
||||
.TP 15
|
||||
\fB${\fIname\fB}\fR
|
||||
.
|
||||
\fIName\fR is the name of a scalar variable or array element. It may contain
|
||||
any characters whatsoever except for close braces. It indicates an array
|
||||
element if \fIname\fR is in the form
|
||||
.QW \fIarrayName\fB(\fIindex\fB)\fR
|
||||
where \fIarrayName\fR does not contain any open parenthesis characters,
|
||||
.QW \fB(\fR ,
|
||||
or close brace characters,
|
||||
.QW \fB}\fR ,
|
||||
and \fIindex\fR can be any sequence of characters except for close brace
|
||||
characters. No further
|
||||
substitutions are performed during the parsing of \fIname\fR.
|
||||
.PP
|
||||
There may be any number of variable substitutions in a single word.
|
||||
Variable substitution is not performed on words enclosed in braces.
|
||||
.PP
|
||||
Note that variables may contain character sequences other than those listed
|
||||
above, but in that case other mechanisms must be used to access them (e.g.,
|
||||
via the \fBset\fR command's single-argument form).
|
||||
.RE
|
||||
.IP "[9] \fBBackslash substitution.\fR"
|
||||
If a backslash
|
||||
.PQ \e
|
||||
appears within a word then \fIbackslash substitution\fR occurs.
|
||||
In all cases but those described below the backslash is dropped and
|
||||
the following character is treated as an ordinary
|
||||
character and included in the word.
|
||||
This allows characters such as double quotes, close brackets,
|
||||
and dollar signs to be included in words without triggering
|
||||
special processing.
|
||||
The following table lists the backslash sequences that are
|
||||
handled specially, along with the value that replaces each sequence.
|
||||
.RS
|
||||
.TP 7
|
||||
\e\fBa\fR
|
||||
Audible alert (bell) (Unicode U+000007).
|
||||
.TP 7
|
||||
\e\fBb\fR
|
||||
Backspace (Unicode U+000008).
|
||||
.TP 7
|
||||
\e\fBf\fR
|
||||
Form feed (Unicode U+00000C).
|
||||
.TP 7
|
||||
\e\fBn\fR
|
||||
Newline (Unicode U+00000A).
|
||||
.TP 7
|
||||
\e\fBr\fR
|
||||
Carriage-return (Unicode U+00000D).
|
||||
.TP 7
|
||||
\e\fBt\fR
|
||||
Tab (Unicode U+000009).
|
||||
.TP 7
|
||||
\e\fBv\fR
|
||||
Vertical tab (Unicode U+00000B).
|
||||
.TP 7
|
||||
\e\fB<newline>\fIwhiteSpace\fR
|
||||
.
|
||||
A single space character replaces the backslash, newline, and all spaces
|
||||
and tabs after the newline. This backslash sequence is unique in that it
|
||||
is replaced in a separate pre-pass before the command is actually parsed.
|
||||
This means that it will be replaced even when it occurs between braces,
|
||||
and the resulting space will be treated as a word separator if it is not
|
||||
in braces or quotes.
|
||||
.TP 7
|
||||
\e\e
|
||||
Backslash
|
||||
.PQ \e "" .
|
||||
.TP 7
|
||||
\e\fIooo\fR
|
||||
.
|
||||
The digits \fIooo\fR (one, two, or three of them) give a eight-bit octal
|
||||
value for the Unicode character that will be inserted, in the range
|
||||
\fI000\fR\(en\fI377\fR (i.e., the range U+000000\(enU+0000FF).
|
||||
The parser will stop just before this range overflows, or when
|
||||
the maximum of three digits is reached. The upper bits of the Unicode
|
||||
character will be 0.
|
||||
.TP 7
|
||||
\e\fBx\fIhh\fR
|
||||
.
|
||||
The hexadecimal digits \fIhh\fR (one or two of them) give an eight-bit
|
||||
hexadecimal value for the Unicode character that will be inserted. The upper
|
||||
bits of the Unicode character will be 0 (i.e., the character will be in the
|
||||
range U+000000\(enU+0000FF).
|
||||
.TP 7
|
||||
\e\fBu\fIhhhh\fR
|
||||
.
|
||||
The hexadecimal digits \fIhhhh\fR (one, two, three, or four of them) give a
|
||||
sixteen-bit hexadecimal value for the Unicode character that will be
|
||||
inserted. The upper bits of the Unicode character will be 0 (i.e., the
|
||||
character will be in the range U+000000\(enU+00FFFF).
|
||||
.TP 7
|
||||
\e\fBU\fIhhhhhhhh\fR
|
||||
.
|
||||
The hexadecimal digits \fIhhhhhhhh\fR (one up to eight of them) give a
|
||||
twenty-one-bit hexadecimal value for the Unicode character that will be
|
||||
inserted, in the range U+000000\(enU+10FFFF. The parser will stop just
|
||||
before this range overflows, or when the maximum of eight digits
|
||||
is reached. The upper bits of the Unicode character will be 0.
|
||||
.RS
|
||||
.PP
|
||||
The range U+010000\(enU+10FFFD is reserved for the future.
|
||||
.RE
|
||||
.PP
|
||||
Backslash substitution is not performed on words enclosed in braces,
|
||||
except for backslash-newline as described above.
|
||||
.RE
|
||||
.IP "[10] \fBComments.\fR"
|
||||
If a hash character
|
||||
.PQ #
|
||||
appears at a point where Tcl is
|
||||
expecting the first character of the first word of a command,
|
||||
then the hash character and the characters that follow it, up
|
||||
through the next newline, are treated as a comment and ignored.
|
||||
The comment character only has significance when it appears
|
||||
at the beginning of a command.
|
||||
.IP "[11] \fBOrder of substitution.\fR"
|
||||
Each character is processed exactly once by the Tcl interpreter
|
||||
as part of creating the words of a command.
|
||||
For example, if variable substitution occurs then no further
|
||||
substitutions are performed on the value of the variable; the
|
||||
value is inserted into the word verbatim.
|
||||
If command substitution occurs then the nested command is
|
||||
processed entirely by the recursive call to the Tcl interpreter;
|
||||
no substitutions are performed before making the recursive
|
||||
call and no additional substitutions are performed on the result
|
||||
of the nested script.
|
||||
.RS
|
||||
.PP
|
||||
Substitutions take place from left to right, and each substitution is
|
||||
evaluated completely before attempting to evaluate the next. Thus, a
|
||||
sequence like
|
||||
.PP
|
||||
.CS
|
||||
set y [set x 0][incr x][incr x]
|
||||
.CE
|
||||
.PP
|
||||
will always set the variable \fIy\fR to the value, \fI012\fR.
|
||||
.RE
|
||||
.IP "[12] \fBSubstitution and word boundaries.\fR"
|
||||
Substitutions do not affect the word boundaries of a command,
|
||||
except for argument expansion as specified in rule [5].
|
||||
For example, during variable substitution the entire value of
|
||||
the variable becomes part of a single word, even if the variable's
|
||||
value contains spaces.
|
||||
.SH KEYWORDS
|
||||
backslash, command, comment, script, substitution, variable
|
||||
'\" Local Variables:
|
||||
'\" mode: nroff
|
||||
'\" fill-column: 78
|
||||
'\" End:
|
||||
215
samples/Roff/an-ext.tmac
Normal file
215
samples/Roff/an-ext.tmac
Normal file
@@ -0,0 +1,215 @@
|
||||
.\" -*- nroff -*-
|
||||
.\"
|
||||
.\" an-ext.tmac
|
||||
.\"
|
||||
.\" Copyright (C) 2007-2014 Free Software Foundation, Inc.
|
||||
.\"
|
||||
.\" Written by Eric S. Raymond <esr@thyrsus.com>
|
||||
.\" Werner Lemberg <wl@gnu.org>
|
||||
.\"
|
||||
.\" You may freely use, modify and/or distribute this file.
|
||||
.\"
|
||||
.\" The code below provides extension macros for the `man' macro package.
|
||||
.\" Care has been taken to make the code portable; groff extensions are
|
||||
.\" properly hidden so that all troff implementations can use it without
|
||||
.\" changes.
|
||||
.\"
|
||||
.\" With groff, this file is sourced by the `man' macro package itself.
|
||||
.\" Man page authors who are concerned about portability might add the
|
||||
.\" used macros directly to the prologue of the man page(s).
|
||||
.
|
||||
.
|
||||
.\" Convention: Auxiliary macros and registers start with `m' followed
|
||||
.\" by an uppercase letter or digit.
|
||||
.
|
||||
.
|
||||
.\" Protect against being sourced twice.
|
||||
.nr mX +1
|
||||
.if \n(mX>1 \
|
||||
. nx
|
||||
.
|
||||
.\" Check whether we are using grohtml.
|
||||
.nr mH 0
|
||||
.if \n(.g \
|
||||
. if '\*(.T'html' \
|
||||
. nr mH 1
|
||||
.
|
||||
.
|
||||
.\" Map mono-width fonts to standard fonts for groff's TTY device.
|
||||
.if n \{\
|
||||
. do ftr CR R
|
||||
. do ftr CI I
|
||||
. do ftr CB B
|
||||
.\}
|
||||
.
|
||||
.\" groff has glyph entities for angle brackets.
|
||||
.ie \n(.g \{\
|
||||
. ds la \(la\"
|
||||
. ds ra \(ra\"
|
||||
.\}
|
||||
.el \{\
|
||||
. ds la <\"
|
||||
. ds ra >\"
|
||||
. \" groff's man macros control hyphenation with this register.
|
||||
. nr HY 1
|
||||
.\}
|
||||
.
|
||||
.nr mS 0
|
||||
.
|
||||
.
|
||||
.\" Declare start of command synopsis. Sets up hanging indentation.
|
||||
.de SY
|
||||
. ie !\\n(mS \{\
|
||||
. nh
|
||||
. nr mS 1
|
||||
. nr mA \\n(.j
|
||||
. ad l
|
||||
. nr mI \\n(.i
|
||||
. \}
|
||||
. el \{\
|
||||
. br
|
||||
. ns
|
||||
. \}
|
||||
.
|
||||
. nr mT \w'\fB\\$1\fP\ '
|
||||
. HP \\n(mTu
|
||||
. B "\\$1"
|
||||
..
|
||||
.
|
||||
.
|
||||
.\" End of command synopsis. Restores adjustment.
|
||||
.de YS
|
||||
. in \\n(mIu
|
||||
. ad \\n(mA
|
||||
. hy \\n(HY
|
||||
. nr mS 0
|
||||
..
|
||||
.
|
||||
.
|
||||
.\" Declare optional option.
|
||||
.de OP
|
||||
. ie \\n(.$-1 \
|
||||
. RI "[\fB\\$1\fP" "\ \\$2" "]"
|
||||
. el \
|
||||
. RB "[" "\\$1" "]"
|
||||
..
|
||||
.
|
||||
.
|
||||
.\" Start URL.
|
||||
.de UR
|
||||
. ds m1 \\$1\"
|
||||
. nh
|
||||
. if \\n(mH \{\
|
||||
. \" Start diversion in a new environment.
|
||||
. do ev URL-div
|
||||
. do di URL-div
|
||||
. \}
|
||||
..
|
||||
.
|
||||
.
|
||||
.\" End URL.
|
||||
.de UE
|
||||
. ie \\n(mH \{\
|
||||
. br
|
||||
. di
|
||||
. ev
|
||||
.
|
||||
. \" Has there been one or more input lines for the link text?
|
||||
. ie \\n(dn \{\
|
||||
. do HTML-NS "<a href=""\\*(m1"">"
|
||||
. \" Yes, strip off final newline of diversion and emit it.
|
||||
. do chop URL-div
|
||||
. do URL-div
|
||||
\c
|
||||
. do HTML-NS </a>
|
||||
. \}
|
||||
. el \
|
||||
. do HTML-NS "<a href=""\\*(m1"">\\*(m1</a>"
|
||||
\&\\$*\"
|
||||
. \}
|
||||
. el \
|
||||
\\*(la\\*(m1\\*(ra\\$*\"
|
||||
.
|
||||
. hy \\n(HY
|
||||
..
|
||||
.
|
||||
.
|
||||
.\" Start email address.
|
||||
.de MT
|
||||
. ds m1 \\$1\"
|
||||
. nh
|
||||
. if \\n(mH \{\
|
||||
. \" Start diversion in a new environment.
|
||||
. do ev URL-div
|
||||
. do di URL-div
|
||||
. \}
|
||||
..
|
||||
.
|
||||
.
|
||||
.\" End email address.
|
||||
.de ME
|
||||
. ie \\n(mH \{\
|
||||
. br
|
||||
. di
|
||||
. ev
|
||||
.
|
||||
. \" Has there been one or more input lines for the link text?
|
||||
. ie \\n(dn \{\
|
||||
. do HTML-NS "<a href=""mailto:\\*(m1"">"
|
||||
. \" Yes, strip off final newline of diversion and emit it.
|
||||
. do chop URL-div
|
||||
. do URL-div
|
||||
\c
|
||||
. do HTML-NS </a>
|
||||
. \}
|
||||
. el \
|
||||
. do HTML-NS "<a href=""mailto:\\*(m1"">\\*(m1</a>"
|
||||
\&\\$*\"
|
||||
. \}
|
||||
. el \
|
||||
\\*(la\\*(m1\\*(ra\\$*\"
|
||||
.
|
||||
. hy \\n(HY
|
||||
..
|
||||
.
|
||||
.
|
||||
.\" Continuation line for .TP header.
|
||||
.de TQ
|
||||
. br
|
||||
. ns
|
||||
. TP \\$1\" no doublequotes around argument!
|
||||
..
|
||||
.
|
||||
.
|
||||
.\" Start example.
|
||||
.de EX
|
||||
. do ds mF \\n[.fam]
|
||||
. nr mE \\n(.f
|
||||
. nf
|
||||
. nh
|
||||
. do fam C
|
||||
. ft CW
|
||||
..
|
||||
.
|
||||
.
|
||||
.\" End example.
|
||||
.de EE
|
||||
. do fam \\*(mF
|
||||
. ft \\n(mE
|
||||
. fi
|
||||
. hy \\n(HY
|
||||
..
|
||||
.
|
||||
.
|
||||
.\" Start display.
|
||||
.de DS
|
||||
. \" XXX to be written
|
||||
..
|
||||
.
|
||||
.
|
||||
.\" End display.
|
||||
.de DE
|
||||
. \" XXX to be written
|
||||
..
|
||||
.
|
||||
.\" EOF
|
||||
135
samples/Roff/create_view.l
Normal file
135
samples/Roff/create_view.l
Normal file
@@ -0,0 +1,135 @@
|
||||
.\\" auto-generated by docbook2man-spec $Revision: 1.1.1.1 $
|
||||
.TH "CREATE VIEW" "" "2005-11-05" "SQL - Language Statements" "SQL Commands"
|
||||
.SH NAME
|
||||
CREATE VIEW \- define a new view
|
||||
|
||||
.SH SYNOPSIS
|
||||
.sp
|
||||
.nf
|
||||
CREATE [ OR REPLACE ] [ TEMP | TEMPORARY ] VIEW \fIname\fR [ ( \fIcolumn_name\fR [, ...] ) ]
|
||||
AS \fIquery\fR
|
||||
.sp
|
||||
.fi
|
||||
.SH "DESCRIPTION"
|
||||
.PP
|
||||
\fBCREATE VIEW\fR defines a view of a query. The view
|
||||
is not physically materialized. Instead, the query is run every time
|
||||
the view is referenced in a query.
|
||||
.PP
|
||||
\fBCREATE OR REPLACE VIEW\fR is similar, but if a view
|
||||
of the same name already exists, it is replaced. You can only replace
|
||||
a view with a new query that generates the identical set of columns
|
||||
(i.e., same column names and data types).
|
||||
.PP
|
||||
If a schema name is given (for example, CREATE VIEW
|
||||
myschema.myview ...) then the view is created in the specified
|
||||
schema. Otherwise it is created in the current schema. Temporary
|
||||
views exist in a special schema, so a schema name may not be given
|
||||
when creating a temporary view. The name of the view must be
|
||||
distinct from the name of any other view, table, sequence, or index
|
||||
in the same schema.
|
||||
.SH "PARAMETERS"
|
||||
.TP
|
||||
\fBTEMPORARY or TEMP\fR
|
||||
If specified, the view is created as a temporary view.
|
||||
Temporary views are automatically dropped at the end of the
|
||||
current session. Existing
|
||||
permanent relations with the same name are not visible to the
|
||||
current session while the temporary view exists, unless they are
|
||||
referenced with schema-qualified names.
|
||||
|
||||
If any of the tables referenced by the view are temporary,
|
||||
the view is created as a temporary view (whether
|
||||
TEMPORARY is specified or not).
|
||||
.TP
|
||||
\fB\fIname\fB\fR
|
||||
The name (optionally schema-qualified) of a view to be created.
|
||||
.TP
|
||||
\fB\fIcolumn_name\fB\fR
|
||||
An optional list of names to be used for columns of the view.
|
||||
If not given, the column names are deduced from the query.
|
||||
.TP
|
||||
\fB\fIquery\fB\fR
|
||||
A query (that is, a \fBSELECT\fR statement) which will
|
||||
provide the columns and rows of the view.
|
||||
|
||||
Refer to SELECT [\fBselect\fR(l)]
|
||||
for more information about valid queries.
|
||||
.SH "NOTES"
|
||||
.PP
|
||||
Currently, views are read only: the system will not allow an insert,
|
||||
update, or delete on a view. You can get the effect of an updatable
|
||||
view by creating rules that rewrite inserts, etc. on the view into
|
||||
appropriate actions on other tables. For more information see
|
||||
CREATE RULE [\fBcreate_rule\fR(l)].
|
||||
.PP
|
||||
Use the DROP VIEW [\fBdrop_view\fR(l)]
|
||||
statement to drop views.
|
||||
.PP
|
||||
Be careful that the names and types of the view's columns will be
|
||||
assigned the way you want. For example,
|
||||
.sp
|
||||
.nf
|
||||
CREATE VIEW vista AS SELECT 'Hello World';
|
||||
.sp
|
||||
.fi
|
||||
is bad form in two ways: the column name defaults to ?column?,
|
||||
and the column data type defaults to \fBunknown\fR. If you want a
|
||||
string literal in a view's result, use something like
|
||||
.sp
|
||||
.nf
|
||||
CREATE VIEW vista AS SELECT text 'Hello World' AS hello;
|
||||
.sp
|
||||
.fi
|
||||
.PP
|
||||
Access to tables referenced in the view is determined by permissions of
|
||||
the view owner. However, functions called in the view are treated the
|
||||
same as if they had been called directly from the query using the view.
|
||||
Therefore the user of a view must have permissions to call all functions
|
||||
used by the view.
|
||||
.SH "EXAMPLES"
|
||||
.PP
|
||||
Create a view consisting of all comedy films:
|
||||
.sp
|
||||
.nf
|
||||
CREATE VIEW comedies AS
|
||||
SELECT *
|
||||
FROM films
|
||||
WHERE kind = 'Comedy';
|
||||
.sp
|
||||
.fi
|
||||
.SH "COMPATIBILITY"
|
||||
.PP
|
||||
The SQL standard specifies some additional capabilities for the
|
||||
\fBCREATE VIEW\fR statement:
|
||||
.sp
|
||||
.nf
|
||||
CREATE VIEW \fIname\fR [ ( \fIcolumn_name\fR [, ...] ) ]
|
||||
AS \fIquery\fR
|
||||
[ WITH [ CASCADED | LOCAL ] CHECK OPTION ]
|
||||
.sp
|
||||
.fi
|
||||
.PP
|
||||
The optional clauses for the full SQL command are:
|
||||
.TP
|
||||
\fBCHECK OPTION\fR
|
||||
This option has to do with updatable views. All
|
||||
\fBINSERT\fR and \fBUPDATE\fR commands on the view
|
||||
will be checked to ensure data satisfy the view-defining
|
||||
condition (that is, the new data would be visible through the
|
||||
view). If they do not, the update will be rejected.
|
||||
.TP
|
||||
\fBLOCAL\fR
|
||||
Check for integrity on this view.
|
||||
.TP
|
||||
\fBCASCADED\fR
|
||||
Check for integrity on this view and on any dependent
|
||||
view. CASCADED is assumed if neither
|
||||
CASCADED nor LOCAL is specified.
|
||||
.PP
|
||||
.PP
|
||||
\fBCREATE OR REPLACE VIEW\fR is a
|
||||
PostgreSQL language extension.
|
||||
So is the concept of a temporary view.
|
||||
.SH "SEE ALSO"
|
||||
DROP VIEW [\fBdrop_view\fR(l)]
|
||||
1174
samples/Roff/fsinterface.ms
Normal file
1174
samples/Roff/fsinterface.ms
Normal file
File diff suppressed because it is too large
Load Diff
35
samples/Roff/refs.rno
Normal file
35
samples/Roff/refs.rno
Normal file
@@ -0,0 +1,35 @@
|
||||
.\" Copyright (c) 1980 Regents of the University of California.
|
||||
.\" All rights reserved. The Berkeley software License Agreement
|
||||
.\" specifies the terms and conditions for redistribution.
|
||||
.\"
|
||||
.\" @(#)refs.rno 6.1 (Berkeley) 4/29/86
|
||||
.\"
|
||||
.NS 1 "References"
|
||||
.sp
|
||||
.ip "[Bac78]"
|
||||
John Backus, \*(lqCan Programming Be Liberated from the von Neumann Style?
|
||||
A Functional Style and Its Algebra of Programs,\*(rq \fICACM\fP, Turing
|
||||
Award Lecture, 21, 8 (August 1978), 613-641.
|
||||
.sp 6p
|
||||
.ip "[Fod80]"
|
||||
John K. Foderaro, \*(lqThe \s-2FRANZ LISP\s+2
|
||||
Manual,\*(rq University of California,
|
||||
Berkeley, California, 1980.
|
||||
.sp 6p
|
||||
.ip "[Joy79]"
|
||||
W.N. Joy, O. Babaoglu, \*(lqUNIX Programmer's Manual,\*(rq November 7,
|
||||
1979, Computer Science Division, University of California, Berkeley,
|
||||
California.
|
||||
.sp 6p
|
||||
.ip "[Mc60]"
|
||||
J. McCarthy, \*(lqRecursive Functions of Symbolic expressions and their
|
||||
Computation by Machine,\*(rq Part I, \fICACM\fP 3, 4 (April 1960), 184-195.
|
||||
.sp 6p
|
||||
.ip "[Pat80]"
|
||||
Dorab Ratan Patel, \*(lqA System Organization for Applicative Programming,\*(rq
|
||||
M.S Thesis, University of California, Los Angeles, California, 1980.
|
||||
.sp 6p
|
||||
.ip "[Pat81]"
|
||||
Dorab Patel, \*(lqFunctional Language Interpreter User Manual,\*(rq
|
||||
University of California, Los Angeles, California, 1981.
|
||||
.bp
|
||||
13
samples/Roff/sample.4
Normal file
13
samples/Roff/sample.4
Normal file
@@ -0,0 +1,13 @@
|
||||
.TH FOO 1
|
||||
.SH NAME
|
||||
foo \- bar
|
||||
.SH SYNOPSIS
|
||||
.B foo
|
||||
.I bar
|
||||
.SH DESCRIPTION
|
||||
Foo bar
|
||||
.BR baz
|
||||
quux.
|
||||
.PP
|
||||
.B Foo
|
||||
bar baz.
|
||||
Reference in New Issue
Block a user