Changeset 970


Ignore:
Timestamp:
Jul 7, 2003, 10:49:40 PM (18 years ago)
Author:
sveta
Message:
  • RF_FUNC for TABLE.
Location:
to-imperative/trunk/library/Table
Files:
2 added
7 edited

Legend:

Unmodified
Added
Removed
  • to-imperative/trunk/library/Table/Makefile

    r914 r970  
    66
    77MODULES = \
    8   in_table \
    98  table \
    10   unbind \
    119  bind \
    1210  domain \
    13   lookup
    14 
     11  in_table \
     12  lookup \
     13  replace_table \
     14  table_copy \
     15  unbind
     16 
    1517SOURCES = $(addsuffix .cc, $(MODULES))
    1618OBJECTS = $(addsuffix .o, $(MODULES))
  • to-imperative/trunk/library/Table/bind.cc

    r914 r970  
    1414RF_FUNC (Bind, (RF_ARG _table, _key, _val), ())
    1515   
    16    if (_table.get_len()==1) {
    17    Term* p = _table.get_first();
    18    if (p->get_type() == type_table) {
    19          rftype::Table* _t=p->cast_to<rftype::Table>(type_table);
    20          if (!_t)
    21            FATAL("Table::Bind(): An object does'nt converted to a table");
    22         _t -> Bind(_key,_val);
    23    }
    24    else
    25      FATAL("Table::Bind(): Symbol is'nt a Table Object");   
    26    }
    27    else
    28      FATAL("Table::Bind(): Symbol expected");
     16  if (_table.get_len()==1) {
     17    Term* p = _table.get_first();
     18    if (p->get_type() == type_table) {
     19      rftype::Table* _t=p->cast_to<rftype::Table>(type_table);
     20      if (!_t)
     21        RF_LIB_ERROR("Invalid argument1");
     22      _t -> Bind(_key,_val);
     23   } else
     24     RF_LIB_ERROR("Invalid argument2");   
     25 } else
     26   RF_LIB_ERROR("Invalid argument3");
    2927
    3028RF_END
  • to-imperative/trunk/library/Table/domain.cc

    r914 r970  
    1313
    1414RF_FUNC (Domain, (RF_ARG _table), (RF_RES _res))
    15    
    16    if (_table.get_len()==1) {
    17      Term* p = _table.get_first();
    18      if (p->get_type() == type_table) {
    19          rftype::Table* t=p->cast_to<rftype::Table>(type_table);
    20          if (!t)
    21            FATAL("Table::Domain(): An object does'nt converted to a table");
    22          _res=t->Domain();
    23      }
    24      else
    25      FATAL("Table::Domain(): Symbol is'nt a Table Object");   
    26    }
    27    else
    28      FATAL("Table::Domain(): Symbol expected");
     15 
     16 if (_table.get_len()==1) {
     17    Term* p = _table.get_first();
     18      if (p->get_type() == type_table) {
     19        rftype::Table* t=p->cast_to<rftype::Table>(type_table);
     20        if (!t)
     21          RF_LIB_ERROR("Invalid argument");
     22        _res=t->Domain();
     23     } else
     24       RF_LIB_ERROR("Invalid argument");   
     25   } else
     26     RF_LIB_ERROR("Invalid argument");
    2927
    3028RF_END
  • to-imperative/trunk/library/Table/in_table.cc

    r914 r970  
    1010{
    1111
    12 RF_DECL(In_m_Table);
     12RF_DECL(In_m_Table_q_);
    1313
    14 RF_FUNC (In_m_Table, (RF_ARG _table, _key), ())
     14RF_FUNC (In_m_Table_q_, (RF_ARG _table, _key), ())
    1515   
    16    if (_table.get_len()==1) {
    17      Term* p = _table.get_first();
    18      if (p->get_type() == type_table) {
    19          rftype::Table* _t=p->cast_to<rftype::Table>(type_table);
    20          if (!_t)
    21            FATAL("Table::In_Table(): An object does'nt converted to a table");
    22          if (!(_t->In_table(_key)))
    23           retfail;
    24      }
    25      else
    26      FATAL("Table::In_Table(): Symbol is'nt a Table Object");   
    27    }
    28    else
    29      FATAL("Table::In_Table(): Symbol expected");
     16  if (_table.get_len()==1) {
     17    Term* p = _table.get_first();
     18    if (p->get_type() == type_table) {
     19      rftype::Table* _t=p->cast_to<rftype::Table>(type_table);
     20      if (!_t)
     21        RF_LIB_ERROR("Invalid argument");
     22      if (!(_t->InTable(_key)))
     23        retfail;
     24    } else
     25      RF_LIB_ERROR("Invalid argument");   
     26  } else
     27    RF_LIB_ERROR("Invalid argument");
     28
    3029RF_END
    3130
  • to-imperative/trunk/library/Table/lookup.cc

    r914 r970  
    1515   
    1616  Expr result;
    17    if (_table.get_len()==1) {
    18      Term* p = _table.get_first();
    19      if (p->get_type() == type_table) {
    20        rftype::Table*  _t = p->cast_to<rftype::Table>(type_table);         
    21        if (!_t)
    22          FATAL("Table::Lookup(): An object does'nt converted to a table"); 
    23        if (!(_t->Lookup(_key, result)))
    24          retfail;
    25        _val=result;
    26      }
    27      else
    28        FATAL("Table::Lookup(): Symbol is not table");   
    29    }
    30    else
    31      FATAL("Table::Lookup(): Symbol expected");
     17  if (_table.get_len()==1) {
     18    Term* p = _table.get_first();
     19    if (p->get_type() == type_table) {
     20      rftype::Table*  _t = p->cast_to<rftype::Table>(type_table);         
     21      if (!_t)
     22        RF_LIB_ERROR("Invalid argument"); 
     23      if (!(_t->Lookup(_key, result)))
     24        retfail;
     25      _val=result;
     26    } else
     27      RF_LIB_ERROR("Invalid argument");   
     28  } else
     29    RF_LIB_ERROR("Invalid argument");
     30
    3231RF_END
    3332
  • to-imperative/trunk/library/Table/table.cc

    r914 r970  
    1212
    1313RF_FUNC (Table, (), (RF_RES _table))
    14   _table = Expr(new rftype::Table());
     14
     15  printf("Table \n");
     16  _table = Expr (new rftype::Table());
     17  printf("Table - OK \n");
     18
    1519RF_END
    1620
  • to-imperative/trunk/library/Table/unbind.cc

    r914 r970  
    1414RF_FUNC (Unbind, (RF_ARG _table, _key), ())
    1515   
    16    if (_table.get_len()==1) {
    17      Term* p = _table.get_first();
    18      if (p->get_type() == type_table) {
    19          rftype::Table* _t=p->cast_to<rftype::Table>(type_table);
    20          if (!_t)
    21            FATAL("Table::Unbind(): An object does'nt converted to a table");
    22         _t -> Unbind(_key);
    23      }
    24     else
    25      FATAL("Table::Unbind(): Symbol is'nt a Table Object");   
    26    }
    27    else
    28      FATAL("Table::Unbind(): Symbol expected");
     16  if (_table.get_len() == 1) {
     17    Term* p = _table.get_first();
     18    if (p->get_type() == type_table) {
     19      rftype::Table* t = p->cast_to<rftype::Table>(type_table);
     20      if (!t)
     21        RF_LIB_ERROR("Invalid argument");
     22      t -> Unbind(_key);
     23    } else
     24      RF_LIB_ERROR("Invalid argument");   
     25  } else
     26    RF_LIB_ERROR("Invalid argument");
    2927
    3028RF_END
Note: See TracChangeset for help on using the changeset viewer.