Polymake Template Library (PTL) 4.12
Public Types | Static Public Attributes | List of all members
pm::list_search< First, Second, Predicate > Struct Template Reference

#include <type_manip.h>

Inheritance diagram for pm::list_search< First, Second, Predicate >:
Inheritance graph
[legend]

Public Types

typedef std::conditional< value, First, void >::type positive
 elements from First matching the predicate
 
typedef std::conditional< value, void, First >::type negative
 complement
 
typedef std::conditional< value, Second, void >::type positive2
 Second if there is at least one matching pair.
 
typedef std::conditional< value, void, Second >::type negative2
 complement
 

Static Public Attributes

static const bool value =Predicate<First,Second>::value
 whether at least one pair found
 
static const int pos = value ? 0 : -1
 where it was found
 

Detailed Description

template<typename First, typename Second, template< typename, typename > class Predicate>
struct pm::list_search< First, Second, Predicate >

Determine element pairs yielding Predicate::value==true The primary template handles the case of $First$ and $Second$ being scalars, while the general case of $First$ being a list is handled in specializations.

list_search is a simplified function, it terminates as soon as one matching pair is found.


The documentation for this struct was generated from the following file: