Index
A
- algorithm
- implementing, ranges used / Using ranges when implementing an algorithm, Getting ready, How it works…
- alias parameter / How it works…
- appending / How it works…
- ARM
- D, compiling for / Getting ready, How to do it…, There's more…
- array operations
- appending / How it works…
- indexing / How it works…
- slicing / How it works…
- array replacement
- creating / Creating an array replacement, How to do it…, How it works…
- arrays
- building / Building and processing arrays, How it works…, See also
- processing / Building and processing arrays, How it works…, See also
- assertions
- associative arrays
- used, for translating input / Using associative arrays to translate input, How to do it…, How it works…
- asynchronous I/O
- using / Using asynchronous I/O, How to do it…, How it works…
- atomic operations
- URL / See also
B
- bare metal ARM
- D, running on / Running D on bare metal ARM, How to do it…, How it works…
- bare metal x86
- D running, with stripped runtime / Running D on bare metal x86 with a stripped runtime, How to do it…, How it works…, There's more…
- bare metal x86 code
- interrupt handling, adding to / Adding interrupt handling to the bare metal x86 code, How to do it…, How it works…
- Base64
- used, to create data URI / Using Base64 to create a data URI, How to do it…, How it works…
- Basic Utilities Package
- URL / See also
- Basic Utilities Package (BUP)
- URL / Getting ready
- benchmark
- used, for sorting objects / To benchmark, How it works…
- Bidirectional ranges / Getting ready
- Bindings
- URL / There's more…
- BrokenAddExpression function / How to do it…
C
- C++
- interfacing with / Interfacing with C++, How to do it …, How to do it…
- callSpeak function / Getting ready
- cgi.d
- dynamic website, creating with / Creating a dynamic website with cgi.d, How to do it…, How it works…
- URL / Getting ready
- C interface
- Linux system calls, making with / With the C interface
- class destructors, limitations
- classes
- creating / Getting ready, How to do it…, How it works…, See also…
- URL / See also…
- ClassInfo object / How it works…
- class memory
- managing / Manually managing class memory, How it works…, See also
- client
- creating / How to do it…
- client-specific code
- writing / Client-specific code, How it works…
- code
- documenting, with Ddoc / Documenting your code with Ddoc, How to do it…, How it works…, There's more…
- coffimplib command / How it works…
- collection
- range interface, putting on / Putting a range interface on a collection, How to do it…, How it works…
- colored output
- writing, to console / Writing colored output to the console, How to do it…, How it works…
- COM
- using / Using Windows' COM, COM server, How it works…
- COM client
- writing / COM client, How it works…
- ComGuid attribute / COM server
- comhelpers.d file
- URL / Getting ready
- command-line function caller
- compile-time function evaluation (CTFE) / How it works…
- compile-time parameter
- about / How it works…
- compiler
- compiles trait
- URL / See also
- complex types components
- COM server
- writing / COM server
- console
- colored output, writing to / Writing colored output to the console, How to do it…, How it works…
- const-correctness
- leveraging / Leveraging const-correctness, How to do it…, How it works…
- core thread module
- URL / See also
- C program
- writing, in D / How to do it…, How it works…
- crash-resistant plugin
- creating / How to do it…
- custom exception type
- custom lint-style check
- implementing, for virtual functions / Implementing a custom lint-style check for virtual functions, How to do it…, How it works…
D
- @disable annotation / How it works…
- D
- C program, writing / How to do it…, How it works…
- running on bare metal x86, with stripped runtime / Running D on bare metal x86 with a stripped runtime, How to do it…, How it works…, There's more…
- compiling, for ARM / Compiling D for ARM/Linux Raspberry Pi, How to do it…, There's more…
- compiling, for Linux Raspberry Pi / Compiling D for ARM/Linux Raspberry Pi, How to do it…, There's more…
- running, on bare metal ARM / Running D on bare metal ARM, How to do it…, How it works…
- learning / Finding more information about D, How to do it…
- data member
- range, storing as / Storing a range as a data member, How it works…
- data structures
- generating, from text diagrams / Generating data structures from text diagrams, How it works…
- data URI
- creating, Base64 used / Using Base64 to create a data URI, How to do it…, How it works…
- Ddoc
- code, documenting with / Documenting your code with Ddoc, How to do it…, How it works…, There's more…
- default values, function parameters
- Deimos
- URL / See also
- Derelict library
- URL / See also
- destroy function / How it works…
- digest utility
- writing / Writing a digest utility, How it works…, See also
- directory
- largest files, finding / Finding the largest files in a directory, How it works…
- dirEntries function / How it works…
- DMD compiler
- URL / How to do it…
- dom.d
- HTML page, parsing with / Parsing and modifying an HTML page with dom.d, How to do it…, How it works…, There's more…
- HTML page, modifying with / Parsing and modifying an HTML page with dom.d, How to do it…, How it works…, There's more…
- domain-specific language
- dstep program
- URL / See also
- dtoh program
- URL / See also
- dub
- URL / See also
- dynamic calls
- automating, with multiple dispatch / Automating dynamic calls with multiple dispatch, Getting ready, How to do it…, How it works…
- dynamic runtime type information
- obtaining / Getting dynamic runtime type information, How it works…
- dynamic scripting language
- communicating with / Communicating with a dynamic scripting language, How it works…
- dynamic website
- creating, with cgi.d / Creating a dynamic website with cgi.d, How to do it…, How it works…
E
- e-mail
- sending / Sending an e-mail, How it works…
- emplace function / How it works…
- enum keyword / How it works…, How it works…
- evaluate function / How to do it…
- exceptions
- exponentiation operator
- external libraries
- external processes
- communicating with / Communicating with external processes, How to do it…
F
- Fiber class
- URL / See also
- fibers
- using / Using fibers, How to do it…, How it works…
- find function / How to do it…
- finish method / How to do it…
- format parameter / How it works…
- Forward ranges / Getting ready
- free function / How to do it…
- front property / How it works…
- functional tools
- used, to query data / Using functional tools to query data, How to do it…, How it works…
- function overloads
- inspecting / Inspecting function overloads, How it works…
- functions
- writing / Writing functions
- changing, string parameters used / Using string parameters to change functions, How it works…
G
- garbage collector
- avoiding / Avoiding the garbage collector, How to do it…, How it works…
- GenericMain function / How it works…
- getAsTrueColorImage function / How to do it…
- Github repository
- URL / Introduction
- GNU D compiler (GDC)
- URL / How to do it…
- graphics window
- GRUB bootloader
- URL / See also
H
- hasLength function / Getting ready
- Hello World program
- writing / How to do it…, How it works…
- higher-order range
- creating / Creating a higher-order range, How to do it…, How it works…
- HTML page
- modifying, with dom.d / Parsing and modifying an HTML page with dom.d, How to do it…, How it works…, There's more…
- parsing, with dom.d / Parsing and modifying an HTML page with dom.d, How to do it…, How it works…, There's more…
I
- i18n
- subtyped string, creating for / Creating a subtyped string for i18n, How to do it…, How it works…
- image files
- working with / Working with image files, How to do it…, How it works…
- immutability
- using / Getting ready, Writing object methods, How it works…
- functions, writing / Writing functions
- object methods, writing / Writing object methods, How it works…
- implib command / How it works…
- implicit function template instantiation (IFTI) / How it works…
- indexing / How it works…
- inheritance
- simulating, with struct / Simulating inheritance with structs, How it works…
- inline assembly
- Linux system calls, making with / With inline assembly
- innerHTML property / How it works…
- inout method / How it works…
- input
- translating, associative arrays used / Using associative arrays to translate input, How to do it…, How it works…
- input range
- creating / Creating an input range, How to do it…, How it works…, There's more…
- creating, over tree structure / Creating an input range over a tree structure, How to do it…, There's more…
- instance methods
- wrapping / Wrapping instance methods, How to do it…, How it works…
- integer overflow / There's more…
- interrupt handling
- adding, to bare metal x86 code / Adding interrupt handling to the bare metal x86 code, How to do it…, How it works…
- isDaemon property / There's more…
- is expression
L
- largest files
- finding, in directory / Finding the largest files in a directory, How it works…
- LDC compiler
- URL / See also
- lent resources
- managing / Managing lent resources, How to do it…
- Linux Raspberry Pi
- D, compiling for / Getting ready, How to do it…, There's more…
- Linux system calls
- making / Making Linux system calls
- making, with C interface / With the C interface
- making, with inline assembly / With inline assembly
- working / How it works…
- listen() method / Server
- list of child classes
- obtaining / Getting a list of child classes, How it works…
- list of members
- lookup table
- building / Building a lookup table, How it works…
M
- mailFrom property / How it works…
- mailTo property / How it works…
- main() function / How it works…
- makeDataUri function / How it works…
- MatchAlias parameter / How it works…
- memory corruption bugs
- preventing, with @safe / Preventing memory corruption bugs with @safe, How to do it…, How it works…
- messages
- passing, with std.concurrency / Passing messages with std.concurrency, How it works…
- methods
- forwarding, with opDispatch / Forwarding methods with opDispatch, How it works…
- mixin templates
- multiple inheritance, simulating with / Simulating multiple inheritance with mixin templates, How to do it…, How it works…
- module
- URL / See also
- module availability
- determining / Determining whether a module is available, How it works…
- module documentation
- URL / See also
- modules
- adding, to program / Adding additional modules (files) to your program, How to do it…, How it works…
- Multiboot standard
- URL / See also
- multiple dispatch
- dynamic calls, automating with / Automating dynamic calls with multiple dispatch, Getting ready, How it works…
- multiple inheritance
- simulating, with mixin templates / Simulating multiple inheritance with mixin templates, How to do it…, How it works…
- Multipurpose Internet Mail Extensions (MIME) / There's more…
- My DConf 2014 talk
- URL / See also
N
- naked function / How it works…
- names, function parameters
- NotNull struct
- creating / Creating a NotNull struct, How to do it…, How it works…, There's more…
O
- Object.factory function / How it works…
- object invariants
- object methods
- writing / Writing object methods, How it works…
- objects
- sorting, benchmark used / To benchmark
- opApply function / There's more…
- opaque handle type
- creating / Creating an opaque handle type, How it works…, There's more…
- opAssign function / How it works…
- opAssign operator / How it works…
- opBinary operator / How it works…
- opCast function / Performing type conversions
- opCast method / How it works…
- opDispatch
- methods, forwarding with / Forwarding methods with opDispatch, How it works…
- used, to generate properties / Using opDispatch to generate properties, How to do it…, How it works…
- OpenGL window
- creating / Creating an OpenGL window, How to do it…, How it works…
- opOpAssign operator / How it works…
- opUnary operator / How it works…
- output range
- creating / Creating an output range, How to do it…, How it works…
- Output ranges / Getting ready
P
- package
- URL / See also
- pair function / How it works…
- parallel data
- processing, with std.parallelism / Processing parallel data with std.parallelism, How to do it…, How it works…
- parallelism module
- URL / See also
- parseGarbage method / How it works…
- platform-specific code
- writing / Platform-specific code, How it works…
- playRound function / How it works…
- popFront property / How it works…
- post-conditions
- pre-conditions
- processes
- creating / Creating new processes, How to do it…, How it works…, There's more…
- process module
- URL / See also
- program
- modules, adding to / Adding additional modules (files) to your program, How to do it…, How it works…
- properties
- generating, opDispatch used / Using opDispatch to generate properties, How to do it…, How it works…
- pure functions side effects
- put method / How to do it…
Q
- QEMU
- URL / Getting ready
- querySelector method / How it works…
R
- RAII
- Random access ranges / Getting ready
- random numbers
- generating / Generating random numbers, How to do it…, How it works…, There's more…
- range
- storing, as data member / Storing a range as a data member, How it works…
- ranged integer
- creating / Creating a ranged integer, How it works…, There's more…
- range interface
- putting, on collection / Putting a range interface on a collection, How to do it…, How it works…
- ranges
- used, for implementing algorithm / Using ranges when implementing an algorithm, Getting ready, How it works…
- Forward ranges / Getting ready
- Bidirectional ranges / Getting ready
- Random access ranges / Getting ready
- Output ranges / Getting ready
- sorting / To sort
- searching / Searching ranges, How it works…
- readln method / How it works…
- readOctalString function / How it works…
- readSet function / Server
- real-time input
- obtaining, from terminal / Getting real-time input from the terminal, How to do it…, There's more…
- reference counted object
- reference semantics
- struct, creating with / Creating a struct with reference semantics, How it works…, There's more…
- ref function / How it works…
- registerType function / How to do it…
- regular expressions
- searching with / Searching with regular expressions, How it works…, There's more…
- release method / How to do it…
- requireSelector method / How it works…
- runtime polymorphic ranges
- runtime type information
- extending / Extending the runtime type information, How to do it…, How it works…
S
- .stringof property / How it works…
- @safe
- memory corruption bugs, preventing with / Preventing memory corruption bugs with @safe, How to do it…, How it works…
- scope guards
- used, to manage transactions / Using scope guards to manage transactions, How it works…
- SearchPattern parameter / How it works…
- server
- creating / Server
- sigaction function / There's more…
- single-locking singleton
- slicing / How it works…
- spawn function / How it works…
- SQL database
- accessing / Accessing a SQL database, How to do it…, How it works…, There's more…
- stack trace
- obtaining, without throwing exception / Getting a stack trace without throwing an exception, How it works…
- standard library wrapper
- URL / See also
- statically defined interface
- duck typing to / Duck typing to a statically-defined interface, Getting ready, How to do it…, How it works…
- static assert
- using / Using static asserts, How to do it…, How it works…
- static if
- static immutable variable / How it works…
- std.algorithm.sort function / How it works…
- std.algorithm module
- URL / See also
- std.algorthm.sort function / How it works…
- std.concurrency
- messages, passing with / Passing messages with std.concurrency, How it works…
- std.conv.emplace function / How to do it…
- std.conv.to function / How it works…
- std.file.dirEntries function / How to do it…
- std.json module
- using / Using the std.json module, How it works…, See also
- URL / See also
- std.net.curl.SMTP module
- about / How it works…
- std.parallelism
- parallel data, processing with / Processing parallel data with std.parallelism, How to do it…, How it works…
- std.range.put method / How it works…
- std.regex function / How it works…
- std.traits module
- URL / See also
- std.typecons.wrap function / There's more…
- std.zlib compression
- string
- substring, obtaining from / Slicing a string to get a substring, How it works…, There's more…
- normalizing / Normalizing a string and performing Unicode comparisons, How it works…
- string.matchAll(pattern) function / How it works…
- string parameters
- used, to change functions / Using string parameters to change functions, How it works…
- stripped runtime
- D, running on bare metal x86 with / Running D on bare metal x86 with a stripped runtime, How to do it…, How it works…, There's more…
- struct
- creating, with reference semantics / Creating a struct with reference semantics, How it works…, There's more…
- inheritance, simulating with / Simulating inheritance with structs, How it works…
- struct object / How it works…
- structs
- used, to mimic C++ object structure / Using structs to mimic the C++ object structure, How to do it…, How it works…
- structure
- creating, with two views into same data / Creating a structure with two views into the same data, How it works…
- struct variable / How to do it…
- style property / Using opDispatch to generate properties
- substring
- obtaining, from string / Slicing a string to get a substring, How it works…, There's more…
- subtyped string
- creating, for i18n / Creating a subtyped string for i18n, How to do it…, How it works…
- subtyping / How it works…
T
- tagged dynamic type
- creating / Creating a tagged dynamic type, How it works…
- template constraints
- terminal
- real-time input, obtaining from / Getting real-time input from the terminal, How to do it…, There's more…
- text diagrams
- data structures, generating from / Generating data structures from text diagrams, How it works…
- this object / Automating dynamic calls with multiple dispatch
- thread-safe singleton
- threads
- using / Using threads, How to do it…, How it works…, See also
- toString function / How it works…
- toString method / How it works…, How to do it…
- transactions
- managing, scope guards used / Using scope guards to manage transactions, How it works…
- tree structure
- input range, creating over / Creating an input range over a tree structure, How to do it…, There's more…
- tupleof property / There's more…
- type conversions
- performing / Performing type conversions, How it works…, There's more…
- TypeInfo
- about / How it works…
- TypeInfo members
- typeof parameter / How to do it…
- types, function parameters
U
- Unicode comparisons
- Uniform Function Call Syntax (UFCS) / How it works…
- union
- about / How it works…
- unique pointers
- using / Using unique pointers, How to do it…, How it works…
- unit testing
- performing / Unit testing your code, How it works…
- user-defined attributes
- user-defined literals
- user-defined vector type
V
- var struct
- URL / See also
- virtual functions
- custom lint-style check, implementing / Implementing a custom lint-style check for virtual functions, How to do it…, How it works…
W
- web.d
- web API, creating with / Creating a web API with web.d, How to do it…, How it works…
- web API
- creating, with web.d / Creating a web API with web.d, How to do it…, How it works…
- Win32 bindings
- URL / Getting ready
- Windows API functions
- Windows console
- removing / Removing the Windows console, There's more…
- Windows SDK
- URL / Getting ready
- WinMain function / There's more…
- wrap function / How to do it…
- writefln function / How it works…, Getting ready
- writeln() function / How it works…
- writeln function / How it works…
X
- XML library
- URL / See also