Metadata-Version: 2.4
Name: yggdryl
Version: 0.1.0
Classifier: Programming Language :: Rust
Classifier: Programming Language :: Python :: 3
Classifier: License :: OSI Approved :: Apache Software License
Requires-Dist: pytest>=7.0 ; extra == 'test'
Provides-Extra: test
Summary: yggdryl — a Rust-core URI/URL library, exposed to Python
Keywords: uri,url,parser,rust,yggdryl
Home-Page: https://github.com/Platob/yggdryl
Author: yggdryl contributors
License: Apache-2.0
Requires-Python: >=3.8
Description-Content-Type: text/markdown; charset=UTF-8; variant=GFM
Project-URL: Homepage, https://github.com/Platob/yggdryl
Project-URL: Repository, https://github.com/Platob/yggdryl

# yggdryl (Python)

Python bindings for [**yggdryl**](https://github.com/Platob/yggdryl), backed by
the Rust `yggdryl` core crate.

## Install

```bash
pip install maturin
maturin develop          # build & install into the current virtualenv
# or build a wheel:
maturin build --release
```

## Usage

```python
import yggdryl

uri = yggdryl.Uri("urn:isbn:0451450523")
print(uri.scheme)              # urn
print(uri.path)                # isbn:0451450523

url = yggdryl.Url("https://user:pw@example.com:8443/api?v=1#top")
print(url.host)                # example.com
print(url.port)                # 8443
print(url.username)            # user
print(str(url))                # https://user:pw@example.com:8443/api?v=1#top
```

Invalid input raises `ValueError`.

