Go to file
2023-03-13 23:36:12 +03:00
.github/workflows Add github CI 2023-03-13 23:34:46 +03:00
.vscode Reformat code to use otbs bracestyle 2023-03-07 02:27:21 +03:00
examples Reformat code to use otbs bracestyle 2023-03-07 02:27:21 +03:00
source/poodinis/valueinjector Reformat code to use otbs bracestyle 2023-03-07 02:27:21 +03:00
testfiles Add load functions for individual file formats 2022-11-27 17:59:46 +03:00
.gitignore Fix gitignore 2023-03-07 01:32:51 +03:00
CHANGES.md Upgrade to Poodinis 9.0.0 2023-03-13 23:32:30 +03:00
dub.json Upgrade to Poodinis 9.0.0 2023-03-13 23:32:30 +03:00
dub.selections.json Upgrade to Poodinis 9.0.0 2023-03-13 23:32:30 +03:00
LICENSE.txt Update copyrights 2023-01-11 02:09:03 +03:00
makefile Add quickstart example 2022-11-27 18:47:33 +03:00
README.md Add CI badge 2023-03-13 23:36:12 +03:00
testmain.d Fix module docs 2023-02-20 21:29:31 +03:00

Mirage Config injector for Poodinis

Version 2.0.0
Copyright 2022-2023 Mike Bierlee
Licensed under the terms of the MIT license - See LICENSE.txt

DUB Package CI

A config value injector for the Poodinis dependency injection framework using Mirage Config

Getting started

DUB Dependency

See the DUB project page for instructions on how to include Mirage Config into your project.

Quickstart

import poodinis : DependencyContainer, Value;
import poodinis.valueinjector.mirage : loadConfig;

import std.stdio : writeln;
import std.conv : to;

class Server {
    @Value("server.host")
    private string host;

    @Value("server.port")
    private int port;

    public void run() {
        writeln("Running server on " ~ host ~ ":" ~ port.to!string);
    }
}

void main() {
    auto container = new shared DependencyContainer();
    container.register!Server;
    container.loadConfig("config.ini");

    auto server = container.resolve!Server;
    server.run();
}

Functions such as loadConfig are the same as available in Mirage. All individual loaders and parses are available. For more information on how to use Mirage, see https://github.com/mbierlee/mirage-config/blob/main/README.md

History

For a full overview of changes, see CHANGES.md