Daslang Standard Library 0.6.2¶
Copyright (c) 2018-2026 Gaijin Entertainment Authors: Anton Yudintsev, Boris Batkin
The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
- 1. Introduction
- 2. Core
- 3. Strings
- 4. I/O and Serialization
- 5. Data Structures
- 5.1. Boost package for array manipulation
- 5.2. Boost package for the builtin sort
- 5.3. Flat hash table
- 5.4. Cuckoo hash table
- 5.5. SOA (Structure of Arrays) transformation
- 5.6. Packed boolean array
- 5.7. Monadic Option<T> — a value-or-nothing tagged pair
- 5.8. Monadic Result<T, E> — a value-or-error tagged pair
- 6. Algorithms and Functional
- 7. Data Formats
- 8. Entity Component System
- 9. Concurrency
- 10. AST and Macros
- 11. Annotations and Contracts
- 11.1. Miscellaneous contract annotations
- 11.2. Apply reflection pattern
- 11.3. defer and defer_delete macros
- 11.4.
with_macro: locked array/table element binding - 11.5. if_not_null macro
- 11.6. static_let macro
- 11.7. lpipe macro
- 11.8. Assert once
- 11.9. Loop unrolling
- 11.10. Bitfield operator overloads
- 11.11. Bitfield name traits
- 11.12. Enumeration traits
- 11.13. Type trait macros
- 12. Classes and Interfaces
- 13. Testing and Debugging
- 14. Code Quality and Refactoring
- 15. Image and Font Processing
- 16. Audio and MIDI
- 17. Strudel (Live Coding)
- 17.1. Event payload and ADSR/delay-time resolvers
- 17.2. Cycle-space time primitives: TimeSpan, Hap, and cycle helpers
- 17.3. Pattern algebra, combinators, and fluent control API
- 17.4. Mini-notation tokenizer, parser, and fluent-DSL entry points
- 17.5. Musical scales and note-name helpers
- 17.6. Audio synthesis: oscillators, drums, filters, and effects
- 17.7. Sample bank and audio file loading
- 17.8. Voice allocation, effect bus routing, and per-tick mixing
- 17.9. Top-level playback harness: tracks, BPM/CPS, and threaded audio
- 17.10. MIDI file parser
- 17.11. MIDI file playback with GM preset mapping
- 17.12. SoundFont 2 file parser
- 17.13. SoundFont 2 per-voice runtime: envelope, LFO, modulators, biquad
- 17.14. Live-reload state preservation