Skip to content

Commit

Permalink
Updates following discussion.
Browse files Browse the repository at this point in the history
  • Loading branch information
wismill authored and adithyaov committed Dec 28, 2021
1 parent 37de284 commit 112de80
Show file tree
Hide file tree
Showing 4 changed files with 29 additions and 15 deletions.
18 changes: 12 additions & 6 deletions Changelog.md
Original file line number Diff line number Diff line change
Expand Up @@ -18,18 +18,24 @@

These modules are compatible with `base:Data.Char`.
- Re-export some functions from `Data.Char` in order to make `Unicode.Char`
a drop-in replacement.
a drop-in replacement in a _future_ version of this package.
- Drop support for GHC 7.10.3

### Deprecations

- In `Unicode.Char.General`.
- In `Unicode.Char.Case`:

- `isLetter`
- `isSpace`
- `isUpper`: use `isUpperCase` instead.
- `isLower`: use `isLowerCase` instead.

Preserve the behavior of these functions in `isAlphabetic` and `isWhiteSpace`
respectively.
- In `Unicode.Char.General`:

- `isLetter`: use `isAlphabetic` instead.
- `isSpace`: use `isWhiteSpace` instead.

- In `Unicode.Char`: same as hereinabove. These functions will be replaced in a
_future_ release with the functions with the same names from
`Unicode.Char.Case.Compat` and `Unicode.Char.General.Compat`.

## 0.2.0 (November 2021)

Expand Down
8 changes: 4 additions & 4 deletions lib/Unicode/Char.hs
Original file line number Diff line number Diff line change
Expand Up @@ -43,10 +43,10 @@ where

import Data.Char (chr, ord)
import Data.Version (Version, makeVersion)
import Unicode.Char.Case hiding (isLower, isUpper)
import Unicode.Char.Case.Compat
import Unicode.Char.General hiding (isLetter, isSpace)
import Unicode.Char.General.Compat
import Unicode.Char.Case
import Unicode.Char.Case.Compat hiding (isLower, isUpper)
import Unicode.Char.General
import Unicode.Char.General.Compat hiding (isLetter, isSpace)
import Unicode.Char.Identifiers
import Unicode.Char.Numeric
import Unicode.Char.Normalization
Expand Down
4 changes: 3 additions & 1 deletion lib/Unicode/Char/General.hs
Original file line number Diff line number Diff line change
Expand Up @@ -431,7 +431,9 @@ isSymbol c = case generalCategory c of
OtherSymbol -> True
_ -> False

-- | Returns 'True' for alphabetic Unicode characters.
-- | Returns 'True' for alphabetic Unicode characters (lower-case, upper-case
-- and title-case letters, plus letters of caseless scripts and modifiers
-- letters).
--
-- @since 0.1.0
{-# INLINE isLetter #-}
Expand Down
14 changes: 10 additions & 4 deletions test/Unicode/CharSpec.hs
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,12 @@ module Unicode.CharSpec

import qualified Data.Char as Char
import qualified Unicode.Char as UChar
-- [TODO] Remove the following qualified imports once isLetter and isSpace
-- are removed from Unicode.Char.General
import qualified Unicode.Char.General.Compat as UCharCompat
-- [TODO] Remove the following qualified imports once isUpper and isLower
-- are removed from Unicode.Char.Case
import qualified Unicode.Char.Case.Compat as UCharCompat
import Data.Foldable (traverse_)
import Test.Hspec

Expand Down Expand Up @@ -45,7 +51,7 @@ spec = do
it "isControl" do
UChar.isControl `shouldBeEqualTo` Char.isControl
it "isLetter" do
UChar.isLetter `shouldBeEqualTo` Char.isLetter
UCharCompat.isLetter `shouldBeEqualTo` Char.isLetter
it "isMark" do
UChar.isMark `shouldBeEqualTo` Char.isMark
it "isNumber" do
Expand All @@ -57,14 +63,14 @@ spec = do
it "isSeparator" do
UChar.isSeparator `shouldBeEqualTo` Char.isSeparator
it "isSpace" do
UChar.isSpace `shouldBeEqualTo` Char.isSpace
UCharCompat.isSpace `shouldBeEqualTo` Char.isSpace
it "isSymbol" do
UChar.isSymbol `shouldBeEqualTo` Char.isSymbol
describe' "Case" do
it "isLower" do
UChar.isLower `shouldBeEqualTo` Char.isLower
UCharCompat.isLower `shouldBeEqualTo` Char.isLower
it "isUpper" do
UChar.isUpper `shouldBeEqualTo` Char.isUpper
UCharCompat.isUpper `shouldBeEqualTo` Char.isUpper
it "toLower" do
UChar.toLower `shouldBeEqualTo` Char.toLower
it "toUpper" do
Expand Down

0 comments on commit 112de80

Please sign in to comment.