Ignore:
Timestamp:
Sep 21, 2015, 8:35:46 AM (9 years ago)
Author:
Peter A. Buhr <pabuhr@…>
Branches:
ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, ctor, deferred_resn, demangler, enum, forall-pointer-decay, gc_noraii, jacob/cs343-translation, jenkins-sandbox, master, memory, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, pthread-emulation, qualifiedEnum, resolv-new, string, with_gc
Children:
0e1e79e
Parents:
865249a
Message:

work on index

File:
1 edited

Legend:

Unmodified
Added
Removed
  • doc/refrat/refrat.tex

    r865249a ra188b16  
    3131% Specialized macros used in the document.
    3232
    33 %\input code.sty
    34 \input xref.tex
     33\newcommand{\italic}[1]{\emph{\hyperpage{#1}}}
     34\newcommand{\definition}[1]{\textbf{\hyperpage{#1}}}
     35\newcommand{\see}[1]{\emph{see} #1}
     36
     37\makeatletter
     38% Define some commands that produce formatted index entries suitable for cross-references.
     39% ``\spec'' produces entries for specifications of entities.  ``\impl'' produces entries for their
     40% implementations, and ``\use'' for their uses.
     41
     42%  \newcommand{\bold}[1]{{\bf #1}}
     43%  \def\spec{\@bsphack\begingroup
     44%             \def\protect##1{\string##1\space}\@sanitize
     45%             \@wrxref{|bold}}
     46\def\impl{\@bsphack\begingroup
     47          \def\protect##1{\string##1\space}\@sanitize
     48          \@wrxref{|definition}}
     49\newcommand{\indexcode}[1]{{\lstinline$#1$}}
     50\def\use{\@bsphack\begingroup
     51         \def\protect##1{\string##1\space}\@sanitize
     52         \@wrxref{|hyperpage}}
     53\def\@wrxref#1#2{\let\thepage\relax
     54    \xdef\@gtempa{\write\@indexfile{\string
     55    \indexentry{#2@{\lstinline$#2$}#1}{\thepage}}}\endgroup\@gtempa
     56    \if@nobreak \ifvmode\nobreak\fi\fi\@esphack}
     57\makeatother
     58%\newcommand{\use}[1]{\index{#1@{\lstinline$#1$}}}
     59%\newcommand{\impl}[1]{\index{\protect#1@{\lstinline$\protect#1$}|definition}}
    3560
    3661\newcommand{\define}[1]{\emph{#1\/}\index{#1}}
     
    5479\def\syntax{\paragraph{Syntax}\trivlist\parindent=.5in\item[\hskip.5in]}
    5580\let\endsyntax=\endtrivlist
    56 \newcommand{\lhs}[1]{\par{\it #1:}\index{#1@{\it #1}|italic}}
     81\newcommand{\lhs}[1]{\par{\emph{#1:}}\index{#1@{\emph{#1}}|italic}}
    5782\newcommand{\rhs}{\hfil\break\hbox{\hskip1in}}
    58 \newcommand{\oldlhs}[1]{{\it #1: \ldots}\index{#1@{\it #1}|italic}}
    59 \newcommand{\nonterm}[1]{{\it #1\/}\index{#1@{\it #1}|italic}}
     83\newcommand{\oldlhs}[1]{\emph{#1: \ldots}\index{#1@{\emph{#1}}|italic}}
     84\newcommand{\nonterm}[1]{\emph{#1\/}\index{#1@{\emph{#1}}|italic}}
    6085\newcommand{\opt}{$_{opt}$\ }
    6186
     
    710735
    711736\examples
    712 The expression \lstinline$(void *)0}$\use{0} specializes the (polymorphic) null pointer to a null
     737The expression \lstinline$(void *)0$\use{0} specializes the (polymorphic) null pointer to a null
    713738pointer to \lstinline$void$. \lstinline$(const void *)0$ does the same, and also uses a safe
    714739conversion from \lstinline$void *$ to \lstinline$const void *$. In each case, the null pointer
     
    24442469
    24452470The operands of the expression ``\lstinline$a || b$'' are treated as ``\lstinline$(int)((a)!=0)$''
    2446 and ``\lstinline$(int)((b})!=0)$'', which shall both be unambiguous. The expression has only one
     2471and ``\lstinline$(int)((b))!=0)$'', which shall both be unambiguous. The expression has only one
    24472472interpretation, which is of type \lstinline$int$.
    24482473
     
    41754200\rhs \ldots
    41764201\rhs \lstinline$throw$ \nonterm{assignment-expression}\opt
    4177 \rhs \lstinline$throwResume$ \nonterm{assignment-expression}\opt
     4202\rhs \lstinline$throwResume$ \nonterm{assignment-expression}\opt \nonterm{at-expression}\opt
     4203\lhs{at-expression} \lstinline$_At$ \nonterm{assignment-expression}
    41784204\end{syntax}
    41794205
     
    42714297\subsubsection{The \lstinline$enable$/\lstinline$disable$ statements}
    42724298
    4273 The \lstinline$enable$/\lstinline$disable$ statements toggle when \Index{asynchronous exception}s can or cannot be delivered.
     4299The \lstinline$enable$/\lstinline$disable$ statements toggle delivery of \Index{asynchronous exception}s.
    42744300
    42754301
Note: See TracChangeset for help on using the changeset viewer.