Lines Matching +full:double +full:- +full:phase

2 NOTE -- This is the original TOUR paper distributed with ash and
5 but be warned that things have changed -- the current shell is
16 be compiled stand-alone. The rest of the source is in the main
24 ------- ----------- ---------
27 mksyntax - syntax.h syntax.c
28 mktokens - token.h
67 We now start a top-down look at the code:
75 invoked, and it also contains the set builtin. The -i and -m op-
80 PARSING: The parser code is all in parser.c. A recursive des-
84 quotes and dollar single quotes, one for use when inside double
90 nodes. The various types of nodes are defined in the file node-
93 Nodes of type NARG are used to represent both words and the con-
94 tents of here documents. An early version of ash kept the con-
95 tents of here documents in temporary files, but keeping here do-
96 cuments in memory typically results in significantly better per-
99 machines, but the code to keep track of when to delete the tem-
112 CTLBACKQ|CTLQUOTE Command substitution inside double quotes
119 CTLVAR type name '=' [ alternative-text CTLENDVAR ]
121 The type field is a single character specifying the type of sub-
125 VSMINUS ${var-text}
126 VSMINUS|VSNUL ${var:-text}
141 variable is enclosed in double quotes and the VSLINENO flag if
154 the back quotes were enclosed in double quotes.
168 field can be written without any processing). Other here docu-
171 substitution phase. Words which are subject to file name
173 name phase.
184 status is returned in the global variable exitstatus. The alter-
186 quotes. It saves the result in memory if the command is a buil-
197 restored without forking off a child process. This is accom-
198 plished by duplicating the original file descriptors. The redir-
199 tab structure records where the file descriptors have been dupli-
206 find_command is called for all the commands in the pipeline be-
223 no string copying is needed to create the environment of a com-
224 mand. Variables which the shell references internally are preal-
225 located so that the shell can reference the values of these vari-
233 BUILTIN COMMANDS: The procedures for handling these are scat-
235 most appropriate. They can be recognized because their names al-
242 arguments. Builtin routines can call nextopt to do option pars-
246 loop if the shell is interactive), but when called from a non-
250 The directory bltins contains commands which can be compiled in-
253 differences between the ash and the stand-alone environment.
258 stand-alone. A similar approach is used for a few utilities from
263 SIGNALS: Trap.c implements the trap command. The routine set-
265 received and invokes the signal system call to set the signal ac-
272 OUTPUT: Ash uses its own output routines. There are three out-
273 put structures allocated. "Output" represents the standard out-
275 which is to be stored in memory. This last is used when a buil-
276 tin command appears in backquotes, to allow its output to be col-
279 respectively, but they are set to point to memout when appropri-
286 -c option and the "." and eval builtin commands.) The global
295 "TRACE(("n=%d0, n))". The double parenthesis are necessary be-