Polywrap Plugin package
Project description
This package contains the runtime for the Polywrap plugin system.
Quickstart
Imports
>>> from typing import Any, Dict, List, Union, Optional, cast >>> from polywrap_manifest import AnyWrapManifest >>> from polywrap_plugin import PluginModule >>> from polywrap_core import InvokerClient, Uri
Define a plugin module
>>> class GreetingModule(PluginModule[None]): ... def __init__(self, config: None): ... super().__init__(config) ... ... def greeting(self, args: Dict[str, Any], client: InvokerClient, env: Optional[Any] = None): ... return f"Greetings from: {args['name']}"
Create a plugin wrapper
>>> greeting_module = GreetingModule(None) >>> manifest = cast(AnyWrapManifest, NotImplemented) >>> wrapper = PluginWrapper(greeting_module, manifest)
Invocation
>>> args = { ... "name": "Joe" ... } >>> result = wrapper.invoke( ... uri=Uri.from_str("ens/greeting.eth"), ... method="greeting", ... args=args, ... client=cast(InvokerClient, NotImplemented), ... ) >>> assert result.result == "Greetings from: Joe"
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for polywrap_plugin-0.1.0b8-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 15c2d74a3fc58f49cc50548fe60e16ff9e8a71136f1a08c999ce1eb38f259405 |
|
MD5 | c5d1adb71102944cabeb1555af8121f0 |
|
BLAKE2b-256 | e54b6e77237a94265e46582dd3a2b11445137cae73fef13cbfde566719da471c |