ABC: A System for Sequential Synthesis and Verification
 
Loading...
Searching...
No Matches
Gluco::lbool Class Reference

#include <SolverTypes.h>

Public Member Functions

 lbool (uint8_t v)
 
 lbool ()
 
 lbool (bool x)
 
bool operator== (lbool b) const
 
bool operator!= (lbool b) const
 
lbool operator^ (bool b) const
 
lbool operator&& (lbool b) const
 
lbool operator|| (lbool b) const
 

Friends

int toInt (lbool l)
 
lbool toLbool (int v)
 

Detailed Description

Definition at line 97 of file SolverTypes.h.

Constructor & Destructor Documentation

◆ lbool() [1/3]

Gluco::lbool::lbool ( uint8_t v)
inlineexplicit

Definition at line 101 of file SolverTypes.h.

101: value(v) { }
Here is the caller graph for this function:

◆ lbool() [2/3]

Gluco::lbool::lbool ( )
inline

Definition at line 103 of file SolverTypes.h.

103: value(0) { }
Here is the caller graph for this function:

◆ lbool() [3/3]

Gluco::lbool::lbool ( bool x)
inlineexplicit

Definition at line 104 of file SolverTypes.h.

104: value(!x) { }

Member Function Documentation

◆ operator!=()

bool Gluco::lbool::operator!= ( lbool b) const
inline

Definition at line 107 of file SolverTypes.h.

107{ return !(*this == b); }
Here is the call graph for this function:

◆ operator&&()

lbool Gluco::lbool::operator&& ( lbool b) const
inline

Definition at line 110 of file SolverTypes.h.

110 {
111 uint8_t sel = (this->value << 1) | (b.value << 3);
112 uint8_t v = (0xF7F755F4 >> sel) & 3;
113 return lbool(v); }
ABC_NAMESPACE_HEADER_START typedef unsigned char uint8_t
Definition Fxch.h:31
Here is the call graph for this function:

◆ operator==()

bool Gluco::lbool::operator== ( lbool b) const
inline

Definition at line 106 of file SolverTypes.h.

106{ return (((b.value&2) & (value&2)) | (!(b.value&2)&(value == b.value))) != 0; }
Here is the call graph for this function:

◆ operator^()

lbool Gluco::lbool::operator^ ( bool b) const
inline

Definition at line 108 of file SolverTypes.h.

108{ return lbool((uint8_t)(value^(uint8_t)b)); }
Here is the call graph for this function:

◆ operator||()

lbool Gluco::lbool::operator|| ( lbool b) const
inline

Definition at line 115 of file SolverTypes.h.

115 {
116 uint8_t sel = (this->value << 1) | (b.value << 3);
117 uint8_t v = (0xFCFCF400 >> sel) & 3;
118 return lbool(v); }
Here is the call graph for this function:

Friends And Related Symbol Documentation

◆ toInt

int toInt ( lbool l)
friend

Definition at line 123 of file SolverTypes.h.

123{ return l.value; }

◆ toLbool

lbool toLbool ( int v)
friend

Definition at line 117 of file SolverTypes.h.

117{ return lbool((uint8_t)v); }

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