34 lines
516 B
C
34 lines
516 B
C
#ifndef _extend_h_INCLUDED
|
|
#define _extend_h_INCLUDED
|
|
|
|
#include "stack.h"
|
|
#include "utilities.h"
|
|
|
|
typedef struct extension extension;
|
|
|
|
struct extension
|
|
{
|
|
signed int lit:31;
|
|
bool blocking:1;
|
|
};
|
|
|
|
// *INDENT-OFF*
|
|
typedef STACK (extension) extensions;
|
|
// *INDENT-ON*
|
|
|
|
static inline extension
|
|
kissat_extension (bool blocking, int lit)
|
|
{
|
|
assert (ABS (lit) < (1 << 30));
|
|
extension res;
|
|
res.blocking = blocking;
|
|
res.lit = lit;
|
|
return res;
|
|
}
|
|
|
|
struct kissat;
|
|
|
|
void kissat_extend (struct kissat *solver);
|
|
|
|
#endif
|