
#include "MacroPatternMatch.h"

#include "STDDeletable.h"

#include "string"

#include "STDCppString.h"

using namespace std;

#define CHECKPROTECT(x,y) FXIS_PAREN(IS_ ## x ## _ ## y ## _PROTECTED)

#define TYPECASTMETHOD(cname,mname,oname) \
  FXIIF( CHECKPROTECT(cname,mname) ) ( \
  (from_nonconst_to_nonconst<oname,cname ## _t>), \
  (from_nonconst_to_nonconst<cname,cname ## _t>) )

DELETABLE_DEF_VIRT(string)
STRING_DEF_VIRT(string)
STRING_DEF_NONVIRT(string)
STRING_DEF_ACCESSOR(string)

