unicodedata-reader 1.3.2__tar.gz → 1.3.3__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {unicodedata_reader-1.3.2 → unicodedata_reader-1.3.3}/PKG-INFO +1 -1
- {unicodedata_reader-1.3.2 → unicodedata_reader-1.3.3}/pyproject.toml +1 -1
- {unicodedata_reader-1.3.2 → unicodedata_reader-1.3.3}/unicodedata_reader/entry.py +4 -6
- {unicodedata_reader-1.3.2 → unicodedata_reader-1.3.3}/unicodedata_reader/reader.py +16 -0
- {unicodedata_reader-1.3.2 → unicodedata_reader-1.3.3}/unicodedata_reader/set.py +12 -16
- {unicodedata_reader-1.3.2 → unicodedata_reader-1.3.3}/LICENSE +0 -0
- {unicodedata_reader-1.3.2 → unicodedata_reader-1.3.3}/README.md +0 -0
- {unicodedata_reader-1.3.2 → unicodedata_reader-1.3.3}/unicodedata_reader/__init__.py +0 -0
- {unicodedata_reader-1.3.2 → unicodedata_reader-1.3.3}/unicodedata_reader/__main__.py +0 -0
- {unicodedata_reader-1.3.2 → unicodedata_reader-1.3.3}/unicodedata_reader/bidi_brackets.py +0 -0
- {unicodedata_reader-1.3.2 → unicodedata_reader-1.3.3}/unicodedata_reader/cli.py +0 -0
- {unicodedata_reader-1.3.2 → unicodedata_reader-1.3.3}/unicodedata_reader/compressor.py +0 -0
- {unicodedata_reader-1.3.2 → unicodedata_reader-1.3.3}/unicodedata_reader/east_asian_width.py +0 -0
- {unicodedata_reader-1.3.2 → unicodedata_reader-1.3.3}/unicodedata_reader/emoji.py +0 -0
- {unicodedata_reader-1.3.2 → unicodedata_reader-1.3.3}/unicodedata_reader/general_category.py +0 -0
- {unicodedata_reader-1.3.2 → unicodedata_reader-1.3.3}/unicodedata_reader/line_break.py +0 -0
- {unicodedata_reader-1.3.2 → unicodedata_reader-1.3.3}/unicodedata_reader/vertical_orientation.py +0 -0
|
@@ -10,7 +10,6 @@ from typing import Iterable
|
|
|
10
10
|
from typing import List
|
|
11
11
|
from typing import Optional
|
|
12
12
|
from typing import Sequence
|
|
13
|
-
from typing import Set
|
|
14
13
|
from typing import Union
|
|
15
14
|
from typing import Tuple
|
|
16
15
|
|
|
@@ -273,20 +272,19 @@ class UnicodeDataEntries(object):
|
|
|
273
272
|
"""Returns an `Iterable` of Unicode code points for the given `pred`."""
|
|
274
273
|
return itertools.chain(*(e.range() for e in self.filter(pred)))
|
|
275
274
|
|
|
276
|
-
def add_to_set(self, pred: Callable[[Any], bool], set:
|
|
275
|
+
def add_to_set(self, pred: Callable[[Any], bool], set: set) -> None:
|
|
277
276
|
"""Add values `pred` returns `True` to `set[int]`."""
|
|
278
277
|
for code in self.codes_for(pred):
|
|
279
278
|
set.add(code)
|
|
280
279
|
|
|
281
|
-
def remove_from_set(self, pred: Callable[[Any], bool],
|
|
282
|
-
set: Set[int]) -> None:
|
|
280
|
+
def remove_from_set(self, pred: Callable[[Any], bool], set: set) -> None:
|
|
283
281
|
"""Remove values `pred` returns `True` from `set[int]`."""
|
|
284
282
|
for code in self.codes_for(pred):
|
|
285
283
|
set.discard(code)
|
|
286
284
|
|
|
287
|
-
def to_set(self, pred: Callable[[Any], bool]) ->
|
|
285
|
+
def to_set(self, pred: Callable[[Any], bool]) -> set:
|
|
288
286
|
"""Returns a `set[int]` of values `pred` returns `True`."""
|
|
289
|
-
s = set()
|
|
287
|
+
s = set()
|
|
290
288
|
self.add_to_set(pred, s)
|
|
291
289
|
return s
|
|
292
290
|
|
|
@@ -30,6 +30,22 @@ class UnicodeDataReader(object):
|
|
|
30
30
|
) -> None:
|
|
31
31
|
self.url_template = url_template
|
|
32
32
|
|
|
33
|
+
class Context(object):
|
|
34
|
+
"""This class changes `UnicodeDataReader.default` while in the context,
|
|
35
|
+
and restores when exit."""
|
|
36
|
+
|
|
37
|
+
def __init__(self, reader: 'UnicodeDataReader') -> None:
|
|
38
|
+
self.reader = reader
|
|
39
|
+
|
|
40
|
+
def __enter__(self):
|
|
41
|
+
self.saved_default = UnicodeDataReader.default
|
|
42
|
+
UnicodeDataReader.default = self.reader
|
|
43
|
+
return self.reader
|
|
44
|
+
|
|
45
|
+
def __exit__(self, exc_type, exc_val, exc_tb):
|
|
46
|
+
UnicodeDataReader.default = self.saved_default
|
|
47
|
+
return None
|
|
48
|
+
|
|
33
49
|
def bidi_brackets(self) -> UnicodeDataEntries:
|
|
34
50
|
name = 'BidiBrackets'
|
|
35
51
|
lines = self.read_lines(name)
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
from typing import Any
|
|
2
2
|
from typing import Callable
|
|
3
3
|
from typing import Iterable
|
|
4
|
-
from typing import
|
|
4
|
+
from typing import Optional
|
|
5
5
|
|
|
6
6
|
from unicodedata_reader.entry import *
|
|
7
7
|
from unicodedata_reader.reader import *
|
|
@@ -11,9 +11,9 @@ class Set(object):
|
|
|
11
11
|
"""A simple wrapper of a `set` of Unicode code points."""
|
|
12
12
|
|
|
13
13
|
def __init__(self,
|
|
14
|
-
entries: UnicodeDataEntries = None,
|
|
15
|
-
pred: Callable[[Any], bool] = None) -> None:
|
|
16
|
-
self.set = set()
|
|
14
|
+
entries: Optional[UnicodeDataEntries] = None,
|
|
15
|
+
pred: Optional[Callable[[Any], bool]] = None) -> None:
|
|
16
|
+
self.set = set()
|
|
17
17
|
if entries:
|
|
18
18
|
self.add_entries(entries, pred)
|
|
19
19
|
|
|
@@ -46,25 +46,21 @@ class Set(object):
|
|
|
46
46
|
entries.add_to_set(pred, self.set)
|
|
47
47
|
|
|
48
48
|
@staticmethod
|
|
49
|
-
def east_asian_width(
|
|
50
|
-
|
|
51
|
-
reader: UnicodeDataReader = UnicodeDataReader.default) -> 'Set':
|
|
49
|
+
def east_asian_width(value: str) -> 'Set':
|
|
50
|
+
reader = UnicodeDataReader.default
|
|
52
51
|
return Set(reader.east_asian_width(), lambda v: v == value)
|
|
53
52
|
|
|
54
53
|
@staticmethod
|
|
55
|
-
def general_category(
|
|
56
|
-
|
|
57
|
-
reader: UnicodeDataReader = UnicodeDataReader.default) -> 'Set':
|
|
54
|
+
def general_category(value: str) -> 'Set':
|
|
55
|
+
reader = UnicodeDataReader.default
|
|
58
56
|
return Set(reader.general_category(), lambda v: v.startswith(value))
|
|
59
57
|
|
|
60
58
|
@staticmethod
|
|
61
|
-
def scripts(
|
|
62
|
-
|
|
63
|
-
reader: UnicodeDataReader = UnicodeDataReader.default) -> 'Set':
|
|
59
|
+
def scripts(value: str) -> 'Set':
|
|
60
|
+
reader = UnicodeDataReader.default
|
|
64
61
|
return Set(reader.scripts(), lambda v: v == value)
|
|
65
62
|
|
|
66
63
|
@staticmethod
|
|
67
|
-
def script_extensions(
|
|
68
|
-
|
|
69
|
-
reader: UnicodeDataReader = UnicodeDataReader.default) -> 'Set':
|
|
64
|
+
def script_extensions(value: str) -> 'Set':
|
|
65
|
+
reader = UnicodeDataReader.default
|
|
70
66
|
return Set(reader.script_extensions(), lambda v: value in v)
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{unicodedata_reader-1.3.2 → unicodedata_reader-1.3.3}/unicodedata_reader/east_asian_width.py
RENAMED
|
File without changes
|
|
File without changes
|
{unicodedata_reader-1.3.2 → unicodedata_reader-1.3.3}/unicodedata_reader/general_category.py
RENAMED
|
File without changes
|
|
File without changes
|
{unicodedata_reader-1.3.2 → unicodedata_reader-1.3.3}/unicodedata_reader/vertical_orientation.py
RENAMED
|
File without changes
|