Sha256: 8a4e60964af103d793e365f82b6b3b0c44a63122894f3e8748e33cdae3ff3c7e

Contents?: true

Size: 1.23 KB

Versions: 4

Compression:

Stored size: 1.23 KB

Contents

#pragma once


#include "../api/IObject.h"
#include "RefCountedObjectImpl.h"
#include <time.h>
#ifdef WIN32
#include "ruby/ext/rho/rhoruby.h"
#else
#import "ruby/ext/rho/rhoruby.h"
#endif

//#include "common/RhoStd.h"

namespace rho {
namespace ruby {


class ObjectImpl : public RefCountedObjectImpl   {

public:
    ObjectImpl(BASIC_TYPES basicType, const char* className, VALUE value);
    ObjectImpl();
    void setBasicType(BASIC_TYPES basicType);
    void setClassName(const char* className);
    void setValue(VALUE value);
    VALUE getValue();
    
    virtual ~ObjectImpl();
    virtual const char* getClassName();
    virtual BASIC_TYPES getBasicType();

private:
    BASIC_TYPES mBasicType;
    char* mClassName;
    VALUE mValue;
};
    
    
// C++ is sucks !
class CObject : public ObjectImpl, public IObject {
public:
    CObject(BASIC_TYPES basicType, const char* className, VALUE value):ObjectImpl(basicType, className, value) {}
    CObject() {}
    virtual void addRef() {RefCountedObjectImpl::addRef();}
    virtual void release() {RefCountedObjectImpl::release();}
    virtual const char* getClassName() {return ObjectImpl::getClassName();}
    virtual BASIC_TYPES getBasicType() {return ObjectImpl::getBasicType();}
};
    
    
}
}

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
rhodes-7.6.0 platform/shared/rhoruby/impl/ObjectImpl.h
rhodes-7.5.1 platform/shared/rhoruby/impl/ObjectImpl.h
rhodes-7.4.1 platform/shared/rhoruby/impl/ObjectImpl.h
rhodes-7.1.17 platform/shared/rhoruby/impl/ObjectImpl.h