User Documentation
RAVL, Recognition And Vision Library
DEVELOP HOME PAGE CLASS LIST CONTENTS
Ravl - Logic - BindSetC
 

  PUBLIC
BindSetC::BindSetC(void)
BindSetC::BindSetC(bool)
BindSetC::BindSetC(const HashC &)
BindSetC::IsBound(const LiteralC &) const
BindSetC::Resolve(const LiteralC &,LiteralC &) const
BindSetC::Resolve(const LiteralC &) const
BindSetC::operator [](const LiteralC &) const
BindSetC::Bind(const LiteralC &,const LiteralC &)
BindSetC::Mark(void) const
BindSetC::Undo(BindMarkT)
BindSetC::Undo(LiteralC)
BindSetC::Size(void) const
BindSetC::Empty(void)
BindSetC::Iter(void)
BindSetC::Name(void) const
RCHandleC::operator =(const RCHandleC &)
RCHandleC::DeepCopy(UIntT) const
RCHandleC::operator ==(const RCHandleC &) const
RCHandleC::operator !=(const RCHandleC &) const
RCHandleC::Hash(void) const
RCHandleC::IsValid(void) const
RCHandleC::Invalidate(void)
RCHandleC::IsHandleType(const DT &) const
RCHandleC::CheckHandleType(const DT &) const
RCHandleC::References(void) const
RCHandleC::operator <<(ostream &,const RCHandleC &)
RCHandleC::operator >>(istream &,RCHandleC &)

   BindSetC   
 
Set of bindings.
 
include "Ravl/Logic/BindSet.hh"
User Level:Normal
Library:RavlLogic
In Scope:RavlLogicN

Comments:
Note: This is a small object.

Parent Classes: Methods:
BindSetC()
Default constructor.
Creates an invalid handle.

BindSetC(bool)
Constructor.
Creates an empty bind set.

BindSetC(const HashC<LiteralC,LiteralC> & tab)
Construct from a table of mappings.

bool IsBound(const LiteralC & var) const
Is variable bound ?

bool Resolve(const LiteralC & var,LiteralC & x) const
Resolve value
Lookup 'var' in set, if found assign its value to 'x' and return true, otherwise return false.

LiteralC Resolve(const LiteralC & var) const
Resolve a binding.
return the value 'var' is bound to, or if its a free variable 'var' itself.

LiteralC operator [](const LiteralC & var) const
Resolve a binding.

bool Bind(const LiteralC & var,const LiteralC & val)
Attempty to bind a value to var.
Will fail if var is already bound.

BindMarkT Mark() const
Mark the current set of bindings.

void Undo(BindMarkT bm)
Undo bindings to marked place.

void Undo(LiteralC var)
Undo bindings done after and including var.

UIntT Size() const
Get the number of binds in set.

void Empty()
Remove all bindings from set.

HashIterC<LiteralC,BindC> Iter()
Iterate through binds.

StringC Name() const
Bind set as string.

#include "Ravl/RefCounter.hh"
const RCHandleC<BindSetBodyC> & operator =(const RCHandleC<BindSetBodyC> & oth)
Assign handle.

RCHandleC<BindSetBodyC> DeepCopy(UIntT levels = ((UIntT))) const
Do a deep copy of the object.

bool operator ==(const RCHandleC<BindSetBodyC> & oth) const
Are handles to the same object ?

bool operator !=(const RCHandleC<BindSetBodyC> & oth) const
Are handles to different objects ?

UIntT Hash() const
Default hash function.
This hashes on the address of the body.

bool IsValid() const
Test if this is a valid handle.

void Invalidate()
Invalidate this handle.
Unattaches the body from the handle.

bool IsHandleType(const DT &) const
Is handle of given type ?

void CheckHandleType(const DT & dummy) const
Check handle type. Throw an expception if not.

UIntT References() const
Find the number of references to the body of this object.

ostream & operator <<(ostream & strm,const RCHandleC<BindSetBodyC> & obj)

istream & operator >>(istream & strm,RCHandleC<BindSetBodyC> & obj)


Maintainer:Charles Galambos, Documentation by CxxDoc: Tue Aug 13 09:59:02 2002