doc/: Some minor tweaks and corrections.
[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, itemlayout=singlepar, 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{mdwtab}
44\usepackage[mdwmargin]{mdwthm}
45\usepackage{amssymb}
46\usepackage{footnote}
47\usepackage{at}
48\usepackage{mdwref}
49
50\usepackage{sod}
51
52\makeindex
53
54\title{A Sensible Object Design for C}
55\author{Mark Wooding}
56
57\begin{document}
58
59\frontmatter
60\maketitle
61
62%%%--------------------------------------------------------------------------
63
64\tableofcontents
65
66\mainmatter
67
68\include{intro}
69
70%%%--------------------------------------------------------------------------
71\part{Tutorial\label{p:tut}}
72
73\include{tutorial}
74
75%%%--------------------------------------------------------------------------
76\part{Reference\label{p:ref}}
77
78\include{refintro}
79\include{concepts}
80\include{cmdline}
81\include{syntax}
82\include{runtime}
83\include{structures}
84
85%%%--------------------------------------------------------------------------
86\part{Lisp interface\label{p:lisp}}
87
88\include{lispintro}
89%% package.lisp
90%% sod.asd.in
91%% sod-frontend.asd.in
92%% auto.lisp.in
93
94\include{misc}
95%% utilities.lisp
96%% pset-impl.lisp
97%% pset-parse.lisp
98%% pset-proto.lisp
99%% optparse.lisp
100%% frontend.lisp
101%% final.lisp
102
103\include{parsing}
104%% package.lisp
105%% floc-impl.lisp
106%% floc-proto.lisp
107%% streams-impl.lisp
108%% streams-proto.lisp
109%% scanner-context-impl.lisp
110%% scanner-impl.lisp
111%% scanner-proto.lisp
112%% scanner-token-impl.lisp
113%% scanner-charbuf-impl.lisp
114%% parser-impl.lisp
115%% parser-proto.lisp
116%% parser-expr-impl.lisp
117%% parser-expr-proto.lisp
118%% lexer-impl.lisp
119%% lexer-proto.lisp
120
121\include{clang}
122%% c-types-class-impl.lisp
123%% c-types-impl.lisp
124%% c-types-parse.lisp
125%% c-types-proto.lisp
126%% codegen-impl.lisp
127%% codegen-proto.lisp
128%% fragment-parse.lisp
129
130\include{meta}
131%% classes.lisp
132%% class-utilities.lisp
133%% class-make-impl.lisp
134%% class-make-proto.lisp
135%% class-finalize-impl.lisp
136%% class-finalize-proto.lisp
137
138\include{layout}
139%% class-layout-impl.lisp
140%% class-layout-proto.lisp
141%% method-impl.lisp
142%% method-proto.lisp
143%% method-aggregate.lisp
144
145\include{module}
146%% module-impl.lisp
147%% module-parse.lisp
148%% module-proto.lisp
149%% builtin.lisp
150
151\include{output}
152%% output-impl.lisp
153%% output-proto.lisp
154%% class-output.lisp
155%% module-output.lisp
156
157%%%--------------------------------------------------------------------------
158\part{Appendices}
159\appendix
160
161\include{cutting-room-floor}
162
163%%%--------------------------------------------------------------------------
164\backmatter
165
166\printindex
167
168%%%----- That's all, folks --------------------------------------------------
169\end{document}
170
171%%% Local variables:
172%%% mode: LaTeX
173%%% TeX-PDF-mode: t
174%%% End: