Ejemplo n.º 1
0
 void get_argument(void* env, int argposition, Value& value) {
   struct dataObject obj;
   EnvRtnUnknown(env, argposition, &obj);
   Values values = data_object_to_values(obj);
   if (values.size() > 0) {
     value = values[0];
   }
 }
Ejemplo n.º 2
0
 Values Template::slot_range( const std::string & slot_name ) {
   DATA_OBJECT clipsdo;
   if ( !m_cobj )
     return Values();
   EnvDeftemplateSlotRange( m_environment.cobj(),
                            m_cobj,
                            const_cast<char*>( slot_name.c_str() ),
                            &clipsdo );
   return data_object_to_values( clipsdo );
 }
Ejemplo n.º 3
0
 Values Template::slot_cardinality( const std::string & slot_name ) {
   DATA_OBJECT clipsdo;
   if ( m_cobj ) {
     EnvDeftemplateSlotCardinality( m_environment.cobj(),
                                    m_cobj,
                                    const_cast<char*>( slot_name.c_str() ),
                                    &clipsdo );
     return data_object_to_values( clipsdo );
   } else
     return Values();
 }
Ejemplo n.º 4
0
Values Fact::slot_value( const std::string & name )
	{
		DATA_OBJECT data_object;
		int result;

		if ( !m_cobj )
			return Values();

    if ( name == "" ) {
      result = EnvGetFactSlot( m_environment.cobj(), m_cobj, NULL, &data_object );
//       result = EnvGetFactSlot( m_environment.cobj(), m_cobj, "", &data_object );
    }
    else
  		result = EnvGetFactSlot( m_environment.cobj(), m_cobj, const_cast<char*>(name.c_str()), &data_object );
		if (result)
			return data_object_to_values( data_object );
    else
			return Values();
	}
Ejemplo n.º 5
0
 Values data_object_to_values( dataObject* clipsdo ) {
   return data_object_to_values( *clipsdo );
 }