|
Name |
|
Date |
Size |
#Lines |
LOC |
| .. | | 30-Jun-2020 | - |
| aso/ | H | 30-Jun-2020 | - | 1,480 | 1,092 |
| astsa/ | H | 30-Jun-2020 | - | 2,366 | 1,598 |
| cdt/ | H | 30-Jun-2020 | - | 2,590 | 1,859 |
| comp/ | H | 30-Jun-2020 | - | 16,970 | 12,169 |
| dir/ | H | 30-Jun-2020 | - | 714 | 395 |
| disc/ | H | 30-Jun-2020 | - | 2,764 | 2,034 |
| features/ | H | 03-May-2022 | - | 9,311 | 8,295 |
| hash/ | H | 30-Jun-2020 | - | 1,653 | 1,011 |
| include/ | H | 03-May-2022 | - | 6,366 | 3,721 |
| man/ | H | 30-Jun-2020 | - | 12,914 | 12,508 |
| misc/ | H | 30-Jun-2020 | - | 21,250 | 17,473 |
| obsolete/ | H | 30-Jun-2020 | - | 153 | 99 |
| path/ | H | 30-Jun-2020 | - | 2,948 | 1,890 |
| port/ | H | 03-May-2022 | - | 7,472 | 6,179 |
| preroot/ | H | 30-Jun-2020 | - | 362 | 204 |
| regex/ | H | 30-Jun-2020 | - | 9,149 | 8,005 |
| sfio/ | H | 03-May-2022 | - | 15,457 | 11,157 |
| std/ | H | 30-Jun-2020 | - | 237 | 40 |
| stdio/ | H | 30-Jun-2020 | - | 4,167 | 1,519 |
| string/ | H | 03-May-2022 | - | 9,922 | 6,467 |
| tm/ | H | 30-Jun-2020 | - | 6,751 | 4,907 |
| uwin/ | H | 30-Jun-2020 | - | 6,025 | 3,597 |
| vec/ | H | 30-Jun-2020 | - | 333 | 141 |
| vmalloc/ | H | 30-Jun-2020 | - | 7,784 | 5,766 |
| Makefile | H A D | 30-Jun-2020 | 14.2 KiB | 435 | 371 |
| Mamfile | H A D | 30-Jun-2020 | 290.2 KiB | 7,349 | 7,348 |
| README | H A D | 30-Jun-2020 | 3.5 KiB | 96 | 77 |
| RELEASE | H A D | 30-Jun-2020 | 100.1 KiB | 1,809 | 1,808 |
README
1The advanced software technology department has been collecting useful C
2routines in a single library called libast. libast is used by nmake, the
3nmake cpp (which is mainly based on another library (libpp)), CIA
4(C information abstractor from Robin Chen), and a collection of other
5/bin and /usr/bin commands that benefit from concentrating functionality
6in libast.
7
8More detail is available in the man pages. libast contains:
9
10 (1) routines to support a generic environment for
11 a variety of UNIX operating system variants
12
13 (2) routines that update standard libc routines
14
15 (3) routines shared between several commands
16
17If you already have nmake 2.0 or newer installed then use
18`nmake install' from this directory, otherwise use
19ship/shipin from the root of the distribution directory tree.
20
21Some of the routines not found in section 3:
22
23hash: generic, scoped hash table support
24
25 hashalloc create a hash table or push new scope
26 hashdump debug dump of one or all hash tables
27 hashfree free a hashalloc()'d table
28 hashlook low level name lookup
29 hashscan entry generator for scoped table scan
30 hashsize explicitly change table size (usually automatic)
31 hashwalk apply function to each table entry
32 memhash return hash code for n-char chunk of memory
33 strhash return hash code for null terminated string
34
35include/ast: libast support headers
36
37 align.h compile time type alignmnent support
38 dirent.h POSIX directory(3) interface definitions
39 error.h error() interface definitions
40 ftw.h ftwalk() interface definitions
41 hash.h hash*() interface definitions
42 ls.h strls() interface definitions
43 re.h re*() interface definitions
44 tar.h POSIX ustar format interface definitions
45 tm.h tm*() interface definitions
46
47misc:
48
49 cmdargs apply a sequence of cmd line option parsers
50 cmdopen like popen() but stdin and stdout are specified
51 cvtatoe convert ASCII to EBCDIC
52 cvtetoa convert EBCDIC to ASCII
53 error output generic error and trace messages
54 ftwalk an ftw(3) that works -- used in new tw(1)
55 getcwd uses $PWD if ok, doesn't use /bin/pwd
56 getshell return full path of shell for cmdopen()
57 ooptget optget() for obsolete ar(1) and tar(1) options
58 optget YA getopt(3) but no argc or error message output
59 pathaccess find file with specific acces on list of dirs
60 pathcanon canonicalize path name in place
61 pathcmd return full path name of executable using $PATH
62 pathroot determine `related root' directory for command
63 perror uses strerror()
64 readargs append each line of file to argv[0]
65
66re: egrep(1) and ed(1) style re's from V9
67 (not the good awk(1) algorithm)
68
69 recomp compile re pattern
70 reerror report re*() errors
71 reexec match string using compiled re
72 resub ed(1) style substitute using last reexec()
73
74string:
75
76 chresc return next char in string converting \ sequences
77 ctoi convert char constant string to int
78 strcopy like strcpy(3) but returns end of destination
79 strdup malloc(3) and strcpy(3) smashed together
80 strerror return error message string given errno
81 stresc convert \ sequences in string in place
82 streval evaluate C expression in string
83 strls ls -l format support
84 strmatch Korn shell file pattern match
85 strmode return ls -l style output given st.st_mode
86 strsignal return signal id string given SIG* number
87 strtape convert generic tape unit to /dev/* file
88 token generate space separated tokens in string
89
90tm: time conversion support
91
92 tmdate convert date string to time_t
93 tmform format time_t to date string
94 tmmake return current time_t
95 tmtime convert struct tm to time_t
96