4 #include "Common_inline.h"
5 #ifdef IO_DECLARE_INLINES
7 #define RANGEDATA(self) ((IoRangeData *)IoObject_dataPointer(self))
9 IOINLINE IoObject
*IoRange_getFirst(IoRange
*self
)
11 return RANGEDATA(self
)->start
;
14 IOINLINE
void IoRange_setFirst(IoRange
*self
, IoObject
*v
)
16 RANGEDATA(self
)->start
= IOREF(v
);
19 IOINLINE IoObject
*IoRange_getLast(IoRange
*self
)
21 return RANGEDATA(self
)->end
;
24 IOINLINE
void IoRange_setLast(IoRange
*self
, IoObject
*v
)
26 RANGEDATA(self
)->end
= IOREF(v
);
29 IOINLINE IoObject
*IoRange_getCurrent(IoRange
*self
)
31 return RANGEDATA(self
)->curr
;
34 IOINLINE
void IoRange_setCurrent(IoRange
*self
, IoObject
*v
)
36 RANGEDATA(self
)->curr
= IOREF(v
);
39 IOINLINE IoObject
*IoRange_getIncrement(IoRange
*self
)
41 return RANGEDATA(self
)->increment
;
44 IOINLINE
void IoRange_setIncrement(IoRange
*self
, IoObject
*v
)
46 RANGEDATA(self
)->increment
= IOREF(v
);
49 IOINLINE IoObject
*IoRange_getIndex(IoRange
*self
)
51 return RANGEDATA(self
)->index
;
54 IOINLINE
void IoRange_setIndex(IoRange
*self
, IoObject
*v
)
56 RANGEDATA(self
)->index
= IOREF(v
);