BaseEnc Struct Reference

Private and protected interface of class 'BaseEnc'. More...

#include <BaseEnc_private.h>

Public Member Functions

 INHERITS_FROM (EnvObject)

Data Fields

void(* commit_layer )(BaseEnc_ptr self, const char *layer_name)
NodeList_ptr committed_layers
array_tlayer_names
void(* remove_layer )(BaseEnc_ptr self, const char *layer_name)
SymbTable_ptr symb_table

Related Functions

(Note that these are not member functions.)



void base_enc_commit_layer (BaseEnc_ptr self, const char *layer_name)
void base_enc_deinit (BaseEnc_ptr self)
void base_enc_init (BaseEnc_ptr self, SymbTable_ptr symb_table)
void base_enc_remove_layer (BaseEnc_ptr self, const char *layer_name)
VIRTUAL void BaseEnc_commit_layer (BaseEnc_ptr self, const char *layer_name)
 Call this method to enter a new layer. All variables occurring in the layer, will be encoded as a result.
int BaseEnc_commit_layers (BaseEnc_ptr self, const array_t *layer_names)
 Commits all layers which have not been committed yet.
VIRTUAL void BaseEnc_destroy (BaseEnc_ptr self)
 The BaseEnc class destructor.
const array_tBaseEnc_get_committed_layer_names (BaseEnc_ptr self)
 Returns the list of names of the committed layers.
NodeList_ptr BaseEnc_get_committed_layers (const BaseEnc_ptr self)
 Returns the list of the committed layers.
SymbTable_ptr BaseEnc_get_symb_table (const BaseEnc_ptr self)
 Returns the SymbTable that self uses.
TypeChecker_ptr BaseEnc_get_type_checker (const BaseEnc_ptr self)
 Returns the type checker instance owned by the SymbTable that self uses.
boolean BaseEnc_layer_occurs (const BaseEnc_ptr self, const char *layer_name)
 Returns true whether the given layer name is the name of a layer that is currently committed to self.
VIRTUAL void BaseEnc_remove_layer (BaseEnc_ptr self, const char *layer_name)
 Call this method to remove an already committed layer. All variables occurring in the layer will be removed as a result. It will no longer allowed to use those variables within expressions encoded by self.
int BaseEnc_remove_layers (BaseEnc_ptr self, const array_t *layer_names)
 Removes all layers which have been actually committed.

Detailed Description

Private and protected interface of class 'BaseEnc'.

Public interface of class 'BaseEnc'.

Author:
Roberto Cavada This file can be included only by derived and friend classes

BaseEnc class definition derived from class Object

See also:
Base class Object
Author:
Roberto Cavada
Todo:
: Missing description

Definition of the public accessor for class BaseEnc


Member Function Documentation

BaseEnc::INHERITS_FROM ( EnvObject   ) 

Friends And Related Function Documentation

void base_enc_commit_layer ( BaseEnc_ptr  self,
const char *  layer_name 
) [related]
void base_enc_deinit ( BaseEnc_ptr  self  )  [related]
void base_enc_init ( BaseEnc_ptr  self,
SymbTable_ptr  symb_table 
) [related]
void base_enc_remove_layer ( BaseEnc_ptr  self,
const char *  layer_name 
) [related]
VIRTUAL void BaseEnc_commit_layer ( BaseEnc_ptr  self,
const char *  layer_name 
) [related]

Call this method to enter a new layer. All variables occurring in the layer, will be encoded as a result.

This method is virtual. The result of the encoding depends on the actual instance (its actual class) it is invoked on.

int BaseEnc_commit_layers ( BaseEnc_ptr  self,
const array_t layer_names 
) [related]

Commits all layers which have not been committed yet.

Use this to commit e.g. all layers already committed to another encoder. Returns the number of committed layers

VIRTUAL void BaseEnc_destroy ( BaseEnc_ptr  self  )  [related]

The BaseEnc class destructor.

The BaseEnc class destructor. Since this class is pure there is no constructor.

const array_t * BaseEnc_get_committed_layer_names ( BaseEnc_ptr  self  )  [related]

Returns the list of names of the committed layers.

Returned array belongs to self. Do not store it permanently, change or delete it. If you commit or remove a layer into self, any previoulsy returned array will become invalid.

NodeList_ptr BaseEnc_get_committed_layers ( const BaseEnc_ptr  self  )  [related]

Returns the list of the committed layers.

Returned list is a list of SymbLayer instances. The returned list is ordered wrt to layers insert policy. The list and its content still belongs to self, do not destroy or change it

SymbTable_ptr BaseEnc_get_symb_table ( const BaseEnc_ptr  self  )  [related]

Returns the SymbTable that self uses.

AutomaticStart

Returns the SymbTable that self uses. Returned instance belongs to self, do not destroy it.

See also:
BaseEnc_get_type_checker
TypeChecker_ptr BaseEnc_get_type_checker ( const BaseEnc_ptr  self  )  [related]

Returns the type checker instance owned by the SymbTable that self uses.

Returns the type checker instance owned by the SymbTable that self uses. Returned instance belongs to self, do not destroy it.

See also:
BaseEnc_get_symb_table
boolean BaseEnc_layer_occurs ( const BaseEnc_ptr  self,
const char *  layer_name 
) [related]

Returns true whether the given layer name is the name of a layer that is currently committed to self.

VIRTUAL void BaseEnc_remove_layer ( BaseEnc_ptr  self,
const char *  layer_name 
) [related]

Call this method to remove an already committed layer. All variables occurring in the layer will be removed as a result. It will no longer allowed to use those variables within expressions encoded by self.

This method is virtual. The result of the removal depends on the actual instance (its actual class) it is invoked on.

int BaseEnc_remove_layers ( BaseEnc_ptr  self,
const array_t layer_names 
) [related]

Removes all layers which have been actually committed.

Use this to remove a bunch of layers. Only the layers which have been previously committed will be actually removed, all the other will be ignored. Returns the number of committed layers

See also:
BaseEnc_commit_layers

Field Documentation

void(* BaseEnc::commit_layer)(BaseEnc_ptr self, const char *layer_name)
void(* BaseEnc::remove_layer)(BaseEnc_ptr self, const char *layer_name)

The documentation for this struct was generated from the following files:
All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Defines

Generated on 14 Oct 2015 for NuSMV Developers Manual by  doxygen 1.6.1