Skip to content

Commit f2c6efa

Browse files
committed
feature: update Readme to match api changes
1 parent 777e325 commit f2c6efa

2 files changed

Lines changed: 27 additions & 26 deletions

File tree

README.md

Lines changed: 26 additions & 26 deletions
Original file line numberDiff line numberDiff line change
@@ -18,13 +18,13 @@ pip install streamson
1818
>>> import json
1919
>>> data = [b'{"users": ["john","carl","bob"], "groups": ["admins", "staff"], "org": "university"}']
2020
>>> matcher = streamson.SimpleMatcher('{"users"}[]'])
21-
>>> extracted = streamson.extract_iter((e for e in data), matcher, json.loads)
22-
>>> for path, parsed in extracted:
23-
... path, parsed
21+
>>> extracted = streamson.extract_iter((e for e in data), [(matcher, None)])
22+
>>> for path, data in streamson.Output(extracted).generator():
23+
... path, data
2424
...
25-
('{"users"}[0]', 'john')
26-
('{"users"}[1]', 'carl')
27-
('{"users"}[2]', 'bob')
25+
('{"users"}[0]', b'"john"')
26+
('{"users"}[1]', b'"carl"')
27+
('{"users"}[2]', b'"bob"')
2828
```
2929

3030
### Select users and groups
@@ -33,15 +33,15 @@ pip install streamson
3333
>>> import json
3434
>>> data = [b'{"users": ["john","carl","bob"], "groups": ["admins", "staff"], "org": "university"}']
3535
>>> matcher = streamson.SimpleMatcher('{"users"}[]']) | streamson.SimpleMatcher('{"groups"}[]'])
36-
>>> extracted = streamson.extract_iter((e for e in data), matcher, json.loads)
37-
>>> for path, parsed in extracted:
38-
... path, parsed
36+
>>> extracted = streamson.extract_iter((e for e in data), [(matcher, None)])
37+
>>> for path, data in streamson.Output(extracted):
38+
... path, data
3939
...
40-
('{"users"}[0]', 'john')
41-
('{"users"}[1]', 'carl')
42-
('{"users"}[2]', 'bob')
43-
('{"groups"}[0]', 'admins')
44-
('{"groups"}[1]', 'staff')
40+
('{"users"}[0]', b'"john"')
41+
('{"users"}[1]', b'"carl"')
42+
('{"users"}[2]', b'"bob"')
43+
('{"groups"}[0]', b'"admins"')
44+
('{"groups"}[1]', b'"staff"')
4545
```
4646

4747
### Select only first level parts
@@ -50,13 +50,13 @@ pip install streamson
5050
>>> import json
5151
>>> data = [b'{"users": ["john","carl","bob"], "groups": ["admins", "staff"], "org": "university"}']
5252
>>> matcher = streamson.DepthMatcher(1, 1)
53-
>>> extracted = streamson.extract_iter((e for e in data), matcher, json.loads)
54-
>>> for path, parsed in extracted:
55-
... path, parsed
53+
>>> extracted = streamson.extract_iter((e for e in data), [(matcher, None)])
54+
>>> for path, data in streamson.Output(extracted):
55+
... path, data
5656
...
57-
('{"users"}', ['john', 'carl', 'bob'])
58-
('{"groups"}', ['admins', 'staff'])
59-
('{"org"}', 'university')
57+
('{"users"}', b'["john", "carl", "bob"]')
58+
('{"groups"}', b'["admins", "staff"]')
59+
('{"org"}', b'"university"')
6060
```
6161

6262
### Select second first level parts exclude first records
@@ -65,13 +65,13 @@ pip install streamson
6565
>>> import json
6666
>>> data = [b'{"users": ["john","carl","bob"], "groups": ["admins", "staff"], "org": "university"}']
6767
>>> matcher = streamson.DepthMatcher(2, 2) & ~streamson.SimpleMatcher('{}[0]')
68-
>>> extracted = streamson.extract_iter((e for e in data), matcher, json.loads)
69-
>>> for path, parsed in extracted:
70-
... path, parsed
68+
>>> extracted = streamson.extract_iter((e for e in data), [(matcher, None)])
69+
>>> for path, data in streamson.Output(extracted):
70+
... path, data
7171
...
72-
('{"users"}[1]', 'carl')
73-
('{"users"}[2]', 'bob')
74-
('{"groups"}[1]', 'staff')
72+
('{"users"}[1]', b'"carl"')
73+
('{"users"}[2]', b'"bob"')
74+
('{"groups"}[1]', b'"staff"')
7575
```
7676

7777

streamson/__init__.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,4 +4,5 @@
44
from .filter import filter_async, filter_fd, filter_iter # noqa
55
from .handler import * # noqa
66
from .matcher import DepthMatcher, Matcher, RegexMatcher, SimpleMatcher # noqa
7+
from .output import Output # noqa
78
from .trigger import trigger_async, trigger_fd, trigger_iter # noqa

0 commit comments

Comments
 (0)