https://github.com/prabirshrestha/lua-callbag
https://github.com/prabirshrestha/lua-callbag
Last synced: about 2 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/prabirshrestha/lua-callbag
- Owner: prabirshrestha
- License: mit
- Created: 2020-05-09T17:46:24.000Z (about 5 years ago)
- Default Branch: master
- Last Pushed: 2023-12-03T04:27:17.000Z (over 1 year ago)
- Last Synced: 2024-10-02T17:34:57.017Z (8 months ago)
- Language: Lua
- Size: 23.4 KB
- Stars: 7
- Watchers: 3
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# lua-callbag
Lightweight observables and iterables for Lua based on [Callbag Spec](https://github.com/callbag/callbag).
## Source Factories
| Implemented | Name |
|---------------|--------------------------------------------------------|
| Yes | create |
| Yes | empty |
| Yes | fromEvent |
| Yes | fromIPairs |
| No | fromPromise |
| No | interval |
| Yes | lazy |
| Yes | never |
| No | of |
| No | throwError |## Sink Factories
| Implemented | Name |
|---------------|--------------------------------------------------------|
| Yes | forEach |
| Yes | subscribe |
| No | toList |## Multicasting
| Implemented | Name |
|---------------|--------------------------------------------------------|
| Yes | makeSubject |
| No | share |## Operators
| Implemented | Name |
|---------------|--------------------------------------------------------|
| No | combine |
| No | concat |
| Yes | debounceTime |
| No | delay |
| Yes | distinctUntilChanged |
| Yes | filter |
| No | flatten |
| No | group |
| Yes | map |
| No | materialize |
| Yes | merge |
| No | scan |
| Yes | switchMap |
| No | take |
| Yes | takeUntil |
| No | takeWhile |
| Yes | tap |
| No | dematerialize |
| No | concatWith |
| No | mergeWith |
| No | rescue |
| No | retry |
| No | skip |
| No | throttle |
| No | timeout |## Vim Job and Channels
| Implemented | Name |
|---------------|--------------------------------------------------------|
| Neovim only | spawn |`spawn` uses `vim.loop` in Neovim.
## Utils
| Implemented | Name |
|---------------|--------------------------------------------------------|
| No | operate |
| Yes | pipe |`pipe()`'s first argument should be a source factory.
`operate()` doesn't requires first function to be the source.## License
MIT
## Author
Prabir Shrestha