packages feed

validity-text 0.1.2.1 → 0.2.0.0

raw patch · 2 files changed

+20/−3 lines, 2 filesdep ~validity

Dependency ranges changed: validity

Files

src/Data/Validity/Text.hs view
@@ -35,3 +35,20 @@               LB.toStrict . SBB.toLazyByteString . mconcat . map SBB.word16LE $               A.toList arr off len             ]+    validate t@(Text arr off len) =+        mconcat+            [ len >= 0 <?!> "The length is positive."+            , off >= 0 <?!> "The offset is positive."+            , (let c = A.unsafeIndex arr off+               in len == 0 || c < 0xDC00 || c > 0xDFFF) <?!>+              "The offset character is valid UTF16."+                 -- It contains a valid UTF16+            , ((== (Right t :: Either E.UnicodeException Text)) $+               U.unsafeDupablePerformIO .+               try .+               evaluate .+               E.decodeUtf16LEWith E.strictDecode .+               LB.toStrict . SBB.toLazyByteString . mconcat . map SBB.word16LE $+               A.toList arr off len) <?!>+              "The bytes can correctly be decoded as UTF16."+            ]
validity-text.cabal view
@@ -1,5 +1,5 @@ name: validity-text-version: 0.1.2.1+version: 0.2.0.0 cabal-version: >=1.10 build-type: Simple license: MIT@@ -21,8 +21,8 @@     exposed-modules:         Data.Validity.Text     build-depends:-        base >= 4.7 && <5,-        validity -any,+        base >=4.7 && <5,+        validity >=0.4 && <0.5,         text -any,         bytestring -any     default-language: Haskell2010