From 2a524bbb5e0b25a67dd2330424e22240631dd330 Mon Sep 17 00:00:00 2001 From: Ferdinand Majerech Date: Tue, 29 Jul 2014 03:07:57 +0200 Subject: [PATCH] UTF-8 scanLineBreak. --- source/dyaml/scanner.d | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/source/dyaml/scanner.d b/source/dyaml/scanner.d index 7aed9f4..45a3ac5 100644 --- a/source/dyaml/scanner.d +++ b/source/dyaml/scanner.d @@ -2049,6 +2049,23 @@ final class Scanner } return '\0'; } + dchar scanLineBreak8() @safe pure nothrow @nogc + { + const c = reader_.peek(); + + if(c == '\n' || c == '\r' || c == '\u0085') + { + if(reader_.prefix8(2) == "\r\n") { reader_.forward(2); } + else { reader_.forward(); } + return '\n'; + } + if(c == '\u2028' || c == '\u2029') + { + reader_.forward(); + return c; + } + return '\0'; + } } private: