Crate ougi

Source
Expand description

§Ougi (扇)

「開けば広がり、閉じれば狭まる」(扇絵師の独り言)

Ougi は、数値型においてビット数を倍化・半化することができるトレイトを実装したクレート。

§特徴

  • プリミティブ型に完全に対応: プリミティブな数値型に対して、ビット数を倍化・半化するトレイトが実装済み
  • カスタム型に対応: BitDouble トレイトや BitHalf トレイトなどを実装することで、カスタム型にも対応可能
  • kago との互換性: 任意のビット幅整数型を扱う kago クレートと組み合わせて使用することが可能

§注意点

基本的には関連型が実装されているのみで、内部的には単なる From/IntoTryFrom/TryInto の呼び出し。 よって、どのように倍加・半化されるかは、それらの実装に依存する。 また、半化の場合は、情報が失われる可能性が高い。

§feature ごとの注意点

  • f64_to_f32 フィーチャーを有効にすると、f64 型から f32 型への変換が可能になる。 これは、 num-traits クレートの ToPrimitive トレイトを利用している。

§名前の由来

「Ougi (扇)」は、データを広げたり閉じたりすることができる“扇”としての性質に由来している。

§想定される用途

数値型を扱う際に、トレイト境界を利用した関数などの実装において、 ビット数を柔軟に変更したい場合に利用されることを想定している。

Traits§

BitDouble
ビット数を倍加するトレイト
BitHalf
ビット数を半化するトレイト