Module flod.traits

This module defines templates for determining characteristics of stream components at compile time.

Templates

Name Description
CommonType Aliases to the element type can be accepted by both Source and Sink stages. If both can work on any types and do not specify defaults, CommonType aliases to DefaultType.
DefaultAllocType
DefaultPeekType
FixedAllocType
FixedPeekType
FixedPullType
FixedPushType

Enum values

Name Type Description
areCompatible Returns true if S[0] is a source and S[1] is a sink and they both use the same method of passing data.
isActiveSink
isActiveSource
isAllocable
isAllocSink Returns true if S is a sink to which data can be written by calling alloc() and commit().
isAllocSource Returns true if S is a source which writes data by calling alloc() and commit().
isPassiveSink
isPassiveSource
isPeekable
isPeekSink Returns true if S is a sink which reads data by calling peek() and consume().
isPeekSource Returns true if S is a source from which data can be read by calling peek() and consume().
isPullable
isPullSink Returns true if S is a sink which reads data by calling pull().
isPullSource Returns true if S is a source from which data can be read by calling pull().
isPushable
isPushSink Returns true if S is a sink to which data can be written by calling push().
isPushSource Returns true if S is a source which writes data by calling push().
isRunnable
isSink Returns true if S is a sink of any kind.
isSinkOnly Returns true if S is a sink but not a source.
isSource Returns true if S is a source of any kind.
isSourceOnly Returns true if S is a source but not a sink.
isStage Returns true if S is a source or a sink.

Authors

Adrian Matoga

Copyright

© 2016 Adrian Matoga

License

Boost License 1.0.