chiark / gitweb /
doc/sod.tex: Don't print the `Index' header in uppercase.
[sod] / doc / sod.tex
CommitLineData
1f7d590d
MW
1%%% -*-latex-*-
2%%%
3%%% Description of the internal class structure and protocol
4%%%
5%%% (c) 2009 Straylight/Edgeware
6%%%
7
8%%%----- Licensing notice ---------------------------------------------------
9%%%
10%%% This file is part of the Simple Object Definition system.
11%%%
12%%% SOD is free software; you can redistribute it and/or modify
13%%% it under the terms of the GNU General Public License as published by
14%%% the Free Software Foundation; either version 2 of the License, or
15%%% (at your option) any later version.
16%%%
17%%% SOD is distributed in the hope that it will be useful,
18%%% but WITHOUT ANY WARRANTY; without even the implied warranty of
19%%% MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
20%%% GNU General Public License for more details.
21%%%
22%%% You should have received a copy of the GNU General Public License
23%%% along with SOD; if not, write to the Free Software Foundation,
24%%% Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
25
b18dfd74 26\documentclass[noarticle, titlepage]{strayman}
1f1d88f5 27
1f7d590d
MW
28\errorcontextlines=999
29
1f1d88f5
MW
30\usepackage[T1]{fontenc}
31\usepackage[utf8]{inputenc}
32\usepackage[palatino, helvetica, courier, maths=cmr]{mdwfonts}
b59108e2
MW
33\usepackage{makeidx}
34\usepackage
35 [columns=2, itemlayout=singlepar, justific=raggedright,
36 totoc=true, font=small]
37 {idxlayout}
fca95fc1 38\usepackage{tikz}
f1aa19a8
MW
39\usetikzlibrary{calc}
40\usetikzlibrary{positioning}
1f1d88f5
MW
41\usepackage{syntax}
42\usepackage{sverb}
dea4d055 43\usepackage{mdwtab}
fca95fc1
MW
44\usepackage[mdwmargin]{mdwthm}
45\usepackage{amssymb}
dea4d055 46\usepackage{footnote}
1f1d88f5
MW
47\usepackage{at}
48\usepackage{mdwref}
49
1f7d590d
MW
50\usepackage{sod}
51
ddfe4265 52\makeindex
2bc73f78 53\let\indexstheadcase\relax
ddfe4265 54
1f1d88f5
MW
55\title{A Sensible Object Design for C}
56\author{Mark Wooding}
57
1f1d88f5
MW
58\begin{document}
59
43cb10f9 60\frontmatter
1f1d88f5
MW
61\maketitle
62
1f1d88f5 63%%%--------------------------------------------------------------------------
1f1d88f5 64
1f7d590d 65\tableofcontents
1f1d88f5 66
1f7d590d 67\mainmatter
1f1d88f5 68
e655a9fd
MW
69\include{intro}
70
1f1d88f5 71%%%--------------------------------------------------------------------------
7420cef2 72\part{Tutorial\label{p:tut}}
1f1d88f5 73
1f7d590d 74\include{tutorial}
1f1d88f5
MW
75
76%%%--------------------------------------------------------------------------
7420cef2 77\part{Reference\label{p:ref}}
1f1d88f5 78
7292d6e1 79\include{refintro}
1f7d590d
MW
80\include{concepts}
81\include{cmdline}
82\include{syntax}
1f7d590d 83\include{runtime}
45e10a4f 84\include{structures}
fca95fc1
MW
85
86%%%--------------------------------------------------------------------------
7420cef2 87\part{Lisp interface\label{p:lisp}}
1f7d590d
MW
88
89\include{lispintro}
90%% package.lisp
91%% sod.asd.in
92%% sod-frontend.asd.in
93%% auto.lisp.in
94
95\include{misc}
5ea92e79 96%% utilities.lisp
1f7d590d
MW
97%% pset-impl.lisp
98%% pset-parse.lisp
99%% pset-proto.lisp
1f7d590d
MW
100%% optparse.lisp
101%% frontend.lisp
102%% final.lisp
103
104\include{parsing}
105%% package.lisp
106%% floc-impl.lisp
107%% floc-proto.lisp
108%% streams-impl.lisp
109%% streams-proto.lisp
110%% scanner-context-impl.lisp
111%% scanner-impl.lisp
112%% scanner-proto.lisp
113%% scanner-token-impl.lisp
114%% scanner-charbuf-impl.lisp
115%% parser-impl.lisp
116%% parser-proto.lisp
117%% parser-expr-impl.lisp
118%% parser-expr-proto.lisp
5ea92e79
MW
119%% lexer-impl.lisp
120%% lexer-proto.lisp
1f7d590d
MW
121
122\include{clang}
123%% c-types-class-impl.lisp
124%% c-types-impl.lisp
125%% c-types-parse.lisp
126%% c-types-proto.lisp
127%% codegen-impl.lisp
128%% codegen-proto.lisp
129%% fragment-parse.lisp
130
131\include{meta}
132%% classes.lisp
133%% class-utilities.lisp
134%% class-make-impl.lisp
135%% class-make-proto.lisp
136%% class-finalize-impl.lisp
137%% class-finalize-proto.lisp
138
139\include{layout}
140%% class-layout-impl.lisp
141%% class-layout-proto.lisp
142%% method-impl.lisp
143%% method-proto.lisp
144%% method-aggregate.lisp
145
146\include{module}
147%% module-impl.lisp
148%% module-parse.lisp
149%% module-proto.lisp
150%% builtin.lisp
151
152\include{output}
153%% output-impl.lisp
154%% output-proto.lisp
155%% class-output.lisp
156%% module-output.lisp
fca95fc1
MW
157
158%%%--------------------------------------------------------------------------
1f7d590d
MW
159\part{Appendices}
160\appendix
1f1d88f5 161
1f7d590d 162\include{cutting-room-floor}
1f1d88f5 163
ddfe4265
MW
164%%%--------------------------------------------------------------------------
165\backmatter
166
b59108e2 167\printindex
ddfe4265 168
1f7d590d 169%%%----- That's all, folks --------------------------------------------------
1f1d88f5 170\end{document}
1f7d590d 171
1f1d88f5
MW
172%%% Local variables:
173%%% mode: LaTeX
174%%% TeX-PDF-mode: t
175%%% End: