Welcome to Doost

Doost is a common name for set of libraries for D programming language. First modules in library: ProgramOptions and Any were heavily inspired by C++ Boost design. Hence the name of library. But currently most modules have completely different design than in original. There are also some modules which are designed from scratch or inspired by other libraries than Boost.

Currently doost library consists from following packages:

  • doost.api - meant to be something similar to tango.groups
    • Common - module for commonly used definitions/imports etc.
  • doost.core - core modules - used everywher, but simple
    • Any - containter for different types
    • Traits - usefull templates (mostly taken from Phobos/Tango)
  • doost.database - early alpha version of database access framework
  • doost.storage - continuous array of elements of same type married with streams
  • doost.text - text operations
    • Scanner - module to be used for parsing texts
    • Escaper - simple module for escaping/unescaping strings
  • doost.util - high level utilities
    • DUnit - visualization for console unit tests + simple tools for tests
    • config.ProgramOptions - package for D Configuration Framework
    • serializer.Serializer - package for D automatic serializer

Latest stable version is 0.91, which is located in branches/0_91. Libraries in this branch demand DMD 1.0 compiler. doost.database package and database backend for ProgramOptions have dependency on ddbi database binding for D. Some modules requires also std2 project sources.

Trunk is reserved from now for 2.0 development.

Currently documentation is rather sparse so you will have to look at source code and/or unit tests. A lot of unit tests can be found in subdirectories of 'example' directory.

There are project files for CodeBlocks? and Descent in svn repository.

Other worth-looking pages