8#include <kernel/util/string.hpp>
31 inline std::ostream& operator<<(std::ostream& os,
TermHandling term_handling)
35 case TermHandling::off:
37 case TermHandling::expl:
39 case TermHandling::impl:
42 return os <<
"-unknown-";
46 inline std::istream& operator>>(std::istream& is,
TermHandling& term_handling)
48 String term_handling_name;
51 if( (is >> term_handling_name).fail() )
56 if(term_handling_name ==
"off")
58 term_handling = TermHandling::off;
60 else if(term_handling_name ==
"expl")
62 term_handling = TermHandling::expl;
64 else if(term_handling_name ==
"impl")
66 term_handling = TermHandling::impl;
70 is.setstate(std::ios_base::failbit);
TermHandling
For determining if a term is handled explicitly or implicitly.