From 799a27a99f1b929c1b52013f642f9914f57c8a20 Mon Sep 17 00:00:00 2001 From: Cameron Ross Date: Sun, 10 Jun 2018 12:22:26 -0300 Subject: [PATCH] add Loader.opApply overload for @safe delegates --- source/dyaml/loader.d | 15 ++++++++++++--- 1 file changed, 12 insertions(+), 3 deletions(-) diff --git a/source/dyaml/loader.d b/source/dyaml/loader.d index d8f1891..e09eef8 100644 --- a/source/dyaml/loader.d +++ b/source/dyaml/loader.d @@ -233,7 +233,18 @@ struct Loader * * Throws: YAMLException on a parsing error. */ - int opApply(int delegate(ref Node) dg) @trusted + int opApply(int delegate(ref Node) @safe dg) @safe + { + return opApplyImpl(dg); + } + /// Ditto + int opApply(int delegate(ref Node) @system dg) @system + { + return opApplyImpl(dg); + } + + package: + int opApplyImpl(T)(T dg) in { assert(!done_, "Loader: Trying to load YAML twice"); @@ -262,8 +273,6 @@ struct Loader .format(name_, e.msg)); } } - - package: // Scan and return all tokens. Used for debugging. Token[] scan() @safe {