doc/: Switch to a manually maintained bibliography database.
[sod] / doc / sod.tex
... / ...
CommitLineData
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
26\documentclass[noarticle, titlepage]{strayman}
27
28\errorcontextlines=999
29
30\usepackage[T1]{fontenc}
31\usepackage[utf8]{inputenc}
32\usepackage[palatino, helvetica, courier, maths=cmr]{mdwfonts}
33\usepackage{makeidx}
34\usepackage
35 [columns=2, justific=raggedright,
36 totoc=true, font=small]
37 {idxlayout}
38\usepackage{tikz}
39\usetikzlibrary{calc}
40\usetikzlibrary{positioning}
41\usepackage{syntax}
42\usepackage{sverb}
43\usepackage{longtable, mdwtab}
44\usepackage[mdwmargin, within=section]{mdwthm}
45\usepackage{amssymb}
46\usepackage{footnote}
47\usepackage{at}
48\usepackage{mdwref}
49
50\usepackage{sod}
51
52\makeindex
53\let\indexstheadcase\relax
54\bibliographystyle{mdwalpha}
55
56\ifx\pkgversion\xxundefined
57 \immediate\typeout{WARNING: \string\pkgversion\ not defined}
58 \def\pkgversion{UNSET}
59\fi
60
61\title{A Sensible Object Design for C}
62\author{Mark Wooding}
63\date{\today; version \pkgversion}
64\innerhead[Version \pkgversion]{}
65
66%%\includeonly{...}
67
68\begin{document}
69
70\frontmatter
71\maketitle
72
73%%%--------------------------------------------------------------------------
74
75\tableofcontents
76
77\mainmatter
78
79\include{intro}
80
81%%%--------------------------------------------------------------------------
82\part{Tutorial\label{p:tut}}
83
84\include{tutorial}
85
86%%%--------------------------------------------------------------------------
87\part{Reference\label{p:ref}}
88
89\include{refintro}
90\include{concepts}
91\include{cmdline}
92\include{syntax}
93\include{runtime}
94\include{structures}
95
96%%%--------------------------------------------------------------------------
97\part{Lisp interface\label{p:lisp}}
98
99\include{lispintro}
100%% package.lisp
101%% sod.asd.in
102%% sod-frontend.asd.in
103%% auto.lisp.in
104
105\include{misc}
106%% utilities.lisp
107%% pset-impl.lisp
108%% pset-parse.lisp
109%% pset-proto.lisp
110%% optparse.lisp
111%% frontend.lisp
112%% final.lisp
113
114\include{parsing}
115%% package.lisp
116%% floc-impl.lisp
117%% floc-proto.lisp
118%% streams-impl.lisp
119%% streams-proto.lisp
120%% scanner-context-impl.lisp
121%% scanner-impl.lisp
122%% scanner-proto.lisp
123%% scanner-token-impl.lisp
124%% scanner-charbuf-impl.lisp
125%% parser-impl.lisp
126%% parser-proto.lisp
127%% parser-expr-impl.lisp
128%% parser-expr-proto.lisp
129%% lexer-impl.lisp
130%% lexer-proto.lisp
131
132\include{clang}
133%% c-types-class-impl.lisp
134%% c-types-impl.lisp
135%% c-types-parse.lisp
136%% c-types-proto.lisp
137%% codegen-impl.lisp
138%% codegen-proto.lisp
139%% fragment-parse.lisp
140
141\include{meta}
142%% classes.lisp
143%% class-utilities.lisp
144%% class-make-impl.lisp
145%% class-make-proto.lisp
146%% class-finalize-impl.lisp
147%% class-finalize-proto.lisp
148
149\include{layout}
150%% class-layout-impl.lisp
151%% class-layout-proto.lisp
152%% method-impl.lisp
153%% method-proto.lisp
154%% method-aggregate.lisp
155
156\include{module}
157%% module-impl.lisp
158%% module-parse.lisp
159%% module-proto.lisp
160%% builtin.lisp
161
162\include{output}
163%% output-impl.lisp
164%% output-proto.lisp
165%% class-output.lisp
166%% module-output.lisp
167
168%%%--------------------------------------------------------------------------
169\part{Appendices}
170\appendix
171
172\include{cutting-room-floor}
173
174%%%--------------------------------------------------------------------------
175\backmatter
176
177\bibliography{sod}
178\printindex
179
180%%%----- That's all, folks --------------------------------------------------
181\end{document}
182
183%%% Local variables:
184%%% mode: LaTeX
185%%% TeX-PDF-mode: t
186%%% End: