#define CPERLarg CPerlObj *pPerl
#define CPERLarg_ CPERLarg,
#define _CPERLarg ,CPERLarg
-#define THIS this
-#define _THIS ,this
-#define THIS_ this,
+#define PERL_OBJECT_THIS this
+#define _PERL_OBJECT_THIS ,this
+#define PERL_OBJECT_THIS_ this,
#define CALLRUNOPS (this->*runops)
#else /* !PERL_OBJECT */
#define CPERLarg void
#define CPERLarg_
#define _CPERLarg
-#define THIS
-#define _THIS
-#define THIS_
+#define PERL_OBJECT_THIS
+#define _PERL_OBJECT_THIS
+#define PERL_OBJECT_THIS_
#define CALLRUNOPS runops
#endif /* PERL_OBJECT */
#define RsSNARF(sv) (! SvOK(sv))
#define RsSIMPLE(sv) (SvOK(sv) && SvCUR(sv))
#define RsPARA(sv) (SvOK(sv) && ! SvCUR(sv))
+#define RsRECORD(sv) (SvROK(sv) && (SvIV(SvRV(sv)) > 0))
/* Set up PERLVAR macros for populating structs */
#define PERLVAR(var,type) type var;