@@@ man wip
[mLib] / struct / darray.3
index 6037c74..c01a594 100644 (file)
@@ -57,51 +57,51 @@ darray \- dense, dynamically resizing arrays
 .SH "SYNOPSIS"
 .nf
 .B "#include <mLib/darray.h>"
-
+.PP
 .ta 2n
 .B "typedef struct {"
 .B "   size_t sz, len, off;"
 .B "   unsigned push, unshift;"
 .B "   arena *a;"
 .B "} da_base;"
-
+.PP
 .B "#define DA_INIT ..."
-
+.PP
 .B "#define DAEXC_UFLOW EXC_ALLOCN(EXC_MLIB, ...)"
 .B "#define DAEXC_OFLOW EXC_ALLOCN(EXC_MLIB, ...)"
-
+.PP
 .BI DA_DECL( type_v ", " type );
 .BI "void DA_CREATE(" type_v " *" a );
 .BI "void DA_DESTROY(" type_v " *" a );
-
+.PP
 .BI "void DA_ENSURE(" type_v " *" a ", size_t " n );
 .BI "void DA_SHUNT(" type_v " *" a ", size_t " n );
 .BI "void DA_TIDY(" type_v " *" a );
 .BI "void DA_RESET(" type_v " *" a );
-
+.PP
 .IB type " *DA(" type_v " *" a );
 .BI "size_t DA_LEN(" type_v " *" a );
 .BI "size_t DA_SPARE(" type_v " *" a );
 .BI "size_t DA_OFFSET(" type_v " *" a );
 .BI "void DA_INCLUDE(" type_v " *" a ", size_t " i );
-
+.PP
 .BI "void DA_EXTEND(" type_v " *" a ", long " n );
 .BI "void DA_SHRINK(" type_v " *" a ", long " n );
 .BI "void DA_SLIDE(" type_v " *" a ", long " n );
 .BI "void DA_UNSLIDE(" type_v " *" a ", long " n );
-
+.PP
 .BI "void DA_UNSAFE_EXTEND(" type_v " *" a ", long " n );
 .BI "void DA_UNSAFE_SHRINK(" type_v " *" a ", long " n );
 .BI "void DA_UNSAFE_SLIDE(" type_v " *" a ", long " n );
 .BI "void DA_UNSAFE_UNSLIDE(" type_v " *" a ", long " n );
-
+.PP
 .IB type " DA_FIRST(" type_v " *" a );
 .IB type " DA_LAST(" type_v " *" a );
 .BI "void DA_PUSH(" type_v " *" a ", " type " " x );
 .IB type " DA_POP(" type_v " *" a );
 .BI "void DA_UNSHIFT(" type_v " *" a ", " type " " x );
 .IB type " DA_SHIFT(" type_v " *" a );
-
+.PP
 .BI "void *da_ensure(da_base *" b ", void *" v ", size_t " sz ", size_t " n );
 .BI "void *da_shunt(da_base *" b ", void *" v ", size_t " sz ", size_t " n );
 .BI "void *da_tidy(da_base *" b ", void *" v ", size_t " sz );
@@ -134,9 +134,10 @@ declared separately from the array, it's also conventional to declare a
 macro with the same name as the array type only in uppercase which may
 be used to prevent multiple declarations, e.g.,
 .VS
+.ta 2n
 #ifndef FOO_V
-#  define FOO_V
-   DA_DECL(foo_v, foo);
+#      define FOO_V
+       DA_DECL(foo_v, foo);
 #endif
 .VE
 The macro
@@ -360,9 +361,10 @@ miss.
 .PP
 Dynamic arrays are structures with the format
 .VS
+.ta 2n
 .BI "typedef struct " type_v " {"
-.B "  da_base b;"
-.BI "  " type " *v;"
+.B "   da_base b;"
+.BI "  " type " *v;"
 .BI "} " type_v ";"
 .VE
 The pointer