33$(P Phobos is the standard runtime library that comes with the D language
44compiler.)
55
6- $(P Generally, the `std` namespace is used for the main modules in the
7- Phobos standard library. The `etc` namespace is used for external C/C++
8- library bindings. The `core` namespace is used for low-level D runtime
9- functions.)
6+ - The `std` namespace is used for the main modules in the
7+ Phobos standard library.
8+ - The $(LREF etc) namespace is used for external C/C++ library bindings.
9+ - The `core` namespace is mainly used for low-level D runtime functions.
10+ - $(RELATIVE_LINK2 stdc, `core.stdc`) wraps the C standard library.
11+ - $(RELATIVE_LINK2 stdcpp, `core.stdcpp`) wraps some of the C++ standard library.
12+ - `core.sys` wraps OS headers.
1013
1114$(P The following table is a quick reference guide for which Phobos modules to
1215use for a given category of functionality. Note that some modules may appear in
@@ -130,7 +133,7 @@ $(BOOKTABLE ,
130133 $(TD Defines built-in exception types and low-level
131134 language hooks required by the compiler.)
132135 )
133- $(LEADINGROW External library bindings)
136+ $(LEADINGROW $(LNAME2 etc, External library bindings) )
134137 $(TR
135138 $(TDNW $(MREF etc,c,curl))
136139 $(TD Interface to libcurl C library.)
@@ -156,6 +159,14 @@ $(BOOKTABLE ,
156159 $(TDNW $(MREF etc,c,zlib))
157160 $(TD Interface to zlib C library.)
158161 )
162+ $(TR
163+ $(TDNW $(MREF etc,linux,memoryerror))
164+ $(TD Handle memory errors on Linux.)
165+ )
166+ $(TR
167+ $(TDNW $(MREF etc,valgrind,valgrind))
168+ $(TD Interface to $(LINK2 https://valgrind.org, Valgrind) for dynamic analysis.)
169+ )
159170 $(LEADINGROW I/O & File system)
160171 $(TR
161172 $(TDNW $(MREF std,file))
@@ -194,12 +205,31 @@ $(BOOKTABLE ,
194205 $(MREF core,stdc,wctype)$(BR)
195206 )
196207 $(TD
197- D bindings for standard C headers.$(BR)$(BR)
208+ D bindings for $(LNAME2 stdc, standard C) headers.$(BR)$(BR)
198209 These are mostly undocumented, as documentation
199210 for the functions these declarations provide
200211 bindings to can be found on external resources.
201212 )
202213 )
214+ $(TR
215+ $(TDNW
216+ $(MREF core,stdcpp,allocator)$(BR)
217+ $(MREF core,stdcpp,array)$(BR)
218+ $(MREF core,stdcpp,exception)$(BR)
219+ $(MREF core,stdcpp,memory)$(BR)
220+ $(MREF core,stdcpp,new_)$(BR)
221+ $(MREF core,stdcpp,string)$(BR)
222+ $(MREF core,stdcpp,string_view)$(BR)
223+ $(MREF core,stdcpp,type_traits)$(BR)
224+ $(MREF core,stdcpp,typeinfo)$(BR)
225+ $(MREF core,stdcpp,utility)$(BR)
226+ $(MREF core,stdcpp,vector)$(BR)
227+ $(MREF core,stdcpp,xutility)$(BR)
228+ )
229+ $(TD
230+ Partial D bindings for $(LNAME2 stdcpp, standard C++) headers.$(BR)$(BR)
231+ )
232+ )
203233 $(LEADINGROW Memory management)
204234 $(TR
205235 $(TDNW $(MREF core,memory))
@@ -307,8 +337,10 @@ $(BOOKTABLE ,
307337 $(TD An arbitrary-precision integer type.)
308338 )
309339 $(TR
310- $(TDNW $(MREF std,int128))
311- $(TDNW $(MREF core,int128))
340+ $(TDNW
341+ $(MREF std,int128)$(BR)
342+ $(MREF core,int128)
343+ )
312344 $(TD 128 bit-precision integer type.)
313345 )
314346 $(TR
0 commit comments