#enums #three #variant #sum #left #right

no-std among

The enum Among with variants Left, Middle and Right is a general purpose sum type with three cases

7 releases

0.1.7 Oct 14, 2024
0.1.6 Oct 8, 2024
0.1.2 Sep 14, 2024

#388 in Data structures

Download history 361/week @ 2024-09-02 1135/week @ 2024-09-09 874/week @ 2024-09-16 739/week @ 2024-09-23 1511/week @ 2024-09-30 2189/week @ 2024-10-07 1429/week @ 2024-10-14 1020/week @ 2024-10-21 1403/week @ 2024-10-28 699/week @ 2024-11-04 1094/week @ 2024-11-11 121/week @ 2024-11-18 266/week @ 2024-11-25 137/week @ 2024-12-02

2,033 downloads per month
Used in 6 crates (4 directly)

MIT/Apache

100KB
2K SLoC

Among

The enum Among with variants Left, Middle and Right is a general purpose sum type with three cases.

github LoC Build

docs.rs crates.io crates.io license

English | 简体中文

Introduction

The enum Among with variants Left, Middle and Right and trait implementations.

Installation

  • Use with default feature

    [dependencies]
    among = "0.1"
    
  • Use without std and alloc

    [dependencies]
    among = { version = "0.1", default-features = false }
    
  • Enable futures feature to enable trait implementation including futures::io::AsyncRead, futures::io::AsyncBufRead, futures::io::AsyncWrite, and futures::io::AsyncSeek.

    [dependencies]
    among = { version = "0.1", features = ["futures", "std"] }
    
  • Enable tokio feature to enable trait implementation including tokio::io::AsyncRead, tokio::io::AsyncBufRead, tokio::io::AsyncWrite and tokio::io::AsyncSeek.

    [dependencies]
    among = { version = "0.1", features = ["tokio", "std"] }
    

Pedigree

This code is inspired and modified based on rayon-rs/either.

License

among is under the terms of both the MIT license and the Apache License (Version 2.0).

See LICENSE-APACHE, LICENSE-MIT for details.

Copyright (c) 2024 Al Liu.

Dependencies

~0–6MB
~23K SLoC