forked from dlang/phobos
-
Notifications
You must be signed in to change notification settings - Fork 0
/
index.d
532 lines (526 loc) · 18.4 KB
/
index.d
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
Ddoc
$(P Phobos is the standard runtime library that comes with the D language
compiler.)
$(P Generally, the $(D std) namespace is used for the main modules in the
Phobos standard library. The $(D etc) namespace is used for external C/C++
library bindings. The $(D core) namespace is used for low-level D runtime
functions.)
$(P The following table is a quick reference guide for which Phobos modules to
use for a given category of functionality. Note that some modules may appear in
more than one category, as some Phobos modules are quite generic and can be
applied in a variety of situations.)
$(BOOKTABLE ,
$(TR
$(TH Modules)
$(TH Description)
)
$(LEADINGROW Algorithms & ranges)
$(TR
$(TDNW
$(LINK2 std_algorithm.html, std.algorithm)$(BR)
$(LINK2 std_range.html, std.range)$(BR)
$(LINK2 std_range_primitives.html, std.range.primitives)$(BR)
$(LINK2 std_range_interfaces.html, std.range.interfaces)$(BR)
)
$(TD Generic algorithms that work with $(LINK2 std_range.html, ranges)
of any type, including strings, arrays, and other kinds of
sequentially-accessed data. Algorithms include searching,
comparison, iteration, sorting, set operations, and mutation.
)
)
$(TR
$(TDNW $(LINK2 std_experimental_ndslice.html, std.experimental.ndslice))
$(TD Multidimensional random access ranges and arrays.)
)
$(LEADINGROW Array manipulation)
$(TR
$(TDNW
$(LINK2 std_array.html, std.array)$(BR)
$(LINK2 std_algorithm.html, std.algorithm)$(BR)
)
$(TD Convenient operations commonly used with built-in arrays.
Note that many common array operations are subsets of more generic
algorithms that work with arbitrary ranges, so they are found in
$(D std.algorithm).
)
)
$(LEADINGROW Containers)
$(TR
$(TDNW
$(LINK2 std_container_array.html, std.container.array)$(BR)
$(LINK2 std_container_binaryheap.html, std.container.binaryheap)$(BR)
$(LINK2 std_container_dlist.html, std.container.dlist)$(BR)
$(LINK2 std_container_rbtree.html, std.container.rbtree)$(BR)
$(LINK2 std_container_slist.html, std.container.slist)$(BR)
)
$(TD See $(LINK2 std_container.html, std.container.*) for an
overview.
)
)
$(LEADINGROW Data formats)
$(TR
$(TDNW $(LINK2 std_base64.html, std.base64))
$(TD Encoding / decoding Base64 format.)
)
$(TR
$(TDNW $(LINK2 std_csv.html, std.csv))
$(TD Read Comma Separated Values and its variants from an input range of $(CODE dchar).)
)
$(TR
$(TDNW $(LINK2 std_json.html, std.json))
$(TD Read/write data in JSON format.)
)
$(TR
$(TDNW $(LINK2 std_xml.html, std.xml))
$(TD Read/write data in XML format.)
)
$(TR
$(TDNW $(LINK2 std_zip.html, std.zip))
$(TD Read/write data in the ZIP archive format.)
)
$(TR
$(TDNW $(LINK2 std_zlib.html, std.zlib))
$(TD Compress/decompress data using the zlib library.)
)
$(LEADINGROW Data integrity)
$(TR
$(TDNW $(LINK2 std_digest_crc.html, std.digest.crc))
$(TD Cyclic Redundancy Check (32-bit) implementation.)
)
$(TR
$(TDNW $(LINK2 std_digest_digest.html, std.digest.digest))
$(TD Compute digests such as md5, sha1 and crc32.)
)
$(TR
$(TDNW $(LINK2 std_digest_hmac.html, std.digest.hmac))
$(TD Compute HMAC digests of arbitrary data.)
)
$(TR
$(TDNW $(LINK2 std_digest_md.html, std.digest.md))
$(TD Compute MD5 hash of arbitrary data.)
)
$(TR
$(TDNW $(LINK2 std_digest_murmurhash.html, std.digest.murmurhash))
$(TD Compute MurmurHash of arbitrary data.)
)
$(TR
$(TDNW $(LINK2 std_digest_ripemd.html, std.digest.ripemd))
$(TD Compute RIPEMD-160 hash of arbitrary data.)
)
$(TR
$(TDNW $(LINK2 std_digest_sha.html, std.digest.sha))
$(TD Compute SHA1 and SHA2 hashes of arbitrary data.)
)
$(LEADINGROW Date & time)
$(TR
$(TDNW $(LINK2 std_datetime.html, std.datetime))
$(TD Provides convenient access to date and time representations.)
)
$(TR
$(TDNW $(LINK2 core_time.html, core.time))
$(TD Implements low-level time primitives.)
)
$(LEADINGROW Exception handling)
$(TR
$(TDNW $(LINK2 std_exception.html, std.exception))
$(TD Implements routines related to exceptions.)
)
$(TR
$(TDNW $(LINK2 core_exception.html, core.exception))
$(TD Defines built-in exception types and low-level
language hooks required by the compiler.)
)
$(LEADINGROW External library bindings)
$(TR
$(TDNW $(LINK2 etc_c_curl.html, etc.c.curl))
$(TD Interface to libcurl C library.)
)
$(TR
$(TDNW $(LINK2 etc_c_odbc_sql.html, etc.c.odbc.sql))
$(TD Interface to ODBC C library.)
)
$(TR
$(TDNW $(LINK2 etc_c_odbc_sqlext.html, etc.c.odbc.sqlext))
)
$(TR
$(TDNW $(LINK2 etc_c_odbc_sqltypes.html, etc.c.odbc.sqltypes))
)
$(TR
$(TDNW $(LINK2 etc_c_odbc_sqlucode.html, etc.c.odbc.sqlucode))
)
$(TR
$(TDNW $(LINK2 etc_c_sqlite3.html, etc.c.sqlite3))
$(TD Interface to SQLite C library.)
)
$(TR
$(TDNW $(LINK2 etc_c_zlib.html, etc.c.zlib))
$(TD Interface to zlib C library.)
)
$(LEADINGROW I/O & File system)
$(TR
$(TDNW $(LINK2 std_file.html, std.file))
$(TD Manipulate files and directories.)
)
$(TR
$(TDNW $(LINK2 std_path.html, std.path))
$(TD Manipulate strings that represent filesystem paths.)
)
$(TR
$(TDNW $(LINK2 std_stdio.html, std.stdio))
$(TD Perform buffered I/O.)
)
$(LEADINGROW Interoperability)
$(TR
$(TDNW
$(LINK2 core_stdc_complex.html, core.stdc.complex)$(BR)
$(LINK2 core_stdc_ctype.html, core.stdc.ctype)$(BR)
$(LINK2 core_stdc_errno.html, core.stdc.errno)$(BR)
$(LINK2 core_stdc_fenv.html, core.stdc.fenv)$(BR)
$(LINK2 core_stdc_float_.html, core.stdc.float_)$(BR)
$(LINK2 core_stdc_inttypes.html, core.stdc.inttypes)$(BR)
$(LINK2 core_stdc_limits.html, core.stdc.limits)$(BR)
$(LINK2 core_stdc_locale.html, core.stdc.locale)$(BR)
$(LINK2 core_stdc_math.html, core.stdc.math)$(BR)
$(LINK2 core_stdc_signal.html, core.stdc.signal)$(BR)
$(LINK2 core_stdc_stdarg.html, core.stdc.stdarg)$(BR)
$(LINK2 core_stdc_stddef.html, core.stdc.stddef)$(BR)
$(LINK2 core_stdc_stdint.html, core.stdc.stdint)$(BR)
$(LINK2 core_stdc_stdio.html, core.stdc.stdio)$(BR)
$(LINK2 core_stdc_stdlib.html, core.stdc.stdlib)$(BR)
$(LINK2 core_stdc_string.html, core.stdc.string)$(BR)
$(LINK2 core_stdc_tgmath.html, core.stdc.tgmath)$(BR)
$(LINK2 core_stdc_time.html, core.stdc.time)$(BR)
$(LINK2 core_stdc_wchar_.html, core.stdc.wchar_)$(BR)
$(LINK2 core_stdc_wctype.html, core.stdc.wctype)$(BR)
)
$(TD
D bindings for standard C headers.$(BR)$(BR)
These are mostly undocumented, as documentation
for the functions these declarations provide
bindings to can be found on external resources.
)
)
$(LEADINGROW Memory management)
$(TR
$(TDNW $(LINK2 core_memory.html, core.memory))
$(TD Control the built-in garbage collector.)
)
$(TR
$(TDNW $(LINK2 std_typecons.html, std.typecons))
$(TD Build scoped variables and reference-counted types.)
)
$(LEADINGROW Metaprogramming)
$(TR
$(TDNW $(LINK2 core_attribute.html, core.attribute))
$(TD Definitions of special attributes recognized by the compiler.)
)
$(TR
$(TDNW $(LINK2 core_demangle.html, core.demangle))
$(TD Convert $(I mangled) D symbol identifiers to source representation.)
)
$(TR
$(TDNW $(LINK2 std_demangle.html, std.demangle))
$(TD A simple wrapper around core.demangle.)
)
$(TR
$(TDNW $(LINK2 std_meta.html, std.meta))
$(TD Construct and manipulate template argument lists (aka type lists).)
)
$(TR
$(TDNW $(LINK2 std_traits.html, std.traits))
$(TD Extract information about types and symbols at compile time.)
)
$(TR
$(TDNW $(LINK2 std_typecons.html, std.typecons))
$(TD Construct new, useful general purpose types.)
)
$(LEADINGROW Multitasking)
$(TR
$(TDNW $(LINK2 std_concurrency.html, std.concurrency))
$(TD Low level messaging API for threads.)
)
$(TR
$(TDNW $(LINK2 std_parallelism.html, std.parallelism))
$(TD High level primitives for SMP parallelism.)
)
$(TR
$(TDNW $(LINK2 std_process.html, std.process))
$(TD Starting and manipulating processes.)
)
$(TR
$(TDNW $(LINK2 core_atomic.html, core.atomic))
$(TD Basic support for lock-free concurrent programming.)
)
$(TR
$(TDNW $(LINK2 core_sync_barrier.html, core.sync.barrier))
$(TD Synchronize the progress of a group of threads.)
)
$(TR
$(TDNW $(LINK2 core_sync_condition.html, core.sync.condition))
$(TD Synchronized condition checking.)
)
$(TR
$(TDNW $(LINK2 core_sync_exception.html, core.sync.exception))
$(TD Base class for synchronization exceptions.)
)
$(TR
$(TDNW $(LINK2 core_sync_mutex.html, core.sync.mutex))
$(TD Mutex for mutually exclusive access.)
)
$(TR
$(TDNW $(LINK2 core_sync_rwmutex.html, core.sync.rwmutex))
$(TD Shared read access and mutually exclusive write access.)
)
$(TR
$(TDNW $(LINK2 core_sync_semaphore.html, core.sync.semaphore))
$(TD General use synchronization semaphore.)
)
$(TR
$(TDNW $(LINK2 core_thread.html, core.thread))
$(TD Thread creation and management.)
)
$(LEADINGROW Networking)
$(TR
$(TDNW $(LINK2 std_socket.html, std.socket))
$(TD Socket primitives.)
)
$(TR
$(TDNW $(LINK2 std_net_curl.html, std.net.curl))
$(TD Networking client functionality as provided by libcurl.)
)
$(TR
$(TDNW $(LINK2 std_net_isemail.html, std.net.isemail))
$(TD Validates an email address according to RFCs 5321, 5322 and others.)
)
$(TR
$(TDNW $(LINK2 std_uri.html, std.uri))
$(TD Encode and decode Uniform Resource Identifiers (URIs).)
)
$(TR
$(TDNW $(LINK2 std_uuid.html, std.uuid))
$(TD Universally-unique identifiers for resources in distributed
systems.)
)
$(LEADINGROW Numeric)
$(TR
$(TDNW $(LINK2 std_bigint.html, std.bigint))
$(TD An arbitrary-precision integer type.)
)
$(TR
$(TDNW $(LINK2 std_complex.html, std.complex))
$(TD A complex number type.)
)
$(TR
$(TDNW $(LINK2 std_math.html, std.math))
$(TD Elementary mathematical functions (powers, roots, trigonometry).)
)
$(TR
$(TDNW $(LINK2 std_mathspecial.html, std.mathspecial))
$(TD Families of transcendental functions.)
)
$(TR
$(TDNW $(LINK2 std_experimental_ndslice.html, std.experimental.ndslice))
$(TD Multidimensional random access ranges and arrays.)
)
$(TR
$(TDNW $(LINK2 std_numeric.html, std.numeric))
$(TD Floating point numerics functions.)
)
$(TR
$(TDNW $(LINK2 std_random.html, std.random))
$(TD Pseudo-random number generators.)
)
$(TR
$(TDNW $(LINK2 core_checkedint.html, core.checkedint))
$(TD Range-checking integral arithmetic primitives.)
)
$(TR
$(TDNW $(LINK2 core_math.html, core.math))
$(TD Built-in mathematical intrinsics.)
)
$(LEADINGROW Paradigms)
$(TR
$(TDNW $(LINK2 std_functional.html, std.functional))
$(TD Functions that manipulate other functions.)
)
$(TR
$(TDNW $(LINK2 std_algorithm.html, std.algorithm))
$(TD Generic algorithms for processing sequences.)
)
$(TR
$(TDNW $(LINK2 std_signals.html, std.signals))
$(TD Signal-and-slots framework for event-driven programming.)
)
$(LEADINGROW Runtime utilities)
$(TR
$(TDNW $(LINK2 object.html, object))
$(TD Core language definitions. Automatically imported.)
)
$(TR
$(TDNW $(LINK2 std_getopt.html, std.getopt))
$(TD Parsing of command-line arguments.)
)
$(TR
$(TDNW $(LINK2 std_compiler.html, std.compiler))
$(TD Host compiler vendor string and language version.)
)
$(TR
$(TDNW $(LINK2 std_system.html, std.system))
$(TD Runtime environment, such as OS type and endianness.)
)
$(TR
$(TDNW $(LINK2 core_cpuid.html, core.cpuid))
$(TD Capabilities of the CPU the program is running on.)
)
$(TR
$(TDNW $(LINK2 core_memory.html, core.memory))
$(TD Control the built-in garbage collector.)
)
$(TR
$(TDNW $(LINK2 core_runtime.html, core.runtime))
$(TD Control and configure the D runtime.)
)
$(LEADINGROW String manipulation)
$(TR
$(TDNW $(LINK2 std_string.html, std.string))
$(TD Algorithms that work specifically with strings.)
)
$(TR
$(TDNW $(LINK2 std_array.html, std.array))
$(TD Manipulate builtin arrays.)
)
$(TR
$(TDNW $(LINK2 std_algorithm.html, std.algorithm))
$(TD Generic algorithms for processing sequences.)
)
$(TR
$(TDNW $(LINK2 std_uni.html, std.uni))
$(TD Fundamental Unicode algorithms and data structures.)
)
$(TR
$(TDNW $(LINK2 std_utf.html, std.utf))
$(TD Encode and decode UTF-8, UTF-16 and UTF-32 strings.)
)
$(TR
$(TDNW $(LINK2 std_format.html, std.format))
$(TD Format data into strings.)
)
$(TR
$(TDNW $(LINK2 std_path.html, std.path))
$(TD Manipulate strings that represent filesystem paths.)
)
$(TR
$(TDNW $(LINK2 std_regex.html, std.regex))
$(TD Regular expressions.)
)
$(TR
$(TDNW $(LINK2 std_ascii.html, std.ascii))
$(TD Routines specific to the ASCII subset of Unicode.)
)
$(TR
$(TDNW $(LINK2 std_encoding.html, std.encoding))
$(TD Handle and transcode between various text encodings.)
)
$(TR
$(TDNW $(LINK2 std_windows_charset.html, std.windows.charset))
$(TD Windows specific character set support.)
)
$(TR
$(TDNW $(LINK2 std_outbuffer.html, std.outbuffer))
$(TD Serialize data to $(CODE ubyte) arrays.)
)
$(LEADINGROW Type manipulations)
$(TR
$(TDNW $(LINK2 std_conv.html, std.conv))
$(TD Convert types from one type to another.)
)
$(TR
$(TDNW $(LINK2 std_typecons.html, std.typecons))
$(TD Type constructors for scoped variables, ref counted types, etc.)
)
$(TR
$(TDNW $(LINK2 std_bitmanip.html, std.bitmanip))
$(TD High level bit level manipulation, bit arrays, bit fields.)
)
$(TR
$(TDNW $(LINK2 std_variant.html, std.variant))
$(TD Discriminated unions and algebraic types.)
)
$(TR
$(TDNW $(LINK2 core_bitop.html, core.bitop))
$(TD Low level bit manipulation.)
)
$(LEADINGROW Vector programming)
$(TR
$(TDNW $(LINK2 core_simd.html, core.simd))
$(TD SIMD intrinsics)
)
$(COMMENT
$(LEADINGROW Undocumented modules (intentionally omitted).)
$(TR
$(TDNW
$(LINK2 core_sync_config.html, core.sync.config)$(BR)
$(LINK2 std_concurrencybase.html, std.concurrencybase)$(BR)
$(LINK2 std_container_util.html, std.container.util)$(BR)
$(LINK2 std_regex_internal_backtracking.html, std.regex.internal.backtracking)$(BR)
$(LINK2 std_regex_internal_generator.html, std.regex.internal.generator)$(BR)
$(LINK2 std_regex_internal_ir.html, std.regex.internal.ir)$(BR)
$(LINK2 std_regex_internal_kickstart.html, std.regex.internal.kickstart)$(BR)
$(LINK2 std_regex_internal_parser.html, std.regex.internal.parser)$(BR)
$(LINK2 std_regex_internal_tests.html, std.regex.internal.tests)$(BR)
$(LINK2 std_regex_internal_thompson.html, std.regex.internal.thompson)$(BR)
$(LINK2 std_stdiobase.html, std.stdiobase)$(BR)
)
$(TD
Internal modules.
)
)
$(TR
$(TDNW
$(LINK2 core_vararg.html, core.vararg)$(BR)
$(LINK2 std_c_fenv.html, std.c.fenv)$(BR)
$(LINK2 std_c_linux_linux.html, std.c.linux_linux)$(BR)
$(LINK2 std_c_linux_socket.html, std.c.linux_socket)$(BR)
$(LINK2 std_c_locale.html, std.c.locale)$(BR)
$(LINK2 std_c_math.html, std.c.math)$(BR)
$(LINK2 std_c_process.html, std.c.process)$(BR)
$(LINK2 std_c_stdarg.html, std.c.stdarg)$(BR)
$(LINK2 std_c_stddef.html, std.c.stddef)$(BR)
$(LINK2 std_c_stdio.html, std.c.stdio)$(BR)
$(LINK2 std_c_stdlib.html, std.c.stdlib)$(BR)
$(LINK2 std_c_string.html, std.c.string)$(BR)
$(LINK2 std_c_time.html, std.c.time)$(BR)
$(LINK2 std_c_wcharh.html, std.c.wcharh)$(BR)
$(LINK2 std_stdint.html, std.stdint)$(BR)
)
$(TDN
Redirect modules.
)
)
$(TR
$(TDNW
$(LINK2 std_mmfile.html, std.mmfile)$(BR)
$(LINK2 std_typetuple.html, std.typetuple)$(BR)
)
$(TD
Deprecated modules.
)
)
$(TR
$(TDNW
$(LINK2 std_experimental_logger.html, std.experimental.logger)$(BR)
$(LINK2 std_experimental_logger_core.html, std.experimental.logger.core)$(BR)
$(LINK2 std_experimental_logger_filelogger.html, std.experimental.logger.filelogger)$(BR)
$(LINK2 std_experimental_logger_multilogger.html, std.experimental.logger.multilogger)$(BR)
$(LINK2 std_experimental_logger_nulllogger.html, std.experimental.logger.nulllogger)$(BR)
)
$(TD
Experimental modules.
)
)
)
)
Macros:
TITLE=Phobos Runtime Library
DDOC_BLANKLINE=
_=