#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

#269 in Data structures

Download history 270/week @ 2024-08-28 168/week @ 2024-09-04 1127/week @ 2024-09-11 1140/week @ 2024-09-18 689/week @ 2024-09-25 3027/week @ 2024-10-02 850/week @ 2024-10-09 1119/week @ 2024-10-16 1198/week @ 2024-10-23 1106/week @ 2024-10-30 1567/week @ 2024-11-06 232/week @ 2024-11-13

4,112 downloads per month
Used in 5 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
~24K SLoC