added apis.txt
This commit is contained in:
parent
364db73bb4
commit
581572b28c
3 changed files with 89 additions and 3 deletions
69
doc/apis.txt
Normal file
69
doc/apis.txt
Normal file
|
|
@ -0,0 +1,69 @@
|
||||||
|
==========
|
||||||
|
API design
|
||||||
|
==========
|
||||||
|
|
||||||
|
The API is designed to be **easy to use** and consistent. Ease of use is
|
||||||
|
measured by the number of calls to achieve a concrete high level action.
|
||||||
|
|
||||||
|
|
||||||
|
Naming scheme
|
||||||
|
=============
|
||||||
|
|
||||||
|
The library uses a simple naming scheme that makes use of common abbreviations
|
||||||
|
to keep the names short but meaningful. Since version 0.8.2 many symbols have
|
||||||
|
been renamed to fit this scheme. The ultimate goal is that the programmer can
|
||||||
|
*guess* a name.
|
||||||
|
|
||||||
|
|
||||||
|
------------------- ------------ --------------------------------------
|
||||||
|
English word To use Notes
|
||||||
|
------------------- ------------ --------------------------------------
|
||||||
|
find find should return the position where
|
||||||
|
something was found; for a bool result
|
||||||
|
use ``contains``
|
||||||
|
contains contains often short for ``find() >= 0``
|
||||||
|
append add use ``add`` instead of ``append``
|
||||||
|
compare cmp should return an int with the
|
||||||
|
``< 0`` ``== 0`` or ``> 0`` semantics;
|
||||||
|
for a bool result use ``sameXYZ``
|
||||||
|
put put, ``[]=`` consider overloading ``[]=`` for put
|
||||||
|
get get, ``[]`` consider overloading ``[]`` for get;
|
||||||
|
consider to not use ``get`` as a
|
||||||
|
prefix: ``len`` instead of ``getLen``
|
||||||
|
length len also used for *number of elements*
|
||||||
|
size size, len size should refer to a byte size
|
||||||
|
items items default iterator over a collection
|
||||||
|
pairs pairs iterator over (key, value) pairs
|
||||||
|
delete delete, del del is supposed to be faster than
|
||||||
|
delete, because it does not keep
|
||||||
|
the order; delete keeps the order
|
||||||
|
remove delete, del inconsistent right now
|
||||||
|
include incl
|
||||||
|
exclude excl
|
||||||
|
command cmd
|
||||||
|
execute exec
|
||||||
|
environment env
|
||||||
|
variable var
|
||||||
|
value value, val val is preferred, inconsistent right
|
||||||
|
now
|
||||||
|
executable exe
|
||||||
|
directory dir
|
||||||
|
path path path is the string "/usr/bin" (for
|
||||||
|
example), dir is the content of
|
||||||
|
"/usr/bin"; inconsistent right now
|
||||||
|
extension ext
|
||||||
|
separator sep
|
||||||
|
column col, column col is preferred, inconsistent right
|
||||||
|
now
|
||||||
|
configuration cfg
|
||||||
|
message msg
|
||||||
|
argument arg
|
||||||
|
object obj
|
||||||
|
parameter param
|
||||||
|
operator opr
|
||||||
|
procedure proc
|
||||||
|
function func
|
||||||
|
coordinate coord
|
||||||
|
rectangle rect
|
||||||
|
point point
|
||||||
|
------------------- ------------ --------------------------------------
|
||||||
|
|
@ -119,6 +119,18 @@ be converted to Nimrod automatically:
|
||||||
itself.
|
itself.
|
||||||
|
|
||||||
|
|
||||||
|
Coding Guidelines
|
||||||
|
=================
|
||||||
|
|
||||||
|
* Use CamelCase, not underscored_identifiers.
|
||||||
|
* Indent with two spaces.
|
||||||
|
* Max line length is 80 characters.
|
||||||
|
* Provide spaces around binary operators if that enhances readability.
|
||||||
|
* Use a space after a colon, but not before it.
|
||||||
|
* Start types with a capital ``T``, unless they are pointers which start
|
||||||
|
with ``P``.
|
||||||
|
|
||||||
|
|
||||||
Porting to new platforms
|
Porting to new platforms
|
||||||
========================
|
========================
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -41,9 +41,9 @@ include "sunset.tmpl"
|
||||||
|
|
||||||
const
|
const
|
||||||
Version = "0.6"
|
Version = "0.6"
|
||||||
Usage = "nimweb - Nimrod Installation Generator Version " & version & """
|
Usage = "nimweb - Nimrod Website Generator Version " & version & """
|
||||||
|
|
||||||
(c) 2008 Andreas Rumpf
|
(c) 2009 Andreas Rumpf
|
||||||
Usage:
|
Usage:
|
||||||
nimweb [options] ini-file[.ini] [compile_options]
|
nimweb [options] ini-file[.ini] [compile_options]
|
||||||
Options:
|
Options:
|
||||||
|
|
@ -159,7 +159,6 @@ proc buildDoc(c: var TConfigData, destPath: string) =
|
||||||
Exec("nimrod rst2html $# -o:$# --index=$#/theindex $#" %
|
Exec("nimrod rst2html $# -o:$# --index=$#/theindex $#" %
|
||||||
[c.nimrodArgs, destPath / changeFileExt(splitFile(d).name, "html"),
|
[c.nimrodArgs, destPath / changeFileExt(splitFile(d).name, "html"),
|
||||||
destpath, d])
|
destpath, d])
|
||||||
Exec("nimrod rst2tex $# $#" % [c.nimrodArgs, d])
|
|
||||||
for d in items(c.srcdoc):
|
for d in items(c.srcdoc):
|
||||||
Exec("nimrod doc $# -o:$# --index=$#/theindex $#" %
|
Exec("nimrod doc $# -o:$# --index=$#/theindex $#" %
|
||||||
[c.nimrodArgs, destPath / changeFileExt(splitFile(d).name, "html"),
|
[c.nimrodArgs, destPath / changeFileExt(splitFile(d).name, "html"),
|
||||||
|
|
@ -167,6 +166,12 @@ proc buildDoc(c: var TConfigData, destPath: string) =
|
||||||
Exec("nimrod rst2html $1 -o:$2/theindex.html $2/theindex" %
|
Exec("nimrod rst2html $1 -o:$2/theindex.html $2/theindex" %
|
||||||
[c.nimrodArgs, destPath])
|
[c.nimrodArgs, destPath])
|
||||||
|
|
||||||
|
proc buildPdfDoc(c: var TConfigData, destPath: string) =
|
||||||
|
for d in items(c.doc):
|
||||||
|
Exec("nimrod rst2tex $# $#" % [c.nimrodArgs, d])
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
proc buildAddDoc(c: var TConfigData, destPath: string) =
|
proc buildAddDoc(c: var TConfigData, destPath: string) =
|
||||||
# build additional documentation (without the index):
|
# build additional documentation (without the index):
|
||||||
for d in items(c.webdoc):
|
for d in items(c.webdoc):
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue