mirror of
https://github.com/bolero-MURAKAMI/Sprout.git
synced 2024-11-14 10:39:05 +00:00
8f818ee63f
add compiler supports
144 lines
5.7 KiB
Text
144 lines
5.7 KiB
Text
Sprout C++ Library
|
||
|
||
C++11 constexpr based Containers, Algorithms, Random numbers, Parsing, Ray tracing, and others.
|
||
|
||
このライブラリは、C++11 の constexpr に対応したコンテナ、アルゴリズム、乱数、構文解析、レイトレーシング、その他の機能を提供する。
|
||
|
||
|
||
|
||
*インストール (Install)
|
||
|
||
<sprout/*> にライブラリのディレクトリにパスを通す。
|
||
このライブラリはヘッダオンリーで使える。
|
||
(Trough the path to the directory of the library to <sprout/*>.
|
||
This library can be used in the header only.)
|
||
|
||
|
||
|
||
*主なコンテンツ (Main contents)
|
||
|
||
constexpr コンテナ (Containers)
|
||
sprout/array.hpp
|
||
sprout/string.hpp
|
||
|
||
constexpr タプル (Tuples)
|
||
sprout/tuple.hpp
|
||
|
||
constexpr バリアント (Variants)
|
||
sprout/variant.hpp
|
||
|
||
constexpr アルゴリズム (Algorithms)
|
||
sprout/algorithm.hpp
|
||
sprout/numeric.hpp
|
||
sprout/numeric/dft.hpp
|
||
|
||
constexpr 範囲アルゴリズム (Range algorithms)
|
||
sprout/range/algorithm.hpp
|
||
sprout/range/numeric.hpp
|
||
|
||
constexpr コンテナ操作 (Container operations)
|
||
sprout/operation.hpp
|
||
|
||
constexpr 乱数 (Random numbers)
|
||
sprout/random.hpp
|
||
sprout/random/unique_seed.hpp
|
||
|
||
constexpr 関数オブジェクト (functors)
|
||
sprout/functional.hpp
|
||
|
||
constexpr ハッシュ関数 (Hash functions)
|
||
sprout/checksum/sha1.hpp
|
||
sprout/functional/hash.hpp
|
||
|
||
constexpr UUID (UUID)
|
||
sprout/uuid.hpp
|
||
|
||
型リスト (Type lists)
|
||
sprout/type.hpp
|
||
|
||
コンテナアダプタ (Container adopters)
|
||
sprout/sub_array.hpp
|
||
sprout/pit.hpp
|
||
|
||
コンテナ特性 (Container traits)
|
||
sprout/container.hpp
|
||
|
||
constexpr 構文解析 (Parsing)
|
||
sprout/weed.hpp
|
||
|
||
constexpr レイトレーシング (Ray tracing)
|
||
sprout/darkroom.hpp
|
||
|
||
|
||
|
||
*コンフィグ用ユーザマクロ (User macros for configuration)
|
||
|
||
#define SPROUT_CONFIG_DISABLE_CONSTEXPR
|
||
このマクロが定義されているとき、関数は constexpr 指定されない。
|
||
コンパイラが constexpr に対応していない場合、これを定義すべき。
|
||
通常、これはコンパイラに応じて自動的に定義される。
|
||
(When this macro is defined, the functions are not specified constexpr.
|
||
If the compiler does not support constexpr, should define it.
|
||
Usually, it defined automatically depending to the compiler.)
|
||
|
||
#define SPROUT_CONFIG_DISABLE_NOEXCEPT
|
||
このマクロが定義されているとき、関数は noexcept 修飾されない。
|
||
コンパイラが noexcept に対応していない場合、これを定義すべき。
|
||
通常、これはコンパイラに応じて自動的に定義される。
|
||
(When this macro is defined, the functions are not qualified noexcept.
|
||
If the compiler does not support noexcept, should define it.
|
||
Usually, it defined automatically depending to the compiler.)
|
||
|
||
#define SPROUT_CONFIG_DISABLE_TEMPLATE_ALIASES
|
||
このマクロが定義されているとき、Template aliases によるエイリアスは定義されない。
|
||
コンパイラが Template aliases に対応していない場合、これを定義すべき。
|
||
通常、これはコンパイラに応じて自動的に定義される。
|
||
(When this macro is defined, the aliases are not defined by the Template aliases.
|
||
If the compiler does not support Template aliases, should define it.
|
||
Usually, it defined automatically depending to the compiler.)
|
||
|
||
#define SPROUT_CONFIG_DISABLE_DELEGATING_CONSTRUCTORS
|
||
このマクロが定義されているとき、Delegating constructors による実装は行われない。
|
||
コンパイラが Delegating constructors に対応していない場合、これを定義すべき。
|
||
通常、これはコンパイラに応じて自動的に定義される。
|
||
(When this macro is defined, the implementation is not done by Delegating constructors.
|
||
If the compiler does not support Delegating constructors, should define it.
|
||
Usually, it defined automatically depending to the compiler.)
|
||
|
||
#define SPROUT_CONFIG_DISABLE_AUTO_CONFIG
|
||
このマクロが定義されているとき、自動的な言語機能の無効化は行われない。
|
||
(When this macro is defined, not automatically disable language features.)
|
||
|
||
#define SPROUT_CONFIG_USE_SSCRISK_CEL
|
||
このマクロが定義されているとき、実装の詳細として CEL - ConstExpr Library を使用する。
|
||
(When this macro is defined, you use the CEL - ConstExpr Library as an implementation detail.)
|
||
https://github.com/sscrisk/CEL---ConstExpr-Library
|
||
|
||
#define SPROUT_CONFIG_DISABLE_SUPPORT_TEMPORARY_CONTAINER_ITERATION
|
||
このマクロが定義されているとき、アルゴリズムへのコンテナの一時オブジェクト渡しをサポートしない。
|
||
(When this macro is defined, does not support passing a temporary object of the container to the algorithm.)
|
||
|
||
#define SPROUT_CONFIG_SUPPORT_TEMPORARY_CONTAINER_ITERATION
|
||
このマクロは非推奨です。
|
||
(This macro is deprecated.)
|
||
|
||
これらのマクロを定義するのは、このライブラリのどのヘッダをインクルードするよりも以前でなければならない。
|
||
(To define these macros must be earlier than any of this library to include the header.)
|
||
|
||
|
||
|
||
*作者 (Author)
|
||
|
||
Bolero MURAKAMI
|
||
Blog: http://d.hatena.ne.jp/boleros/
|
||
Twitter: https://twitter.com/#!/bolero_MURAKAMI
|
||
Mail: contact-lib@boleros.x0.com
|
||
|
||
|
||
|
||
*著作権等 (Copyrights)
|
||
|
||
このライブラリは Boost Software License の元で公開されています。
|
||
|
||
Copyright (C) 2011-2012 Bolero MURAKAMI.
|
||
Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
|