2005/5/9

     
 

io_metainf_ext3.cpp

artefaktur
// Generated by ACDK Metacompiler, 
// Copyrighted by Roger Rene Kommer, artefaktur
// 
// Dont edit this file manually
// 
#include <acdk.h>


#include "../io.h"
#include "../AbstractCharFilterReader.h"
#include "../AbstractCharFilterWriter.h"
#include "../AbstractCharReader.h"
#include "../AbstractCharWriter.h"
#include "../AbstractFilterReader.h"
#include "../AbstractFilterWriter.h"
#include "../AbstractObjectReader.h"
#include "../AbstractObjectWriter.h"
#include "../AbstractReader.h"
#include "../AbstractStorageReader.h"
#include "../AbstractStorageWriter.h"
#include "../AbstractWriter.h"
#include "../ASCIIDataReader.h"
#include "../ASCIIDataWriter.h"
#include "../BinaryDataReader.h"
#include "../BinaryDataWriter.h"
#include "../BinaryObjectReader.h"
#include "../BinaryObjectWriter.h"
#include "../BufferedReader.h"
#include "../BufferedWriter.h"
#include "../ByteBufferReader.h"
#include "../ByteBufferWriter.h"
#include "../BytePtrReader.h"
#include "../ByteToCharReader.h"
#include "../ByteToCharWriter.h"
#include "../CharArrayReader.h"
#include "../CharArrayWriter.h"
#include "../CharReader.h"
#include "../CharToByteReader.h"
#include "../CharToByteWriter.h"
#include "../CharWriter.h"
#include "../ConsoleCharReader.h"
#include "../ConsoleCharWriter.h"
#include "../ConsoleReader.h"
#include "../ConsoleWriter.h"
#include "../DataReader.h"
#include "../DataWriter.h"
#include "../EOFException.h"
#include "../File.h"
#include "../FileAbstractImpl.h"
#include "../FileDescriptor.h"
#include "../FileFilter.h"
#include "../FileImpl.h"
#include "../FileInfo.h"
#include "../FilenameFilter.h"
#include "../FileNotFoundException.h"
#include "../FileReader.h"
#include "../FileReaderWriterImpl.h"
#include "../FileStandardImpl.h"
#include "../FileStatus.h"
#include "../FileSystem.h"
#include "../FileSystemFactory.h"
#include "../FileWriter.h"
#include "../FilterReader.h"
#include "../FilterWriter.h"
#include "../GlobFilenameFilter.h"
#include "../InputReader.h"
#include "../io.h"
#include "../IOException.h"
#include "../io_all.h"
#include "../JoinedReader.h"
#include "../LineNumberCharReader.h"
#include "../LineNumberReader.h"
#include "../MemoryMappedFile.h"
#include "../MemReader.h"
#include "../MemWriter.h"
#include "../NullWriter.h"
#include "../ObjectReader.h"
#include "../ObjectStreamException.h"
#include "../ObjectWriter.h"
#include "../OutputDebugStringWriter.h"
#include "../PipedReader.h"
#include "../PipedWriter.h"
#include "../PrintWriter.h"
#include "../PushbackCharReader.h"
#include "../PushbackReader.h"
#include "../RandomAccessFile.h"
#include "../Reader.h"
#include "../RessourceFileImpl.h"
#include "../RessourceFileSystem.h"
#include "../Serializable.h"
#include "../SerializedObjectDescriptor.h"
#include "../StandardFileSystem.h"
#include "../Storage.h"
#include "../StreamTokenizer.h"
#include "../StringReader.h"
#include "../StringWriter.h"
#include "../SubReader.h"
#include "../TeeCharWriter.h"
#include "../TeeReader.h"
#include "../TeeWriter.h"
#include "../Writer.h"
#include <acdk/lang/dmi/ClazzInfoInternals.h>

namespace acdk { 
namespace io { 

using namespace acdk::lang;

//static
::acdk::lang::RObject
FileReader_create_array(int length)
{
  return new ObjectArrayImpl<RFileReader>(length);
}

//static
::acdk::lang::RObject
FileReader_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class FileReader_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileReader_method_FileReader_INLRFile_Z_LRFileReader__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new FileReader(::acdk::lang::dmi::castTo< RFile>(args[0], dc), ::acdk::lang::dmi::castTo< bool>(args[1], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileReader_method_FileReader_INLRFile__LRFileReader__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new FileReader(::acdk::lang::dmi::castTo< RFile>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileReader_method_FileReader_INLRString_Z_LRFileReader__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new FileReader(::acdk::lang::dmi::castTo< RString>(args[0], dc), ::acdk::lang::dmi::castTo< bool>(args[1], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileReader_method_FileReader_INLRString__LRFileReader__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new FileReader(::acdk::lang::dmi::castTo< RString>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileReader_method_FileReader_INLRFileDescriptor_Z_LRFileReader__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new FileReader(::acdk::lang::dmi::castTo< RFileDescriptor>(args[0], dc), ::acdk::lang::dmi::castTo< bool>(args[1], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileReader_method_FileReader_INLRFileDescriptor__LRFileReader__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new FileReader(::acdk::lang::dmi::castTo< RFileDescriptor>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileReader_method_GetClass__L_acdk_lang_RClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)FileReader::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileReader_method_fileLength__J_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    FileReader* This = dmi_cast<FileReader>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
      ret = This->FileReader::fileLength();
    else
      ret = This->fileLength();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileReader_method_getFD__LRFileDescriptor__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    FileReader* This = dmi_cast<FileReader>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        ret = (::acdk::lang::RObject)This->FileReader::getFD();
    else
        ret = (::acdk::lang::RObject)This->getFD();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileReader_method_open_INLRFile__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    FileReader* This = dmi_cast<FileReader>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->FileReader::open(::acdk::lang::dmi::castTo< RFile>(args[0], dc));
    else
        This->open(::acdk::lang::dmi::castTo< RFile>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileReader_method_readLine__LRString__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    FileReader* This = dmi_cast<FileReader>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        ret = (::acdk::lang::RObject)This->FileReader::readLine();
    else
        ret = (::acdk::lang::RObject)This->readLine();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileReader_method_tell__J_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    FileReader* This = dmi_cast<FileReader>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
      ret = This->FileReader::tell();
    else
      ret = This->tell();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  FileReader_fields__eof_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    FileReader* This = dmi_cast<FileReader>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_eof, flags);
    else
      This->_eof = ::acdk::lang::dmi::castTo< bool>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  FileReader_fields__fname_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    FileReader* This = dmi_cast<FileReader>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_fname, flags);
    else
      This->_fname = ::acdk::lang::dmi::castTo< RString>(var, dc);
    return fieldinf;
  }
};

::acdk::lang::dmi::ClazzFieldInfo FileReader_fields__eof = 
{
  ::acdk::lang::dmi::MiPrivate | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_eof", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz(),
  FileReader_MetainfoWrapper::FileReader_fields__eof_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo FileReader_fields__fname = 
{
  ::acdk::lang::dmi::MiPrivate | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_fname", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo(),
  FileReader_MetainfoWrapper::FileReader_fields__fname_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo* _FileReader_fields[] = 
{
  &FileReader_fields__eof,
  &FileReader_fields__fname,
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo FileReader_methods_FileReader_INLRFile_Z_LRFileReader__arg_file = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "file", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RFile::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo FileReader_methods_FileReader_INLRFile_Z_LRFileReader__arg_binary = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "binary", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileReader_methods_FileReader_INLRFile_Z_LRFileReader__args[] = 
{
  &FileReader_methods_FileReader_INLRFile_Z_LRFileReader__arg_file,
  &FileReader_methods_FileReader_INLRFile_Z_LRFileReader__arg_binary,
  0
};

::acdk::lang::dmi::ClazzInfo* FileReader_methods_FileReader_INLRFile_Z_LRFileReader__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileReader_method_FileReader_INLRFile_Z_LRFileReader_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "FileReader", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  FileReader::clazzInfo(), // return type
  "_0_FileReader", // alternative name of method
  -1, // altlabelHashCode
  FileReader_methods_FileReader_INLRFile_Z_LRFileReader__args, // the arguments
  0, //arguments count
  FileReader_methods_FileReader_INLRFile_Z_LRFileReader__exceptions, // the declared exceptions
  FileReader_MetainfoWrapper::FileReader_method_FileReader_INLRFile_Z_LRFileReader__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo FileReader_methods_FileReader_INLRFile__LRFileReader__arg_file = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "file", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RFile::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileReader_methods_FileReader_INLRFile__LRFileReader__args[] = 
{
  &FileReader_methods_FileReader_INLRFile__LRFileReader__arg_file,
  0
};

::acdk::lang::dmi::ClazzInfo* FileReader_methods_FileReader_INLRFile__LRFileReader__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileReader_method_FileReader_INLRFile__LRFileReader_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor,// class flags, like static, 
  0, //AttributesRes
  "FileReader", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  FileReader::clazzInfo(), // return type
  "_1_FileReader", // alternative name of method
  -1, // altlabelHashCode
  FileReader_methods_FileReader_INLRFile__LRFileReader__args, // the arguments
  0, //arguments count
  FileReader_methods_FileReader_INLRFile__LRFileReader__exceptions, // the declared exceptions
  FileReader_MetainfoWrapper::FileReader_method_FileReader_INLRFile__LRFileReader__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo FileReader_methods_FileReader_INLRString_Z_LRFileReader__arg_fileName = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "fileName", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo FileReader_methods_FileReader_INLRString_Z_LRFileReader__arg_binary = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "binary", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileReader_methods_FileReader_INLRString_Z_LRFileReader__args[] = 
{
  &FileReader_methods_FileReader_INLRString_Z_LRFileReader__arg_fileName,
  &FileReader_methods_FileReader_INLRString_Z_LRFileReader__arg_binary,
  0
};

::acdk::lang::dmi::ClazzInfo* FileReader_methods_FileReader_INLRString_Z_LRFileReader__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileReader_method_FileReader_INLRString_Z_LRFileReader_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "FileReader", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  FileReader::clazzInfo(), // return type
  "_2_FileReader", // alternative name of method
  -1, // altlabelHashCode
  FileReader_methods_FileReader_INLRString_Z_LRFileReader__args, // the arguments
  0, //arguments count
  FileReader_methods_FileReader_INLRString_Z_LRFileReader__exceptions, // the declared exceptions
  FileReader_MetainfoWrapper::FileReader_method_FileReader_INLRString_Z_LRFileReader__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo FileReader_methods_FileReader_INLRString__LRFileReader__arg_fileName = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "fileName", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileReader_methods_FileReader_INLRString__LRFileReader__args[] = 
{
  &FileReader_methods_FileReader_INLRString__LRFileReader__arg_fileName,
  0
};

::acdk::lang::dmi::ClazzInfo* FileReader_methods_FileReader_INLRString__LRFileReader__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileReader_method_FileReader_INLRString__LRFileReader_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor,// class flags, like static, 
  0, //AttributesRes
  "FileReader", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  FileReader::clazzInfo(), // return type
  "_3_FileReader", // alternative name of method
  -1, // altlabelHashCode
  FileReader_methods_FileReader_INLRString__LRFileReader__args, // the arguments
  0, //arguments count
  FileReader_methods_FileReader_INLRString__LRFileReader__exceptions, // the declared exceptions
  FileReader_MetainfoWrapper::FileReader_method_FileReader_INLRString__LRFileReader__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo FileReader_methods_FileReader_INLRFileDescriptor_Z_LRFileReader__arg_fd = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "fd", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RFileDescriptor::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo FileReader_methods_FileReader_INLRFileDescriptor_Z_LRFileReader__arg_dupl = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "dupl", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileReader_methods_FileReader_INLRFileDescriptor_Z_LRFileReader__args[] = 
{
  &FileReader_methods_FileReader_INLRFileDescriptor_Z_LRFileReader__arg_fd,
  &FileReader_methods_FileReader_INLRFileDescriptor_Z_LRFileReader__arg_dupl,
  0
};

::acdk::lang::dmi::ClazzInfo* FileReader_methods_FileReader_INLRFileDescriptor_Z_LRFileReader__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileReader_method_FileReader_INLRFileDescriptor_Z_LRFileReader_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "FileReader", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  FileReader::clazzInfo(), // return type
  "_4_FileReader", // alternative name of method
  -1, // altlabelHashCode
  FileReader_methods_FileReader_INLRFileDescriptor_Z_LRFileReader__args, // the arguments
  0, //arguments count
  FileReader_methods_FileReader_INLRFileDescriptor_Z_LRFileReader__exceptions, // the declared exceptions
  FileReader_MetainfoWrapper::FileReader_method_FileReader_INLRFileDescriptor_Z_LRFileReader__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo FileReader_methods_FileReader_INLRFileDescriptor__LRFileReader__arg_fd = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "fd", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RFileDescriptor::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileReader_methods_FileReader_INLRFileDescriptor__LRFileReader__args[] = 
{
  &FileReader_methods_FileReader_INLRFileDescriptor__LRFileReader__arg_fd,
  0
};

::acdk::lang::dmi::ClazzInfo* FileReader_methods_FileReader_INLRFileDescriptor__LRFileReader__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileReader_method_FileReader_INLRFileDescriptor__LRFileReader_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor,// class flags, like static, 
  0, //AttributesRes
  "FileReader", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  FileReader::clazzInfo(), // return type
  "_5_FileReader", // alternative name of method
  -1, // altlabelHashCode
  FileReader_methods_FileReader_INLRFileDescriptor__LRFileReader__args, // the arguments
  0, //arguments count
  FileReader_methods_FileReader_INLRFileDescriptor__LRFileReader__exceptions, // the declared exceptions
  FileReader_MetainfoWrapper::FileReader_method_FileReader_INLRFileDescriptor__LRFileReader__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileReader_methods_GetClass__L_acdk_lang_RClass__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* FileReader_methods_GetClass__L_acdk_lang_RClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileReader_method_GetClass__L_acdk_lang_RClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_b_GetClass", // alternative name of method
  -1, // altlabelHashCode
  FileReader_methods_GetClass__L_acdk_lang_RClass__args, // the arguments
  0, //arguments count
  FileReader_methods_GetClass__L_acdk_lang_RClass__exceptions, // the declared exceptions
  FileReader_MetainfoWrapper::FileReader_method_GetClass__L_acdk_lang_RClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileReader_methods_fileLength__J_args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* FileReader_methods_fileLength__J_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileReader_method_fileLength__J = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "fileLength", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getLongClazz(), // return type
  "_9_fileLength", // alternative name of method
  -1, // altlabelHashCode
  FileReader_methods_fileLength__J_args, // the arguments
  0, //arguments count
  FileReader_methods_fileLength__J_exceptions, // the declared exceptions
  FileReader_MetainfoWrapper::FileReader_method_fileLength__J_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileReader_methods_getFD__LRFileDescriptor__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* FileReader_methods_getFD__LRFileDescriptor__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileReader_method_getFD__LRFileDescriptor_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "getFD", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RFileDescriptor::clazzInfo(), // return type
  "_8_getFD", // alternative name of method
  -1, // altlabelHashCode
  FileReader_methods_getFD__LRFileDescriptor__args, // the arguments
  0, //arguments count
  FileReader_methods_getFD__LRFileDescriptor__exceptions, // the declared exceptions
  FileReader_MetainfoWrapper::FileReader_method_getFD__LRFileDescriptor__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo FileReader_methods_open_INLRFile__V_arg_fname = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "fname", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RFile::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileReader_methods_open_INLRFile__V_args[] = 
{
  &FileReader_methods_open_INLRFile__V_arg_fname,
  0
};

::acdk::lang::dmi::ClazzInfo* FileReader_methods_open_INLRFile__V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileReader_method_open_INLRFile__V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "open", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_7_open", // alternative name of method
  -1, // altlabelHashCode
  FileReader_methods_open_INLRFile__V_args, // the arguments
  0, //arguments count
  FileReader_methods_open_INLRFile__V_exceptions, // the declared exceptions
  FileReader_MetainfoWrapper::FileReader_method_open_INLRFile__V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileReader_methods_readLine__LRString__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* FileReader_methods_readLine__LRString__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileReader_method_readLine__LRString_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "readLine", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo(), // return type
  "_6_readLine", // alternative name of method
  -1, // altlabelHashCode
  FileReader_methods_readLine__LRString__args, // the arguments
  0, //arguments count
  FileReader_methods_readLine__LRString__exceptions, // the declared exceptions
  FileReader_MetainfoWrapper::FileReader_method_readLine__LRString__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileReader_methods_tell__J_args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* FileReader_methods_tell__J_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileReader_method_tell__J = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "tell", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getLongClazz(), // return type
  "_a_tell", // alternative name of method
  -1, // altlabelHashCode
  FileReader_methods_tell__J_args, // the arguments
  0, //arguments count
  FileReader_methods_tell__J_exceptions, // the declared exceptions
  FileReader_MetainfoWrapper::FileReader_method_tell__J_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _FileReader_methods[] = 
{
  &FileReader_method_FileReader_INLRFile_Z_LRFileReader_,
  &FileReader_method_FileReader_INLRFile__LRFileReader_,
  &FileReader_method_FileReader_INLRString_Z_LRFileReader_,
  &FileReader_method_FileReader_INLRString__LRFileReader_,
  &FileReader_method_FileReader_INLRFileDescriptor_Z_LRFileReader_,
  &FileReader_method_FileReader_INLRFileDescriptor__LRFileReader_,
  &FileReader_method_GetClass__L_acdk_lang_RClass_,
  &FileReader_method_fileLength__J,
  &FileReader_method_getFD__LRFileDescriptor_,
  &FileReader_method_open_INLRFile__V,
  &FileReader_method_readLine__LRString_,
  &FileReader_method_tell__J,
  0
};


struct FileReader_MetaInfoInitializer
{  FileReader_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = FileReader::clazzInfo();
    ci->fields =  _FileReader_fields;
    ci->methods =  _FileReader_methods;
    ci->_scopeParent = acdk_io_unitInfo.getMetaInfo();
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
FileReader_MetaInfoInitializer FileReader_MetaInfoInitializer_staticinstance__;


} // namespace acdk
} // namespace io

namespace acdk { 
namespace io { 


//static
::acdk::lang::RObject
FileSystem_create_array(int length)
{
  return new ObjectArrayImpl<RFileSystem>(length);
}

//static
::acdk::lang::RObject
FileSystem_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class FileSystem_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileSystem_method_GetClass__L_acdk_lang_RClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)FileSystem::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileSystem_method_file_INLRString__LRFile__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    FileSystem* This = dmi_cast<FileSystem>(This_);
    ret = (::acdk::lang::RObject)This->file(::acdk::lang::dmi::castTo< RString>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileSystem_method_findFileSystem_INLRString__LRFileSystem__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)FileSystem::findFileSystem(::acdk::lang::dmi::castTo< RString>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileSystem_method_getFileImpl_INLRString__LRFileImpl__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    FileSystem* This = dmi_cast<FileSystem>(This_);
    ret = (::acdk::lang::RObject)This->getFileImpl(::acdk::lang::dmi::castTo< RString>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileSystem_method_getRootName__LRString__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    FileSystem* This = dmi_cast<FileSystem>(This_);
    ret = (::acdk::lang::RObject)This->getRootName();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileSystem_method_listFiles_INLRString_I_LRFileArray__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    FileSystem* This = dmi_cast<FileSystem>(This_);
    ret = (::acdk::lang::RObject)This->listFiles(::acdk::lang::dmi::castTo< RString>(args[0], dc), ::acdk::lang::dmi::castTo< int>(args[1], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileSystem_method_ownsFile_INLRString__Z_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    FileSystem* This = dmi_cast<FileSystem>(This_);
  ret = This->ownsFile(::acdk::lang::dmi::castTo< RString>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileSystem_method_registerFileSystem_INLRFileSystem__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    FileSystem::registerFileSystem(::acdk::lang::dmi::castTo< RFileSystem>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileSystem_method_registerFileSystemFactory_INLRFileSystemFactory__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    FileSystem::registerFileSystemFactory(::acdk::lang::dmi::castTo< RFileSystemFactory>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileSystem_method_unRegisterFileSystemFactory_INLRFileSystemFactory__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    FileSystem::unRegisterFileSystemFactory(::acdk::lang::dmi::castTo< RFileSystemFactory>(args[0], dc));
    return methinf;
  }
};

::acdk::lang::dmi::ClazzFieldInfo* _FileSystem_fields[] = 
{
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileSystem_methods_FileSystem__LRFileSystem__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* FileSystem_methods_FileSystem__LRFileSystem__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileSystem_method_FileSystem__LRFileSystem_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "FileSystem", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  FileSystem::clazzInfo(), // return type
  "_0_FileSystem", // alternative name of method
  -1, // altlabelHashCode
  FileSystem_methods_FileSystem__LRFileSystem__args, // the arguments
  0, //arguments count
  FileSystem_methods_FileSystem__LRFileSystem__exceptions, // the declared exceptions
  0, // this method cannot be invoked because abstract
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileSystem_methods_GetClass__L_acdk_lang_RClass__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* FileSystem_methods_GetClass__L_acdk_lang_RClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileSystem_method_GetClass__L_acdk_lang_RClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_a_GetClass", // alternative name of method
  -1, // altlabelHashCode
  FileSystem_methods_GetClass__L_acdk_lang_RClass__args, // the arguments
  0, //arguments count
  FileSystem_methods_GetClass__L_acdk_lang_RClass__exceptions, // the declared exceptions
  FileSystem_MetainfoWrapper::FileSystem_method_GetClass__L_acdk_lang_RClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo FileSystem_methods_file_INLRString__LRFile__arg_path = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "path", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileSystem_methods_file_INLRString__LRFile__args[] = 
{
  &FileSystem_methods_file_INLRString__LRFile__arg_path,
  0
};

::acdk::lang::dmi::ClazzInfo* FileSystem_methods_file_INLRString__LRFile__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileSystem_method_file_INLRString__LRFile_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "file", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RFile::clazzInfo(), // return type
  "_4_file", // alternative name of method
  -1, // altlabelHashCode
  FileSystem_methods_file_INLRString__LRFile__args, // the arguments
  0, //arguments count
  FileSystem_methods_file_INLRString__LRFile__exceptions, // the declared exceptions
  FileSystem_MetainfoWrapper::FileSystem_method_file_INLRString__LRFile__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo FileSystem_methods_findFileSystem_INLRString__LRFileSystem__arg_file = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "file", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileSystem_methods_findFileSystem_INLRString__LRFileSystem__args[] = 
{
  &FileSystem_methods_findFileSystem_INLRString__LRFileSystem__arg_file,
  0
};

::acdk::lang::dmi::ClazzInfo* FileSystem_methods_findFileSystem_INLRString__LRFileSystem__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileSystem_method_findFileSystem_INLRString__LRFileSystem_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "findFileSystem", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RFileSystem::clazzInfo(), // return type
  "_9_findFileSystem", // alternative name of method
  -1, // altlabelHashCode
  FileSystem_methods_findFileSystem_INLRString__LRFileSystem__args, // the arguments
  0, //arguments count
  FileSystem_methods_findFileSystem_INLRString__LRFileSystem__exceptions, // the declared exceptions
  FileSystem_MetainfoWrapper::FileSystem_method_findFileSystem_INLRString__LRFileSystem__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo FileSystem_methods_getFileImpl_INLRString__LRFileImpl__arg_fqpath = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "fqpath", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileSystem_methods_getFileImpl_INLRString__LRFileImpl__args[] = 
{
  &FileSystem_methods_getFileImpl_INLRString__LRFileImpl__arg_fqpath,
  0
};

::acdk::lang::dmi::ClazzInfo* FileSystem_methods_getFileImpl_INLRString__LRFileImpl__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileSystem_method_getFileImpl_INLRString__LRFileImpl_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "getFileImpl", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RFileImpl::clazzInfo(), // return type
  "_5_getFileImpl", // alternative name of method
  -1, // altlabelHashCode
  FileSystem_methods_getFileImpl_INLRString__LRFileImpl__args, // the arguments
  0, //arguments count
  FileSystem_methods_getFileImpl_INLRString__LRFileImpl__exceptions, // the declared exceptions
  FileSystem_MetainfoWrapper::FileSystem_method_getFileImpl_INLRString__LRFileImpl__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileSystem_methods_getRootName__LRString__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* FileSystem_methods_getRootName__LRString__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileSystem_method_getRootName__LRString_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "getRootName", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo(), // return type
  "_2_getRootName", // alternative name of method
  -1, // altlabelHashCode
  FileSystem_methods_getRootName__LRString__args, // the arguments
  0, //arguments count
  FileSystem_methods_getRootName__LRString__exceptions, // the declared exceptions
  FileSystem_MetainfoWrapper::FileSystem_method_getRootName__LRString__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo FileSystem_methods_listFiles_INLRString_I_LRFileArray__arg_directory = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "directory", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo FileSystem_methods_listFiles_INLRString_I_LRFileArray__arg_listflags = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "listflags", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileSystem_methods_listFiles_INLRString_I_LRFileArray__args[] = 
{
  &FileSystem_methods_listFiles_INLRString_I_LRFileArray__arg_directory,
  &FileSystem_methods_listFiles_INLRString_I_LRFileArray__arg_listflags,
  0
};

::acdk::lang::dmi::ClazzInfo* FileSystem_methods_listFiles_INLRString_I_LRFileArray__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileSystem_method_listFiles_INLRString_I_LRFileArray_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "listFiles", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RFileArray::clazzInfo(), // return type
  "_3_listFiles", // alternative name of method
  -1, // altlabelHashCode
  FileSystem_methods_listFiles_INLRString_I_LRFileArray__args, // the arguments
  0, //arguments count
  FileSystem_methods_listFiles_INLRString_I_LRFileArray__exceptions, // the declared exceptions
  FileSystem_MetainfoWrapper::FileSystem_method_listFiles_INLRString_I_LRFileArray__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo FileSystem_methods_ownsFile_INLRString__Z_arg_fname = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "fname", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileSystem_methods_ownsFile_INLRString__Z_args[] = 
{
  &FileSystem_methods_ownsFile_INLRString__Z_arg_fname,
  0
};

::acdk::lang::dmi::ClazzInfo* FileSystem_methods_ownsFile_INLRString__Z_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileSystem_method_ownsFile_INLRString__Z = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "ownsFile", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz(), // return type
  "_1_ownsFile", // alternative name of method
  -1, // altlabelHashCode
  FileSystem_methods_ownsFile_INLRString__Z_args, // the arguments
  0, //arguments count
  FileSystem_methods_ownsFile_INLRString__Z_exceptions, // the declared exceptions
  FileSystem_MetainfoWrapper::FileSystem_method_ownsFile_INLRString__Z_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo FileSystem_methods_registerFileSystem_INLRFileSystem__V_arg_fs = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "fs", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RFileSystem::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileSystem_methods_registerFileSystem_INLRFileSystem__V_args[] = 
{
  &FileSystem_methods_registerFileSystem_INLRFileSystem__V_arg_fs,
  0
};

::acdk::lang::dmi::ClazzInfo* FileSystem_methods_registerFileSystem_INLRFileSystem__V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileSystem_method_registerFileSystem_INLRFileSystem__V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "registerFileSystem", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_6_registerFileSystem", // alternative name of method
  -1, // altlabelHashCode
  FileSystem_methods_registerFileSystem_INLRFileSystem__V_args, // the arguments
  0, //arguments count
  FileSystem_methods_registerFileSystem_INLRFileSystem__V_exceptions, // the declared exceptions
  FileSystem_MetainfoWrapper::FileSystem_method_registerFileSystem_INLRFileSystem__V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo FileSystem_methods_registerFileSystemFactory_INLRFileSystemFactory__V_arg_fsf = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "fsf", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RFileSystemFactory::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileSystem_methods_registerFileSystemFactory_INLRFileSystemFactory__V_args[] = 
{
  &FileSystem_methods_registerFileSystemFactory_INLRFileSystemFactory__V_arg_fsf,
  0
};

::acdk::lang::dmi::ClazzInfo* FileSystem_methods_registerFileSystemFactory_INLRFileSystemFactory__V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileSystem_method_registerFileSystemFactory_INLRFileSystemFactory__V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "registerFileSystemFactory", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_7_registerFileSystemFactory", // alternative name of method
  -1, // altlabelHashCode
  FileSystem_methods_registerFileSystemFactory_INLRFileSystemFactory__V_args, // the arguments
  0, //arguments count
  FileSystem_methods_registerFileSystemFactory_INLRFileSystemFactory__V_exceptions, // the declared exceptions
  FileSystem_MetainfoWrapper::FileSystem_method_registerFileSystemFactory_INLRFileSystemFactory__V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo FileSystem_methods_unRegisterFileSystemFactory_INLRFileSystemFactory__V_arg_fsf = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "fsf", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RFileSystemFactory::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileSystem_methods_unRegisterFileSystemFactory_INLRFileSystemFactory__V_args[] = 
{
  &FileSystem_methods_unRegisterFileSystemFactory_INLRFileSystemFactory__V_arg_fsf,
  0
};

::acdk::lang::dmi::ClazzInfo* FileSystem_methods_unRegisterFileSystemFactory_INLRFileSystemFactory__V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileSystem_method_unRegisterFileSystemFactory_INLRFileSystemFactory__V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "unRegisterFileSystemFactory", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_8_unRegisterFileSystemFactory", // alternative name of method
  -1, // altlabelHashCode
  FileSystem_methods_unRegisterFileSystemFactory_INLRFileSystemFactory__V_args, // the arguments
  0, //arguments count
  FileSystem_methods_unRegisterFileSystemFactory_INLRFileSystemFactory__V_exceptions, // the declared exceptions
  FileSystem_MetainfoWrapper::FileSystem_method_unRegisterFileSystemFactory_INLRFileSystemFactory__V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _FileSystem_methods[] = 
{
  &FileSystem_method_FileSystem__LRFileSystem_,
  &FileSystem_method_GetClass__L_acdk_lang_RClass_,
  &FileSystem_method_file_INLRString__LRFile_,
  &FileSystem_method_findFileSystem_INLRString__LRFileSystem_,
  &FileSystem_method_getFileImpl_INLRString__LRFileImpl_,
  &FileSystem_method_getRootName__LRString_,
  &FileSystem_method_listFiles_INLRString_I_LRFileArray_,
  &FileSystem_method_ownsFile_INLRString__Z,
  &FileSystem_method_registerFileSystem_INLRFileSystem__V,
  &FileSystem_method_registerFileSystemFactory_INLRFileSystemFactory__V,
  &FileSystem_method_unRegisterFileSystemFactory_INLRFileSystemFactory__V,
  0
};


struct FileSystem_MetaInfoInitializer
{  FileSystem_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = FileSystem::clazzInfo();
    ci->fields =  _FileSystem_fields;
    ci->methods =  _FileSystem_methods;
    ci->_scopeParent = acdk_io_unitInfo.getMetaInfo();
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
FileSystem_MetaInfoInitializer FileSystem_MetaInfoInitializer_staticinstance__;


} // namespace acdk
} // namespace io

namespace acdk { 
namespace io { 


//static
::acdk::lang::RObject
FileSystemFactory_create_array(int length)
{
  return new ObjectArrayImpl<RFileSystemFactory>(length);
}

//static
::acdk::lang::RObject
FileSystemFactory_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class FileSystemFactory_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileSystemFactory_method_GetClass__L_acdk_lang_RClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)FileSystemFactory::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileSystemFactory_method_create_INLRString__LRFileSystem__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    FileSystemFactory* This = dmi_cast<FileSystemFactory>(This_);
    ret = (::acdk::lang::RObject)This->create(::acdk::lang::dmi::castTo< RString>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileSystemFactory_method_handleFile_INLRString__I_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    FileSystemFactory* This = dmi_cast<FileSystemFactory>(This_);
  ret = This->handleFile(::acdk::lang::dmi::castTo< RString>(args[0], dc));
    return methinf;
  }
};

::acdk::lang::dmi::ClazzFieldInfo* _FileSystemFactory_fields[] = 
{
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileSystemFactory_methods_GetClass__L_acdk_lang_RClass__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* FileSystemFactory_methods_GetClass__L_acdk_lang_RClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileSystemFactory_method_GetClass__L_acdk_lang_RClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_2_GetClass", // alternative name of method
  -1, // altlabelHashCode
  FileSystemFactory_methods_GetClass__L_acdk_lang_RClass__args, // the arguments
  0, //arguments count
  FileSystemFactory_methods_GetClass__L_acdk_lang_RClass__exceptions, // the declared exceptions
  FileSystemFactory_MetainfoWrapper::FileSystemFactory_method_GetClass__L_acdk_lang_RClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo FileSystemFactory_methods_create_INLRString__LRFileSystem__arg_file = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "file", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileSystemFactory_methods_create_INLRString__LRFileSystem__args[] = 
{
  &FileSystemFactory_methods_create_INLRString__LRFileSystem__arg_file,
  0
};

::acdk::lang::dmi::ClazzInfo* FileSystemFactory_methods_create_INLRString__LRFileSystem__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileSystemFactory_method_create_INLRString__LRFileSystem_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "create", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RFileSystem::clazzInfo(), // return type
  "_1_create", // alternative name of method
  -1, // altlabelHashCode
  FileSystemFactory_methods_create_INLRString__LRFileSystem__args, // the arguments
  0, //arguments count
  FileSystemFactory_methods_create_INLRString__LRFileSystem__exceptions, // the declared exceptions
  FileSystemFactory_MetainfoWrapper::FileSystemFactory_method_create_INLRString__LRFileSystem__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo FileSystemFactory_methods_handleFile_INLRString__I_arg_file = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "file", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileSystemFactory_methods_handleFile_INLRString__I_args[] = 
{
  &FileSystemFactory_methods_handleFile_INLRString__I_arg_file,
  0
};

::acdk::lang::dmi::ClazzInfo* FileSystemFactory_methods_handleFile_INLRString__I_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileSystemFactory_method_handleFile_INLRString__I = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "handleFile", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(), // return type
  "_0_handleFile", // alternative name of method
  -1, // altlabelHashCode
  FileSystemFactory_methods_handleFile_INLRString__I_args, // the arguments
  0, //arguments count
  FileSystemFactory_methods_handleFile_INLRString__I_exceptions, // the declared exceptions
  FileSystemFactory_MetainfoWrapper::FileSystemFactory_method_handleFile_INLRString__I_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _FileSystemFactory_methods[] = 
{
  &FileSystemFactory_method_GetClass__L_acdk_lang_RClass_,
  &FileSystemFactory_method_create_INLRString__LRFileSystem_,
  &FileSystemFactory_method_handleFile_INLRString__I,
  0
};


struct FileSystemFactory_MetaInfoInitializer
{  FileSystemFactory_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = FileSystemFactory::clazzInfo();
    ci->fields =  _FileSystemFactory_fields;
    ci->methods =  _FileSystemFactory_methods;
    ci->_scopeParent = acdk_io_unitInfo.getMetaInfo();
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
FileSystemFactory_MetaInfoInitializer FileSystemFactory_MetaInfoInitializer_staticinstance__;


} // namespace acdk
} // namespace io

namespace acdk { 
namespace io { 


//static
::acdk::lang::RObject
ConfigFileSystemFactory_create_array(int length)
{
  return new ObjectArrayImpl<RConfigFileSystemFactory>(length);
}

//static
::acdk::lang::RObject
ConfigFileSystemFactory_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class ConfigFileSystemFactory_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  ConfigFileSystemFactory_method_ConfigFileSystemFactory_ZINLRString_INLRString__LRConfigFileSystemFactory__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new ConfigFileSystemFactory(::acdk::lang::dmi::castTo< bool>(args[0], dc), ::acdk::lang::dmi::castTo< RString>(args[1], dc), ::acdk::lang::dmi::castTo< RString>(args[2], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  ConfigFileSystemFactory_method_GetClass__L_acdk_lang_RClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)ConfigFileSystemFactory::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  ConfigFileSystemFactory_method_create_INLRString__LRFileSystem__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ConfigFileSystemFactory* This = dmi_cast<ConfigFileSystemFactory>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        ret = (::acdk::lang::RObject)This->ConfigFileSystemFactory::create(::acdk::lang::dmi::castTo< RString>(args[0], dc));
    else
        ret = (::acdk::lang::RObject)This->create(::acdk::lang::dmi::castTo< RString>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  ConfigFileSystemFactory_method_handleFile_INLRString__I_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ConfigFileSystemFactory* This = dmi_cast<ConfigFileSystemFactory>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
      ret = This->ConfigFileSystemFactory::handleFile(::acdk::lang::dmi::castTo< RString>(args[0], dc));
    else
      ret = This->handleFile(::acdk::lang::dmi::castTo< RString>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  ConfigFileSystemFactory_fields__detector_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    ConfigFileSystemFactory* This = dmi_cast<ConfigFileSystemFactory>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_detector, flags);
    else
      This->_detector = ::acdk::lang::dmi::castTo< RString>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  ConfigFileSystemFactory_fields__factoryClassName_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    ConfigFileSystemFactory* This = dmi_cast<ConfigFileSystemFactory>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_factoryClassName, flags);
    else
      This->_factoryClassName = ::acdk::lang::dmi::castTo< RString>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  ConfigFileSystemFactory_fields__isUrl_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    ConfigFileSystemFactory* This = dmi_cast<ConfigFileSystemFactory>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_isUrl, flags);
    else
      This->_isUrl = ::acdk::lang::dmi::castTo< bool>(var, dc);
    return fieldinf;
  }
};

::acdk::lang::dmi::ClazzFieldInfo ConfigFileSystemFactory_fields__detector = 
{
  ::acdk::lang::dmi::MiPrivate | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_detector", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo(),
  ConfigFileSystemFactory_MetainfoWrapper::ConfigFileSystemFactory_fields__detector_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo ConfigFileSystemFactory_fields__factoryClassName = 
{
  ::acdk::lang::dmi::MiPrivate | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_factoryClassName", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo(),
  ConfigFileSystemFactory_MetainfoWrapper::ConfigFileSystemFactory_fields__factoryClassName_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo ConfigFileSystemFactory_fields__isUrl = 
{
  ::acdk::lang::dmi::MiPrivate | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_isUrl", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz(),
  ConfigFileSystemFactory_MetainfoWrapper::ConfigFileSystemFactory_fields__isUrl_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo* _ConfigFileSystemFactory_fields[] = 
{
  &ConfigFileSystemFactory_fields__detector,
  &ConfigFileSystemFactory_fields__factoryClassName,
  &ConfigFileSystemFactory_fields__isUrl,
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo ConfigFileSystemFactory_methods_ConfigFileSystemFactory_ZINLRString_INLRString__LRConfigFileSystemFactory__arg_isUrl = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "isUrl", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo ConfigFileSystemFactory_methods_ConfigFileSystemFactory_ZINLRString_INLRString__LRConfigFileSystemFactory__arg_part = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "part", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo ConfigFileSystemFactory_methods_ConfigFileSystemFactory_ZINLRString_INLRString__LRConfigFileSystemFactory__arg_fc = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "fc", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* ConfigFileSystemFactory_methods_ConfigFileSystemFactory_ZINLRString_INLRString__LRConfigFileSystemFactory__args[] = 
{
  &ConfigFileSystemFactory_methods_ConfigFileSystemFactory_ZINLRString_INLRString__LRConfigFileSystemFactory__arg_isUrl,
  &ConfigFileSystemFactory_methods_ConfigFileSystemFactory_ZINLRString_INLRString__LRConfigFileSystemFactory__arg_part,
  &ConfigFileSystemFactory_methods_ConfigFileSystemFactory_ZINLRString_INLRString__LRConfigFileSystemFactory__arg_fc,
  0
};

::acdk::lang::dmi::ClazzInfo* ConfigFileSystemFactory_methods_ConfigFileSystemFactory_ZINLRString_INLRString__LRConfigFileSystemFactory__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo ConfigFileSystemFactory_method_ConfigFileSystemFactory_ZINLRString_INLRString__LRConfigFileSystemFactory_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "ConfigFileSystemFactory", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ConfigFileSystemFactory::clazzInfo(), // return type
  "_0_ConfigFileSystemFactory", // alternative name of method
  -1, // altlabelHashCode
  ConfigFileSystemFactory_methods_ConfigFileSystemFactory_ZINLRString_INLRString__LRConfigFileSystemFactory__args, // the arguments
  0, //arguments count
  ConfigFileSystemFactory_methods_ConfigFileSystemFactory_ZINLRString_INLRString__LRConfigFileSystemFactory__exceptions, // the declared exceptions
  ConfigFileSystemFactory_MetainfoWrapper::ConfigFileSystemFactory_method_ConfigFileSystemFactory_ZINLRString_INLRString__LRConfigFileSystemFactory__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* ConfigFileSystemFactory_methods_GetClass__L_acdk_lang_RClass__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* ConfigFileSystemFactory_methods_GetClass__L_acdk_lang_RClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo ConfigFileSystemFactory_method_GetClass__L_acdk_lang_RClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_3_GetClass", // alternative name of method
  -1, // altlabelHashCode
  ConfigFileSystemFactory_methods_GetClass__L_acdk_lang_RClass__args, // the arguments
  0, //arguments count
  ConfigFileSystemFactory_methods_GetClass__L_acdk_lang_RClass__exceptions, // the declared exceptions
  ConfigFileSystemFactory_MetainfoWrapper::ConfigFileSystemFactory_method_GetClass__L_acdk_lang_RClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo ConfigFileSystemFactory_methods_create_INLRString__LRFileSystem__arg_file = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "file", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* ConfigFileSystemFactory_methods_create_INLRString__LRFileSystem__args[] = 
{
  &ConfigFileSystemFactory_methods_create_INLRString__LRFileSystem__arg_file,
  0
};

::acdk::lang::dmi::ClazzInfo* ConfigFileSystemFactory_methods_create_INLRString__LRFileSystem__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo ConfigFileSystemFactory_method_create_INLRString__LRFileSystem_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "create", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RFileSystem::clazzInfo(), // return type
  "_2_create", // alternative name of method
  -1, // altlabelHashCode
  ConfigFileSystemFactory_methods_create_INLRString__LRFileSystem__args, // the arguments
  0, //arguments count
  ConfigFileSystemFactory_methods_create_INLRString__LRFileSystem__exceptions, // the declared exceptions
  ConfigFileSystemFactory_MetainfoWrapper::ConfigFileSystemFactory_method_create_INLRString__LRFileSystem__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo ConfigFileSystemFactory_methods_handleFile_INLRString__I_arg_file = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "file", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* ConfigFileSystemFactory_methods_handleFile_INLRString__I_args[] = 
{
  &ConfigFileSystemFactory_methods_handleFile_INLRString__I_arg_file,
  0
};

::acdk::lang::dmi::ClazzInfo* ConfigFileSystemFactory_methods_handleFile_INLRString__I_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo ConfigFileSystemFactory_method_handleFile_INLRString__I = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "handleFile", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(), // return type
  "_1_handleFile", // alternative name of method
  -1, // altlabelHashCode
  ConfigFileSystemFactory_methods_handleFile_INLRString__I_args, // the arguments
  0, //arguments count
  ConfigFileSystemFactory_methods_handleFile_INLRString__I_exceptions, // the declared exceptions
  ConfigFileSystemFactory_MetainfoWrapper::ConfigFileSystemFactory_method_handleFile_INLRString__I_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _ConfigFileSystemFactory_methods[] = 
{
  &ConfigFileSystemFactory_method_ConfigFileSystemFactory_ZINLRString_INLRString__LRConfigFileSystemFactory_,
  &ConfigFileSystemFactory_method_GetClass__L_acdk_lang_RClass_,
  &ConfigFileSystemFactory_method_create_INLRString__LRFileSystem_,
  &ConfigFileSystemFactory_method_handleFile_INLRString__I,
  0
};


struct ConfigFileSystemFactory_MetaInfoInitializer
{  ConfigFileSystemFactory_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = ConfigFileSystemFactory::clazzInfo();
    ci->fields =  _ConfigFileSystemFactory_fields;
    ci->methods =  _ConfigFileSystemFactory_methods;
    ci->_scopeParent = acdk_io_unitInfo.getMetaInfo();
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
ConfigFileSystemFactory_MetaInfoInitializer ConfigFileSystemFactory_MetaInfoInitializer_staticinstance__;


} // namespace acdk
} // namespace io

namespace acdk { 
namespace io { 

using namespace acdk::lang;

//static
::acdk::lang::RObject
FileWriter_create_array(int length)
{
  return new ObjectArrayImpl<RFileWriter>(length);
}

//static
::acdk::lang::RObject
FileWriter_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class FileWriter_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileWriter_method_FileWriter_INLRFile_ZZ_LRFileWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new FileWriter(::acdk::lang::dmi::castTo< RFile>(args[0], dc), ::acdk::lang::dmi::castTo< bool>(args[1], dc), ::acdk::lang::dmi::castTo< bool>(args[2], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileWriter_method_FileWriter_INLRFile__LRFileWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new FileWriter(::acdk::lang::dmi::castTo< RFile>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileWriter_method_FileWriter_INLRFile_Z_LRFileWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new FileWriter(::acdk::lang::dmi::castTo< RFile>(args[0], dc), ::acdk::lang::dmi::castTo< bool>(args[1], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileWriter_method_FileWriter_INLRFileDescriptor_Z_LRFileWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new FileWriter(::acdk::lang::dmi::castTo< RFileDescriptor>(args[0], dc), ::acdk::lang::dmi::castTo< bool>(args[1], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileWriter_method_FileWriter_INLRFileDescriptor__LRFileWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new FileWriter(::acdk::lang::dmi::castTo< RFileDescriptor>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileWriter_method_FileWriter_INLRString_ZZ_LRFileWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new FileWriter(::acdk::lang::dmi::castTo< RString>(args[0], dc), ::acdk::lang::dmi::castTo< bool>(args[1], dc), ::acdk::lang::dmi::castTo< bool>(args[2], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileWriter_method_FileWriter_INLRString__LRFileWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new FileWriter(::acdk::lang::dmi::castTo< RString>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileWriter_method_FileWriter_INLRString_Z_LRFileWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new FileWriter(::acdk::lang::dmi::castTo< RString>(args[0], dc), ::acdk::lang::dmi::castTo< bool>(args[1], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileWriter_method_GetClass__L_acdk_lang_RClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)FileWriter::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FileWriter_method_tell__J_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    FileWriter* This = dmi_cast<FileWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
      ret = This->FileWriter::tell();
    else
      ret = This->tell();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  FileWriter_fields__fname_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    FileWriter* This = dmi_cast<FileWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_fname, flags);
    else
      This->_fname = ::acdk::lang::dmi::castTo< RString>(var, dc);
    return fieldinf;
  }
};

::acdk::lang::dmi::ClazzFieldInfo FileWriter_fields__fname = 
{
  ::acdk::lang::dmi::MiPrivate | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_fname", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo(),
  FileWriter_MetainfoWrapper::FileWriter_fields__fname_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo* _FileWriter_fields[] = 
{
  &FileWriter_fields__fname,
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo FileWriter_methods_FileWriter_INLRFile_ZZ_LRFileWriter__arg_file = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "file", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RFile::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo FileWriter_methods_FileWriter_INLRFile_ZZ_LRFileWriter__arg_append = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "append", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo FileWriter_methods_FileWriter_INLRFile_ZZ_LRFileWriter__arg_binary = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "binary", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileWriter_methods_FileWriter_INLRFile_ZZ_LRFileWriter__args[] = 
{
  &FileWriter_methods_FileWriter_INLRFile_ZZ_LRFileWriter__arg_file,
  &FileWriter_methods_FileWriter_INLRFile_ZZ_LRFileWriter__arg_append,
  &FileWriter_methods_FileWriter_INLRFile_ZZ_LRFileWriter__arg_binary,
  0
};

::acdk::lang::dmi::ClazzInfo* FileWriter_methods_FileWriter_INLRFile_ZZ_LRFileWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileWriter_method_FileWriter_INLRFile_ZZ_LRFileWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "FileWriter", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  FileWriter::clazzInfo(), // return type
  "_0_FileWriter", // alternative name of method
  -1, // altlabelHashCode
  FileWriter_methods_FileWriter_INLRFile_ZZ_LRFileWriter__args, // the arguments
  0, //arguments count
  FileWriter_methods_FileWriter_INLRFile_ZZ_LRFileWriter__exceptions, // the declared exceptions
  FileWriter_MetainfoWrapper::FileWriter_method_FileWriter_INLRFile_ZZ_LRFileWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo FileWriter_methods_FileWriter_INLRFile__LRFileWriter__arg_file = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "file", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RFile::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileWriter_methods_FileWriter_INLRFile__LRFileWriter__args[] = 
{
  &FileWriter_methods_FileWriter_INLRFile__LRFileWriter__arg_file,
  0
};

::acdk::lang::dmi::ClazzInfo* FileWriter_methods_FileWriter_INLRFile__LRFileWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileWriter_method_FileWriter_INLRFile__LRFileWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor,// class flags, like static, 
  0, //AttributesRes
  "FileWriter", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  FileWriter::clazzInfo(), // return type
  "_1_FileWriter", // alternative name of method
  -1, // altlabelHashCode
  FileWriter_methods_FileWriter_INLRFile__LRFileWriter__args, // the arguments
  0, //arguments count
  FileWriter_methods_FileWriter_INLRFile__LRFileWriter__exceptions, // the declared exceptions
  FileWriter_MetainfoWrapper::FileWriter_method_FileWriter_INLRFile__LRFileWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo FileWriter_methods_FileWriter_INLRFile_Z_LRFileWriter__arg_file = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "file", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RFile::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo FileWriter_methods_FileWriter_INLRFile_Z_LRFileWriter__arg_append = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "append", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileWriter_methods_FileWriter_INLRFile_Z_LRFileWriter__args[] = 
{
  &FileWriter_methods_FileWriter_INLRFile_Z_LRFileWriter__arg_file,
  &FileWriter_methods_FileWriter_INLRFile_Z_LRFileWriter__arg_append,
  0
};

::acdk::lang::dmi::ClazzInfo* FileWriter_methods_FileWriter_INLRFile_Z_LRFileWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileWriter_method_FileWriter_INLRFile_Z_LRFileWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor,// class flags, like static, 
  0, //AttributesRes
  "FileWriter", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  FileWriter::clazzInfo(), // return type
  "_2_FileWriter", // alternative name of method
  -1, // altlabelHashCode
  FileWriter_methods_FileWriter_INLRFile_Z_LRFileWriter__args, // the arguments
  0, //arguments count
  FileWriter_methods_FileWriter_INLRFile_Z_LRFileWriter__exceptions, // the declared exceptions
  FileWriter_MetainfoWrapper::FileWriter_method_FileWriter_INLRFile_Z_LRFileWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo FileWriter_methods_FileWriter_INLRFileDescriptor_Z_LRFileWriter__arg_fd = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "fd", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RFileDescriptor::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo FileWriter_methods_FileWriter_INLRFileDescriptor_Z_LRFileWriter__arg_dupl = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "dupl", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileWriter_methods_FileWriter_INLRFileDescriptor_Z_LRFileWriter__args[] = 
{
  &FileWriter_methods_FileWriter_INLRFileDescriptor_Z_LRFileWriter__arg_fd,
  &FileWriter_methods_FileWriter_INLRFileDescriptor_Z_LRFileWriter__arg_dupl,
  0
};

::acdk::lang::dmi::ClazzInfo* FileWriter_methods_FileWriter_INLRFileDescriptor_Z_LRFileWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileWriter_method_FileWriter_INLRFileDescriptor_Z_LRFileWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "FileWriter", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  FileWriter::clazzInfo(), // return type
  "_3_FileWriter", // alternative name of method
  -1, // altlabelHashCode
  FileWriter_methods_FileWriter_INLRFileDescriptor_Z_LRFileWriter__args, // the arguments
  0, //arguments count
  FileWriter_methods_FileWriter_INLRFileDescriptor_Z_LRFileWriter__exceptions, // the declared exceptions
  FileWriter_MetainfoWrapper::FileWriter_method_FileWriter_INLRFileDescriptor_Z_LRFileWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo FileWriter_methods_FileWriter_INLRFileDescriptor__LRFileWriter__arg_fd = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "fd", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RFileDescriptor::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileWriter_methods_FileWriter_INLRFileDescriptor__LRFileWriter__args[] = 
{
  &FileWriter_methods_FileWriter_INLRFileDescriptor__LRFileWriter__arg_fd,
  0
};

::acdk::lang::dmi::ClazzInfo* FileWriter_methods_FileWriter_INLRFileDescriptor__LRFileWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileWriter_method_FileWriter_INLRFileDescriptor__LRFileWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor,// class flags, like static, 
  0, //AttributesRes
  "FileWriter", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  FileWriter::clazzInfo(), // return type
  "_4_FileWriter", // alternative name of method
  -1, // altlabelHashCode
  FileWriter_methods_FileWriter_INLRFileDescriptor__LRFileWriter__args, // the arguments
  0, //arguments count
  FileWriter_methods_FileWriter_INLRFileDescriptor__LRFileWriter__exceptions, // the declared exceptions
  FileWriter_MetainfoWrapper::FileWriter_method_FileWriter_INLRFileDescriptor__LRFileWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo FileWriter_methods_FileWriter_INLRString_ZZ_LRFileWriter__arg_fileName = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "fileName", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo FileWriter_methods_FileWriter_INLRString_ZZ_LRFileWriter__arg_append = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "append", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo FileWriter_methods_FileWriter_INLRString_ZZ_LRFileWriter__arg_binary = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "binary", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileWriter_methods_FileWriter_INLRString_ZZ_LRFileWriter__args[] = 
{
  &FileWriter_methods_FileWriter_INLRString_ZZ_LRFileWriter__arg_fileName,
  &FileWriter_methods_FileWriter_INLRString_ZZ_LRFileWriter__arg_append,
  &FileWriter_methods_FileWriter_INLRString_ZZ_LRFileWriter__arg_binary,
  0
};

::acdk::lang::dmi::ClazzInfo* FileWriter_methods_FileWriter_INLRString_ZZ_LRFileWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileWriter_method_FileWriter_INLRString_ZZ_LRFileWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "FileWriter", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  FileWriter::clazzInfo(), // return type
  "_5_FileWriter", // alternative name of method
  -1, // altlabelHashCode
  FileWriter_methods_FileWriter_INLRString_ZZ_LRFileWriter__args, // the arguments
  0, //arguments count
  FileWriter_methods_FileWriter_INLRString_ZZ_LRFileWriter__exceptions, // the declared exceptions
  FileWriter_MetainfoWrapper::FileWriter_method_FileWriter_INLRString_ZZ_LRFileWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo FileWriter_methods_FileWriter_INLRString__LRFileWriter__arg_fileName = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "fileName", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileWriter_methods_FileWriter_INLRString__LRFileWriter__args[] = 
{
  &FileWriter_methods_FileWriter_INLRString__LRFileWriter__arg_fileName,
  0
};

::acdk::lang::dmi::ClazzInfo* FileWriter_methods_FileWriter_INLRString__LRFileWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileWriter_method_FileWriter_INLRString__LRFileWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor,// class flags, like static, 
  0, //AttributesRes
  "FileWriter", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  FileWriter::clazzInfo(), // return type
  "_6_FileWriter", // alternative name of method
  -1, // altlabelHashCode
  FileWriter_methods_FileWriter_INLRString__LRFileWriter__args, // the arguments
  0, //arguments count
  FileWriter_methods_FileWriter_INLRString__LRFileWriter__exceptions, // the declared exceptions
  FileWriter_MetainfoWrapper::FileWriter_method_FileWriter_INLRString__LRFileWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo FileWriter_methods_FileWriter_INLRString_Z_LRFileWriter__arg_fileName = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "fileName", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo FileWriter_methods_FileWriter_INLRString_Z_LRFileWriter__arg_append = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "append", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileWriter_methods_FileWriter_INLRString_Z_LRFileWriter__args[] = 
{
  &FileWriter_methods_FileWriter_INLRString_Z_LRFileWriter__arg_fileName,
  &FileWriter_methods_FileWriter_INLRString_Z_LRFileWriter__arg_append,
  0
};

::acdk::lang::dmi::ClazzInfo* FileWriter_methods_FileWriter_INLRString_Z_LRFileWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileWriter_method_FileWriter_INLRString_Z_LRFileWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor,// class flags, like static, 
  0, //AttributesRes
  "FileWriter", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  FileWriter::clazzInfo(), // return type
  "_7_FileWriter", // alternative name of method
  -1, // altlabelHashCode
  FileWriter_methods_FileWriter_INLRString_Z_LRFileWriter__args, // the arguments
  0, //arguments count
  FileWriter_methods_FileWriter_INLRString_Z_LRFileWriter__exceptions, // the declared exceptions
  FileWriter_MetainfoWrapper::FileWriter_method_FileWriter_INLRString_Z_LRFileWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileWriter_methods_GetClass__L_acdk_lang_RClass__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* FileWriter_methods_GetClass__L_acdk_lang_RClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileWriter_method_GetClass__L_acdk_lang_RClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_9_GetClass", // alternative name of method
  -1, // altlabelHashCode
  FileWriter_methods_GetClass__L_acdk_lang_RClass__args, // the arguments
  0, //arguments count
  FileWriter_methods_GetClass__L_acdk_lang_RClass__exceptions, // the declared exceptions
  FileWriter_MetainfoWrapper::FileWriter_method_GetClass__L_acdk_lang_RClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* FileWriter_methods_tell__J_args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* FileWriter_methods_tell__J_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FileWriter_method_tell__J = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "tell", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getLongClazz(), // return type
  "_8_tell", // alternative name of method
  -1, // altlabelHashCode
  FileWriter_methods_tell__J_args, // the arguments
  0, //arguments count
  FileWriter_methods_tell__J_exceptions, // the declared exceptions
  FileWriter_MetainfoWrapper::FileWriter_method_tell__J_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _FileWriter_methods[] = 
{
  &FileWriter_method_FileWriter_INLRFile_ZZ_LRFileWriter_,
  &FileWriter_method_FileWriter_INLRFile__LRFileWriter_,
  &FileWriter_method_FileWriter_INLRFile_Z_LRFileWriter_,
  &FileWriter_method_FileWriter_INLRFileDescriptor_Z_LRFileWriter_,
  &FileWriter_method_FileWriter_INLRFileDescriptor__LRFileWriter_,
  &FileWriter_method_FileWriter_INLRString_ZZ_LRFileWriter_,
  &FileWriter_method_FileWriter_INLRString__LRFileWriter_,
  &FileWriter_method_FileWriter_INLRString_Z_LRFileWriter_,
  &FileWriter_method_GetClass__L_acdk_lang_RClass_,
  &FileWriter_method_tell__J,
  0
};


struct FileWriter_MetaInfoInitializer
{  FileWriter_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = FileWriter::clazzInfo();
    ci->fields =  _FileWriter_fields;
    ci->methods =  _FileWriter_methods;
    ci->_scopeParent = acdk_io_unitInfo.getMetaInfo();
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
FileWriter_MetaInfoInitializer FileWriter_MetaInfoInitializer_staticinstance__;


} // namespace acdk
} // namespace io

namespace acdk { 
namespace io { 

using namespace acdk::lang;

//static
::acdk::lang::RObject
FilterReader_create_array(int length)
{
  return new ObjectArrayImpl<RFilterReader>(length);
}

//static
::acdk::lang::RObject
FilterReader_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class FilterReader_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FilterReader_method_GetClass__L_acdk_lang_RClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)FilterReader::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FilterReader_method_getStorage__LRStorage__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    FilterReader* This = dmi_cast<FilterReader>(This_);
    ret = (::acdk::lang::RObject)This->getStorage();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FilterReader_method_getStorageReader__LRReader__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    FilterReader* This = dmi_cast<FilterReader>(This_);
    ret = (::acdk::lang::RObject)This->getStorageReader();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FilterReader_method_setIn_INLRReader__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    FilterReader* This = dmi_cast<FilterReader>(This_);
    This->setIn(::acdk::lang::dmi::castTo< RReader>(args[0], dc));
    return methinf;
  }
};

::acdk::lang::dmi::ClazzFieldInfo* _FilterReader_fields[] = 
{
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo* FilterReader_methods_GetClass__L_acdk_lang_RClass__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* FilterReader_methods_GetClass__L_acdk_lang_RClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FilterReader_method_GetClass__L_acdk_lang_RClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_6_GetClass", // alternative name of method
  -1, // altlabelHashCode
  FilterReader_methods_GetClass__L_acdk_lang_RClass__args, // the arguments
  0, //arguments count
  FilterReader_methods_GetClass__L_acdk_lang_RClass__exceptions, // the declared exceptions
  FilterReader_MetainfoWrapper::FilterReader_method_GetClass__L_acdk_lang_RClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* FilterReader_methods_getStorage__LRStorage__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* FilterReader_methods_getStorage__LRStorage__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FilterReader_method_getStorage__LRStorage_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "getStorage", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RStorage::clazzInfo(), // return type
  "_4_getStorage", // alternative name of method
  -1, // altlabelHashCode
  FilterReader_methods_getStorage__LRStorage__args, // the arguments
  0, //arguments count
  FilterReader_methods_getStorage__LRStorage__exceptions, // the declared exceptions
  FilterReader_MetainfoWrapper::FilterReader_method_getStorage__LRStorage__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* FilterReader_methods_getStorageReader__LRReader__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* FilterReader_methods_getStorageReader__LRReader__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FilterReader_method_getStorageReader__LRReader_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "getStorageReader", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RReader::clazzInfo(), // return type
  "_5_getStorageReader", // alternative name of method
  -1, // altlabelHashCode
  FilterReader_methods_getStorageReader__LRReader__args, // the arguments
  0, //arguments count
  FilterReader_methods_getStorageReader__LRReader__exceptions, // the declared exceptions
  FilterReader_MetainfoWrapper::FilterReader_method_getStorageReader__LRReader__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo FilterReader_methods_setIn_INLRReader__V_arg_reader = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "reader", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RReader::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FilterReader_methods_setIn_INLRReader__V_args[] = 
{
  &FilterReader_methods_setIn_INLRReader__V_arg_reader,
  0
};

::acdk::lang::dmi::ClazzInfo* FilterReader_methods_setIn_INLRReader__V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FilterReader_method_setIn_INLRReader__V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "setIn", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_3_setIn", // alternative name of method
  -1, // altlabelHashCode
  FilterReader_methods_setIn_INLRReader__V_args, // the arguments
  0, //arguments count
  FilterReader_methods_setIn_INLRReader__V_exceptions, // the declared exceptions
  FilterReader_MetainfoWrapper::FilterReader_method_setIn_INLRReader__V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _FilterReader_methods[] = 
{
  &FilterReader_method_GetClass__L_acdk_lang_RClass_,
  &FilterReader_method_getStorage__LRStorage_,
  &FilterReader_method_getStorageReader__LRReader_,
  &FilterReader_method_setIn_INLRReader__V,
  0
};


struct FilterReader_MetaInfoInitializer
{  FilterReader_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = FilterReader::clazzInfo();
    ci->fields =  _FilterReader_fields;
    ci->methods =  _FilterReader_methods;
    ci->_scopeParent = acdk_io_unitInfo.getMetaInfo();
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
FilterReader_MetaInfoInitializer FilterReader_MetaInfoInitializer_staticinstance__;


} // namespace acdk
} // namespace io

namespace acdk { 
namespace io { 

using namespace acdk::lang;

//static
::acdk::lang::RObject
FilterWriter_create_array(int length)
{
  return new ObjectArrayImpl<RFilterWriter>(length);
}

//static
::acdk::lang::RObject
FilterWriter_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class FilterWriter_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FilterWriter_method_GetClass__L_acdk_lang_RClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)FilterWriter::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FilterWriter_method_flush__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    FilterWriter* This = dmi_cast<FilterWriter>(This_);
    This->flush();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FilterWriter_method_getStorage__LRStorage__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    FilterWriter* This = dmi_cast<FilterWriter>(This_);
    ret = (::acdk::lang::RObject)This->getStorage();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FilterWriter_method_getStorageWriter__LRWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    FilterWriter* This = dmi_cast<FilterWriter>(This_);
    ret = (::acdk::lang::RObject)This->getStorageWriter();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FilterWriter_method_setOut_INLRWriter__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    FilterWriter* This = dmi_cast<FilterWriter>(This_);
    This->setOut(::acdk::lang::dmi::castTo< RWriter>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FilterWriter_method_write_B_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    FilterWriter* This = dmi_cast<FilterWriter>(This_);
    This->write(::acdk::lang::dmi::castTo< byte>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  FilterWriter_method_write_INLRbyteArray_II_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    FilterWriter* This = dmi_cast<FilterWriter>(This_);
    This->write(::acdk::lang::dmi::castTo< RbyteArray>(args[0], dc), ::acdk::lang::dmi::castTo< int>(args[1], dc), ::acdk::lang::dmi::castTo< int>(args[2], dc));
    return methinf;
  }
};

::acdk::lang::dmi::ClazzFieldInfo* _FilterWriter_fields[] = 
{
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo* FilterWriter_methods_GetClass__L_acdk_lang_RClass__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* FilterWriter_methods_GetClass__L_acdk_lang_RClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FilterWriter_method_GetClass__L_acdk_lang_RClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_6_GetClass", // alternative name of method
  -1, // altlabelHashCode
  FilterWriter_methods_GetClass__L_acdk_lang_RClass__args, // the arguments
  0, //arguments count
  FilterWriter_methods_GetClass__L_acdk_lang_RClass__exceptions, // the declared exceptions
  FilterWriter_MetainfoWrapper::FilterWriter_method_GetClass__L_acdk_lang_RClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* FilterWriter_methods_flush__V_args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* FilterWriter_methods_flush__V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FilterWriter_method_flush__V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "flush", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_0_flush", // alternative name of method
  -1, // altlabelHashCode
  FilterWriter_methods_flush__V_args, // the arguments
  0, //arguments count
  FilterWriter_methods_flush__V_exceptions, // the declared exceptions
  FilterWriter_MetainfoWrapper::FilterWriter_method_flush__V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* FilterWriter_methods_getStorage__LRStorage__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* FilterWriter_methods_getStorage__LRStorage__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FilterWriter_method_getStorage__LRStorage_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "getStorage", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RStorage::clazzInfo(), // return type
  "_4_getStorage", // alternative name of method
  -1, // altlabelHashCode
  FilterWriter_methods_getStorage__LRStorage__args, // the arguments
  0, //arguments count
  FilterWriter_methods_getStorage__LRStorage__exceptions, // the declared exceptions
  FilterWriter_MetainfoWrapper::FilterWriter_method_getStorage__LRStorage__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* FilterWriter_methods_getStorageWriter__LRWriter__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* FilterWriter_methods_getStorageWriter__LRWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FilterWriter_method_getStorageWriter__LRWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "getStorageWriter", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RWriter::clazzInfo(), // return type
  "_5_getStorageWriter", // alternative name of method
  -1, // altlabelHashCode
  FilterWriter_methods_getStorageWriter__LRWriter__args, // the arguments
  0, //arguments count
  FilterWriter_methods_getStorageWriter__LRWriter__exceptions, // the declared exceptions
  FilterWriter_MetainfoWrapper::FilterWriter_method_getStorageWriter__LRWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo FilterWriter_methods_setOut_INLRWriter__V_arg_writer = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "writer", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RWriter::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FilterWriter_methods_setOut_INLRWriter__V_args[] = 
{
  &FilterWriter_methods_setOut_INLRWriter__V_arg_writer,
  0
};

::acdk::lang::dmi::ClazzInfo* FilterWriter_methods_setOut_INLRWriter__V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FilterWriter_method_setOut_INLRWriter__V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "setOut", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_3_setOut", // alternative name of method
  -1, // altlabelHashCode
  FilterWriter_methods_setOut_INLRWriter__V_args, // the arguments
  0, //arguments count
  FilterWriter_methods_setOut_INLRWriter__V_exceptions, // the declared exceptions
  FilterWriter_MetainfoWrapper::FilterWriter_method_setOut_INLRWriter__V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo FilterWriter_methods_write_B_V_arg_c = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "c", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getByteClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FilterWriter_methods_write_B_V_args[] = 
{
  &FilterWriter_methods_write_B_V_arg_c,
  0
};

::acdk::lang::dmi::ClazzInfo* FilterWriter_methods_write_B_V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FilterWriter_method_write_B_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "write", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_1_write", // alternative name of method
  -1, // altlabelHashCode
  FilterWriter_methods_write_B_V_args, // the arguments
  0, //arguments count
  FilterWriter_methods_write_B_V_exceptions, // the declared exceptions
  FilterWriter_MetainfoWrapper::FilterWriter_method_write_B_V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo FilterWriter_methods_write_INLRbyteArray_II_V_arg_ch = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "ch", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RbyteArray::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo FilterWriter_methods_write_INLRbyteArray_II_V_arg_offset = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "offset", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo FilterWriter_methods_write_INLRbyteArray_II_V_arg_len = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "len", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* FilterWriter_methods_write_INLRbyteArray_II_V_args[] = 
{
  &FilterWriter_methods_write_INLRbyteArray_II_V_arg_ch,
  &FilterWriter_methods_write_INLRbyteArray_II_V_arg_offset,
  &FilterWriter_methods_write_INLRbyteArray_II_V_arg_len,
  0
};

::acdk::lang::dmi::ClazzInfo* FilterWriter_methods_write_INLRbyteArray_II_V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo FilterWriter_method_write_INLRbyteArray_II_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "write", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_2_write", // alternative name of method
  -1, // altlabelHashCode
  FilterWriter_methods_write_INLRbyteArray_II_V_args, // the arguments
  0, //arguments count
  FilterWriter_methods_write_INLRbyteArray_II_V_exceptions, // the declared exceptions
  FilterWriter_MetainfoWrapper::FilterWriter_method_write_INLRbyteArray_II_V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _FilterWriter_methods[] = 
{
  &FilterWriter_method_GetClass__L_acdk_lang_RClass_,
  &FilterWriter_method_flush__V,
  &FilterWriter_method_getStorage__LRStorage_,
  &FilterWriter_method_getStorageWriter__LRWriter_,
  &FilterWriter_method_setOut_INLRWriter__V,
  &FilterWriter_method_write_B_V,
  &FilterWriter_method_write_INLRbyteArray_II_V,
  0
};


struct FilterWriter_MetaInfoInitializer
{  FilterWriter_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = FilterWriter::clazzInfo();
    ci->fields =  _FilterWriter_fields;
    ci->methods =  _FilterWriter_methods;
    ci->_scopeParent = acdk_io_unitInfo.getMetaInfo();
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
FilterWriter_MetaInfoInitializer FilterWriter_MetaInfoInitializer_staticinstance__;


} // namespace acdk
} // namespace io

namespace acdk { 
namespace io { 

using namespace acdk::lang;

//static
::acdk::lang::RObject
GlobFilenameFilter_create_array(int length)
{
  return new ObjectArrayImpl<RGlobFilenameFilter>(length);
}

//static
::acdk::lang::RObject
GlobFilenameFilter_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class GlobFilenameFilter_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  GlobFilenameFilter_method_GetClass__L_acdk_lang_RClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)GlobFilenameFilter::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  GlobFilenameFilter_method_GlobFilenameFilter_INLRString__LRGlobFilenameFilter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new GlobFilenameFilter(::acdk::lang::dmi::castTo< RString>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  GlobFilenameFilter_fields__pattern_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    GlobFilenameFilter* This = dmi_cast<GlobFilenameFilter>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_pattern, flags);
    else
      This->_pattern = ::acdk::lang::dmi::castTo< RString>(var, dc);
    return fieldinf;
  }
};

::acdk::lang::dmi::ClazzFieldInfo GlobFilenameFilter_fields__pattern = 
{
  ::acdk::lang::dmi::MiPrivate | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_pattern", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo(),
  GlobFilenameFilter_MetainfoWrapper::GlobFilenameFilter_fields__pattern_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo* _GlobFilenameFilter_fields[] = 
{
  &GlobFilenameFilter_fields__pattern,
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo* GlobFilenameFilter_methods_GetClass__L_acdk_lang_RClass__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* GlobFilenameFilter_methods_GetClass__L_acdk_lang_RClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo GlobFilenameFilter_method_GetClass__L_acdk_lang_RClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_1_GetClass", // alternative name of method
  -1, // altlabelHashCode
  GlobFilenameFilter_methods_GetClass__L_acdk_lang_RClass__args, // the arguments
  0, //arguments count
  GlobFilenameFilter_methods_GetClass__L_acdk_lang_RClass__exceptions, // the declared exceptions
  GlobFilenameFilter_MetainfoWrapper::GlobFilenameFilter_method_GetClass__L_acdk_lang_RClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo GlobFilenameFilter_methods_GlobFilenameFilter_INLRString__LRGlobFilenameFilter__arg_pattern = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "pattern", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* GlobFilenameFilter_methods_GlobFilenameFilter_INLRString__LRGlobFilenameFilter__args[] = 
{
  &GlobFilenameFilter_methods_GlobFilenameFilter_INLRString__LRGlobFilenameFilter__arg_pattern,
  0
};

::acdk::lang::dmi::ClazzInfo* GlobFilenameFilter_methods_GlobFilenameFilter_INLRString__LRGlobFilenameFilter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo GlobFilenameFilter_method_GlobFilenameFilter_INLRString__LRGlobFilenameFilter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "GlobFilenameFilter", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  GlobFilenameFilter::clazzInfo(), // return type
  "_0_GlobFilenameFilter", // alternative name of method
  -1, // altlabelHashCode
  GlobFilenameFilter_methods_GlobFilenameFilter_INLRString__LRGlobFilenameFilter__args, // the arguments
  0, //arguments count
  GlobFilenameFilter_methods_GlobFilenameFilter_INLRString__LRGlobFilenameFilter__exceptions, // the declared exceptions
  GlobFilenameFilter_MetainfoWrapper::GlobFilenameFilter_method_GlobFilenameFilter_INLRString__LRGlobFilenameFilter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _GlobFilenameFilter_methods[] = 
{
  &GlobFilenameFilter_method_GetClass__L_acdk_lang_RClass_,
  &GlobFilenameFilter_method_GlobFilenameFilter_INLRString__LRGlobFilenameFilter_,
  0
};


struct GlobFilenameFilter_MetaInfoInitializer
{  GlobFilenameFilter_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = GlobFilenameFilter::clazzInfo();
    ci->fields =  _GlobFilenameFilter_fields;
    ci->methods =  _GlobFilenameFilter_methods;
    ci->_scopeParent = acdk_io_unitInfo.getMetaInfo();
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
GlobFilenameFilter_MetaInfoInitializer GlobFilenameFilter_MetaInfoInitializer_staticinstance__;


} // namespace acdk
} // namespace io

namespace acdk { 
namespace io { 

using namespace acdk::lang;

//static
::acdk::lang::RObject
InputReader_create_array(int length)
{
  return new ObjectArrayImpl<RInputReader>(length);
}

//static
::acdk::lang::RObject
InputReader_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class InputReader_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  InputReader_method_GetClass__L_acdk_lang_RClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)InputReader::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  InputReader_method_InputReader_INLRReader__LRInputReader__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new InputReader(::acdk::lang::dmi::castTo< RReader>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  InputReader_method_InputReader_INLRReader_INLacdk_locale_RDecoder__LRInputReader__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new InputReader(::acdk::lang::dmi::castTo< RReader>(args[0], dc), ::acdk::lang::dmi::castTo< acdk::locale::RDecoder>(args[1], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  InputReader_method_InputReader_INLRReader_INLacdk_locale_RDecoder_INLRObject__LRInputReader__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new InputReader(::acdk::lang::dmi::castTo< RReader>(args[0], dc), ::acdk::lang::dmi::castTo< acdk::locale::RDecoder>(args[1], dc), ::acdk::lang::dmi::castTo< acdk::lang::Object>(args[2], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  InputReader_method_InputReader_INLRCharReader__LRInputReader__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new InputReader(::acdk::lang::dmi::castTo< RCharReader>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  InputReader_method_create_instance__LRObject__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)InputReader::create_instance();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  InputReader_method_eof__Z_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    InputReader* This = dmi_cast<InputReader>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
      ret = This->InputReader::eof();
    else
      ret = This->eof();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  InputReader_method_readAString__LRString__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    InputReader* This = dmi_cast<InputReader>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        ret = (::acdk::lang::RObject)This->InputReader::readAString();
    else
        ret = (::acdk::lang::RObject)This->readAString();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  InputReader_method_readBoolean__Z_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    InputReader* This = dmi_cast<InputReader>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
      ret = This->InputReader::readBoolean();
    else
      ret = This->readBoolean();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  InputReader_method_readDouble__D_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    InputReader* This = dmi_cast<InputReader>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
      ret = This->InputReader::readDouble();
    else
      ret = This->readDouble();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  InputReader_method_readInt__I_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    InputReader* This = dmi_cast<InputReader>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
      ret = This->InputReader::readInt();
    else
      ret = This->readInt();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  InputReader_method_readLine__LRString__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    InputReader* This = dmi_cast<InputReader>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        ret = (::acdk::lang::RObject)This->InputReader::readLine();
    else
        ret = (::acdk::lang::RObject)This->readLine();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  InputReader_method_readLong__J_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    InputReader* This = dmi_cast<InputReader>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
      ret = This->InputReader::readLong();
    else
      ret = This->readLong();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  InputReader_method_readQuoted__LRString__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    InputReader* This = dmi_cast<InputReader>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        ret = (::acdk::lang::RObject)This->InputReader::readQuoted();
    else
        ret = (::acdk::lang::RObject)This->readQuoted();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  InputReader_method_skipBytes_I_I_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    InputReader* This = dmi_cast<InputReader>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
      ret = This->InputReader::skipBytes(::acdk::lang::dmi::castTo< int>(args[0], dc));
    else
      ret = This->skipBytes(::acdk::lang::dmi::castTo< int>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  InputReader_fields__eofReturned_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    InputReader* This = dmi_cast<InputReader>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_eofReturned, flags);
    else
      This->_eofReturned = ::acdk::lang::dmi::castTo< bool>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  InputReader_fields__isEof_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    InputReader* This = dmi_cast<InputReader>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_isEof, flags);
    else
      This->_isEof = ::acdk::lang::dmi::castTo< bool>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  InputReader_fields__skipNextNl_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    InputReader* This = dmi_cast<InputReader>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_skipNextNl, flags);
    else
      This->_skipNextNl = ::acdk::lang::dmi::castTo< bool>(var, dc);
    return fieldinf;
  }
};

::acdk::lang::dmi::ClazzFieldInfo InputReader_fields__eofReturned = 
{
  ::acdk::lang::dmi::MiPrivate | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_eofReturned", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz(),
  InputReader_MetainfoWrapper::InputReader_fields__eofReturned_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo InputReader_fields__isEof = 
{
  ::acdk::lang::dmi::MiPrivate | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_isEof", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz(),
  InputReader_MetainfoWrapper::InputReader_fields__isEof_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo InputReader_fields__skipNextNl = 
{
  ::acdk::lang::dmi::MiPrivate | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_skipNextNl", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz(),
  InputReader_MetainfoWrapper::InputReader_fields__skipNextNl_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo* _InputReader_fields[] = 
{
  &InputReader_fields__eofReturned,
  &InputReader_fields__isEof,
  &InputReader_fields__skipNextNl,
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo* InputReader_methods_GetClass__L_acdk_lang_RClass__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* InputReader_methods_GetClass__L_acdk_lang_RClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo InputReader_method_GetClass__L_acdk_lang_RClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_e_GetClass", // alternative name of method
  -1, // altlabelHashCode
  InputReader_methods_GetClass__L_acdk_lang_RClass__args, // the arguments
  0, //arguments count
  InputReader_methods_GetClass__L_acdk_lang_RClass__exceptions, // the declared exceptions
  InputReader_MetainfoWrapper::InputReader_method_GetClass__L_acdk_lang_RClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo InputReader_methods_InputReader_INLRReader__LRInputReader__arg_in = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "in", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RReader::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* InputReader_methods_InputReader_INLRReader__LRInputReader__args[] = 
{
  &InputReader_methods_InputReader_INLRReader__LRInputReader__arg_in,
  0
};

::acdk::lang::dmi::ClazzInfo* InputReader_methods_InputReader_INLRReader__LRInputReader__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo InputReader_method_InputReader_INLRReader__LRInputReader_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor,// class flags, like static, 
  0, //AttributesRes
  "InputReader", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  InputReader::clazzInfo(), // return type
  "_2_InputReader", // alternative name of method
  -1, // altlabelHashCode
  InputReader_methods_InputReader_INLRReader__LRInputReader__args, // the arguments
  0, //arguments count
  InputReader_methods_InputReader_INLRReader__LRInputReader__exceptions, // the declared exceptions
  InputReader_MetainfoWrapper::InputReader_method_InputReader_INLRReader__LRInputReader__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo InputReader_methods_InputReader_INLRReader_INLacdk_locale_RDecoder__LRInputReader__arg_in = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "in", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RReader::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo InputReader_methods_InputReader_INLRReader_INLacdk_locale_RDecoder__LRInputReader__arg_decoder = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "decoder", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  acdk::locale::RDecoder::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* InputReader_methods_InputReader_INLRReader_INLacdk_locale_RDecoder__LRInputReader__args[] = 
{
  &InputReader_methods_InputReader_INLRReader_INLacdk_locale_RDecoder__LRInputReader__arg_in,
  &InputReader_methods_InputReader_INLRReader_INLacdk_locale_RDecoder__LRInputReader__arg_decoder,
  0
};

::acdk::lang::dmi::ClazzInfo* InputReader_methods_InputReader_INLRReader_INLacdk_locale_RDecoder__LRInputReader__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo InputReader_method_InputReader_INLRReader_INLacdk_locale_RDecoder__LRInputReader_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor,// class flags, like static, 
  0, //AttributesRes
  "InputReader", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  InputReader::clazzInfo(), // return type
  "_3_InputReader", // alternative name of method
  -1, // altlabelHashCode
  InputReader_methods_InputReader_INLRReader_INLacdk_locale_RDecoder__LRInputReader__args, // the arguments
  0, //arguments count
  InputReader_methods_InputReader_INLRReader_INLacdk_locale_RDecoder__LRInputReader__exceptions, // the declared exceptions
  InputReader_MetainfoWrapper::InputReader_method_InputReader_INLRReader_INLacdk_locale_RDecoder__LRInputReader__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo InputReader_methods_InputReader_INLRReader_INLacdk_locale_RDecoder_INLRObject__LRInputReader__arg_in = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "in", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RReader::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo InputReader_methods_InputReader_INLRReader_INLacdk_locale_RDecoder_INLRObject__LRInputReader__arg_decoder = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "decoder", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  acdk::locale::RDecoder::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo InputReader_methods_InputReader_INLRReader_INLacdk_locale_RDecoder_INLRObject__LRInputReader__arg_lock = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "lock", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  acdk::lang::Object::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* InputReader_methods_InputReader_INLRReader_INLacdk_locale_RDecoder_INLRObject__LRInputReader__args[] = 
{
  &InputReader_methods_InputReader_INLRReader_INLacdk_locale_RDecoder_INLRObject__LRInputReader__arg_in,
  &InputReader_methods_InputReader_INLRReader_INLacdk_locale_RDecoder_INLRObject__LRInputReader__arg_decoder,
  &InputReader_methods_InputReader_INLRReader_INLacdk_locale_RDecoder_INLRObject__LRInputReader__arg_lock,
  0
};

::acdk::lang::dmi::ClazzInfo* InputReader_methods_InputReader_INLRReader_INLacdk_locale_RDecoder_INLRObject__LRInputReader__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo InputReader_method_InputReader_INLRReader_INLacdk_locale_RDecoder_INLRObject__LRInputReader_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "InputReader", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  InputReader::clazzInfo(), // return type
  "_1_InputReader", // alternative name of method
  -1, // altlabelHashCode
  InputReader_methods_InputReader_INLRReader_INLacdk_locale_RDecoder_INLRObject__LRInputReader__args, // the arguments
  0, //arguments count
  InputReader_methods_InputReader_INLRReader_INLacdk_locale_RDecoder_INLRObject__LRInputReader__exceptions, // the declared exceptions
  InputReader_MetainfoWrapper::InputReader_method_InputReader_INLRReader_INLacdk_locale_RDecoder_INLRObject__LRInputReader__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo InputReader_methods_InputReader_INLRCharReader__LRInputReader__arg_in = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "in", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RCharReader::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* InputReader_methods_InputReader_INLRCharReader__LRInputReader__args[] = 
{
  &InputReader_methods_InputReader_INLRCharReader__LRInputReader__arg_in,
  0
};

::acdk::lang::dmi::ClazzInfo* InputReader_methods_InputReader_INLRCharReader__LRInputReader__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo InputReader_method_InputReader_INLRCharReader__LRInputReader_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "InputReader", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  InputReader::clazzInfo(), // return type
  "_4_InputReader", // alternative name of method
  -1, // altlabelHashCode
  InputReader_methods_InputReader_INLRCharReader__LRInputReader__args, // the arguments
  0, //arguments count
  InputReader_methods_InputReader_INLRCharReader__LRInputReader__exceptions, // the declared exceptions
  InputReader_MetainfoWrapper::InputReader_method_InputReader_INLRCharReader__LRInputReader__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* InputReader_methods_create_instance__LRObject__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* InputReader_methods_create_instance__LRObject__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo InputReader_method_create_instance__LRObject_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "create_instance", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  acdk::lang::Object::clazzInfo(), // return type
  "_0_create_instance", // alternative name of method
  -1, // altlabelHashCode
  InputReader_methods_create_instance__LRObject__args, // the arguments
  0, //arguments count
  InputReader_methods_create_instance__LRObject__exceptions, // the declared exceptions
  InputReader_MetainfoWrapper::InputReader_method_create_instance__LRObject__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* InputReader_methods_eof__Z_args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* InputReader_methods_eof__Z_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo InputReader_method_eof__Z = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "eof", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz(), // return type
  "_c_eof", // alternative name of method
  -1, // altlabelHashCode
  InputReader_methods_eof__Z_args, // the arguments
  0, //arguments count
  InputReader_methods_eof__Z_exceptions, // the declared exceptions
  InputReader_MetainfoWrapper::InputReader_method_eof__Z_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* InputReader_methods_readAString__LRString__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* InputReader_methods_readAString__LRString__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo InputReader_method_readAString__LRString_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "readAString", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo(), // return type
  "_5_readAString", // alternative name of method
  -1, // altlabelHashCode
  InputReader_methods_readAString__LRString__args, // the arguments
  0, //arguments count
  InputReader_methods_readAString__LRString__exceptions, // the declared exceptions
  InputReader_MetainfoWrapper::InputReader_method_readAString__LRString__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* InputReader_methods_readBoolean__Z_args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* InputReader_methods_readBoolean__Z_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo InputReader_method_readBoolean__Z = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "readBoolean", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz(), // return type
  "_8_readBoolean", // alternative name of method
  -1, // altlabelHashCode
  InputReader_methods_readBoolean__Z_args, // the arguments
  0, //arguments count
  InputReader_methods_readBoolean__Z_exceptions, // the declared exceptions
  InputReader_MetainfoWrapper::InputReader_method_readBoolean__Z_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* InputReader_methods_readDouble__D_args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* InputReader_methods_readDouble__D_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo InputReader_method_readDouble__D = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "readDouble", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getDoubleClazz(), // return type
  "_9_readDouble", // alternative name of method
  -1, // altlabelHashCode
  InputReader_methods_readDouble__D_args, // the arguments
  0, //arguments count
  InputReader_methods_readDouble__D_exceptions, // the declared exceptions
  InputReader_MetainfoWrapper::InputReader_method_readDouble__D_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* InputReader_methods_readInt__I_args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* InputReader_methods_readInt__I_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo InputReader_method_readInt__I = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "readInt", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(), // return type
  "_7_readInt", // alternative name of method
  -1, // altlabelHashCode
  InputReader_methods_readInt__I_args, // the arguments
  0, //arguments count
  InputReader_methods_readInt__I_exceptions, // the declared exceptions
  InputReader_MetainfoWrapper::InputReader_method_readInt__I_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* InputReader_methods_readLine__LRString__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* InputReader_methods_readLine__LRString__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo InputReader_method_readLine__LRString_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "readLine", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo(), // return type
  "_6_readLine", // alternative name of method
  -1, // altlabelHashCode
  InputReader_methods_readLine__LRString__args, // the arguments
  0, //arguments count
  InputReader_methods_readLine__LRString__exceptions, // the declared exceptions
  InputReader_MetainfoWrapper::InputReader_method_readLine__LRString__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* InputReader_methods_readLong__J_args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* InputReader_methods_readLong__J_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo InputReader_method_readLong__J = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "readLong", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getLongClazz(), // return type
  "_a_readLong", // alternative name of method
  -1, // altlabelHashCode
  InputReader_methods_readLong__J_args, // the arguments
  0, //arguments count
  InputReader_methods_readLong__J_exceptions, // the declared exceptions
  InputReader_MetainfoWrapper::InputReader_method_readLong__J_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* InputReader_methods_readQuoted__LRString__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* InputReader_methods_readQuoted__LRString__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo InputReader_method_readQuoted__LRString_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "readQuoted", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo(), // return type
  "_d_readQuoted", // alternative name of method
  -1, // altlabelHashCode
  InputReader_methods_readQuoted__LRString__args, // the arguments
  0, //arguments count
  InputReader_methods_readQuoted__LRString__exceptions, // the declared exceptions
  InputReader_MetainfoWrapper::InputReader_method_readQuoted__LRString__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo InputReader_methods_skipBytes_I_I_arg_len = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "len", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* InputReader_methods_skipBytes_I_I_args[] = 
{
  &InputReader_methods_skipBytes_I_I_arg_len,
  0
};

::acdk::lang::dmi::ClazzInfo* InputReader_methods_skipBytes_I_I_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo InputReader_method_skipBytes_I_I = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "skipBytes", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(), // return type
  "_b_skipBytes", // alternative name of method
  -1, // altlabelHashCode
  InputReader_methods_skipBytes_I_I_args, // the arguments
  0, //arguments count
  InputReader_methods_skipBytes_I_I_exceptions, // the declared exceptions
  InputReader_MetainfoWrapper::InputReader_method_skipBytes_I_I_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _InputReader_methods[] = 
{
  &InputReader_method_GetClass__L_acdk_lang_RClass_,
  &InputReader_method_InputReader_INLRReader__LRInputReader_,
  &InputReader_method_InputReader_INLRReader_INLacdk_locale_RDecoder__LRInputReader_,
  &InputReader_method_InputReader_INLRReader_INLacdk_locale_RDecoder_INLRObject__LRInputReader_,
  &InputReader_method_InputReader_INLRCharReader__LRInputReader_,
  &InputReader_method_create_instance__LRObject_,
  &InputReader_method_eof__Z,
  &InputReader_method_readAString__LRString_,
  &InputReader_method_readBoolean__Z,
  &InputReader_method_readDouble__D,
  &InputReader_method_readInt__I,
  &InputReader_method_readLine__LRString_,
  &InputReader_method_readLong__J,
  &InputReader_method_readQuoted__LRString_,
  &InputReader_method_skipBytes_I_I,
  0
};


struct InputReader_MetaInfoInitializer
{  InputReader_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = InputReader::clazzInfo();
    ci->fields =  _InputReader_fields;
    ci->methods =  _InputReader_methods;
    ci->_scopeParent = acdk_io_unitInfo.getMetaInfo();
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
InputReader_MetaInfoInitializer InputReader_MetaInfoInitializer_staticinstance__;


} // namespace acdk
} // namespace io

namespace acdk { 
namespace io { 

using namespace acdk::lang;

//static
::acdk::lang::RObject
IOException_create_array(int length)
{
  return new ObjectArrayImpl<RIOException>(length);
}

//static
::acdk::lang::RObject
IOException_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class IOException_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  IOException_method_GetClass__L_acdk_lang_RClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)IOException::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  IOException_method_IOException_Z_LRIOException__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new IOException(::acdk::lang::dmi::castTo< bool>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  IOException_method_IOException__LRIOException__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new IOException();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  IOException_method_IOException_INLRString_Z_LRIOException__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new IOException(::acdk::lang::dmi::castTo< RString>(args[0], dc), ::acdk::lang::dmi::castTo< bool>(args[1], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  IOException_method_IOException_INLRString__LRIOException__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new IOException(::acdk::lang::dmi::castTo< RString>(args[0], dc));
    return methinf;
  }
};


void ThrowException_IOException(IN(::acdk::lang::RThrowable) ex)
{
  throw RIOException(ex);
}

::acdk::lang::dmi::ClazzFieldInfo* _IOException_fields[] = 
{
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo* IOException_methods_GetClass__L_acdk_lang_RClass__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* IOException_methods_GetClass__L_acdk_lang_RClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo IOException_method_GetClass__L_acdk_lang_RClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_4_GetClass", // alternative name of method
  -1, // altlabelHashCode
  IOException_methods_GetClass__L_acdk_lang_RClass__args, // the arguments
  0, //arguments count
  IOException_methods_GetClass__L_acdk_lang_RClass__exceptions, // the declared exceptions
  IOException_MetainfoWrapper::IOException_method_GetClass__L_acdk_lang_RClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo IOException_methods_IOException_Z_LRIOException__arg_withErrno = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "withErrno", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* IOException_methods_IOException_Z_LRIOException__args[] = 
{
  &IOException_methods_IOException_Z_LRIOException__arg_withErrno,
  0
};

::acdk::lang::dmi::ClazzInfo* IOException_methods_IOException_Z_LRIOException__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo IOException_method_IOException_Z_LRIOException_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "IOException", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  IOException::clazzInfo(), // return type
  "_0_IOException", // alternative name of method
  -1, // altlabelHashCode
  IOException_methods_IOException_Z_LRIOException__args, // the arguments
  0, //arguments count
  IOException_methods_IOException_Z_LRIOException__exceptions, // the declared exceptions
  IOException_MetainfoWrapper::IOException_method_IOException_Z_LRIOException__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* IOException_methods_IOException__LRIOException__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* IOException_methods_IOException__LRIOException__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo IOException_method_IOException__LRIOException_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor,// class flags, like static, 
  0, //AttributesRes
  "IOException", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  IOException::clazzInfo(), // return type
  "_1_IOException", // alternative name of method
  -1, // altlabelHashCode
  IOException_methods_IOException__LRIOException__args, // the arguments
  0, //arguments count
  IOException_methods_IOException__LRIOException__exceptions, // the declared exceptions
  IOException_MetainfoWrapper::IOException_method_IOException__LRIOException__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo IOException_methods_IOException_INLRString_Z_LRIOException__arg_what = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "what", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo IOException_methods_IOException_INLRString_Z_LRIOException__arg_withErrno = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "withErrno", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* IOException_methods_IOException_INLRString_Z_LRIOException__args[] = 
{
  &IOException_methods_IOException_INLRString_Z_LRIOException__arg_what,
  &IOException_methods_IOException_INLRString_Z_LRIOException__arg_withErrno,
  0
};

::acdk::lang::dmi::ClazzInfo* IOException_methods_IOException_INLRString_Z_LRIOException__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo IOException_method_IOException_INLRString_Z_LRIOException_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "IOException", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  IOException::clazzInfo(), // return type
  "_2_IOException", // alternative name of method
  -1, // altlabelHashCode
  IOException_methods_IOException_INLRString_Z_LRIOException__args, // the arguments
  0, //arguments count
  IOException_methods_IOException_INLRString_Z_LRIOException__exceptions, // the declared exceptions
  IOException_MetainfoWrapper::IOException_method_IOException_INLRString_Z_LRIOException__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo IOException_methods_IOException_INLRString__LRIOException__arg_what = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "what", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* IOException_methods_IOException_INLRString__LRIOException__args[] = 
{
  &IOException_methods_IOException_INLRString__LRIOException__arg_what,
  0
};

::acdk::lang::dmi::ClazzInfo* IOException_methods_IOException_INLRString__LRIOException__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo IOException_method_IOException_INLRString__LRIOException_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor,// class flags, like static, 
  0, //AttributesRes
  "IOException", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  IOException::clazzInfo(), // return type
  "_3_IOException", // alternative name of method
  -1, // altlabelHashCode
  IOException_methods_IOException_INLRString__LRIOException__args, // the arguments
  0, //arguments count
  IOException_methods_IOException_INLRString__LRIOException__exceptions, // the declared exceptions
  IOException_MetainfoWrapper::IOException_method_IOException_INLRString__LRIOException__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _IOException_methods[] = 
{
  &IOException_method_GetClass__L_acdk_lang_RClass_,
  &IOException_method_IOException_Z_LRIOException_,
  &IOException_method_IOException__LRIOException_,
  &IOException_method_IOException_INLRString_Z_LRIOException_,
  &IOException_method_IOException_INLRString__LRIOException_,
  0
};


struct IOException_MetaInfoInitializer
{  IOException_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = IOException::clazzInfo();
    ci->fields =  _IOException_fields;
    ci->methods =  _IOException_methods;
    ci->_scopeParent = acdk_io_unitInfo.getMetaInfo();
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
IOException_MetaInfoInitializer IOException_MetaInfoInitializer_staticinstance__;


struct IOException_clazzInfo_ClazzAttributesResInitializer11
{
  IOException_clazzInfo_ClazzAttributesResInitializer11()
  {
    ::acdk::lang::dmi::ClazzAttributesRes::attachAttribute((::acdk::lang::dmi::MetaInfo*)IOException::clazzInfo(), "__throwExceptionFunc", ::acdk::lang::dmi::ClazzAttributeResValue(0xFFFF, (void*)&ThrowException_IOException));
  }
};

IOException_clazzInfo_ClazzAttributesResInitializer11 IOException_clazzInfo_ClazzAttributesResInitializer11_instance;



} // namespace acdk
} // namespace io

namespace acdk { 
namespace io { 

using namespace acdk::lang;

//static
::acdk::lang::RObject
JoinedReader_create_array(int length)
{
  return new ObjectArrayImpl<RJoinedReader>(length);
}

//static
::acdk::lang::RObject
JoinedReader_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class JoinedReader_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  JoinedReader_method_GetClass__L_acdk_lang_RClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)JoinedReader::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  JoinedReader_method_JoinedReader_INLRReader_INLRObject__LRJoinedReader__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new JoinedReader(::acdk::lang::dmi::castTo< RReader>(args[0], dc), ::acdk::lang::dmi::castTo< acdk::lang::Object>(args[1], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  JoinedReader_method_JoinedReader_INLRReader__LRJoinedReader__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new JoinedReader(::acdk::lang::dmi::castTo< RReader>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  JoinedReader_method_addIn_INLRReader__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    JoinedReader* This = dmi_cast<JoinedReader>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->JoinedReader::addIn(::acdk::lang::dmi::castTo< RReader>(args[0], dc));
    else
        This->addIn(::acdk::lang::dmi::castTo< RReader>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  JoinedReader_method_getIn__LRReader__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    JoinedReader* This = dmi_cast<JoinedReader>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        ret = (::acdk::lang::RObject)This->JoinedReader::getIn();
    else
        ret = (::acdk::lang::RObject)This->getIn();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  JoinedReader_fields__curPos_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    JoinedReader* This = dmi_cast<JoinedReader>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_curPos, flags);
    else
      This->_curPos = ::acdk::lang::dmi::castTo< int>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  JoinedReader_fields__ins_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    JoinedReader* This = dmi_cast<JoinedReader>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_ins, flags);
    else
      This->_ins = ::acdk::lang::dmi::castTo< RReaderArray>(var, dc);
    return fieldinf;
  }
};

::acdk::lang::dmi::ClazzFieldInfo JoinedReader_fields__curPos = 
{
  ::acdk::lang::dmi::MiProtected | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_curPos", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(),
  JoinedReader_MetainfoWrapper::JoinedReader_fields__curPos_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo JoinedReader_fields__ins = 
{
  ::acdk::lang::dmi::MiProtected | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_ins", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RReaderArray::clazzInfo(),
  JoinedReader_MetainfoWrapper::JoinedReader_fields__ins_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo* _JoinedReader_fields[] = 
{
  &JoinedReader_fields__curPos,
  &JoinedReader_fields__ins,
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo* JoinedReader_methods_GetClass__L_acdk_lang_RClass__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* JoinedReader_methods_GetClass__L_acdk_lang_RClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo JoinedReader_method_GetClass__L_acdk_lang_RClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_4_GetClass", // alternative name of method
  -1, // altlabelHashCode
  JoinedReader_methods_GetClass__L_acdk_lang_RClass__args, // the arguments
  0, //arguments count
  JoinedReader_methods_GetClass__L_acdk_lang_RClass__exceptions, // the declared exceptions
  JoinedReader_MetainfoWrapper::JoinedReader_method_GetClass__L_acdk_lang_RClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo JoinedReader_methods_JoinedReader_INLRReader_INLRObject__LRJoinedReader__arg_firstIn = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "firstIn", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RReader::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo JoinedReader_methods_JoinedReader_INLRReader_INLRObject__LRJoinedReader__arg_lock = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "lock", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  acdk::lang::Object::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* JoinedReader_methods_JoinedReader_INLRReader_INLRObject__LRJoinedReader__args[] = 
{
  &JoinedReader_methods_JoinedReader_INLRReader_INLRObject__LRJoinedReader__arg_firstIn,
  &JoinedReader_methods_JoinedReader_INLRReader_INLRObject__LRJoinedReader__arg_lock,
  0
};

::acdk::lang::dmi::ClazzInfo* JoinedReader_methods_JoinedReader_INLRReader_INLRObject__LRJoinedReader__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo JoinedReader_method_JoinedReader_INLRReader_INLRObject__LRJoinedReader_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "JoinedReader", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  JoinedReader::clazzInfo(), // return type
  "_0_JoinedReader", // alternative name of method
  -1, // altlabelHashCode
  JoinedReader_methods_JoinedReader_INLRReader_INLRObject__LRJoinedReader__args, // the arguments
  0, //arguments count
  JoinedReader_methods_JoinedReader_INLRReader_INLRObject__LRJoinedReader__exceptions, // the declared exceptions
  JoinedReader_MetainfoWrapper::JoinedReader_method_JoinedReader_INLRReader_INLRObject__LRJoinedReader__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo JoinedReader_methods_JoinedReader_INLRReader__LRJoinedReader__arg_firstIn = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "firstIn", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RReader::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* JoinedReader_methods_JoinedReader_INLRReader__LRJoinedReader__args[] = 
{
  &JoinedReader_methods_JoinedReader_INLRReader__LRJoinedReader__arg_firstIn,
  0
};

::acdk::lang::dmi::ClazzInfo* JoinedReader_methods_JoinedReader_INLRReader__LRJoinedReader__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo JoinedReader_method_JoinedReader_INLRReader__LRJoinedReader_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor,// class flags, like static, 
  0, //AttributesRes
  "JoinedReader", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  JoinedReader::clazzInfo(), // return type
  "_1_JoinedReader", // alternative name of method
  -1, // altlabelHashCode
  JoinedReader_methods_JoinedReader_INLRReader__LRJoinedReader__args, // the arguments
  0, //arguments count
  JoinedReader_methods_JoinedReader_INLRReader__LRJoinedReader__exceptions, // the declared exceptions
  JoinedReader_MetainfoWrapper::JoinedReader_method_JoinedReader_INLRReader__LRJoinedReader__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo JoinedReader_methods_addIn_INLRReader__V_arg_in = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "in", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RReader::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* JoinedReader_methods_addIn_INLRReader__V_args[] = 
{
  &JoinedReader_methods_addIn_INLRReader__V_arg_in,
  0
};

::acdk::lang::dmi::ClazzInfo* JoinedReader_methods_addIn_INLRReader__V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo JoinedReader_method_addIn_INLRReader__V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "addIn", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_2_addIn", // alternative name of method
  -1, // altlabelHashCode
  JoinedReader_methods_addIn_INLRReader__V_args, // the arguments
  0, //arguments count
  JoinedReader_methods_addIn_INLRReader__V_exceptions, // the declared exceptions
  JoinedReader_MetainfoWrapper::JoinedReader_method_addIn_INLRReader__V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* JoinedReader_methods_getIn__LRReader__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* JoinedReader_methods_getIn__LRReader__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo JoinedReader_method_getIn__LRReader_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "getIn", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RReader::clazzInfo(), // return type
  "_3_getIn", // alternative name of method
  -1, // altlabelHashCode
  JoinedReader_methods_getIn__LRReader__args, // the arguments
  0, //arguments count
  JoinedReader_methods_getIn__LRReader__exceptions, // the declared exceptions
  JoinedReader_MetainfoWrapper::JoinedReader_method_getIn__LRReader__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _JoinedReader_methods[] = 
{
  &JoinedReader_method_GetClass__L_acdk_lang_RClass_,
  &JoinedReader_method_JoinedReader_INLRReader_INLRObject__LRJoinedReader_,
  &JoinedReader_method_JoinedReader_INLRReader__LRJoinedReader_,
  &JoinedReader_method_addIn_INLRReader__V,
  &JoinedReader_method_getIn__LRReader_,
  0
};


struct JoinedReader_MetaInfoInitializer
{  JoinedReader_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = JoinedReader::clazzInfo();
    ci->fields =  _JoinedReader_fields;
    ci->methods =  _JoinedReader_methods;
    ci->_scopeParent = acdk_io_unitInfo.getMetaInfo();
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
JoinedReader_MetaInfoInitializer JoinedReader_MetaInfoInitializer_staticinstance__;


} // namespace acdk
} // namespace io

namespace acdk { 
namespace io { 


//static
::acdk::lang::RObject
LineNumberCharReader_create_array(int length)
{
  return new ObjectArrayImpl<RLineNumberCharReader>(length);
}

//static
::acdk::lang::RObject
LineNumberCharReader_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class LineNumberCharReader_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  LineNumberCharReader_method_GetClass__L_acdk_lang_RClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)LineNumberCharReader::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  LineNumberCharReader_method_close__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    LineNumberCharReader* This = dmi_cast<LineNumberCharReader>(This_);
    This->close();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  LineNumberCharReader_method_getCharPos__I_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    LineNumberCharReader* This = dmi_cast<LineNumberCharReader>(This_);
  ret = This->getCharPos();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  LineNumberCharReader_method_getColumnNumber__I_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    LineNumberCharReader* This = dmi_cast<LineNumberCharReader>(This_);
  ret = This->getColumnNumber();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  LineNumberCharReader_method_getLineNumber__I_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    LineNumberCharReader* This = dmi_cast<LineNumberCharReader>(This_);
  ret = This->getLineNumber();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  LineNumberCharReader_method_readChar__I_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    LineNumberCharReader* This = dmi_cast<LineNumberCharReader>(This_);
  ret = This->readChar();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  LineNumberCharReader_method_readLine__LRString__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    LineNumberCharReader* This = dmi_cast<LineNumberCharReader>(This_);
    ret = (::acdk::lang::RObject)This->readLine();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  LineNumberCharReader_method_readString__LRString__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    LineNumberCharReader* This = dmi_cast<LineNumberCharReader>(This_);
    ret = (::acdk::lang::RObject)This->readString();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  LineNumberCharReader_method_setCharPos_I_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    LineNumberCharReader* This = dmi_cast<LineNumberCharReader>(This_);
    This->setCharPos(::acdk::lang::dmi::castTo< int>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  LineNumberCharReader_method_setColumnNumber_I_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    LineNumberCharReader* This = dmi_cast<LineNumberCharReader>(This_);
    This->setColumnNumber(::acdk::lang::dmi::castTo< int>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  LineNumberCharReader_method_setLineNumber_I_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    LineNumberCharReader* This = dmi_cast<LineNumberCharReader>(This_);
    This->setLineNumber(::acdk::lang::dmi::castTo< int>(args[0], dc));
    return methinf;
  }
};

::acdk::lang::dmi::ClazzFieldInfo* _LineNumberCharReader_fields[] = 
{
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo* LineNumberCharReader_methods_GetClass__L_acdk_lang_RClass__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* LineNumberCharReader_methods_GetClass__L_acdk_lang_RClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo LineNumberCharReader_method_GetClass__L_acdk_lang_RClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_a_GetClass", // alternative name of method
  -1, // altlabelHashCode
  LineNumberCharReader_methods_GetClass__L_acdk_lang_RClass__args, // the arguments
  0, //arguments count
  LineNumberCharReader_methods_GetClass__L_acdk_lang_RClass__exceptions, // the declared exceptions
  LineNumberCharReader_MetainfoWrapper::LineNumberCharReader_method_GetClass__L_acdk_lang_RClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* LineNumberCharReader_methods_close__V_args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* LineNumberCharReader_methods_close__V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo LineNumberCharReader_method_close__V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "close", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_2_close", // alternative name of method
  -1, // altlabelHashCode
  LineNumberCharReader_methods_close__V_args, // the arguments
  0, //arguments count
  LineNumberCharReader_methods_close__V_exceptions, // the declared exceptions
  LineNumberCharReader_MetainfoWrapper::LineNumberCharReader_method_close__V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* LineNumberCharReader_methods_getCharPos__I_args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* LineNumberCharReader_methods_getCharPos__I_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo LineNumberCharReader_method_getCharPos__I = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "getCharPos", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(), // return type
  "_4_getCharPos", // alternative name of method
  -1, // altlabelHashCode
  LineNumberCharReader_methods_getCharPos__I_args, // the arguments
  0, //arguments count
  LineNumberCharReader_methods_getCharPos__I_exceptions, // the declared exceptions
  LineNumberCharReader_MetainfoWrapper::LineNumberCharReader_method_getCharPos__I_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* LineNumberCharReader_methods_getColumnNumber__I_args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* LineNumberCharReader_methods_getColumnNumber__I_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo LineNumberCharReader_method_getColumnNumber__I = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "getColumnNumber", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(), // return type
  "_8_getColumnNumber", // alternative name of method
  -1, // altlabelHashCode
  LineNumberCharReader_methods_getColumnNumber__I_args, // the arguments
  0, //arguments count
  LineNumberCharReader_methods_getColumnNumber__I_exceptions, // the declared exceptions
  LineNumberCharReader_MetainfoWrapper::LineNumberCharReader_method_getColumnNumber__I_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* LineNumberCharReader_methods_getLineNumber__I_args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* LineNumberCharReader_methods_getLineNumber__I_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo LineNumberCharReader_method_getLineNumber__I = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "getLineNumber", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(), // return type
  "_6_getLineNumber", // alternative name of method
  -1, // altlabelHashCode
  LineNumberCharReader_methods_getLineNumber__I_args, // the arguments
  0, //arguments count
  LineNumberCharReader_methods_getLineNumber__I_exceptions, // the declared exceptions
  LineNumberCharReader_MetainfoWrapper::LineNumberCharReader_method_getLineNumber__I_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* LineNumberCharReader_methods_readChar__I_args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* LineNumberCharReader_methods_readChar__I_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo LineNumberCharReader_method_readChar__I = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "readChar", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(), // return type
  "_0_readChar", // alternative name of method
  -1, // altlabelHashCode
  LineNumberCharReader_methods_readChar__I_args, // the arguments
  0, //arguments count
  LineNumberCharReader_methods_readChar__I_exceptions, // the declared exceptions
  LineNumberCharReader_MetainfoWrapper::LineNumberCharReader_method_readChar__I_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* LineNumberCharReader_methods_readLine__LRString__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* LineNumberCharReader_methods_readLine__LRString__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo LineNumberCharReader_method_readLine__LRString_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "readLine", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo(), // return type
  "_3_readLine", // alternative name of method
  -1, // altlabelHashCode
  LineNumberCharReader_methods_readLine__LRString__args, // the arguments
  0, //arguments count
  LineNumberCharReader_methods_readLine__LRString__exceptions, // the declared exceptions
  LineNumberCharReader_MetainfoWrapper::LineNumberCharReader_method_readLine__LRString__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* LineNumberCharReader_methods_readString__LRString__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* LineNumberCharReader_methods_readString__LRString__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo LineNumberCharReader_method_readString__LRString_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "readString", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo(), // return type
  "_1_readString", // alternative name of method
  -1, // altlabelHashCode
  LineNumberCharReader_methods_readString__LRString__args, // the arguments
  0, //arguments count
  LineNumberCharReader_methods_readString__LRString__exceptions, // the declared exceptions
  LineNumberCharReader_MetainfoWrapper::LineNumberCharReader_method_readString__LRString__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo LineNumberCharReader_methods_setCharPos_I_V_arg_ch = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "ch", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* LineNumberCharReader_methods_setCharPos_I_V_args[] = 
{
  &LineNumberCharReader_methods_setCharPos_I_V_arg_ch,
  0
};

::acdk::lang::dmi::ClazzInfo* LineNumberCharReader_methods_setCharPos_I_V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo LineNumberCharReader_method_setCharPos_I_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "setCharPos", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_5_setCharPos", // alternative name of method
  -1, // altlabelHashCode
  LineNumberCharReader_methods_setCharPos_I_V_args, // the arguments
  0, //arguments count
  LineNumberCharReader_methods_setCharPos_I_V_exceptions, // the declared exceptions
  LineNumberCharReader_MetainfoWrapper::LineNumberCharReader_method_setCharPos_I_V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo LineNumberCharReader_methods_setColumnNumber_I_V_arg_cn = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "cn", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* LineNumberCharReader_methods_setColumnNumber_I_V_args[] = 
{
  &LineNumberCharReader_methods_setColumnNumber_I_V_arg_cn,
  0
};

::acdk::lang::dmi::ClazzInfo* LineNumberCharReader_methods_setColumnNumber_I_V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo LineNumberCharReader_method_setColumnNumber_I_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "setColumnNumber", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_9_setColumnNumber", // alternative name of method
  -1, // altlabelHashCode
  LineNumberCharReader_methods_setColumnNumber_I_V_args, // the arguments
  0, //arguments count
  LineNumberCharReader_methods_setColumnNumber_I_V_exceptions, // the declared exceptions
  LineNumberCharReader_MetainfoWrapper::LineNumberCharReader_method_setColumnNumber_I_V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo LineNumberCharReader_methods_setLineNumber_I_V_arg_ln = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "ln", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* LineNumberCharReader_methods_setLineNumber_I_V_args[] = 
{
  &LineNumberCharReader_methods_setLineNumber_I_V_arg_ln,
  0
};

::acdk::lang::dmi::ClazzInfo* LineNumberCharReader_methods_setLineNumber_I_V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo LineNumberCharReader_method_setLineNumber_I_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "setLineNumber", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_7_setLineNumber", // alternative name of method
  -1, // altlabelHashCode
  LineNumberCharReader_methods_setLineNumber_I_V_args, // the arguments
  0, //arguments count
  LineNumberCharReader_methods_setLineNumber_I_V_exceptions, // the declared exceptions
  LineNumberCharReader_MetainfoWrapper::LineNumberCharReader_method_setLineNumber_I_V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _LineNumberCharReader_methods[] = 
{
  &LineNumberCharReader_method_GetClass__L_acdk_lang_RClass_,
  &LineNumberCharReader_method_close__V,
  &LineNumberCharReader_method_getCharPos__I,
  &LineNumberCharReader_method_getColumnNumber__I,
  &LineNumberCharReader_method_getLineNumber__I,
  &LineNumberCharReader_method_readChar__I,
  &LineNumberCharReader_method_readLine__LRString_,
  &LineNumberCharReader_method_readString__LRString_,
  &LineNumberCharReader_method_setCharPos_I_V,
  &LineNumberCharReader_method_setColumnNumber_I_V,
  &LineNumberCharReader_method_setLineNumber_I_V,
  0
};


struct LineNumberCharReader_MetaInfoInitializer
{  LineNumberCharReader_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = LineNumberCharReader::clazzInfo();
    ci->fields =  _LineNumberCharReader_fields;
    ci->methods =  _LineNumberCharReader_methods;
    ci->_scopeParent = acdk_io_unitInfo.getMetaInfo();
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
LineNumberCharReader_MetaInfoInitializer LineNumberCharReader_MetaInfoInitializer_staticinstance__;


} // namespace acdk
} // namespace io

namespace acdk { 
namespace io { 


//static
::acdk::lang::RObject
LineNumberCharReaderImpl_create_array(int length)
{
  return new ObjectArrayImpl<RLineNumberCharReaderImpl>(length);
}

//static
::acdk::lang::RObject
LineNumberCharReaderImpl_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class LineNumberCharReaderImpl_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  LineNumberCharReaderImpl_method_GetClass__L_acdk_lang_RClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)LineNumberCharReaderImpl::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  LineNumberCharReaderImpl_method_LineNumberCharReaderImpl_INLRCharReader_INLRObject__LRLineNumberCharReaderImpl__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new LineNumberCharReaderImpl(::acdk::lang::dmi::castTo< RCharReader>(args[0], dc), ::acdk::lang::dmi::castTo< acdk::lang::Object>(args[1], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  LineNumberCharReaderImpl_method_LineNumberCharReaderImpl_INLRCharReader__LRLineNumberCharReaderImpl__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new LineNumberCharReaderImpl(::acdk::lang::dmi::castTo< RCharReader>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  LineNumberCharReaderImpl_fields__charPos_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    LineNumberCharReaderImpl* This = dmi_cast<LineNumberCharReaderImpl>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_charPos, flags);
    else
      This->_charPos = ::acdk::lang::dmi::castTo< int>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  LineNumberCharReaderImpl_fields__extra_char_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    LineNumberCharReaderImpl* This = dmi_cast<LineNumberCharReaderImpl>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_extra_char, flags);
    else
      This->_extra_char = ::acdk::lang::dmi::castTo< int>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  LineNumberCharReaderImpl_fields__lineNumber_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    LineNumberCharReaderImpl* This = dmi_cast<LineNumberCharReaderImpl>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_lineNumber, flags);
    else
      This->_lineNumber = ::acdk::lang::dmi::castTo< int>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  LineNumberCharReaderImpl_fields__markedCharPos_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    LineNumberCharReaderImpl* This = dmi_cast<LineNumberCharReaderImpl>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_markedCharPos, flags);
    else
      This->_markedCharPos = ::acdk::lang::dmi::castTo< int>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  LineNumberCharReaderImpl_fields__markedLineNumber_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    LineNumberCharReaderImpl* This = dmi_cast<LineNumberCharReaderImpl>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_markedLineNumber, flags);
    else
      This->_markedLineNumber = ::acdk::lang::dmi::castTo< int>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  LineNumberCharReaderImpl_fields__markedXPos_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    LineNumberCharReaderImpl* This = dmi_cast<LineNumberCharReaderImpl>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_markedXPos, flags);
    else
      This->_markedXPos = ::acdk::lang::dmi::castTo< int>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  LineNumberCharReaderImpl_fields__xPos_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    LineNumberCharReaderImpl* This = dmi_cast<LineNumberCharReaderImpl>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_xPos, flags);
    else
      This->_xPos = ::acdk::lang::dmi::castTo< int>(var, dc);
    return fieldinf;
  }
};

::acdk::lang::dmi::ClazzFieldInfo LineNumberCharReaderImpl_fields__charPos = 
{
  ::acdk::lang::dmi::MiProtected | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_charPos", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(),
  LineNumberCharReaderImpl_MetainfoWrapper::LineNumberCharReaderImpl_fields__charPos_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo LineNumberCharReaderImpl_fields__extra_char = 
{
  ::acdk::lang::dmi::MiProtected | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_extra_char", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(),
  LineNumberCharReaderImpl_MetainfoWrapper::LineNumberCharReaderImpl_fields__extra_char_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo LineNumberCharReaderImpl_fields__lineNumber = 
{
  ::acdk::lang::dmi::MiProtected | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_lineNumber", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(),
  LineNumberCharReaderImpl_MetainfoWrapper::LineNumberCharReaderImpl_fields__lineNumber_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo LineNumberCharReaderImpl_fields__markedCharPos = 
{
  ::acdk::lang::dmi::MiProtected | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_markedCharPos", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(),
  LineNumberCharReaderImpl_MetainfoWrapper::LineNumberCharReaderImpl_fields__markedCharPos_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo LineNumberCharReaderImpl_fields__markedLineNumber = 
{
  ::acdk::lang::dmi::MiProtected | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_markedLineNumber", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(),
  LineNumberCharReaderImpl_MetainfoWrapper::LineNumberCharReaderImpl_fields__markedLineNumber_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo LineNumberCharReaderImpl_fields__markedXPos = 
{
  ::acdk::lang::dmi::MiProtected | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_markedXPos", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(),
  LineNumberCharReaderImpl_MetainfoWrapper::LineNumberCharReaderImpl_fields__markedXPos_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo LineNumberCharReaderImpl_fields__xPos = 
{
  ::acdk::lang::dmi::MiProtected | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_xPos", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(),
  LineNumberCharReaderImpl_MetainfoWrapper::LineNumberCharReaderImpl_fields__xPos_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo* _LineNumberCharReaderImpl_fields[] = 
{
  &LineNumberCharReaderImpl_fields__charPos,
  &LineNumberCharReaderImpl_fields__extra_char,
  &LineNumberCharReaderImpl_fields__lineNumber,
  &LineNumberCharReaderImpl_fields__markedCharPos,
  &LineNumberCharReaderImpl_fields__markedLineNumber,
  &LineNumberCharReaderImpl_fields__markedXPos,
  &LineNumberCharReaderImpl_fields__xPos,
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo* LineNumberCharReaderImpl_methods_GetClass__L_acdk_lang_RClass__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* LineNumberCharReaderImpl_methods_GetClass__L_acdk_lang_RClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo LineNumberCharReaderImpl_method_GetClass__L_acdk_lang_RClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_2_GetClass", // alternative name of method
  -1, // altlabelHashCode
  LineNumberCharReaderImpl_methods_GetClass__L_acdk_lang_RClass__args, // the arguments
  0, //arguments count
  LineNumberCharReaderImpl_methods_GetClass__L_acdk_lang_RClass__exceptions, // the declared exceptions
  LineNumberCharReaderImpl_MetainfoWrapper::LineNumberCharReaderImpl_method_GetClass__L_acdk_lang_RClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo LineNumberCharReaderImpl_methods_LineNumberCharReaderImpl_INLRCharReader_INLRObject__LRLineNumberCharReaderImpl__arg_in = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "in", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RCharReader::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo LineNumberCharReaderImpl_methods_LineNumberCharReaderImpl_INLRCharReader_INLRObject__LRLineNumberCharReaderImpl__arg_iolock = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "iolock", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  acdk::lang::Object::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* LineNumberCharReaderImpl_methods_LineNumberCharReaderImpl_INLRCharReader_INLRObject__LRLineNumberCharReaderImpl__args[] = 
{
  &LineNumberCharReaderImpl_methods_LineNumberCharReaderImpl_INLRCharReader_INLRObject__LRLineNumberCharReaderImpl__arg_in,
  &LineNumberCharReaderImpl_methods_LineNumberCharReaderImpl_INLRCharReader_INLRObject__LRLineNumberCharReaderImpl__arg_iolock,
  0
};

::acdk::lang::dmi::ClazzInfo* LineNumberCharReaderImpl_methods_LineNumberCharReaderImpl_INLRCharReader_INLRObject__LRLineNumberCharReaderImpl__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo LineNumberCharReaderImpl_method_LineNumberCharReaderImpl_INLRCharReader_INLRObject__LRLineNumberCharReaderImpl_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "LineNumberCharReaderImpl", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  LineNumberCharReaderImpl::clazzInfo(), // return type
  "_0_LineNumberCharReaderImpl", // alternative name of method
  -1, // altlabelHashCode
  LineNumberCharReaderImpl_methods_LineNumberCharReaderImpl_INLRCharReader_INLRObject__LRLineNumberCharReaderImpl__args, // the arguments
  0, //arguments count
  LineNumberCharReaderImpl_methods_LineNumberCharReaderImpl_INLRCharReader_INLRObject__LRLineNumberCharReaderImpl__exceptions, // the declared exceptions
  LineNumberCharReaderImpl_MetainfoWrapper::LineNumberCharReaderImpl_method_LineNumberCharReaderImpl_INLRCharReader_INLRObject__LRLineNumberCharReaderImpl__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo LineNumberCharReaderImpl_methods_LineNumberCharReaderImpl_INLRCharReader__LRLineNumberCharReaderImpl__arg_in = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "in", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RCharReader::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* LineNumberCharReaderImpl_methods_LineNumberCharReaderImpl_INLRCharReader__LRLineNumberCharReaderImpl__args[] = 
{
  &LineNumberCharReaderImpl_methods_LineNumberCharReaderImpl_INLRCharReader__LRLineNumberCharReaderImpl__arg_in,
  0
};

::acdk::lang::dmi::ClazzInfo* LineNumberCharReaderImpl_methods_LineNumberCharReaderImpl_INLRCharReader__LRLineNumberCharReaderImpl__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo LineNumberCharReaderImpl_method_LineNumberCharReaderImpl_INLRCharReader__LRLineNumberCharReaderImpl_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor,// class flags, like static, 
  0, //AttributesRes
  "LineNumberCharReaderImpl", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  LineNumberCharReaderImpl::clazzInfo(), // return type
  "_1_LineNumberCharReaderImpl", // alternative name of method
  -1, // altlabelHashCode
  LineNumberCharReaderImpl_methods_LineNumberCharReaderImpl_INLRCharReader__LRLineNumberCharReaderImpl__args, // the arguments
  0, //arguments count
  LineNumberCharReaderImpl_methods_LineNumberCharReaderImpl_INLRCharReader__LRLineNumberCharReaderImpl__exceptions, // the declared exceptions
  LineNumberCharReaderImpl_MetainfoWrapper::LineNumberCharReaderImpl_method_LineNumberCharReaderImpl_INLRCharReader__LRLineNumberCharReaderImpl__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _LineNumberCharReaderImpl_methods[] = 
{
  &LineNumberCharReaderImpl_method_GetClass__L_acdk_lang_RClass_,
  &LineNumberCharReaderImpl_method_LineNumberCharReaderImpl_INLRCharReader_INLRObject__LRLineNumberCharReaderImpl_,
  &LineNumberCharReaderImpl_method_LineNumberCharReaderImpl_INLRCharReader__LRLineNumberCharReaderImpl_,
  0
};


struct LineNumberCharReaderImpl_MetaInfoInitializer
{  LineNumberCharReaderImpl_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = LineNumberCharReaderImpl::clazzInfo();
    ci->fields =  _LineNumberCharReaderImpl_fields;
    ci->methods =  _LineNumberCharReaderImpl_methods;
    ci->_scopeParent = acdk_io_unitInfo.getMetaInfo();
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
LineNumberCharReaderImpl_MetaInfoInitializer LineNumberCharReaderImpl_MetaInfoInitializer_staticinstance__;


} // namespace acdk
} // namespace io

namespace acdk { 
namespace io { 

using namespace acdk::lang;

//static
::acdk::lang::RObject
LineNumberReader_create_array(int length)
{
  return new ObjectArrayImpl<RLineNumberReader>(length);
}

//static
::acdk::lang::RObject
LineNumberReader_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class LineNumberReader_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  LineNumberReader_method_GetClass__L_acdk_lang_RClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)LineNumberReader::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  LineNumberReader_method_LineNumberReader_INLRReader_INLRObject__LRLineNumberReader__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new LineNumberReader(::acdk::lang::dmi::castTo< RReader>(args[0], dc), ::acdk::lang::dmi::castTo< acdk::lang::Object>(args[1], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  LineNumberReader_method_LineNumberReader_INLRReader__LRLineNumberReader__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new LineNumberReader(::acdk::lang::dmi::castTo< RReader>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  LineNumberReader_method__read__I_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    LineNumberReader* This = dmi_cast<LineNumberReader>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
      ret = This->LineNumberReader::_read();
    else
      ret = This->_read();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  LineNumberReader_method_getBytePos__I_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    LineNumberReader* This = dmi_cast<LineNumberReader>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
      ret = This->LineNumberReader::getBytePos();
    else
      ret = This->getBytePos();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  LineNumberReader_method_getLineNumber__I_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    LineNumberReader* This = dmi_cast<LineNumberReader>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
      ret = This->LineNumberReader::getLineNumber();
    else
      ret = This->getLineNumber();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  LineNumberReader_method_getXPos__I_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    LineNumberReader* This = dmi_cast<LineNumberReader>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
      ret = This->LineNumberReader::getXPos();
    else
      ret = This->getXPos();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  LineNumberReader_method_mark_I_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    LineNumberReader* This = dmi_cast<LineNumberReader>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->LineNumberReader::mark(::acdk::lang::dmi::castTo< int>(args[0], dc));
    else
        This->mark(::acdk::lang::dmi::castTo< int>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  LineNumberReader_method_setLineNumber_I_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    LineNumberReader* This = dmi_cast<LineNumberReader>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->LineNumberReader::setLineNumber(::acdk::lang::dmi::castTo< int>(args[0], dc));
    else
        This->setLineNumber(::acdk::lang::dmi::castTo< int>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  LineNumberReader_fields__charPos_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    LineNumberReader* This = dmi_cast<LineNumberReader>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_charPos, flags);
    else
      This->_charPos = ::acdk::lang::dmi::castTo< int>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  LineNumberReader_fields__eof_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    LineNumberReader* This = dmi_cast<LineNumberReader>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_eof, flags);
    else
      This->_eof = ::acdk::lang::dmi::castTo< byte>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  LineNumberReader_fields__lineNumber_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    LineNumberReader* This = dmi_cast<LineNumberReader>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_lineNumber, flags);
    else
      This->_lineNumber = ::acdk::lang::dmi::castTo< int>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  LineNumberReader_fields__markedCharPos_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    LineNumberReader* This = dmi_cast<LineNumberReader>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_markedCharPos, flags);
    else
      This->_markedCharPos = ::acdk::lang::dmi::castTo< int>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  LineNumberReader_fields__markedLineNumber_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    LineNumberReader* This = dmi_cast<LineNumberReader>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_markedLineNumber, flags);
    else
      This->_markedLineNumber = ::acdk::lang::dmi::castTo< int>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  LineNumberReader_fields__markedXPos_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    LineNumberReader* This = dmi_cast<LineNumberReader>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_markedXPos, flags);
    else
      This->_markedXPos = ::acdk::lang::dmi::castTo< int>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  LineNumberReader_fields__xPos_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    LineNumberReader* This = dmi_cast<LineNumberReader>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_xPos, flags);
    else
      This->_xPos = ::acdk::lang::dmi::castTo< int>(var, dc);
    return fieldinf;
  }
};

::acdk::lang::dmi::ClazzFieldInfo LineNumberReader_fields__charPos = 
{
  ::acdk::lang::dmi::MiProtected | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_charPos", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(),
  LineNumberReader_MetainfoWrapper::LineNumberReader_fields__charPos_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo LineNumberReader_fields__eof = 
{
  ::acdk::lang::dmi::MiProtected | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_eof", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getByteClazz(),
  LineNumberReader_MetainfoWrapper::LineNumberReader_fields__eof_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo LineNumberReader_fields__lineNumber = 
{
  ::acdk::lang::dmi::MiProtected | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_lineNumber", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(),
  LineNumberReader_MetainfoWrapper::LineNumberReader_fields__lineNumber_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo LineNumberReader_fields__markedCharPos = 
{
  ::acdk::lang::dmi::MiProtected | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_markedCharPos", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(),
  LineNumberReader_MetainfoWrapper::LineNumberReader_fields__markedCharPos_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo LineNumberReader_fields__markedLineNumber = 
{
  ::acdk::lang::dmi::MiProtected | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_markedLineNumber", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(),
  LineNumberReader_MetainfoWrapper::LineNumberReader_fields__markedLineNumber_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo LineNumberReader_fields__markedXPos = 
{
  ::acdk::lang::dmi::MiProtected | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_markedXPos", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(),
  LineNumberReader_MetainfoWrapper::LineNumberReader_fields__markedXPos_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo LineNumberReader_fields__xPos = 
{
  ::acdk::lang::dmi::MiProtected | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_xPos", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(),
  LineNumberReader_MetainfoWrapper::LineNumberReader_fields__xPos_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo* _LineNumberReader_fields[] = 
{
  &LineNumberReader_fields__charPos,
  &LineNumberReader_fields__eof,
  &LineNumberReader_fields__lineNumber,
  &LineNumberReader_fields__markedCharPos,
  &LineNumberReader_fields__markedLineNumber,
  &LineNumberReader_fields__markedXPos,
  &LineNumberReader_fields__xPos,
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo* LineNumberReader_methods_GetClass__L_acdk_lang_RClass__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* LineNumberReader_methods_GetClass__L_acdk_lang_RClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo LineNumberReader_method_GetClass__L_acdk_lang_RClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_8_GetClass", // alternative name of method
  -1, // altlabelHashCode
  LineNumberReader_methods_GetClass__L_acdk_lang_RClass__args, // the arguments
  0, //arguments count
  LineNumberReader_methods_GetClass__L_acdk_lang_RClass__exceptions, // the declared exceptions
  LineNumberReader_MetainfoWrapper::LineNumberReader_method_GetClass__L_acdk_lang_RClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo LineNumberReader_methods_LineNumberReader_INLRReader_INLRObject__LRLineNumberReader__arg_in = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "in", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RReader::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo LineNumberReader_methods_LineNumberReader_INLRReader_INLRObject__LRLineNumberReader__arg_lock = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "lock", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  acdk::lang::Object::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* LineNumberReader_methods_LineNumberReader_INLRReader_INLRObject__LRLineNumberReader__args[] = 
{
  &LineNumberReader_methods_LineNumberReader_INLRReader_INLRObject__LRLineNumberReader__arg_in,
  &LineNumberReader_methods_LineNumberReader_INLRReader_INLRObject__LRLineNumberReader__arg_lock,
  0
};

::acdk::lang::dmi::ClazzInfo* LineNumberReader_methods_LineNumberReader_INLRReader_INLRObject__LRLineNumberReader__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo LineNumberReader_method_LineNumberReader_INLRReader_INLRObject__LRLineNumberReader_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "LineNumberReader", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  LineNumberReader::clazzInfo(), // return type
  "_0_LineNumberReader", // alternative name of method
  -1, // altlabelHashCode
  LineNumberReader_methods_LineNumberReader_INLRReader_INLRObject__LRLineNumberReader__args, // the arguments
  0, //arguments count
  LineNumberReader_methods_LineNumberReader_INLRReader_INLRObject__LRLineNumberReader__exceptions, // the declared exceptions
  LineNumberReader_MetainfoWrapper::LineNumberReader_method_LineNumberReader_INLRReader_INLRObject__LRLineNumberReader__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo LineNumberReader_methods_LineNumberReader_INLRReader__LRLineNumberReader__arg_in = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "in", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RReader::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* LineNumberReader_methods_LineNumberReader_INLRReader__LRLineNumberReader__args[] = 
{
  &LineNumberReader_methods_LineNumberReader_INLRReader__LRLineNumberReader__arg_in,
  0
};

::acdk::lang::dmi::ClazzInfo* LineNumberReader_methods_LineNumberReader_INLRReader__LRLineNumberReader__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo LineNumberReader_method_LineNumberReader_INLRReader__LRLineNumberReader_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor,// class flags, like static, 
  0, //AttributesRes
  "LineNumberReader", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  LineNumberReader::clazzInfo(), // return type
  "_1_LineNumberReader", // alternative name of method
  -1, // altlabelHashCode
  LineNumberReader_methods_LineNumberReader_INLRReader__LRLineNumberReader__args, // the arguments
  0, //arguments count
  LineNumberReader_methods_LineNumberReader_INLRReader__LRLineNumberReader__exceptions, // the declared exceptions
  LineNumberReader_MetainfoWrapper::LineNumberReader_method_LineNumberReader_INLRReader__LRLineNumberReader__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* LineNumberReader_methods__read__I_args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* LineNumberReader_methods__read__I_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo LineNumberReader_method__read__I = 
{
  ::acdk::lang::dmi::MiPrivate | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "_read", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(), // return type
  "_7__read", // alternative name of method
  -1, // altlabelHashCode
  LineNumberReader_methods__read__I_args, // the arguments
  0, //arguments count
  LineNumberReader_methods__read__I_exceptions, // the declared exceptions
  LineNumberReader_MetainfoWrapper::LineNumberReader_method__read__I_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* LineNumberReader_methods_getBytePos__I_args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* LineNumberReader_methods_getBytePos__I_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo LineNumberReader_method_getBytePos__I = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "getBytePos", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(), // return type
  "_6_getBytePos", // alternative name of method
  -1, // altlabelHashCode
  LineNumberReader_methods_getBytePos__I_args, // the arguments
  0, //arguments count
  LineNumberReader_methods_getBytePos__I_exceptions, // the declared exceptions
  LineNumberReader_MetainfoWrapper::LineNumberReader_method_getBytePos__I_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* LineNumberReader_methods_getLineNumber__I_args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* LineNumberReader_methods_getLineNumber__I_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo LineNumberReader_method_getLineNumber__I = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "getLineNumber", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(), // return type
  "_2_getLineNumber", // alternative name of method
  -1, // altlabelHashCode
  LineNumberReader_methods_getLineNumber__I_args, // the arguments
  0, //arguments count
  LineNumberReader_methods_getLineNumber__I_exceptions, // the declared exceptions
  LineNumberReader_MetainfoWrapper::LineNumberReader_method_getLineNumber__I_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* LineNumberReader_methods_getXPos__I_args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* LineNumberReader_methods_getXPos__I_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo LineNumberReader_method_getXPos__I = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "getXPos", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(), // return type
  "_5_getXPos", // alternative name of method
  -1, // altlabelHashCode
  LineNumberReader_methods_getXPos__I_args, // the arguments
  0, //arguments count
  LineNumberReader_methods_getXPos__I_exceptions, // the declared exceptions
  LineNumberReader_MetainfoWrapper::LineNumberReader_method_getXPos__I_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo LineNumberReader_methods_mark_I_V_arg_readlimit = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "readlimit", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* LineNumberReader_methods_mark_I_V_args[] = 
{
  &LineNumberReader_methods_mark_I_V_arg_readlimit,
  0
};

::acdk::lang::dmi::ClazzInfo* LineNumberReader_methods_mark_I_V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo LineNumberReader_method_mark_I_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "mark", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_4_mark", // alternative name of method
  -1, // altlabelHashCode
  LineNumberReader_methods_mark_I_V_args, // the arguments
  0, //arguments count
  LineNumberReader_methods_mark_I_V_exceptions, // the declared exceptions
  LineNumberReader_MetainfoWrapper::LineNumberReader_method_mark_I_V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo LineNumberReader_methods_setLineNumber_I_V_arg_ln = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "ln", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* LineNumberReader_methods_setLineNumber_I_V_args[] = 
{
  &LineNumberReader_methods_setLineNumber_I_V_arg_ln,
  0
};

::acdk::lang::dmi::ClazzInfo* LineNumberReader_methods_setLineNumber_I_V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo LineNumberReader_method_setLineNumber_I_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "setLineNumber", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_3_setLineNumber", // alternative name of method
  -1, // altlabelHashCode
  LineNumberReader_methods_setLineNumber_I_V_args, // the arguments
  0, //arguments count
  LineNumberReader_methods_setLineNumber_I_V_exceptions, // the declared exceptions
  LineNumberReader_MetainfoWrapper::LineNumberReader_method_setLineNumber_I_V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _LineNumberReader_methods[] = 
{
  &LineNumberReader_method_GetClass__L_acdk_lang_RClass_,
  &LineNumberReader_method_LineNumberReader_INLRReader_INLRObject__LRLineNumberReader_,
  &LineNumberReader_method_LineNumberReader_INLRReader__LRLineNumberReader_,
  &LineNumberReader_method__read__I,
  &LineNumberReader_method_getBytePos__I,
  &LineNumberReader_method_getLineNumber__I,
  &LineNumberReader_method_getXPos__I,
  &LineNumberReader_method_mark_I_V,
  &LineNumberReader_method_setLineNumber_I_V,
  0
};


struct LineNumberReader_MetaInfoInitializer
{  LineNumberReader_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = LineNumberReader::clazzInfo();
    ci->fields =  _LineNumberReader_fields;
    ci->methods =  _LineNumberReader_methods;
    ci->_scopeParent = acdk_io_unitInfo.getMetaInfo();
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
LineNumberReader_MetaInfoInitializer LineNumberReader_MetaInfoInitializer_staticinstance__;


} // namespace acdk
} // namespace io

namespace acdk { 
namespace io { 

using namespace acdk::lang;

//static
::acdk::lang::RObject
MemReader_create_array(int length)
{
  return new ObjectArrayImpl<RMemReader>(length);
}

//static
::acdk::lang::RObject
MemReader_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class MemReader_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  MemReader_method_GetClass__L_acdk_lang_RClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)MemReader::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  MemReader_method_MemReader_INLRMemWriter_II_LRMemReader__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new MemReader(::acdk::lang::dmi::castTo< RMemWriter>(args[0], dc), ::acdk::lang::dmi::castTo< int>(args[1], dc), ::acdk::lang::dmi::castTo< int>(args[2], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  MemReader_method_MemReader_INLRMemWriter__LRMemReader__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new MemReader(::acdk::lang::dmi::castTo< RMemWriter>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  MemReader_method_MemReader_INLRMemWriter_I_LRMemReader__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new MemReader(::acdk::lang::dmi::castTo< RMemWriter>(args[0], dc), ::acdk::lang::dmi::castTo< int>(args[1], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  MemReader_method_MemReader_INLRbyteArray_II_LRMemReader__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new MemReader(::acdk::lang::dmi::castTo< RbyteArray>(args[0], dc), ::acdk::lang::dmi::castTo< int>(args[1], dc), ::acdk::lang::dmi::castTo< int>(args[2], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  MemReader_method_MemReader_INLRbyteArray__LRMemReader__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new MemReader(::acdk::lang::dmi::castTo< RbyteArray>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  MemReader_method_MemReader_INLRbyteArray_I_LRMemReader__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new MemReader(::acdk::lang::dmi::castTo< RbyteArray>(args[0], dc), ::acdk::lang::dmi::castTo< int>(args[1], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  MemReader_method_endPos__I_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    MemReader* This = dmi_cast<MemReader>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
      ret = This->MemReader::endPos();
    else
      ret = This->endPos();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  MemReader_method_getBuffer__LRbyteArray__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    MemReader* This = dmi_cast<MemReader>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        ret = (::acdk::lang::RObject)This->MemReader::getBuffer();
    else
        ret = (::acdk::lang::RObject)This->getBuffer();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  MemReader_fields__buffer_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    MemReader* This = dmi_cast<MemReader>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_buffer, flags);
    else
      This->_buffer = ::acdk::lang::dmi::castTo< RbyteArray>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  MemReader_fields__endPos_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    MemReader* This = dmi_cast<MemReader>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_endPos, flags);
    else
      This->_endPos = ::acdk::lang::dmi::castTo< int>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  MemReader_fields__seekPos_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    MemReader* This = dmi_cast<MemReader>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_seekPos, flags);
    else
      This->_seekPos = ::acdk::lang::dmi::castTo< int>(var, dc);
    return fieldinf;
  }
};

::acdk::lang::dmi::ClazzFieldInfo MemReader_fields__buffer = 
{
  ::acdk::lang::dmi::MiProtected | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_buffer", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RbyteArray::clazzInfo(),
  MemReader_MetainfoWrapper::MemReader_fields__buffer_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo MemReader_fields__endPos = 
{
  ::acdk::lang::dmi::MiProtected | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_endPos", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(),
  MemReader_MetainfoWrapper::MemReader_fields__endPos_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo MemReader_fields__seekPos = 
{
  ::acdk::lang::dmi::MiProtected | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_seekPos", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(),
  MemReader_MetainfoWrapper::MemReader_fields__seekPos_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo* _MemReader_fields[] = 
{
  &MemReader_fields__buffer,
  &MemReader_fields__endPos,
  &MemReader_fields__seekPos,
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo* MemReader_methods_GetClass__L_acdk_lang_RClass__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* MemReader_methods_GetClass__L_acdk_lang_RClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo MemReader_method_GetClass__L_acdk_lang_RClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_8_GetClass", // alternative name of method
  -1, // altlabelHashCode
  MemReader_methods_GetClass__L_acdk_lang_RClass__args, // the arguments
  0, //arguments count
  MemReader_methods_GetClass__L_acdk_lang_RClass__exceptions, // the declared exceptions
  MemReader_MetainfoWrapper::MemReader_method_GetClass__L_acdk_lang_RClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo MemReader_methods_MemReader_INLRMemWriter_II_LRMemReader__arg_memwriter = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "memwriter", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RMemWriter::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo MemReader_methods_MemReader_INLRMemWriter_II_LRMemReader__arg_offset = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "offset", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo MemReader_methods_MemReader_INLRMemWriter_II_LRMemReader__arg_endpos = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "endpos", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* MemReader_methods_MemReader_INLRMemWriter_II_LRMemReader__args[] = 
{
  &MemReader_methods_MemReader_INLRMemWriter_II_LRMemReader__arg_memwriter,
  &MemReader_methods_MemReader_INLRMemWriter_II_LRMemReader__arg_offset,
  &MemReader_methods_MemReader_INLRMemWriter_II_LRMemReader__arg_endpos,
  0
};

::acdk::lang::dmi::ClazzInfo* MemReader_methods_MemReader_INLRMemWriter_II_LRMemReader__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo MemReader_method_MemReader_INLRMemWriter_II_LRMemReader_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "MemReader", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  MemReader::clazzInfo(), // return type
  "_0_MemReader", // alternative name of method
  -1, // altlabelHashCode
  MemReader_methods_MemReader_INLRMemWriter_II_LRMemReader__args, // the arguments
  0, //arguments count
  MemReader_methods_MemReader_INLRMemWriter_II_LRMemReader__exceptions, // the declared exceptions
  MemReader_MetainfoWrapper::MemReader_method_MemReader_INLRMemWriter_II_LRMemReader__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo MemReader_methods_MemReader_INLRMemWriter__LRMemReader__arg_memwriter = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "memwriter", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RMemWriter::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* MemReader_methods_MemReader_INLRMemWriter__LRMemReader__args[] = 
{
  &MemReader_methods_MemReader_INLRMemWriter__LRMemReader__arg_memwriter,
  0
};

::acdk::lang::dmi::ClazzInfo* MemReader_methods_MemReader_INLRMemWriter__LRMemReader__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo MemReader_method_MemReader_INLRMemWriter__LRMemReader_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor,// class flags, like static, 
  0, //AttributesRes
  "MemReader", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  MemReader::clazzInfo(), // return type
  "_1_MemReader", // alternative name of method
  -1, // altlabelHashCode
  MemReader_methods_MemReader_INLRMemWriter__LRMemReader__args, // the arguments
  0, //arguments count
  MemReader_methods_MemReader_INLRMemWriter__LRMemReader__exceptions, // the declared exceptions
  MemReader_MetainfoWrapper::MemReader_method_MemReader_INLRMemWriter__LRMemReader__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo MemReader_methods_MemReader_INLRMemWriter_I_LRMemReader__arg_memwriter = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "memwriter", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RMemWriter::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo MemReader_methods_MemReader_INLRMemWriter_I_LRMemReader__arg_offset = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "offset", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* MemReader_methods_MemReader_INLRMemWriter_I_LRMemReader__args[] = 
{
  &MemReader_methods_MemReader_INLRMemWriter_I_LRMemReader__arg_memwriter,
  &MemReader_methods_MemReader_INLRMemWriter_I_LRMemReader__arg_offset,
  0
};

::acdk::lang::dmi::ClazzInfo* MemReader_methods_MemReader_INLRMemWriter_I_LRMemReader__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo MemReader_method_MemReader_INLRMemWriter_I_LRMemReader_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor,// class flags, like static, 
  0, //AttributesRes
  "MemReader", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  MemReader::clazzInfo(), // return type
  "_2_MemReader", // alternative name of method
  -1, // altlabelHashCode
  MemReader_methods_MemReader_INLRMemWriter_I_LRMemReader__args, // the arguments
  0, //arguments count
  MemReader_methods_MemReader_INLRMemWriter_I_LRMemReader__exceptions, // the declared exceptions
  MemReader_MetainfoWrapper::MemReader_method_MemReader_INLRMemWriter_I_LRMemReader__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo MemReader_methods_MemReader_INLRbyteArray_II_LRMemReader__arg_bytearray = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "bytearray", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RbyteArray::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo MemReader_methods_MemReader_INLRbyteArray_II_LRMemReader__arg_offset = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "offset", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo MemReader_methods_MemReader_INLRbyteArray_II_LRMemReader__arg_endpos = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "endpos", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* MemReader_methods_MemReader_INLRbyteArray_II_LRMemReader__args[] = 
{
  &MemReader_methods_MemReader_INLRbyteArray_II_LRMemReader__arg_bytearray,
  &MemReader_methods_MemReader_INLRbyteArray_II_LRMemReader__arg_offset,
  &MemReader_methods_MemReader_INLRbyteArray_II_LRMemReader__arg_endpos,
  0
};

::acdk::lang::dmi::ClazzInfo* MemReader_methods_MemReader_INLRbyteArray_II_LRMemReader__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo MemReader_method_MemReader_INLRbyteArray_II_LRMemReader_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "MemReader", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  MemReader::clazzInfo(), // return type
  "_3_MemReader", // alternative name of method
  -1, // altlabelHashCode
  MemReader_methods_MemReader_INLRbyteArray_II_LRMemReader__args, // the arguments
  0, //arguments count
  MemReader_methods_MemReader_INLRbyteArray_II_LRMemReader__exceptions, // the declared exceptions
  MemReader_MetainfoWrapper::MemReader_method_MemReader_INLRbyteArray_II_LRMemReader__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo MemReader_methods_MemReader_INLRbyteArray__LRMemReader__arg_bytearray = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "bytearray", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RbyteArray::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* MemReader_methods_MemReader_INLRbyteArray__LRMemReader__args[] = 
{
  &MemReader_methods_MemReader_INLRbyteArray__LRMemReader__arg_bytearray,
  0
};

::acdk::lang::dmi::ClazzInfo* MemReader_methods_MemReader_INLRbyteArray__LRMemReader__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo MemReader_method_MemReader_INLRbyteArray__LRMemReader_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor,// class flags, like static, 
  0, //AttributesRes
  "MemReader", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  MemReader::clazzInfo(), // return type
  "_4_MemReader", // alternative name of method
  -1, // altlabelHashCode
  MemReader_methods_MemReader_INLRbyteArray__LRMemReader__args, // the arguments
  0, //arguments count
  MemReader_methods_MemReader_INLRbyteArray__LRMemReader__exceptions, // the declared exceptions
  MemReader_MetainfoWrapper::MemReader_method_MemReader_INLRbyteArray__LRMemReader__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo MemReader_methods_MemReader_INLRbyteArray_I_LRMemReader__arg_bytearray = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "bytearray", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RbyteArray::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo MemReader_methods_MemReader_INLRbyteArray_I_LRMemReader__arg_offset = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "offset", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* MemReader_methods_MemReader_INLRbyteArray_I_LRMemReader__args[] = 
{
  &MemReader_methods_MemReader_INLRbyteArray_I_LRMemReader__arg_bytearray,
  &MemReader_methods_MemReader_INLRbyteArray_I_LRMemReader__arg_offset,
  0
};

::acdk::lang::dmi::ClazzInfo* MemReader_methods_MemReader_INLRbyteArray_I_LRMemReader__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo MemReader_method_MemReader_INLRbyteArray_I_LRMemReader_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor,// class flags, like static, 
  0, //AttributesRes
  "MemReader", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  MemReader::clazzInfo(), // return type
  "_5_MemReader", // alternative name of method
  -1, // altlabelHashCode
  MemReader_methods_MemReader_INLRbyteArray_I_LRMemReader__args, // the arguments
  0, //arguments count
  MemReader_methods_MemReader_INLRbyteArray_I_LRMemReader__exceptions, // the declared exceptions
  MemReader_MetainfoWrapper::MemReader_method_MemReader_INLRbyteArray_I_LRMemReader__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* MemReader_methods_endPos__I_args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* MemReader_methods_endPos__I_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo MemReader_method_endPos__I = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "endPos", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(), // return type
  "_7_endPos", // alternative name of method
  -1, // altlabelHashCode
  MemReader_methods_endPos__I_args, // the arguments
  0, //arguments count
  MemReader_methods_endPos__I_exceptions, // the declared exceptions
  MemReader_MetainfoWrapper::MemReader_method_endPos__I_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* MemReader_methods_getBuffer__LRbyteArray__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* MemReader_methods_getBuffer__LRbyteArray__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo MemReader_method_getBuffer__LRbyteArray_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "getBuffer", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RbyteArray::clazzInfo(), // return type
  "_6_getBuffer", // alternative name of method
  -1, // altlabelHashCode
  MemReader_methods_getBuffer__LRbyteArray__args, // the arguments
  0, //arguments count
  MemReader_methods_getBuffer__LRbyteArray__exceptions, // the declared exceptions
  MemReader_MetainfoWrapper::MemReader_method_getBuffer__LRbyteArray__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _MemReader_methods[] = 
{
  &MemReader_method_GetClass__L_acdk_lang_RClass_,
  &MemReader_method_MemReader_INLRMemWriter_II_LRMemReader_,
  &MemReader_method_MemReader_INLRMemWriter__LRMemReader_,
  &MemReader_method_MemReader_INLRMemWriter_I_LRMemReader_,
  &MemReader_method_MemReader_INLRbyteArray_II_LRMemReader_,
  &MemReader_method_MemReader_INLRbyteArray__LRMemReader_,
  &MemReader_method_MemReader_INLRbyteArray_I_LRMemReader_,
  &MemReader_method_endPos__I,
  &MemReader_method_getBuffer__LRbyteArray_,
  0
};


struct MemReader_MetaInfoInitializer
{  MemReader_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = MemReader::clazzInfo();
    ci->fields =  _MemReader_fields;
    ci->methods =  _MemReader_methods;
    ci->_scopeParent = acdk_io_unitInfo.getMetaInfo();
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
MemReader_MetaInfoInitializer MemReader_MetaInfoInitializer_staticinstance__;


} // namespace acdk
} // namespace io

namespace acdk { 
namespace io { 

using namespace acdk::lang;

//static
::acdk::lang::RObject
MemWriter_create_array(int length)
{
  return new ObjectArrayImpl<RMemWriter>(length);
}

//static
::acdk::lang::RObject
MemWriter_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class MemWriter_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  MemWriter_method_GetClass__L_acdk_lang_RClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)MemWriter::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  MemWriter_method_MemWriter_I_LRMemWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new MemWriter(::acdk::lang::dmi::castTo< int>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  MemWriter_method_MemWriter__LRMemWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new MemWriter();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  MemWriter_method_MemWriter_INLRbyteArray__LRMemWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new MemWriter(::acdk::lang::dmi::castTo< RbyteArray>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  MemWriter_method_ensureCapacity_I_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    MemWriter* This = dmi_cast<MemWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->MemWriter::ensureCapacity(::acdk::lang::dmi::castTo< int>(args[0], dc));
    else
        This->ensureCapacity(::acdk::lang::dmi::castTo< int>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  MemWriter_method_getBuffer__LRbyteArray__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    MemWriter* This = dmi_cast<MemWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        ret = (::acdk::lang::RObject)This->MemWriter::getBuffer();
    else
        ret = (::acdk::lang::RObject)This->getBuffer();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  MemWriter_method_getBufferAsChars__LRcharArray__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    MemWriter* This = dmi_cast<MemWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        ret = (::acdk::lang::RObject)This->MemWriter::getBufferAsChars();
    else
        ret = (::acdk::lang::RObject)This->getBufferAsChars();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  MemWriter_fields_DefaultBufferSize_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(MemWriter::DefaultBufferSize, flags);
    else
      MemWriter::DefaultBufferSize = ::acdk::lang::dmi::castTo< int>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  MemWriter_fields_IncrementBufferSize_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(MemWriter::IncrementBufferSize, flags);
    else
      MemWriter::IncrementBufferSize = ::acdk::lang::dmi::castTo< int>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  MemWriter_fields__buffer_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    MemWriter* This = dmi_cast<MemWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_buffer, flags);
    else
      This->_buffer = ::acdk::lang::dmi::castTo< RbyteArray>(var, dc);
    return fieldinf;
  }
};

::acdk::lang::dmi::ClazzFieldInfo MemWriter_fields_DefaultBufferSize = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "DefaultBufferSize", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(),
  MemWriter_MetainfoWrapper::MemWriter_fields_DefaultBufferSize_accessor, // read/write access to this fields
  (void*)&MemWriter::DefaultBufferSize // address of field
};

::acdk::lang::dmi::ClazzFieldInfo MemWriter_fields_IncrementBufferSize = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "IncrementBufferSize", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(),
  MemWriter_MetainfoWrapper::MemWriter_fields_IncrementBufferSize_accessor, // read/write access to this fields
  (void*)&MemWriter::IncrementBufferSize // address of field
};

::acdk::lang::dmi::ClazzFieldInfo MemWriter_fields__buffer = 
{
  ::acdk::lang::dmi::MiProtected | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_buffer", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RbyteArray::clazzInfo(),
  MemWriter_MetainfoWrapper::MemWriter_fields__buffer_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo* _MemWriter_fields[] = 
{
  &MemWriter_fields_DefaultBufferSize,
  &MemWriter_fields_IncrementBufferSize,
  &MemWriter_fields__buffer,
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo* MemWriter_methods_GetClass__L_acdk_lang_RClass__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* MemWriter_methods_GetClass__L_acdk_lang_RClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo MemWriter_method_GetClass__L_acdk_lang_RClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_6_GetClass", // alternative name of method
  -1, // altlabelHashCode
  MemWriter_methods_GetClass__L_acdk_lang_RClass__args, // the arguments
  0, //arguments count
  MemWriter_methods_GetClass__L_acdk_lang_RClass__exceptions, // the declared exceptions
  MemWriter_MetainfoWrapper::MemWriter_method_GetClass__L_acdk_lang_RClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo MemWriter_methods_MemWriter_I_LRMemWriter__arg_initsize = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "initsize", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* MemWriter_methods_MemWriter_I_LRMemWriter__args[] = 
{
  &MemWriter_methods_MemWriter_I_LRMemWriter__arg_initsize,
  0
};

::acdk::lang::dmi::ClazzInfo* MemWriter_methods_MemWriter_I_LRMemWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo MemWriter_method_MemWriter_I_LRMemWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "MemWriter", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  MemWriter::clazzInfo(), // return type
  "_0_MemWriter", // alternative name of method
  -1, // altlabelHashCode
  MemWriter_methods_MemWriter_I_LRMemWriter__args, // the arguments
  0, //arguments count
  MemWriter_methods_MemWriter_I_LRMemWriter__exceptions, // the declared exceptions
  MemWriter_MetainfoWrapper::MemWriter_method_MemWriter_I_LRMemWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* MemWriter_methods_MemWriter__LRMemWriter__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* MemWriter_methods_MemWriter__LRMemWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo MemWriter_method_MemWriter__LRMemWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor,// class flags, like static, 
  0, //AttributesRes
  "MemWriter", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  MemWriter::clazzInfo(), // return type
  "_1_MemWriter", // alternative name of method
  -1, // altlabelHashCode
  MemWriter_methods_MemWriter__LRMemWriter__args, // the arguments
  0, //arguments count
  MemWriter_methods_MemWriter__LRMemWriter__exceptions, // the declared exceptions
  MemWriter_MetainfoWrapper::MemWriter_method_MemWriter__LRMemWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo MemWriter_methods_MemWriter_INLRbyteArray__LRMemWriter__arg_buffer = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "buffer", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RbyteArray::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* MemWriter_methods_MemWriter_INLRbyteArray__LRMemWriter__args[] = 
{
  &MemWriter_methods_MemWriter_INLRbyteArray__LRMemWriter__arg_buffer,
  0
};

::acdk::lang::dmi::ClazzInfo* MemWriter_methods_MemWriter_INLRbyteArray__LRMemWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo MemWriter_method_MemWriter_INLRbyteArray__LRMemWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "MemWriter", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  MemWriter::clazzInfo(), // return type
  "_2_MemWriter", // alternative name of method
  -1, // altlabelHashCode
  MemWriter_methods_MemWriter_INLRbyteArray__LRMemWriter__args, // the arguments
  0, //arguments count
  MemWriter_methods_MemWriter_INLRbyteArray__LRMemWriter__exceptions, // the declared exceptions
  MemWriter_MetainfoWrapper::MemWriter_method_MemWriter_INLRbyteArray__LRMemWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo MemWriter_methods_ensureCapacity_I_V_arg_size = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "size", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* MemWriter_methods_ensureCapacity_I_V_args[] = 
{
  &MemWriter_methods_ensureCapacity_I_V_arg_size,
  0
};

::acdk::lang::dmi::ClazzInfo* MemWriter_methods_ensureCapacity_I_V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo MemWriter_method_ensureCapacity_I_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "ensureCapacity", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_5_ensureCapacity", // alternative name of method
  -1, // altlabelHashCode
  MemWriter_methods_ensureCapacity_I_V_args, // the arguments
  0, //arguments count
  MemWriter_methods_ensureCapacity_I_V_exceptions, // the declared exceptions
  MemWriter_MetainfoWrapper::MemWriter_method_ensureCapacity_I_V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* MemWriter_methods_getBuffer__LRbyteArray__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* MemWriter_methods_getBuffer__LRbyteArray__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo MemWriter_method_getBuffer__LRbyteArray_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "getBuffer", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RbyteArray::clazzInfo(), // return type
  "_3_getBuffer", // alternative name of method
  -1, // altlabelHashCode
  MemWriter_methods_getBuffer__LRbyteArray__args, // the arguments
  0, //arguments count
  MemWriter_methods_getBuffer__LRbyteArray__exceptions, // the declared exceptions
  MemWriter_MetainfoWrapper::MemWriter_method_getBuffer__LRbyteArray__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* MemWriter_methods_getBufferAsChars__LRcharArray__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* MemWriter_methods_getBufferAsChars__LRcharArray__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo MemWriter_method_getBufferAsChars__LRcharArray_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "getBufferAsChars", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RcharArray::clazzInfo(), // return type
  "_4_getBufferAsChars", // alternative name of method
  -1, // altlabelHashCode
  MemWriter_methods_getBufferAsChars__LRcharArray__args, // the arguments
  0, //arguments count
  MemWriter_methods_getBufferAsChars__LRcharArray__exceptions, // the declared exceptions
  MemWriter_MetainfoWrapper::MemWriter_method_getBufferAsChars__LRcharArray__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _MemWriter_methods[] = 
{
  &MemWriter_method_GetClass__L_acdk_lang_RClass_,
  &MemWriter_method_MemWriter_I_LRMemWriter_,
  &MemWriter_method_MemWriter__LRMemWriter_,
  &MemWriter_method_MemWriter_INLRbyteArray__LRMemWriter_,
  &MemWriter_method_ensureCapacity_I_V,
  &MemWriter_method_getBuffer__LRbyteArray_,
  &MemWriter_method_getBufferAsChars__LRcharArray_,
  0
};


struct MemWriter_MetaInfoInitializer
{  MemWriter_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = MemWriter::clazzInfo();
    ci->fields =  _MemWriter_fields;
    ci->methods =  _MemWriter_methods;
    ci->_scopeParent = acdk_io_unitInfo.getMetaInfo();
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
MemWriter_MetaInfoInitializer MemWriter_MetaInfoInitializer_staticinstance__;


} // namespace acdk
} // namespace io

namespace acdk { 
namespace io { 

using namespace acdk::lang;

//static
::acdk::lang::RObject
NullWriter_create_array(int length)
{
  return new ObjectArrayImpl<RNullWriter>(length);
}

//static
::acdk::lang::RObject
NullWriter_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class NullWriter_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  NullWriter_method_GetClass__L_acdk_lang_RClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)NullWriter::GetClass();
    return methinf;
  }
};

::acdk::lang::dmi::ClazzFieldInfo* _NullWriter_fields[] = 
{
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo* NullWriter_methods_GetClass__L_acdk_lang_RClass__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* NullWriter_methods_GetClass__L_acdk_lang_RClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo NullWriter_method_GetClass__L_acdk_lang_RClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_0_GetClass", // alternative name of method
  -1, // altlabelHashCode
  NullWriter_methods_GetClass__L_acdk_lang_RClass__args, // the arguments
  0, //arguments count
  NullWriter_methods_GetClass__L_acdk_lang_RClass__exceptions, // the declared exceptions
  NullWriter_MetainfoWrapper::NullWriter_method_GetClass__L_acdk_lang_RClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _NullWriter_methods[] = 
{
  &NullWriter_method_GetClass__L_acdk_lang_RClass_,
  0
};


struct NullWriter_MetaInfoInitializer
{  NullWriter_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = NullWriter::clazzInfo();
    ci->fields =  _NullWriter_fields;
    ci->methods =  _NullWriter_methods;
    ci->_scopeParent = acdk_io_unitInfo.getMetaInfo();
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
NullWriter_MetaInfoInitializer NullWriter_MetaInfoInitializer_staticinstance__;


} // namespace acdk
} // namespace io

namespace acdk { 
namespace io { 

using namespace acdk::lang;

//static
::acdk::lang::RObject
ObjectReader_create_array(int length)
{
  return new ObjectArrayImpl<RObjectReader>(length);
}

//static
::acdk::lang::RObject
ObjectReader_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class ObjectReader_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  ObjectReader_method_GetClass__L_acdk_lang_RClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)ObjectReader::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  ObjectReader_method_defaultReadObject_INLRClass_INLRObject__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ObjectReader* This = dmi_cast<ObjectReader>(This_);
    This->defaultReadObject(::acdk::lang::dmi::castTo< RClass>(args[0], dc), ::acdk::lang::dmi::castTo< acdk::lang::Object>(args[1], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  ObjectReader_method_readClassDescriptor_INLRClass__LRClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ObjectReader* This = dmi_cast<ObjectReader>(This_);
    ret = (::acdk::lang::RObject)This->readClassDescriptor(::acdk::lang::dmi::castTo< RClass>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  ObjectReader_method_readObject__LRObject__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ObjectReader* This = dmi_cast<ObjectReader>(This_);
    ret = (::acdk::lang::RObject)This->readObject();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  ObjectReader_method_readObject_INL_acdk_lang_RClass__LRObject__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ObjectReader* This = dmi_cast<ObjectReader>(This_);
    ret = (::acdk::lang::RObject)This->readObject(::acdk::lang::dmi::castTo< ::acdk::lang::RClass>(args[0], dc));
    return methinf;
  }
};

::acdk::lang::dmi::ClazzFieldInfo* _ObjectReader_fields[] = 
{
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo* ObjectReader_methods_GetClass__L_acdk_lang_RClass__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* ObjectReader_methods_GetClass__L_acdk_lang_RClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo ObjectReader_method_GetClass__L_acdk_lang_RClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_j_GetClass", // alternative name of method
  -1, // altlabelHashCode
  ObjectReader_methods_GetClass__L_acdk_lang_RClass__args, // the arguments
  0, //arguments count
  ObjectReader_methods_GetClass__L_acdk_lang_RClass__exceptions, // the declared exceptions
  ObjectReader_MetainfoWrapper::ObjectReader_method_GetClass__L_acdk_lang_RClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo ObjectReader_methods_defaultReadObject_INLRClass_INLRObject__V_arg_cls = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "cls", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RClass::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo ObjectReader_methods_defaultReadObject_INLRClass_INLRObject__V_arg_obj = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "obj", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  acdk::lang::Object::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* ObjectReader_methods_defaultReadObject_INLRClass_INLRObject__V_args[] = 
{
  &ObjectReader_methods_defaultReadObject_INLRClass_INLRObject__V_arg_cls,
  &ObjectReader_methods_defaultReadObject_INLRClass_INLRObject__V_arg_obj,
  0
};

::acdk::lang::dmi::ClazzInfo* ObjectReader_methods_defaultReadObject_INLRClass_INLRObject__V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo ObjectReader_method_defaultReadObject_INLRClass_INLRObject__V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "defaultReadObject", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_i_defaultReadObject", // alternative name of method
  -1, // altlabelHashCode
  ObjectReader_methods_defaultReadObject_INLRClass_INLRObject__V_args, // the arguments
  0, //arguments count
  ObjectReader_methods_defaultReadObject_INLRClass_INLRObject__V_exceptions, // the declared exceptions
  ObjectReader_MetainfoWrapper::ObjectReader_method_defaultReadObject_INLRClass_INLRObject__V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo ObjectReader_methods_readClassDescriptor_INLRClass__LRClass__arg_cls = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "cls", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RClass::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* ObjectReader_methods_readClassDescriptor_INLRClass__LRClass__args[] = 
{
  &ObjectReader_methods_readClassDescriptor_INLRClass__LRClass__arg_cls,
  0
};

::acdk::lang::dmi::ClazzInfo* ObjectReader_methods_readClassDescriptor_INLRClass__LRClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo ObjectReader_method_readClassDescriptor_INLRClass__LRClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "readClassDescriptor", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RClass::clazzInfo(), // return type
  "_h_readClassDescriptor", // alternative name of method
  -1, // altlabelHashCode
  ObjectReader_methods_readClassDescriptor_INLRClass__LRClass__args, // the arguments
  0, //arguments count
  ObjectReader_methods_readClassDescriptor_INLRClass__LRClass__exceptions, // the declared exceptions
  ObjectReader_MetainfoWrapper::ObjectReader_method_readClassDescriptor_INLRClass__LRClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* ObjectReader_methods_readObject__LRObject__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* ObjectReader_methods_readObject__LRObject__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo ObjectReader_method_readObject__LRObject_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "readObject", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  acdk::lang::Object::clazzInfo(), // return type
  "_f_readObject", // alternative name of method
  -1, // altlabelHashCode
  ObjectReader_methods_readObject__LRObject__args, // the arguments
  0, //arguments count
  ObjectReader_methods_readObject__LRObject__exceptions, // the declared exceptions
  ObjectReader_MetainfoWrapper::ObjectReader_method_readObject__LRObject__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo ObjectReader_methods_readObject_INL_acdk_lang_RClass__LRObject__arg_cls = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "cls", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* ObjectReader_methods_readObject_INL_acdk_lang_RClass__LRObject__args[] = 
{
  &ObjectReader_methods_readObject_INL_acdk_lang_RClass__LRObject__arg_cls,
  0
};

::acdk::lang::dmi::ClazzInfo* ObjectReader_methods_readObject_INL_acdk_lang_RClass__LRObject__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo ObjectReader_method_readObject_INL_acdk_lang_RClass__LRObject_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "readObject", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  acdk::lang::Object::clazzInfo(), // return type
  "_g_readObject", // alternative name of method
  -1, // altlabelHashCode
  ObjectReader_methods_readObject_INL_acdk_lang_RClass__LRObject__args, // the arguments
  0, //arguments count
  ObjectReader_methods_readObject_INL_acdk_lang_RClass__LRObject__exceptions, // the declared exceptions
  ObjectReader_MetainfoWrapper::ObjectReader_method_readObject_INL_acdk_lang_RClass__LRObject__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _ObjectReader_methods[] = 
{
  &ObjectReader_method_GetClass__L_acdk_lang_RClass_,
  &ObjectReader_method_defaultReadObject_INLRClass_INLRObject__V,
  &ObjectReader_method_readClassDescriptor_INLRClass__LRClass_,
  &ObjectReader_method_readObject__LRObject_,
  &ObjectReader_method_readObject_INL_acdk_lang_RClass__LRObject_,
  0
};


struct ObjectReader_MetaInfoInitializer
{  ObjectReader_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = ObjectReader::clazzInfo();
    ci->fields =  _ObjectReader_fields;
    ci->methods =  _ObjectReader_methods;
    ci->_scopeParent = acdk_io_unitInfo.getMetaInfo();
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
ObjectReader_MetaInfoInitializer ObjectReader_MetaInfoInitializer_staticinstance__;


} // namespace acdk
} // namespace io

namespace acdk { 
namespace io { 


//static
::acdk::lang::RObject
ObjectStreamException_create_array(int length)
{
  return new ObjectArrayImpl<RObjectStreamException>(length);
}

//static
::acdk::lang::RObject
ObjectStreamException_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class ObjectStreamException_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  ObjectStreamException_method_GetClass__L_acdk_lang_RClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)ObjectStreamException::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  ObjectStreamException_method_ObjectStreamException__LRObjectStreamException__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new ObjectStreamException();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  ObjectStreamException_method_ObjectStreamException_INLRString__LRObjectStreamException__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new ObjectStreamException(::acdk::lang::dmi::castTo< RString>(args[0], dc));
    return methinf;
  }
};


void ThrowException_ObjectStreamException(IN(::acdk::lang::RThrowable) ex)
{
  throw RObjectStreamException(ex);
}

::acdk::lang::dmi::ClazzFieldInfo* _ObjectStreamException_fields[] = 
{
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo* ObjectStreamException_methods_GetClass__L_acdk_lang_RClass__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* ObjectStreamException_methods_GetClass__L_acdk_lang_RClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo ObjectStreamException_method_GetClass__L_acdk_lang_RClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_2_GetClass", // alternative name of method
  -1, // altlabelHashCode
  ObjectStreamException_methods_GetClass__L_acdk_lang_RClass__args, // the arguments
  0, //arguments count
  ObjectStreamException_methods_GetClass__L_acdk_lang_RClass__exceptions, // the declared exceptions
  ObjectStreamException_MetainfoWrapper::ObjectStreamException_method_GetClass__L_acdk_lang_RClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* ObjectStreamException_methods_ObjectStreamException__LRObjectStreamException__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* ObjectStreamException_methods_ObjectStreamException__LRObjectStreamException__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo ObjectStreamException_method_ObjectStreamException__LRObjectStreamException_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "ObjectStreamException", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ObjectStreamException::clazzInfo(), // return type
  "_0_ObjectStreamException", // alternative name of method
  -1, // altlabelHashCode
  ObjectStreamException_methods_ObjectStreamException__LRObjectStreamException__args, // the arguments
  0, //arguments count
  ObjectStreamException_methods_ObjectStreamException__LRObjectStreamException__exceptions, // the declared exceptions
  ObjectStreamException_MetainfoWrapper::ObjectStreamException_method_ObjectStreamException__LRObjectStreamException__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo ObjectStreamException_methods_ObjectStreamException_INLRString__LRObjectStreamException__arg_what = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "what", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* ObjectStreamException_methods_ObjectStreamException_INLRString__LRObjectStreamException__args[] = 
{
  &ObjectStreamException_methods_ObjectStreamException_INLRString__LRObjectStreamException__arg_what,
  0
};

::acdk::lang::dmi::ClazzInfo* ObjectStreamException_methods_ObjectStreamException_INLRString__LRObjectStreamException__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo ObjectStreamException_method_ObjectStreamException_INLRString__LRObjectStreamException_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "ObjectStreamException", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ObjectStreamException::clazzInfo(), // return type
  "_1_ObjectStreamException", // alternative name of method
  -1, // altlabelHashCode
  ObjectStreamException_methods_ObjectStreamException_INLRString__LRObjectStreamException__args, // the arguments
  0, //arguments count
  ObjectStreamException_methods_ObjectStreamException_INLRString__LRObjectStreamException__exceptions, // the declared exceptions
  ObjectStreamException_MetainfoWrapper::ObjectStreamException_method_ObjectStreamException_INLRString__LRObjectStreamException__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _ObjectStreamException_methods[] = 
{
  &ObjectStreamException_method_GetClass__L_acdk_lang_RClass_,
  &ObjectStreamException_method_ObjectStreamException__LRObjectStreamException_,
  &ObjectStreamException_method_ObjectStreamException_INLRString__LRObjectStreamException_,
  0
};


struct ObjectStreamException_MetaInfoInitializer
{  ObjectStreamException_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = ObjectStreamException::clazzInfo();
    ci->fields =  _ObjectStreamException_fields;
    ci->methods =  _ObjectStreamException_methods;
    ci->_scopeParent = acdk_io_unitInfo.getMetaInfo();
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
ObjectStreamException_MetaInfoInitializer ObjectStreamException_MetaInfoInitializer_staticinstance__;


struct ObjectStreamException_clazzInfo_ClazzAttributesResInitializer12
{
  ObjectStreamException_clazzInfo_ClazzAttributesResInitializer12()
  {
    ::acdk::lang::dmi::ClazzAttributesRes::attachAttribute((::acdk::lang::dmi::MetaInfo*)ObjectStreamException::clazzInfo(), "__throwExceptionFunc", ::acdk::lang::dmi::ClazzAttributeResValue(0xFFFF, (void*)&ThrowException_ObjectStreamException));
  }
};

ObjectStreamException_clazzInfo_ClazzAttributesResInitializer12 ObjectStreamException_clazzInfo_ClazzAttributesResInitializer12_instance;



} // namespace acdk
} // namespace io

namespace acdk { 
namespace io { 


//static
::acdk::lang::RObject
InvalidClassException_create_array(int length)
{
  return new ObjectArrayImpl<RInvalidClassException>(length);
}

//static
::acdk::lang::RObject
InvalidClassException_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class InvalidClassException_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  InvalidClassException_method_GetClass__L_acdk_lang_RClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)InvalidClassException::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  InvalidClassException_method_InvalidClassException__LRInvalidClassException__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new InvalidClassException();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  InvalidClassException_method_InvalidClassException_INLRString__LRInvalidClassException__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new InvalidClassException(::acdk::lang::dmi::castTo< RString>(args[0], dc));
    return methinf;
  }
};


void ThrowException_InvalidClassException(IN(::acdk::lang::RThrowable) ex)
{
  throw RInvalidClassException(ex);
}

::acdk::lang::dmi::ClazzFieldInfo* _InvalidClassException_fields[] = 
{
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo* InvalidClassException_methods_GetClass__L_acdk_lang_RClass__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* InvalidClassException_methods_GetClass__L_acdk_lang_RClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo InvalidClassException_method_GetClass__L_acdk_lang_RClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_2_GetClass", // alternative name of method
  -1, // altlabelHashCode
  InvalidClassException_methods_GetClass__L_acdk_lang_RClass__args, // the arguments
  0, //arguments count
  InvalidClassException_methods_GetClass__L_acdk_lang_RClass__exceptions, // the declared exceptions
  InvalidClassException_MetainfoWrapper::InvalidClassException_method_GetClass__L_acdk_lang_RClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* InvalidClassException_methods_InvalidClassException__LRInvalidClassException__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* InvalidClassException_methods_InvalidClassException__LRInvalidClassException__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo InvalidClassException_method_InvalidClassException__LRInvalidClassException_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "InvalidClassException", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  InvalidClassException::clazzInfo(), // return type
  "_0_InvalidClassException", // alternative name of method
  -1, // altlabelHashCode
  InvalidClassException_methods_InvalidClassException__LRInvalidClassException__args, // the arguments
  0, //arguments count
  InvalidClassException_methods_InvalidClassException__LRInvalidClassException__exceptions, // the declared exceptions
  InvalidClassException_MetainfoWrapper::InvalidClassException_method_InvalidClassException__LRInvalidClassException__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo InvalidClassException_methods_InvalidClassException_INLRString__LRInvalidClassException__arg_what = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "what", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* InvalidClassException_methods_InvalidClassException_INLRString__LRInvalidClassException__args[] = 
{
  &InvalidClassException_methods_InvalidClassException_INLRString__LRInvalidClassException__arg_what,
  0
};

::acdk::lang::dmi::ClazzInfo* InvalidClassException_methods_InvalidClassException_INLRString__LRInvalidClassException__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo InvalidClassException_method_InvalidClassException_INLRString__LRInvalidClassException_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "InvalidClassException", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  InvalidClassException::clazzInfo(), // return type
  "_1_InvalidClassException", // alternative name of method
  -1, // altlabelHashCode
  InvalidClassException_methods_InvalidClassException_INLRString__LRInvalidClassException__args, // the arguments
  0, //arguments count
  InvalidClassException_methods_InvalidClassException_INLRString__LRInvalidClassException__exceptions, // the declared exceptions
  InvalidClassException_MetainfoWrapper::InvalidClassException_method_InvalidClassException_INLRString__LRInvalidClassException__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _InvalidClassException_methods[] = 
{
  &InvalidClassException_method_GetClass__L_acdk_lang_RClass_,
  &InvalidClassException_method_InvalidClassException__LRInvalidClassException_,
  &InvalidClassException_method_InvalidClassException_INLRString__LRInvalidClassException_,
  0
};


struct InvalidClassException_MetaInfoInitializer
{  InvalidClassException_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = InvalidClassException::clazzInfo();
    ci->fields =  _InvalidClassException_fields;
    ci->methods =  _InvalidClassException_methods;
    ci->_scopeParent = acdk_io_unitInfo.getMetaInfo();
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
InvalidClassException_MetaInfoInitializer InvalidClassException_MetaInfoInitializer_staticinstance__;


struct InvalidClassException_clazzInfo_ClazzAttributesResInitializer13
{
  InvalidClassException_clazzInfo_ClazzAttributesResInitializer13()
  {
    ::acdk::lang::dmi::ClazzAttributesRes::attachAttribute((::acdk::lang::dmi::MetaInfo*)InvalidClassException::clazzInfo(), "__throwExceptionFunc", ::acdk::lang::dmi::ClazzAttributeResValue(0xFFFF, (void*)&ThrowException_InvalidClassException));
  }
};

InvalidClassException_clazzInfo_ClazzAttributesResInitializer13 InvalidClassException_clazzInfo_ClazzAttributesResInitializer13_instance;



} // namespace acdk
} // namespace io

namespace acdk { 
namespace io { 


//static
::acdk::lang::RObject
NotSerializableException_create_array(int length)
{
  return new ObjectArrayImpl<RNotSerializableException>(length);
}

//static
::acdk::lang::RObject
NotSerializableException_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class NotSerializableException_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  NotSerializableException_method_GetClass__L_acdk_lang_RClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)NotSerializableException::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  NotSerializableException_method_NotSerializableException__LRNotSerializableException__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new NotSerializableException();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  NotSerializableException_method_NotSerializableException_INLRString__LRNotSerializableException__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new NotSerializableException(::acdk::lang::dmi::castTo< RString>(args[0], dc));
    return methinf;
  }
};


void ThrowException_NotSerializableException(IN(::acdk::lang::RThrowable) ex)
{
  throw RNotSerializableException(ex);
}

::acdk::lang::dmi::ClazzFieldInfo* _NotSerializableException_fields[] = 
{
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo* NotSerializableException_methods_GetClass__L_acdk_lang_RClass__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* NotSerializableException_methods_GetClass__L_acdk_lang_RClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo NotSerializableException_method_GetClass__L_acdk_lang_RClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_2_GetClass", // alternative name of method
  -1, // altlabelHashCode
  NotSerializableException_methods_GetClass__L_acdk_lang_RClass__args, // the arguments
  0, //arguments count
  NotSerializableException_methods_GetClass__L_acdk_lang_RClass__exceptions, // the declared exceptions
  NotSerializableException_MetainfoWrapper::NotSerializableException_method_GetClass__L_acdk_lang_RClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* NotSerializableException_methods_NotSerializableException__LRNotSerializableException__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* NotSerializableException_methods_NotSerializableException__LRNotSerializableException__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo NotSerializableException_method_NotSerializableException__LRNotSerializableException_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "NotSerializableException", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  NotSerializableException::clazzInfo(), // return type
  "_0_NotSerializableException", // alternative name of method
  -1, // altlabelHashCode
  NotSerializableException_methods_NotSerializableException__LRNotSerializableException__args, // the arguments
  0, //arguments count
  NotSerializableException_methods_NotSerializableException__LRNotSerializableException__exceptions, // the declared exceptions
  NotSerializableException_MetainfoWrapper::NotSerializableException_method_NotSerializableException__LRNotSerializableException__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo NotSerializableException_methods_NotSerializableException_INLRString__LRNotSerializableException__arg_what = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "what", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* NotSerializableException_methods_NotSerializableException_INLRString__LRNotSerializableException__args[] = 
{
  &NotSerializableException_methods_NotSerializableException_INLRString__LRNotSerializableException__arg_what,
  0
};

::acdk::lang::dmi::ClazzInfo* NotSerializableException_methods_NotSerializableException_INLRString__LRNotSerializableException__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo NotSerializableException_method_NotSerializableException_INLRString__LRNotSerializableException_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "NotSerializableException", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  NotSerializableException::clazzInfo(), // return type
  "_1_NotSerializableException", // alternative name of method
  -1, // altlabelHashCode
  NotSerializableException_methods_NotSerializableException_INLRString__LRNotSerializableException__args, // the arguments
  0, //arguments count
  NotSerializableException_methods_NotSerializableException_INLRString__LRNotSerializableException__exceptions, // the declared exceptions
  NotSerializableException_MetainfoWrapper::NotSerializableException_method_NotSerializableException_INLRString__LRNotSerializableException__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _NotSerializableException_methods[] = 
{
  &NotSerializableException_method_GetClass__L_acdk_lang_RClass_,
  &NotSerializableException_method_NotSerializableException__LRNotSerializableException_,
  &NotSerializableException_method_NotSerializableException_INLRString__LRNotSerializableException_,
  0
};


struct NotSerializableException_MetaInfoInitializer
{  NotSerializableException_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = NotSerializableException::clazzInfo();
    ci->fields =  _NotSerializableException_fields;
    ci->methods =  _NotSerializableException_methods;
    ci->_scopeParent = acdk_io_unitInfo.getMetaInfo();
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
NotSerializableException_MetaInfoInitializer NotSerializableException_MetaInfoInitializer_staticinstance__;


struct NotSerializableException_clazzInfo_ClazzAttributesResInitializer14
{
  NotSerializableException_clazzInfo_ClazzAttributesResInitializer14()
  {
    ::acdk::lang::dmi::ClazzAttributesRes::attachAttribute((::acdk::lang::dmi::MetaInfo*)NotSerializableException::clazzInfo(), "__throwExceptionFunc", ::acdk::lang::dmi::ClazzAttributeResValue(0xFFFF, (void*)&ThrowException_NotSerializableException));
  }
};

NotSerializableException_clazzInfo_ClazzAttributesResInitializer14 NotSerializableException_clazzInfo_ClazzAttributesResInitializer14_instance;



} // namespace acdk
} // namespace io

namespace acdk { 
namespace io { 


//static
::acdk::lang::RObject
StreamCorruptedException_create_array(int length)
{
  return new ObjectArrayImpl<RStreamCorruptedException>(length);
}

//static
::acdk::lang::RObject
StreamCorruptedException_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class StreamCorruptedException_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  StreamCorruptedException_method_GetClass__L_acdk_lang_RClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)StreamCorruptedException::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  StreamCorruptedException_method_StreamCorruptedException__LRStreamCorruptedException__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new StreamCorruptedException();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  StreamCorruptedException_method_StreamCorruptedException_INLRString__LRStreamCorruptedException__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new StreamCorruptedException(::acdk::lang::dmi::castTo< RString>(args[0], dc));
    return methinf;
  }
};


void ThrowException_StreamCorruptedException(IN(::acdk::lang::RThrowable) ex)
{
  throw RStreamCorruptedException(ex);
}

::acdk::lang::dmi::ClazzFieldInfo* _StreamCorruptedException_fields[] = 
{
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo* StreamCorruptedException_methods_GetClass__L_acdk_lang_RClass__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* StreamCorruptedException_methods_GetClass__L_acdk_lang_RClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo StreamCorruptedException_method_GetClass__L_acdk_lang_RClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_2_GetClass", // alternative name of method
  -1, // altlabelHashCode
  StreamCorruptedException_methods_GetClass__L_acdk_lang_RClass__args, // the arguments
  0, //arguments count
  StreamCorruptedException_methods_GetClass__L_acdk_lang_RClass__exceptions, // the declared exceptions
  StreamCorruptedException_MetainfoWrapper::StreamCorruptedException_method_GetClass__L_acdk_lang_RClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* StreamCorruptedException_methods_StreamCorruptedException__LRStreamCorruptedException__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* StreamCorruptedException_methods_StreamCorruptedException__LRStreamCorruptedException__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo StreamCorruptedException_method_StreamCorruptedException__LRStreamCorruptedException_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "StreamCorruptedException", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  StreamCorruptedException::clazzInfo(), // return type
  "_0_StreamCorruptedException", // alternative name of method
  -1, // altlabelHashCode
  StreamCorruptedException_methods_StreamCorruptedException__LRStreamCorruptedException__args, // the arguments
  0, //arguments count
  StreamCorruptedException_methods_StreamCorruptedException__LRStreamCorruptedException__exceptions, // the declared exceptions
  StreamCorruptedException_MetainfoWrapper::StreamCorruptedException_method_StreamCorruptedException__LRStreamCorruptedException__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo StreamCorruptedException_methods_StreamCorruptedException_INLRString__LRStreamCorruptedException__arg_what = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "what", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* StreamCorruptedException_methods_StreamCorruptedException_INLRString__LRStreamCorruptedException__args[] = 
{
  &StreamCorruptedException_methods_StreamCorruptedException_INLRString__LRStreamCorruptedException__arg_what,
  0
};

::acdk::lang::dmi::ClazzInfo* StreamCorruptedException_methods_StreamCorruptedException_INLRString__LRStreamCorruptedException__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo StreamCorruptedException_method_StreamCorruptedException_INLRString__LRStreamCorruptedException_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "StreamCorruptedException", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  StreamCorruptedException::clazzInfo(), // return type
  "_1_StreamCorruptedException", // alternative name of method
  -1, // altlabelHashCode
  StreamCorruptedException_methods_StreamCorruptedException_INLRString__LRStreamCorruptedException__args, // the arguments
  0, //arguments count
  StreamCorruptedException_methods_StreamCorruptedException_INLRString__LRStreamCorruptedException__exceptions, // the declared exceptions
  StreamCorruptedException_MetainfoWrapper::StreamCorruptedException_method_StreamCorruptedException_INLRString__LRStreamCorruptedException__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _StreamCorruptedException_methods[] = 
{
  &StreamCorruptedException_method_GetClass__L_acdk_lang_RClass_,
  &StreamCorruptedException_method_StreamCorruptedException__LRStreamCorruptedException_,
  &StreamCorruptedException_method_StreamCorruptedException_INLRString__LRStreamCorruptedException_,
  0
};


struct StreamCorruptedException_MetaInfoInitializer
{  StreamCorruptedException_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = StreamCorruptedException::clazzInfo();
    ci->fields =  _StreamCorruptedException_fields;
    ci->methods =  _StreamCorruptedException_methods;
    ci->_scopeParent = acdk_io_unitInfo.getMetaInfo();
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
StreamCorruptedException_MetaInfoInitializer StreamCorruptedException_MetaInfoInitializer_staticinstance__;


struct StreamCorruptedException_clazzInfo_ClazzAttributesResInitializer15
{
  StreamCorruptedException_clazzInfo_ClazzAttributesResInitializer15()
  {
    ::acdk::lang::dmi::ClazzAttributesRes::attachAttribute((::acdk::lang::dmi::MetaInfo*)StreamCorruptedException::clazzInfo(), "__throwExceptionFunc", ::acdk::lang::dmi::ClazzAttributeResValue(0xFFFF, (void*)&ThrowException_StreamCorruptedException));
  }
};

StreamCorruptedException_clazzInfo_ClazzAttributesResInitializer15 StreamCorruptedException_clazzInfo_ClazzAttributesResInitializer15_instance;



} // namespace acdk
} // namespace io

namespace acdk { 
namespace io { 

using namespace acdk::lang;

//static
::acdk::lang::RObject
ObjectWriter_create_array(int length)
{
  return new ObjectArrayImpl<RObjectWriter>(length);
}

//static
::acdk::lang::RObject
ObjectWriter_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class ObjectWriter_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  ObjectWriter_method_GetClass__L_acdk_lang_RClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)ObjectWriter::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  ObjectWriter_method_defaultWriteObject_INLRClass_INLRObject__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ObjectWriter* This = dmi_cast<ObjectWriter>(This_);
    This->defaultWriteObject(::acdk::lang::dmi::castTo< RClass>(args[0], dc), ::acdk::lang::dmi::castTo< acdk::lang::Object>(args[1], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  ObjectWriter_method_write_INLRbyteArray__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ObjectWriter* This = dmi_cast<ObjectWriter>(This_);
    This->write(::acdk::lang::dmi::castTo< RbyteArray>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  ObjectWriter_method_write_INLRbyteArray_I_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ObjectWriter* This = dmi_cast<ObjectWriter>(This_);
    This->write(::acdk::lang::dmi::castTo< RbyteArray>(args[0], dc), ::acdk::lang::dmi::castTo< int>(args[1], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  ObjectWriter_method_writeClassDescriptor_INLRClass_INLRObject__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ObjectWriter* This = dmi_cast<ObjectWriter>(This_);
    This->writeClassDescriptor(::acdk::lang::dmi::castTo< RClass>(args[0], dc), ::acdk::lang::dmi::castTo< acdk::lang::Object>(args[1], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  ObjectWriter_method_writeObject_INLRClass_INLRObject__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ObjectWriter* This = dmi_cast<ObjectWriter>(This_);
    This->writeObject(::acdk::lang::dmi::castTo< RClass>(args[0], dc), ::acdk::lang::dmi::castTo< acdk::lang::Object>(args[1], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  ObjectWriter_method_writeObject_INLRObject__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ObjectWriter* This = dmi_cast<ObjectWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->ObjectWriter::writeObject(::acdk::lang::dmi::castTo< acdk::lang::Object>(args[0], dc));
    else
        This->writeObject(::acdk::lang::dmi::castTo< acdk::lang::Object>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  ObjectWriter_method_writeUnshared_INLRClass_INLRObject__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ObjectWriter* This = dmi_cast<ObjectWriter>(This_);
    This->writeUnshared(::acdk::lang::dmi::castTo< RClass>(args[0], dc), ::acdk::lang::dmi::castTo< acdk::lang::Object>(args[1], dc));
    return methinf;
  }
};

::acdk::lang::dmi::ClazzFieldInfo* _ObjectWriter_fields[] = 
{
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo* ObjectWriter_methods_GetClass__L_acdk_lang_RClass__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* ObjectWriter_methods_GetClass__L_acdk_lang_RClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo ObjectWriter_method_GetClass__L_acdk_lang_RClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_m_GetClass", // alternative name of method
  -1, // altlabelHashCode
  ObjectWriter_methods_GetClass__L_acdk_lang_RClass__args, // the arguments
  0, //arguments count
  ObjectWriter_methods_GetClass__L_acdk_lang_RClass__exceptions, // the declared exceptions
  ObjectWriter_MetainfoWrapper::ObjectWriter_method_GetClass__L_acdk_lang_RClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo ObjectWriter_methods_defaultWriteObject_INLRClass_INLRObject__V_arg_cls = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "cls", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RClass::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo ObjectWriter_methods_defaultWriteObject_INLRClass_INLRObject__V_arg_obj = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "obj", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  acdk::lang::Object::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* ObjectWriter_methods_defaultWriteObject_INLRClass_INLRObject__V_args[] = 
{
  &ObjectWriter_methods_defaultWriteObject_INLRClass_INLRObject__V_arg_cls,
  &ObjectWriter_methods_defaultWriteObject_INLRClass_INLRObject__V_arg_obj,
  0
};

::acdk::lang::dmi::ClazzInfo* ObjectWriter_methods_defaultWriteObject_INLRClass_INLRObject__V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo ObjectWriter_method_defaultWriteObject_INLRClass_INLRObject__V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "defaultWriteObject", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_j_defaultWriteObject", // alternative name of method
  -1, // altlabelHashCode
  ObjectWriter_methods_defaultWriteObject_INLRClass_INLRObject__V_args, // the arguments
  0, //arguments count
  ObjectWriter_methods_defaultWriteObject_INLRClass_INLRObject__V_exceptions, // the declared exceptions
  ObjectWriter_MetainfoWrapper::ObjectWriter_method_defaultWriteObject_INLRClass_INLRObject__V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo ObjectWriter_methods_write_INLRbyteArray__V_arg_array = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "array", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RbyteArray::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* ObjectWriter_methods_write_INLRbyteArray__V_args[] = 
{
  &ObjectWriter_methods_write_INLRbyteArray__V_arg_array,
  0
};

::acdk::lang::dmi::ClazzInfo* ObjectWriter_methods_write_INLRbyteArray__V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo ObjectWriter_method_write_INLRbyteArray__V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract,// class flags, like static, 
  0, //AttributesRes
  "write", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_e_write", // alternative name of method
  -1, // altlabelHashCode
  ObjectWriter_methods_write_INLRbyteArray__V_args, // the arguments
  0, //arguments count
  ObjectWriter_methods_write_INLRbyteArray__V_exceptions, // the declared exceptions
  ObjectWriter_MetainfoWrapper::ObjectWriter_method_write_INLRbyteArray__V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo ObjectWriter_methods_write_INLRbyteArray_I_V_arg_array = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "array", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RbyteArray::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo ObjectWriter_methods_write_INLRbyteArray_I_V_arg_offset = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "offset", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* ObjectWriter_methods_write_INLRbyteArray_I_V_args[] = 
{
  &ObjectWriter_methods_write_INLRbyteArray_I_V_arg_array,
  &ObjectWriter_methods_write_INLRbyteArray_I_V_arg_offset,
  0
};

::acdk::lang::dmi::ClazzInfo* ObjectWriter_methods_write_INLRbyteArray_I_V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo ObjectWriter_method_write_INLRbyteArray_I_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract,// class flags, like static, 
  0, //AttributesRes
  "write", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_f_write", // alternative name of method
  -1, // altlabelHashCode
  ObjectWriter_methods_write_INLRbyteArray_I_V_args, // the arguments
  0, //arguments count
  ObjectWriter_methods_write_INLRbyteArray_I_V_exceptions, // the declared exceptions
  ObjectWriter_MetainfoWrapper::ObjectWriter_method_write_INLRbyteArray_I_V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo ObjectWriter_methods_writeClassDescriptor_INLRClass_INLRObject__V_arg_cls = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "cls", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RClass::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo ObjectWriter_methods_writeClassDescriptor_INLRClass_INLRObject__V_arg_obj = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "obj", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  acdk::lang::Object::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* ObjectWriter_methods_writeClassDescriptor_INLRClass_INLRObject__V_args[] = 
{
  &ObjectWriter_methods_writeClassDescriptor_INLRClass_INLRObject__V_arg_cls,
  &ObjectWriter_methods_writeClassDescriptor_INLRClass_INLRObject__V_arg_obj,
  0
};

::acdk::lang::dmi::ClazzInfo* ObjectWriter_methods_writeClassDescriptor_INLRClass_INLRObject__V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo ObjectWriter_method_writeClassDescriptor_INLRClass_INLRObject__V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "writeClassDescriptor", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_l_writeClassDescriptor", // alternative name of method
  -1, // altlabelHashCode
  ObjectWriter_methods_writeClassDescriptor_INLRClass_INLRObject__V_args, // the arguments
  0, //arguments count
  ObjectWriter_methods_writeClassDescriptor_INLRClass_INLRObject__V_exceptions, // the declared exceptions
  ObjectWriter_MetainfoWrapper::ObjectWriter_method_writeClassDescriptor_INLRClass_INLRObject__V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo ObjectWriter_methods_writeObject_INLRClass_INLRObject__V_arg_cls = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "cls", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RClass::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo ObjectWriter_methods_writeObject_INLRClass_INLRObject__V_arg_obj = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "obj", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  acdk::lang::Object::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* ObjectWriter_methods_writeObject_INLRClass_INLRObject__V_args[] = 
{
  &ObjectWriter_methods_writeObject_INLRClass_INLRObject__V_arg_cls,
  &ObjectWriter_methods_writeObject_INLRClass_INLRObject__V_arg_obj,
  0
};

::acdk::lang::dmi::ClazzInfo* ObjectWriter_methods_writeObject_INLRClass_INLRObject__V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo ObjectWriter_method_writeObject_INLRClass_INLRObject__V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "writeObject", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_i_writeObject", // alternative name of method
  -1, // altlabelHashCode
  ObjectWriter_methods_writeObject_INLRClass_INLRObject__V_args, // the arguments
  0, //arguments count
  ObjectWriter_methods_writeObject_INLRClass_INLRObject__V_exceptions, // the declared exceptions
  ObjectWriter_MetainfoWrapper::ObjectWriter_method_writeObject_INLRClass_INLRObject__V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo ObjectWriter_methods_writeObject_INLRObject__V_arg_obj = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "obj", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  acdk::lang::Object::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* ObjectWriter_methods_writeObject_INLRObject__V_args[] = 
{
  &ObjectWriter_methods_writeObject_INLRObject__V_arg_obj,
  0
};

::acdk::lang::dmi::ClazzInfo* ObjectWriter_methods_writeObject_INLRObject__V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo ObjectWriter_method_writeObject_INLRObject__V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "writeObject", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_h_writeObject", // alternative name of method
  -1, // altlabelHashCode
  ObjectWriter_methods_writeObject_INLRObject__V_args, // the arguments
  0, //arguments count
  ObjectWriter_methods_writeObject_INLRObject__V_exceptions, // the declared exceptions
  ObjectWriter_MetainfoWrapper::ObjectWriter_method_writeObject_INLRObject__V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo ObjectWriter_methods_writeUnshared_INLRClass_INLRObject__V_arg_cls = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "cls", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RClass::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo ObjectWriter_methods_writeUnshared_INLRClass_INLRObject__V_arg_obj = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "obj", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  acdk::lang::Object::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* ObjectWriter_methods_writeUnshared_INLRClass_INLRObject__V_args[] = 
{
  &ObjectWriter_methods_writeUnshared_INLRClass_INLRObject__V_arg_cls,
  &ObjectWriter_methods_writeUnshared_INLRClass_INLRObject__V_arg_obj,
  0
};

::acdk::lang::dmi::ClazzInfo* ObjectWriter_methods_writeUnshared_INLRClass_INLRObject__V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo ObjectWriter_method_writeUnshared_INLRClass_INLRObject__V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiAbstract | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "writeUnshared", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_k_writeUnshared", // alternative name of method
  -1, // altlabelHashCode
  ObjectWriter_methods_writeUnshared_INLRClass_INLRObject__V_args, // the arguments
  0, //arguments count
  ObjectWriter_methods_writeUnshared_INLRClass_INLRObject__V_exceptions, // the declared exceptions
  ObjectWriter_MetainfoWrapper::ObjectWriter_method_writeUnshared_INLRClass_INLRObject__V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _ObjectWriter_methods[] = 
{
  &ObjectWriter_method_GetClass__L_acdk_lang_RClass_,
  &ObjectWriter_method_defaultWriteObject_INLRClass_INLRObject__V,
  &ObjectWriter_method_write_INLRbyteArray__V,
  &ObjectWriter_method_write_INLRbyteArray_I_V,
  &ObjectWriter_method_writeClassDescriptor_INLRClass_INLRObject__V,
  &ObjectWriter_method_writeObject_INLRClass_INLRObject__V,
  &ObjectWriter_method_writeObject_INLRObject__V,
  &ObjectWriter_method_writeUnshared_INLRClass_INLRObject__V,
  0
};


struct ObjectWriter_MetaInfoInitializer
{  ObjectWriter_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = ObjectWriter::clazzInfo();
    ci->fields =  _ObjectWriter_fields;
    ci->methods =  _ObjectWriter_methods;
    ci->_scopeParent = acdk_io_unitInfo.getMetaInfo();
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
ObjectWriter_MetaInfoInitializer ObjectWriter_MetaInfoInitializer_staticinstance__;


} // namespace acdk
} // namespace io

namespace acdk { 
namespace io { 

using namespace acdk::lang;

//static
::acdk::lang::RObject
PipedReader_create_array(int length)
{
  return new ObjectArrayImpl<RPipedReader>(length);
}

//static
::acdk::lang::RObject
PipedReader_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class PipedReader_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PipedReader_method_GetClass__L_acdk_lang_RClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)PipedReader::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PipedReader_method_PipedReader__LRPipedReader__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new PipedReader();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PipedReader_method_PipedReader_INLRPipedWriter__LRPipedReader__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new PipedReader(::acdk::lang::dmi::castTo< RPipedWriter>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PipedReader_method_connect_INLRPipedWriter__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PipedReader* This = dmi_cast<PipedReader>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PipedReader::connect(::acdk::lang::dmi::castTo< RPipedWriter>(args[0], dc));
    else
        This->connect(::acdk::lang::dmi::castTo< RPipedWriter>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PipedReader_method_pipewrite_B_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PipedReader* This = dmi_cast<PipedReader>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PipedReader::pipewrite(::acdk::lang::dmi::castTo< byte>(args[0], dc));
    else
        This->pipewrite(::acdk::lang::dmi::castTo< byte>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PipedReader_method_pipewrite_INLRbyteArray_II_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PipedReader* This = dmi_cast<PipedReader>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PipedReader::pipewrite(::acdk::lang::dmi::castTo< RbyteArray>(args[0], dc), ::acdk::lang::dmi::castTo< int>(args[1], dc), ::acdk::lang::dmi::castTo< int>(args[2], dc));
    else
        This->pipewrite(::acdk::lang::dmi::castTo< RbyteArray>(args[0], dc), ::acdk::lang::dmi::castTo< int>(args[1], dc), ::acdk::lang::dmi::castTo< int>(args[2], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PipedReader_method_pipewrite_INLRbyteArray_I_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PipedReader* This = dmi_cast<PipedReader>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PipedReader::pipewrite(::acdk::lang::dmi::castTo< RbyteArray>(args[0], dc), ::acdk::lang::dmi::castTo< int>(args[1], dc));
    else
        This->pipewrite(::acdk::lang::dmi::castTo< RbyteArray>(args[0], dc), ::acdk::lang::dmi::castTo< int>(args[1], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  PipedReader_fields_PIPE_SIZE_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(PipedReader::PIPE_SIZE, flags);
    else
      PipedReader::PIPE_SIZE = ::acdk::lang::dmi::castTo< int>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  PipedReader_fields__buffer_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    PipedReader* This = dmi_cast<PipedReader>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_buffer, flags);
    else
      This->_buffer = ::acdk::lang::dmi::castTo< RbyteArray>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  PipedReader_fields__closed_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    PipedReader* This = dmi_cast<PipedReader>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_closed, flags);
    else
      This->_closed = ::acdk::lang::dmi::castTo< bool>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  PipedReader_fields__connected_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    PipedReader* This = dmi_cast<PipedReader>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_connected, flags);
    else
      This->_connected = ::acdk::lang::dmi::castTo< bool>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  PipedReader_fields__in_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    PipedReader* This = dmi_cast<PipedReader>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_in, flags);
    else
      This->_in = ::acdk::lang::dmi::castTo< RPipedWriter>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  PipedReader_fields__inPos_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    PipedReader* This = dmi_cast<PipedReader>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_inPos, flags);
    else
      This->_inPos = ::acdk::lang::dmi::castTo< int>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  PipedReader_fields__outPos_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    PipedReader* This = dmi_cast<PipedReader>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_outPos, flags);
    else
      This->_outPos = ::acdk::lang::dmi::castTo< int>(var, dc);
    return fieldinf;
  }
};

::acdk::lang::dmi::ClazzFieldInfo PipedReader_fields_PIPE_SIZE = 
{
  ::acdk::lang::dmi::MiPrivate | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "PIPE_SIZE", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(),
  PipedReader_MetainfoWrapper::PipedReader_fields_PIPE_SIZE_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo PipedReader_fields__buffer = 
{
  ::acdk::lang::dmi::MiPrivate | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_buffer", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RbyteArray::clazzInfo(),
  PipedReader_MetainfoWrapper::PipedReader_fields__buffer_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo PipedReader_fields__closed = 
{
  ::acdk::lang::dmi::MiPrivate | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_closed", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz(),
  PipedReader_MetainfoWrapper::PipedReader_fields__closed_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo PipedReader_fields__connected = 
{
  ::acdk::lang::dmi::MiPrivate | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_connected", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz(),
  PipedReader_MetainfoWrapper::PipedReader_fields__connected_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo PipedReader_fields__in = 
{
  ::acdk::lang::dmi::MiPrivate | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_in", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RPipedWriter::clazzInfo(),
  PipedReader_MetainfoWrapper::PipedReader_fields__in_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo PipedReader_fields__inPos = 
{
  ::acdk::lang::dmi::MiPrivate | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_inPos", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(),
  PipedReader_MetainfoWrapper::PipedReader_fields__inPos_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo PipedReader_fields__outPos = 
{
  ::acdk::lang::dmi::MiPrivate | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_outPos", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz(),
  PipedReader_MetainfoWrapper::PipedReader_fields__outPos_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo* _PipedReader_fields[] = 
{
  &PipedReader_fields_PIPE_SIZE,
  &PipedReader_fields__buffer,
  &PipedReader_fields__closed,
  &PipedReader_fields__connected,
  &PipedReader_fields__in,
  &PipedReader_fields__inPos,
  &PipedReader_fields__outPos,
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo* PipedReader_methods_GetClass__L_acdk_lang_RClass__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* PipedReader_methods_GetClass__L_acdk_lang_RClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PipedReader_method_GetClass__L_acdk_lang_RClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_6_GetClass", // alternative name of method
  -1, // altlabelHashCode
  PipedReader_methods_GetClass__L_acdk_lang_RClass__args, // the arguments
  0, //arguments count
  PipedReader_methods_GetClass__L_acdk_lang_RClass__exceptions, // the declared exceptions
  PipedReader_MetainfoWrapper::PipedReader_method_GetClass__L_acdk_lang_RClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* PipedReader_methods_PipedReader__LRPipedReader__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* PipedReader_methods_PipedReader__LRPipedReader__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PipedReader_method_PipedReader__LRPipedReader_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "PipedReader", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  PipedReader::clazzInfo(), // return type
  "_0_PipedReader", // alternative name of method
  -1, // altlabelHashCode
  PipedReader_methods_PipedReader__LRPipedReader__args, // the arguments
  0, //arguments count
  PipedReader_methods_PipedReader__LRPipedReader__exceptions, // the declared exceptions
  PipedReader_MetainfoWrapper::PipedReader_method_PipedReader__LRPipedReader__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo PipedReader_methods_PipedReader_INLRPipedWriter__LRPipedReader__arg_in = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "in", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RPipedWriter::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* PipedReader_methods_PipedReader_INLRPipedWriter__LRPipedReader__args[] = 
{
  &PipedReader_methods_PipedReader_INLRPipedWriter__LRPipedReader__arg_in,
  0
};

::acdk::lang::dmi::ClazzInfo* PipedReader_methods_PipedReader_INLRPipedWriter__LRPipedReader__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PipedReader_method_PipedReader_INLRPipedWriter__LRPipedReader_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "PipedReader", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  PipedReader::clazzInfo(), // return type
  "_1_PipedReader", // alternative name of method
  -1, // altlabelHashCode
  PipedReader_methods_PipedReader_INLRPipedWriter__LRPipedReader__args, // the arguments
  0, //arguments count
  PipedReader_methods_PipedReader_INLRPipedWriter__LRPipedReader__exceptions, // the declared exceptions
  PipedReader_MetainfoWrapper::PipedReader_method_PipedReader_INLRPipedWriter__LRPipedReader__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo PipedReader_methods_connect_INLRPipedWriter__V_arg_in = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "in", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RPipedWriter::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* PipedReader_methods_connect_INLRPipedWriter__V_args[] = 
{
  &PipedReader_methods_connect_INLRPipedWriter__V_arg_in,
  0
};

::acdk::lang::dmi::ClazzInfo* PipedReader_methods_connect_INLRPipedWriter__V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PipedReader_method_connect_INLRPipedWriter__V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "connect", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_2_connect", // alternative name of method
  -1, // altlabelHashCode
  PipedReader_methods_connect_INLRPipedWriter__V_args, // the arguments
  0, //arguments count
  PipedReader_methods_connect_INLRPipedWriter__V_exceptions, // the declared exceptions
  PipedReader_MetainfoWrapper::PipedReader_method_connect_INLRPipedWriter__V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo PipedReader_methods_pipewrite_B_V_arg_c = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "c", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getByteClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* PipedReader_methods_pipewrite_B_V_args[] = 
{
  &PipedReader_methods_pipewrite_B_V_arg_c,
  0
};

::acdk::lang::dmi::ClazzInfo* PipedReader_methods_pipewrite_B_V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PipedReader_method_pipewrite_B_V = 
{
  ::acdk::lang::dmi::MiProtected | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "pipewrite", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_3_pipewrite", // alternative name of method
  -1, // altlabelHashCode
  PipedReader_methods_pipewrite_B_V_args, // the arguments
  0, //arguments count
  PipedReader_methods_pipewrite_B_V_exceptions, // the declared exceptions
  PipedReader_MetainfoWrapper::PipedReader_method_pipewrite_B_V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo PipedReader_methods_pipewrite_INLRbyteArray_II_V_arg_buffer = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "buffer", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RbyteArray::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo PipedReader_methods_pipewrite_INLRbyteArray_II_V_arg_offset = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "offset", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo PipedReader_methods_pipewrite_INLRbyteArray_II_V_arg_len = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "len", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* PipedReader_methods_pipewrite_INLRbyteArray_II_V_args[] = 
{
  &PipedReader_methods_pipewrite_INLRbyteArray_II_V_arg_buffer,
  &PipedReader_methods_pipewrite_INLRbyteArray_II_V_arg_offset,
  &PipedReader_methods_pipewrite_INLRbyteArray_II_V_arg_len,
  0
};

::acdk::lang::dmi::ClazzInfo* PipedReader_methods_pipewrite_INLRbyteArray_II_V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PipedReader_method_pipewrite_INLRbyteArray_II_V = 
{
  ::acdk::lang::dmi::MiProtected | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "pipewrite", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_4_pipewrite", // alternative name of method
  -1, // altlabelHashCode
  PipedReader_methods_pipewrite_INLRbyteArray_II_V_args, // the arguments
  0, //arguments count
  PipedReader_methods_pipewrite_INLRbyteArray_II_V_exceptions, // the declared exceptions
  PipedReader_MetainfoWrapper::PipedReader_method_pipewrite_INLRbyteArray_II_V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo PipedReader_methods_pipewrite_INLRbyteArray_I_V_arg_buffer = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "buffer", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RbyteArray::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo PipedReader_methods_pipewrite_INLRbyteArray_I_V_arg_offset = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "offset", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* PipedReader_methods_pipewrite_INLRbyteArray_I_V_args[] = 
{
  &PipedReader_methods_pipewrite_INLRbyteArray_I_V_arg_buffer,
  &PipedReader_methods_pipewrite_INLRbyteArray_I_V_arg_offset,
  0
};

::acdk::lang::dmi::ClazzInfo* PipedReader_methods_pipewrite_INLRbyteArray_I_V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PipedReader_method_pipewrite_INLRbyteArray_I_V = 
{
  ::acdk::lang::dmi::MiProtected | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "pipewrite", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_5_pipewrite", // alternative name of method
  -1, // altlabelHashCode
  PipedReader_methods_pipewrite_INLRbyteArray_I_V_args, // the arguments
  0, //arguments count
  PipedReader_methods_pipewrite_INLRbyteArray_I_V_exceptions, // the declared exceptions
  PipedReader_MetainfoWrapper::PipedReader_method_pipewrite_INLRbyteArray_I_V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _PipedReader_methods[] = 
{
  &PipedReader_method_GetClass__L_acdk_lang_RClass_,
  &PipedReader_method_PipedReader__LRPipedReader_,
  &PipedReader_method_PipedReader_INLRPipedWriter__LRPipedReader_,
  &PipedReader_method_connect_INLRPipedWriter__V,
  &PipedReader_method_pipewrite_B_V,
  &PipedReader_method_pipewrite_INLRbyteArray_II_V,
  &PipedReader_method_pipewrite_INLRbyteArray_I_V,
  0
};


struct PipedReader_MetaInfoInitializer
{  PipedReader_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = PipedReader::clazzInfo();
    ci->fields =  _PipedReader_fields;
    ci->methods =  _PipedReader_methods;
    ci->_scopeParent = acdk_io_unitInfo.getMetaInfo();
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
PipedReader_MetaInfoInitializer PipedReader_MetaInfoInitializer_staticinstance__;


} // namespace acdk
} // namespace io

namespace acdk { 
namespace io { 

using namespace acdk::lang;

//static
::acdk::lang::RObject
PipedWriter_create_array(int length)
{
  return new ObjectArrayImpl<RPipedWriter>(length);
}

//static
::acdk::lang::RObject
PipedWriter_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class PipedWriter_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PipedWriter_method_GetClass__L_acdk_lang_RClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)PipedWriter::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PipedWriter_method_PipedWriter__LRPipedWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new PipedWriter();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PipedWriter_method_PipedWriter_INLRPipedReader__LRPipedWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new PipedWriter(::acdk::lang::dmi::castTo< RPipedReader>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PipedWriter_method_connect_INLRPipedReader__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PipedWriter* This = dmi_cast<PipedWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PipedWriter::connect(::acdk::lang::dmi::castTo< RPipedReader>(args[0], dc));
    else
        This->connect(::acdk::lang::dmi::castTo< RPipedReader>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  PipedWriter_fields__closed_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    PipedWriter* This = dmi_cast<PipedWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_closed, flags);
    else
      This->_closed = ::acdk::lang::dmi::castTo< bool>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  PipedWriter_fields__connected_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    PipedWriter* This = dmi_cast<PipedWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_connected, flags);
    else
      This->_connected = ::acdk::lang::dmi::castTo< bool>(var, dc);
    return fieldinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  PipedWriter_fields__out_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    PipedWriter* This = dmi_cast<PipedWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_out, flags);
    else
      This->_out = ::acdk::lang::dmi::castTo< RPipedReader>(var, dc);
    return fieldinf;
  }
};

::acdk::lang::dmi::ClazzFieldInfo PipedWriter_fields__closed = 
{
  ::acdk::lang::dmi::MiPrivate | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_closed", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz(),
  PipedWriter_MetainfoWrapper::PipedWriter_fields__closed_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo PipedWriter_fields__connected = 
{
  ::acdk::lang::dmi::MiPrivate | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_connected", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz(),
  PipedWriter_MetainfoWrapper::PipedWriter_fields__connected_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo PipedWriter_fields__out = 
{
  ::acdk::lang::dmi::MiPrivate | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_out", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RPipedReader::clazzInfo(),
  PipedWriter_MetainfoWrapper::PipedWriter_fields__out_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo* _PipedWriter_fields[] = 
{
  &PipedWriter_fields__closed,
  &PipedWriter_fields__connected,
  &PipedWriter_fields__out,
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo* PipedWriter_methods_GetClass__L_acdk_lang_RClass__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* PipedWriter_methods_GetClass__L_acdk_lang_RClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PipedWriter_method_GetClass__L_acdk_lang_RClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_3_GetClass", // alternative name of method
  -1, // altlabelHashCode
  PipedWriter_methods_GetClass__L_acdk_lang_RClass__args, // the arguments
  0, //arguments count
  PipedWriter_methods_GetClass__L_acdk_lang_RClass__exceptions, // the declared exceptions
  PipedWriter_MetainfoWrapper::PipedWriter_method_GetClass__L_acdk_lang_RClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* PipedWriter_methods_PipedWriter__LRPipedWriter__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* PipedWriter_methods_PipedWriter__LRPipedWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PipedWriter_method_PipedWriter__LRPipedWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "PipedWriter", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  PipedWriter::clazzInfo(), // return type
  "_0_PipedWriter", // alternative name of method
  -1, // altlabelHashCode
  PipedWriter_methods_PipedWriter__LRPipedWriter__args, // the arguments
  0, //arguments count
  PipedWriter_methods_PipedWriter__LRPipedWriter__exceptions, // the declared exceptions
  PipedWriter_MetainfoWrapper::PipedWriter_method_PipedWriter__LRPipedWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo PipedWriter_methods_PipedWriter_INLRPipedReader__LRPipedWriter__arg_out = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "out", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RPipedReader::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* PipedWriter_methods_PipedWriter_INLRPipedReader__LRPipedWriter__args[] = 
{
  &PipedWriter_methods_PipedWriter_INLRPipedReader__LRPipedWriter__arg_out,
  0
};

::acdk::lang::dmi::ClazzInfo* PipedWriter_methods_PipedWriter_INLRPipedReader__LRPipedWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PipedWriter_method_PipedWriter_INLRPipedReader__LRPipedWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "PipedWriter", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  PipedWriter::clazzInfo(), // return type
  "_1_PipedWriter", // alternative name of method
  -1, // altlabelHashCode
  PipedWriter_methods_PipedWriter_INLRPipedReader__LRPipedWriter__args, // the arguments
  0, //arguments count
  PipedWriter_methods_PipedWriter_INLRPipedReader__LRPipedWriter__exceptions, // the declared exceptions
  PipedWriter_MetainfoWrapper::PipedWriter_method_PipedWriter_INLRPipedReader__LRPipedWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo PipedWriter_methods_connect_INLRPipedReader__V_arg_out = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "out", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RPipedReader::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* PipedWriter_methods_connect_INLRPipedReader__V_args[] = 
{
  &PipedWriter_methods_connect_INLRPipedReader__V_arg_out,
  0
};

::acdk::lang::dmi::ClazzInfo* PipedWriter_methods_connect_INLRPipedReader__V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PipedWriter_method_connect_INLRPipedReader__V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "connect", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_2_connect", // alternative name of method
  -1, // altlabelHashCode
  PipedWriter_methods_connect_INLRPipedReader__V_args, // the arguments
  0, //arguments count
  PipedWriter_methods_connect_INLRPipedReader__V_exceptions, // the declared exceptions
  PipedWriter_MetainfoWrapper::PipedWriter_method_connect_INLRPipedReader__V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodInfo* _PipedWriter_methods[] = 
{
  &PipedWriter_method_GetClass__L_acdk_lang_RClass_,
  &PipedWriter_method_PipedWriter__LRPipedWriter_,
  &PipedWriter_method_PipedWriter_INLRPipedReader__LRPipedWriter_,
  &PipedWriter_method_connect_INLRPipedReader__V,
  0
};


struct PipedWriter_MetaInfoInitializer
{  PipedWriter_MetaInfoInitializer()
  {
    ::acdk::lang::dmi::ClazzInfo* ci = PipedWriter::clazzInfo();
    ci->fields =  _PipedWriter_fields;
    ci->methods =  _PipedWriter_methods;
    ci->_scopeParent = acdk_io_unitInfo.getMetaInfo();
    ci->registerClazzInfo(); // make sure clazzinfo is registered
    ci->_resolveMemberParents();
    ci->flags |= ::acdk::lang::dmi::MiResolved;
  }
};
PipedWriter_MetaInfoInitializer PipedWriter_MetaInfoInitializer_staticinstance__;


} // namespace acdk
} // namespace io

namespace acdk { 
namespace io { 

using namespace acdk::lang;

//static
::acdk::lang::RObject
PrintWriter_create_array(int length)
{
  return new ObjectArrayImpl<RPrintWriter>(length);
}

//static
::acdk::lang::RObject
PrintWriter_create_array_array(int firstLength, int secondLength)
{
  return Nil;//not implemented yet
}
class PrintWriter_MetainfoWrapper 
{

public:
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_GetClass__L_acdk_lang_RClass__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)PrintWriter::GetClass();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_PrintWriter_INLRWriter_INLacdk_locale_REncoder_INLRObject__LRPrintWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new PrintWriter(::acdk::lang::dmi::castTo< RWriter>(args[0], dc), ::acdk::lang::dmi::castTo< acdk::locale::REncoder>(args[1], dc), ::acdk::lang::dmi::castTo< acdk::lang::Object>(args[2], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_PrintWriter_INLRWriter__LRPrintWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new PrintWriter(::acdk::lang::dmi::castTo< RWriter>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_PrintWriter__LRPrintWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new PrintWriter();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_PrintWriter_INLRWriter_INLacdk_locale_REncoder__LRPrintWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new PrintWriter(::acdk::lang::dmi::castTo< RWriter>(args[0], dc), ::acdk::lang::dmi::castTo< acdk::locale::REncoder>(args[1], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_PrintWriter_INLRCharWriter__LRPrintWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)new PrintWriter(::acdk::lang::dmi::castTo< RCharWriter>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_create_instance__LRObject__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    ret = (::acdk::lang::RObject)PrintWriter::create_instance();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_getFlushOnNewLine__Z_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
      ret = This->PrintWriter::getFlushOnNewLine();
    else
      ret = This->getFlushOnNewLine();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_operator_lt_lt_Z_LRPrintWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        ret = (::acdk::lang::RObject)This->PrintWriter::operator_lt_lt(::acdk::lang::dmi::castTo< bool>(args[0], dc));
    else
        ret = (::acdk::lang::RObject)This->operator_lt_lt(::acdk::lang::dmi::castTo< bool>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_operator_lt_lt_C_LRPrintWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        ret = (::acdk::lang::RObject)This->PrintWriter::operator_lt_lt(::acdk::lang::dmi::castTo< char>(args[0], dc));
    else
        ret = (::acdk::lang::RObject)This->operator_lt_lt(::acdk::lang::dmi::castTo< char>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_operator_lt_lt_UC_LRPrintWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        ret = (::acdk::lang::RObject)This->PrintWriter::operator_lt_lt(::acdk::lang::dmi::castTo< ucchar>(args[0], dc));
    else
        ret = (::acdk::lang::RObject)This->operator_lt_lt(::acdk::lang::dmi::castTo< ucchar>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_operator_lt_lt_B_LRPrintWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        ret = (::acdk::lang::RObject)This->PrintWriter::operator_lt_lt(::acdk::lang::dmi::castTo< byte>(args[0], dc));
    else
        ret = (::acdk::lang::RObject)This->operator_lt_lt(::acdk::lang::dmi::castTo< byte>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_operator_lt_lt_S_LRPrintWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        ret = (::acdk::lang::RObject)This->PrintWriter::operator_lt_lt(::acdk::lang::dmi::castTo< short>(args[0], dc));
    else
        ret = (::acdk::lang::RObject)This->operator_lt_lt(::acdk::lang::dmi::castTo< short>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_operator_lt_lt_I_LRPrintWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        ret = (::acdk::lang::RObject)This->PrintWriter::operator_lt_lt(::acdk::lang::dmi::castTo< int>(args[0], dc));
    else
        ret = (::acdk::lang::RObject)This->operator_lt_lt(::acdk::lang::dmi::castTo< int>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_operator_lt_lt_J_LRPrintWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        ret = (::acdk::lang::RObject)This->PrintWriter::operator_lt_lt(::acdk::lang::dmi::castTo< jlong>(args[0], dc));
    else
        ret = (::acdk::lang::RObject)This->operator_lt_lt(::acdk::lang::dmi::castTo< jlong>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_operator_lt_lt_F_LRPrintWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        ret = (::acdk::lang::RObject)This->PrintWriter::operator_lt_lt(::acdk::lang::dmi::castTo< float>(args[0], dc));
    else
        ret = (::acdk::lang::RObject)This->operator_lt_lt(::acdk::lang::dmi::castTo< float>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_operator_lt_lt_D_LRPrintWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        ret = (::acdk::lang::RObject)This->PrintWriter::operator_lt_lt(::acdk::lang::dmi::castTo< double>(args[0], dc));
    else
        ret = (::acdk::lang::RObject)This->operator_lt_lt(::acdk::lang::dmi::castTo< double>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_operator_lt_lt_INLRObject__LRPrintWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        ret = (::acdk::lang::RObject)This->PrintWriter::operator_lt_lt(::acdk::lang::dmi::castTo< acdk::lang::Object>(args[0], dc));
    else
        ret = (::acdk::lang::RObject)This->operator_lt_lt(::acdk::lang::dmi::castTo< acdk::lang::Object>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_operator_lt_lt_INLRString__LRPrintWriter__dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        ret = (::acdk::lang::RObject)This->PrintWriter::operator_lt_lt(::acdk::lang::dmi::castTo< RString>(args[0], dc));
    else
        ret = (::acdk::lang::RObject)This->operator_lt_lt(::acdk::lang::dmi::castTo< RString>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_print_Z_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PrintWriter::print(::acdk::lang::dmi::castTo< bool>(args[0], dc));
    else
        This->print(::acdk::lang::dmi::castTo< bool>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_print_C_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PrintWriter::print(::acdk::lang::dmi::castTo< char>(args[0], dc));
    else
        This->print(::acdk::lang::dmi::castTo< char>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_print_UC_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PrintWriter::print(::acdk::lang::dmi::castTo< ucchar>(args[0], dc));
    else
        This->print(::acdk::lang::dmi::castTo< ucchar>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_print_B_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PrintWriter::print(::acdk::lang::dmi::castTo< byte>(args[0], dc));
    else
        This->print(::acdk::lang::dmi::castTo< byte>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_print_S_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PrintWriter::print(::acdk::lang::dmi::castTo< short>(args[0], dc));
    else
        This->print(::acdk::lang::dmi::castTo< short>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_print_I_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PrintWriter::print(::acdk::lang::dmi::castTo< int>(args[0], dc));
    else
        This->print(::acdk::lang::dmi::castTo< int>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_print_J_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PrintWriter::print(::acdk::lang::dmi::castTo< jlong>(args[0], dc));
    else
        This->print(::acdk::lang::dmi::castTo< jlong>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_print_F_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PrintWriter::print(::acdk::lang::dmi::castTo< float>(args[0], dc));
    else
        This->print(::acdk::lang::dmi::castTo< float>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_print_D_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PrintWriter::print(::acdk::lang::dmi::castTo< double>(args[0], dc));
    else
        This->print(::acdk::lang::dmi::castTo< double>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_print_INLRObject__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PrintWriter::print(::acdk::lang::dmi::castTo< acdk::lang::Object>(args[0], dc));
    else
        This->print(::acdk::lang::dmi::castTo< acdk::lang::Object>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_print_INLRString__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PrintWriter::print(::acdk::lang::dmi::castTo< RString>(args[0], dc));
    else
        This->print(::acdk::lang::dmi::castTo< RString>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_printQuoted_INLRString__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PrintWriter::printQuoted(::acdk::lang::dmi::castTo< RString>(args[0], dc));
    else
        This->printQuoted(::acdk::lang::dmi::castTo< RString>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_println__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PrintWriter::println();
    else
        This->println();
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_println_Z_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PrintWriter::println(::acdk::lang::dmi::castTo< bool>(args[0], dc));
    else
        This->println(::acdk::lang::dmi::castTo< bool>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_println_C_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PrintWriter::println(::acdk::lang::dmi::castTo< char>(args[0], dc));
    else
        This->println(::acdk::lang::dmi::castTo< char>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_println_UC_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PrintWriter::println(::acdk::lang::dmi::castTo< ucchar>(args[0], dc));
    else
        This->println(::acdk::lang::dmi::castTo< ucchar>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_println_B_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PrintWriter::println(::acdk::lang::dmi::castTo< byte>(args[0], dc));
    else
        This->println(::acdk::lang::dmi::castTo< byte>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_println_S_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PrintWriter::println(::acdk::lang::dmi::castTo< short>(args[0], dc));
    else
        This->println(::acdk::lang::dmi::castTo< short>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_println_INLRString__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PrintWriter::println(::acdk::lang::dmi::castTo< RString>(args[0], dc));
    else
        This->println(::acdk::lang::dmi::castTo< RString>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_println_D_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PrintWriter::println(::acdk::lang::dmi::castTo< double>(args[0], dc));
    else
        This->println(::acdk::lang::dmi::castTo< double>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_println_INLRObject__V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PrintWriter::println(::acdk::lang::dmi::castTo< acdk::lang::Object>(args[0], dc));
    else
        This->println(::acdk::lang::dmi::castTo< acdk::lang::Object>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_println_I_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PrintWriter::println(::acdk::lang::dmi::castTo< int>(args[0], dc));
    else
        This->println(::acdk::lang::dmi::castTo< int>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_println_J_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PrintWriter::println(::acdk::lang::dmi::castTo< jlong>(args[0], dc));
    else
        This->println(::acdk::lang::dmi::castTo< jlong>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_println_F_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PrintWriter::println(::acdk::lang::dmi::castTo< float>(args[0], dc));
    else
        This->println(::acdk::lang::dmi::castTo< float>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzMethodInfo* 
  PrintWriter_method_setFlushOnNewLine_Z_V_dispatch(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& ret, ::acdk::lang::dmi::ScriptVarArray& args, ::acdk::lang::dmi::DmiClient& dc, IN(::acdk::lang::RStringArray) namedArgs, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzMethodInfo* methinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiIvNoWeakBind)
        This->PrintWriter::setFlushOnNewLine(::acdk::lang::dmi::castTo< bool>(args[0], dc));
    else
        This->setFlushOnNewLine(::acdk::lang::dmi::castTo< bool>(args[0], dc));
    return methinf;
  }
  static const ::acdk::lang::dmi::ClazzFieldInfo*
  PrintWriter_fields__flushOnNewLine_accessor(::acdk::lang::Object* This_, IN(::acdk::lang::RString) fname, ::acdk::lang::dmi::ScriptVar& var, ::acdk::lang::dmi::DmiClient& dc, int flags, const ::acdk::lang::dmi::ClazzInfo* clazzinfo, const ::acdk::lang::dmi::ClazzFieldInfo* fieldinf)
  {
    PrintWriter* This = dmi_cast<PrintWriter>(This_);
    if (flags & ::acdk::lang::dmi::MiReadOnly)
     var = ::acdk::lang::getScriptVarOf(This->_flushOnNewLine, flags);
    else
      This->_flushOnNewLine = ::acdk::lang::dmi::castTo< bool>(var, dc);
    return fieldinf;
  }
};

::acdk::lang::dmi::ClazzFieldInfo PrintWriter_fields__flushOnNewLine = 
{
  ::acdk::lang::dmi::MiProtected | ::acdk::lang::dmi::MiFieldInfo,
  0, //AttributesRes
  "_flushOnNewLine", // name
   -1, // hashCode
   "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz(),
  PrintWriter_MetainfoWrapper::PrintWriter_fields__flushOnNewLine_accessor, // read/write access to this fields
  (void*)0 // address of field
};

::acdk::lang::dmi::ClazzFieldInfo* _PrintWriter_fields[] = 
{
  &PrintWriter_fields__flushOnNewLine,
  0
};

::acdk::lang::dmi::ClazzMethodArgInfo* PrintWriter_methods_GetClass__L_acdk_lang_RClass__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* PrintWriter_methods_GetClass__L_acdk_lang_RClass__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PrintWriter_method_GetClass__L_acdk_lang_RClass_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo,// class flags, like static, 
  0, //AttributesRes
  "GetClass", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::RClass::clazzInfo(), // return type
  "_J_GetClass", // alternative name of method
  -1, // altlabelHashCode
  PrintWriter_methods_GetClass__L_acdk_lang_RClass__args, // the arguments
  0, //arguments count
  PrintWriter_methods_GetClass__L_acdk_lang_RClass__exceptions, // the declared exceptions
  PrintWriter_MetainfoWrapper::PrintWriter_method_GetClass__L_acdk_lang_RClass__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo PrintWriter_methods_PrintWriter_INLRWriter_INLacdk_locale_REncoder_INLRObject__LRPrintWriter__arg_out = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "out", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RWriter::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo PrintWriter_methods_PrintWriter_INLRWriter_INLacdk_locale_REncoder_INLRObject__LRPrintWriter__arg_encoder = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "encoder", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  acdk::locale::REncoder::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo PrintWriter_methods_PrintWriter_INLRWriter_INLacdk_locale_REncoder_INLRObject__LRPrintWriter__arg_lock = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "lock", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  acdk::lang::Object::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* PrintWriter_methods_PrintWriter_INLRWriter_INLacdk_locale_REncoder_INLRObject__LRPrintWriter__args[] = 
{
  &PrintWriter_methods_PrintWriter_INLRWriter_INLacdk_locale_REncoder_INLRObject__LRPrintWriter__arg_out,
  &PrintWriter_methods_PrintWriter_INLRWriter_INLacdk_locale_REncoder_INLRObject__LRPrintWriter__arg_encoder,
  &PrintWriter_methods_PrintWriter_INLRWriter_INLacdk_locale_REncoder_INLRObject__LRPrintWriter__arg_lock,
  0
};

::acdk::lang::dmi::ClazzInfo* PrintWriter_methods_PrintWriter_INLRWriter_INLacdk_locale_REncoder_INLRObject__LRPrintWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PrintWriter_method_PrintWriter_INLRWriter_INLacdk_locale_REncoder_INLRObject__LRPrintWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "PrintWriter", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  PrintWriter::clazzInfo(), // return type
  "_2_PrintWriter", // alternative name of method
  -1, // altlabelHashCode
  PrintWriter_methods_PrintWriter_INLRWriter_INLacdk_locale_REncoder_INLRObject__LRPrintWriter__args, // the arguments
  0, //arguments count
  PrintWriter_methods_PrintWriter_INLRWriter_INLacdk_locale_REncoder_INLRObject__LRPrintWriter__exceptions, // the declared exceptions
  PrintWriter_MetainfoWrapper::PrintWriter_method_PrintWriter_INLRWriter_INLacdk_locale_REncoder_INLRObject__LRPrintWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo PrintWriter_methods_PrintWriter_INLRWriter__LRPrintWriter__arg_out = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "out", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RWriter::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* PrintWriter_methods_PrintWriter_INLRWriter__LRPrintWriter__args[] = 
{
  &PrintWriter_methods_PrintWriter_INLRWriter__LRPrintWriter__arg_out,
  0
};

::acdk::lang::dmi::ClazzInfo* PrintWriter_methods_PrintWriter_INLRWriter__LRPrintWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PrintWriter_method_PrintWriter_INLRWriter__LRPrintWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor,// class flags, like static, 
  0, //AttributesRes
  "PrintWriter", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  PrintWriter::clazzInfo(), // return type
  "_3_PrintWriter", // alternative name of method
  -1, // altlabelHashCode
  PrintWriter_methods_PrintWriter_INLRWriter__LRPrintWriter__args, // the arguments
  0, //arguments count
  PrintWriter_methods_PrintWriter_INLRWriter__LRPrintWriter__exceptions, // the declared exceptions
  PrintWriter_MetainfoWrapper::PrintWriter_method_PrintWriter_INLRWriter__LRPrintWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* PrintWriter_methods_PrintWriter__LRPrintWriter__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* PrintWriter_methods_PrintWriter__LRPrintWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PrintWriter_method_PrintWriter__LRPrintWriter_ = 
{
  ::acdk::lang::dmi::MiProtected | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "PrintWriter", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  PrintWriter::clazzInfo(), // return type
  "_0_PrintWriter", // alternative name of method
  -1, // altlabelHashCode
  PrintWriter_methods_PrintWriter__LRPrintWriter__args, // the arguments
  0, //arguments count
  PrintWriter_methods_PrintWriter__LRPrintWriter__exceptions, // the declared exceptions
  PrintWriter_MetainfoWrapper::PrintWriter_method_PrintWriter__LRPrintWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo PrintWriter_methods_PrintWriter_INLRWriter_INLacdk_locale_REncoder__LRPrintWriter__arg_out = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "out", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RWriter::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo PrintWriter_methods_PrintWriter_INLRWriter_INLacdk_locale_REncoder__LRPrintWriter__arg_encoder = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn | ::acdk::lang::dmi::MiAiHasDefaultInit, 
  0, //AttributesRes
  "encoder", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  acdk::locale::REncoder::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* PrintWriter_methods_PrintWriter_INLRWriter_INLacdk_locale_REncoder__LRPrintWriter__args[] = 
{
  &PrintWriter_methods_PrintWriter_INLRWriter_INLacdk_locale_REncoder__LRPrintWriter__arg_out,
  &PrintWriter_methods_PrintWriter_INLRWriter_INLacdk_locale_REncoder__LRPrintWriter__arg_encoder,
  0
};

::acdk::lang::dmi::ClazzInfo* PrintWriter_methods_PrintWriter_INLRWriter_INLacdk_locale_REncoder__LRPrintWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PrintWriter_method_PrintWriter_INLRWriter_INLacdk_locale_REncoder__LRPrintWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor,// class flags, like static, 
  0, //AttributesRes
  "PrintWriter", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  PrintWriter::clazzInfo(), // return type
  "_4_PrintWriter", // alternative name of method
  -1, // altlabelHashCode
  PrintWriter_methods_PrintWriter_INLRWriter_INLacdk_locale_REncoder__LRPrintWriter__args, // the arguments
  0, //arguments count
  PrintWriter_methods_PrintWriter_INLRWriter_INLacdk_locale_REncoder__LRPrintWriter__exceptions, // the declared exceptions
  PrintWriter_MetainfoWrapper::PrintWriter_method_PrintWriter_INLRWriter_INLacdk_locale_REncoder__LRPrintWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo PrintWriter_methods_PrintWriter_INLRCharWriter__LRPrintWriter__arg_out = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "out", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RCharWriter::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* PrintWriter_methods_PrintWriter_INLRCharWriter__LRPrintWriter__args[] = 
{
  &PrintWriter_methods_PrintWriter_INLRCharWriter__LRPrintWriter__arg_out,
  0
};

::acdk::lang::dmi::ClazzInfo* PrintWriter_methods_PrintWriter_INLRCharWriter__LRPrintWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PrintWriter_method_PrintWriter_INLRCharWriter__LRPrintWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiConstructor | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "PrintWriter", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  PrintWriter::clazzInfo(), // return type
  "_5_PrintWriter", // alternative name of method
  -1, // altlabelHashCode
  PrintWriter_methods_PrintWriter_INLRCharWriter__LRPrintWriter__args, // the arguments
  0, //arguments count
  PrintWriter_methods_PrintWriter_INLRCharWriter__LRPrintWriter__exceptions, // the declared exceptions
  PrintWriter_MetainfoWrapper::PrintWriter_method_PrintWriter_INLRCharWriter__LRPrintWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* PrintWriter_methods_create_instance__LRObject__args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* PrintWriter_methods_create_instance__LRObject__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PrintWriter_method_create_instance__LRObject_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiStatic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "create_instance", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  acdk::lang::Object::clazzInfo(), // return type
  "_1_create_instance", // alternative name of method
  -1, // altlabelHashCode
  PrintWriter_methods_create_instance__LRObject__args, // the arguments
  0, //arguments count
  PrintWriter_methods_create_instance__LRObject__exceptions, // the declared exceptions
  PrintWriter_MetainfoWrapper::PrintWriter_method_create_instance__LRObject__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo* PrintWriter_methods_getFlushOnNewLine__Z_args[] = 
{
  0
};

::acdk::lang::dmi::ClazzInfo* PrintWriter_methods_getFlushOnNewLine__Z_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PrintWriter_method_getFlushOnNewLine__Z = 
{
  ::acdk::lang::dmi::MiReadOnly | ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "getFlushOnNewLine", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz(), // return type
  "_H_getFlushOnNewLine", // alternative name of method
  -1, // altlabelHashCode
  PrintWriter_methods_getFlushOnNewLine__Z_args, // the arguments
  0, //arguments count
  PrintWriter_methods_getFlushOnNewLine__Z_exceptions, // the declared exceptions
  PrintWriter_MetainfoWrapper::PrintWriter_method_getFlushOnNewLine__Z_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo PrintWriter_methods_operator_lt_lt_Z_LRPrintWriter__arg_c = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "c", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* PrintWriter_methods_operator_lt_lt_Z_LRPrintWriter__args[] = 
{
  &PrintWriter_methods_operator_lt_lt_Z_LRPrintWriter__arg_c,
  0
};

::acdk::lang::dmi::ClazzInfo* PrintWriter_methods_operator_lt_lt_Z_LRPrintWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PrintWriter_method_operator_lt_lt_Z_LRPrintWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "operator_lt_lt", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RPrintWriter::clazzInfo(), // return type
  "_v_operator_lt_lt", // alternative name of method
  -1, // altlabelHashCode
  PrintWriter_methods_operator_lt_lt_Z_LRPrintWriter__args, // the arguments
  0, //arguments count
  PrintWriter_methods_operator_lt_lt_Z_LRPrintWriter__exceptions, // the declared exceptions
  PrintWriter_MetainfoWrapper::PrintWriter_method_operator_lt_lt_Z_LRPrintWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo PrintWriter_methods_operator_lt_lt_C_LRPrintWriter__arg_c = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "c", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getCharClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* PrintWriter_methods_operator_lt_lt_C_LRPrintWriter__args[] = 
{
  &PrintWriter_methods_operator_lt_lt_C_LRPrintWriter__arg_c,
  0
};

::acdk::lang::dmi::ClazzInfo* PrintWriter_methods_operator_lt_lt_C_LRPrintWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PrintWriter_method_operator_lt_lt_C_LRPrintWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "operator_lt_lt", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RPrintWriter::clazzInfo(), // return type
  "_w_operator_lt_lt", // alternative name of method
  -1, // altlabelHashCode
  PrintWriter_methods_operator_lt_lt_C_LRPrintWriter__args, // the arguments
  0, //arguments count
  PrintWriter_methods_operator_lt_lt_C_LRPrintWriter__exceptions, // the declared exceptions
  PrintWriter_MetainfoWrapper::PrintWriter_method_operator_lt_lt_C_LRPrintWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo PrintWriter_methods_operator_lt_lt_UC_LRPrintWriter__arg_c = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "c", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getUcCharClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* PrintWriter_methods_operator_lt_lt_UC_LRPrintWriter__args[] = 
{
  &PrintWriter_methods_operator_lt_lt_UC_LRPrintWriter__arg_c,
  0
};

::acdk::lang::dmi::ClazzInfo* PrintWriter_methods_operator_lt_lt_UC_LRPrintWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PrintWriter_method_operator_lt_lt_UC_LRPrintWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "operator_lt_lt", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RPrintWriter::clazzInfo(), // return type
  "_x_operator_lt_lt", // alternative name of method
  -1, // altlabelHashCode
  PrintWriter_methods_operator_lt_lt_UC_LRPrintWriter__args, // the arguments
  0, //arguments count
  PrintWriter_methods_operator_lt_lt_UC_LRPrintWriter__exceptions, // the declared exceptions
  PrintWriter_MetainfoWrapper::PrintWriter_method_operator_lt_lt_UC_LRPrintWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo PrintWriter_methods_operator_lt_lt_B_LRPrintWriter__arg_c = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "c", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getByteClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* PrintWriter_methods_operator_lt_lt_B_LRPrintWriter__args[] = 
{
  &PrintWriter_methods_operator_lt_lt_B_LRPrintWriter__arg_c,
  0
};

::acdk::lang::dmi::ClazzInfo* PrintWriter_methods_operator_lt_lt_B_LRPrintWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PrintWriter_method_operator_lt_lt_B_LRPrintWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "operator_lt_lt", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RPrintWriter::clazzInfo(), // return type
  "_y_operator_lt_lt", // alternative name of method
  -1, // altlabelHashCode
  PrintWriter_methods_operator_lt_lt_B_LRPrintWriter__args, // the arguments
  0, //arguments count
  PrintWriter_methods_operator_lt_lt_B_LRPrintWriter__exceptions, // the declared exceptions
  PrintWriter_MetainfoWrapper::PrintWriter_method_operator_lt_lt_B_LRPrintWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo PrintWriter_methods_operator_lt_lt_S_LRPrintWriter__arg_c = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "c", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getShortClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* PrintWriter_methods_operator_lt_lt_S_LRPrintWriter__args[] = 
{
  &PrintWriter_methods_operator_lt_lt_S_LRPrintWriter__arg_c,
  0
};

::acdk::lang::dmi::ClazzInfo* PrintWriter_methods_operator_lt_lt_S_LRPrintWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PrintWriter_method_operator_lt_lt_S_LRPrintWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "operator_lt_lt", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RPrintWriter::clazzInfo(), // return type
  "_z_operator_lt_lt", // alternative name of method
  -1, // altlabelHashCode
  PrintWriter_methods_operator_lt_lt_S_LRPrintWriter__args, // the arguments
  0, //arguments count
  PrintWriter_methods_operator_lt_lt_S_LRPrintWriter__exceptions, // the declared exceptions
  PrintWriter_MetainfoWrapper::PrintWriter_method_operator_lt_lt_S_LRPrintWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo PrintWriter_methods_operator_lt_lt_I_LRPrintWriter__arg_c = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "c", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* PrintWriter_methods_operator_lt_lt_I_LRPrintWriter__args[] = 
{
  &PrintWriter_methods_operator_lt_lt_I_LRPrintWriter__arg_c,
  0
};

::acdk::lang::dmi::ClazzInfo* PrintWriter_methods_operator_lt_lt_I_LRPrintWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PrintWriter_method_operator_lt_lt_I_LRPrintWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "operator_lt_lt", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RPrintWriter::clazzInfo(), // return type
  "_A_operator_lt_lt", // alternative name of method
  -1, // altlabelHashCode
  PrintWriter_methods_operator_lt_lt_I_LRPrintWriter__args, // the arguments
  0, //arguments count
  PrintWriter_methods_operator_lt_lt_I_LRPrintWriter__exceptions, // the declared exceptions
  PrintWriter_MetainfoWrapper::PrintWriter_method_operator_lt_lt_I_LRPrintWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo PrintWriter_methods_operator_lt_lt_J_LRPrintWriter__arg_c = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "c", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getLongClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* PrintWriter_methods_operator_lt_lt_J_LRPrintWriter__args[] = 
{
  &PrintWriter_methods_operator_lt_lt_J_LRPrintWriter__arg_c,
  0
};

::acdk::lang::dmi::ClazzInfo* PrintWriter_methods_operator_lt_lt_J_LRPrintWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PrintWriter_method_operator_lt_lt_J_LRPrintWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "operator_lt_lt", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RPrintWriter::clazzInfo(), // return type
  "_B_operator_lt_lt", // alternative name of method
  -1, // altlabelHashCode
  PrintWriter_methods_operator_lt_lt_J_LRPrintWriter__args, // the arguments
  0, //arguments count
  PrintWriter_methods_operator_lt_lt_J_LRPrintWriter__exceptions, // the declared exceptions
  PrintWriter_MetainfoWrapper::PrintWriter_method_operator_lt_lt_J_LRPrintWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo PrintWriter_methods_operator_lt_lt_F_LRPrintWriter__arg_c = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "c", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getFloatClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* PrintWriter_methods_operator_lt_lt_F_LRPrintWriter__args[] = 
{
  &PrintWriter_methods_operator_lt_lt_F_LRPrintWriter__arg_c,
  0
};

::acdk::lang::dmi::ClazzInfo* PrintWriter_methods_operator_lt_lt_F_LRPrintWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PrintWriter_method_operator_lt_lt_F_LRPrintWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "operator_lt_lt", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RPrintWriter::clazzInfo(), // return type
  "_C_operator_lt_lt", // alternative name of method
  -1, // altlabelHashCode
  PrintWriter_methods_operator_lt_lt_F_LRPrintWriter__args, // the arguments
  0, //arguments count
  PrintWriter_methods_operator_lt_lt_F_LRPrintWriter__exceptions, // the declared exceptions
  PrintWriter_MetainfoWrapper::PrintWriter_method_operator_lt_lt_F_LRPrintWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo PrintWriter_methods_operator_lt_lt_D_LRPrintWriter__arg_c = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "c", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getDoubleClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* PrintWriter_methods_operator_lt_lt_D_LRPrintWriter__args[] = 
{
  &PrintWriter_methods_operator_lt_lt_D_LRPrintWriter__arg_c,
  0
};

::acdk::lang::dmi::ClazzInfo* PrintWriter_methods_operator_lt_lt_D_LRPrintWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PrintWriter_method_operator_lt_lt_D_LRPrintWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "operator_lt_lt", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RPrintWriter::clazzInfo(), // return type
  "_D_operator_lt_lt", // alternative name of method
  -1, // altlabelHashCode
  PrintWriter_methods_operator_lt_lt_D_LRPrintWriter__args, // the arguments
  0, //arguments count
  PrintWriter_methods_operator_lt_lt_D_LRPrintWriter__exceptions, // the declared exceptions
  PrintWriter_MetainfoWrapper::PrintWriter_method_operator_lt_lt_D_LRPrintWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo PrintWriter_methods_operator_lt_lt_INLRObject__LRPrintWriter__arg_c = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "c", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  acdk::lang::Object::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* PrintWriter_methods_operator_lt_lt_INLRObject__LRPrintWriter__args[] = 
{
  &PrintWriter_methods_operator_lt_lt_INLRObject__LRPrintWriter__arg_c,
  0
};

::acdk::lang::dmi::ClazzInfo* PrintWriter_methods_operator_lt_lt_INLRObject__LRPrintWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PrintWriter_method_operator_lt_lt_INLRObject__LRPrintWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "operator_lt_lt", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RPrintWriter::clazzInfo(), // return type
  "_E_operator_lt_lt", // alternative name of method
  -1, // altlabelHashCode
  PrintWriter_methods_operator_lt_lt_INLRObject__LRPrintWriter__args, // the arguments
  0, //arguments count
  PrintWriter_methods_operator_lt_lt_INLRObject__LRPrintWriter__exceptions, // the declared exceptions
  PrintWriter_MetainfoWrapper::PrintWriter_method_operator_lt_lt_INLRObject__LRPrintWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo PrintWriter_methods_operator_lt_lt_INLRString__LRPrintWriter__arg_c = 
{
  ::acdk::lang::dmi::MiMethodArgInfo | ::acdk::lang::dmi::MiAiIn, 
  0, //AttributesRes
  "c", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RString::clazzInfo() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* PrintWriter_methods_operator_lt_lt_INLRString__LRPrintWriter__args[] = 
{
  &PrintWriter_methods_operator_lt_lt_INLRString__LRPrintWriter__arg_c,
  0
};

::acdk::lang::dmi::ClazzInfo* PrintWriter_methods_operator_lt_lt_INLRString__LRPrintWriter__exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PrintWriter_method_operator_lt_lt_INLRString__LRPrintWriter_ = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "operator_lt_lt", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  RPrintWriter::clazzInfo(), // return type
  "_F_operator_lt_lt", // alternative name of method
  -1, // altlabelHashCode
  PrintWriter_methods_operator_lt_lt_INLRString__LRPrintWriter__args, // the arguments
  0, //arguments count
  PrintWriter_methods_operator_lt_lt_INLRString__LRPrintWriter__exceptions, // the declared exceptions
  PrintWriter_MetainfoWrapper::PrintWriter_method_operator_lt_lt_INLRString__LRPrintWriter__dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo PrintWriter_methods_print_Z_V_arg_c = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "c", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getBoolClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* PrintWriter_methods_print_Z_V_args[] = 
{
  &PrintWriter_methods_print_Z_V_arg_c,
  0
};

::acdk::lang::dmi::ClazzInfo* PrintWriter_methods_print_Z_V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PrintWriter_method_print_Z_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "print", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_6_print", // alternative name of method
  -1, // altlabelHashCode
  PrintWriter_methods_print_Z_V_args, // the arguments
  0, //arguments count
  PrintWriter_methods_print_Z_V_exceptions, // the declared exceptions
  PrintWriter_MetainfoWrapper::PrintWriter_method_print_Z_V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo PrintWriter_methods_print_C_V_arg_c = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "c", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getCharClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* PrintWriter_methods_print_C_V_args[] = 
{
  &PrintWriter_methods_print_C_V_arg_c,
  0
};

::acdk::lang::dmi::ClazzInfo* PrintWriter_methods_print_C_V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PrintWriter_method_print_C_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "print", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_7_print", // alternative name of method
  -1, // altlabelHashCode
  PrintWriter_methods_print_C_V_args, // the arguments
  0, //arguments count
  PrintWriter_methods_print_C_V_exceptions, // the declared exceptions
  PrintWriter_MetainfoWrapper::PrintWriter_method_print_C_V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo PrintWriter_methods_print_UC_V_arg_c = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "c", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getUcCharClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* PrintWriter_methods_print_UC_V_args[] = 
{
  &PrintWriter_methods_print_UC_V_arg_c,
  0
};

::acdk::lang::dmi::ClazzInfo* PrintWriter_methods_print_UC_V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PrintWriter_method_print_UC_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "print", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_8_print", // alternative name of method
  -1, // altlabelHashCode
  PrintWriter_methods_print_UC_V_args, // the arguments
  0, //arguments count
  PrintWriter_methods_print_UC_V_exceptions, // the declared exceptions
  PrintWriter_MetainfoWrapper::PrintWriter_method_print_UC_V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo PrintWriter_methods_print_B_V_arg_c = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "c", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getByteClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* PrintWriter_methods_print_B_V_args[] = 
{
  &PrintWriter_methods_print_B_V_arg_c,
  0
};

::acdk::lang::dmi::ClazzInfo* PrintWriter_methods_print_B_V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PrintWriter_method_print_B_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "print", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_9_print", // alternative name of method
  -1, // altlabelHashCode
  PrintWriter_methods_print_B_V_args, // the arguments
  0, //arguments count
  PrintWriter_methods_print_B_V_exceptions, // the declared exceptions
  PrintWriter_MetainfoWrapper::PrintWriter_method_print_B_V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo PrintWriter_methods_print_S_V_arg_c = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "c", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getShortClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* PrintWriter_methods_print_S_V_args[] = 
{
  &PrintWriter_methods_print_S_V_arg_c,
  0
};

::acdk::lang::dmi::ClazzInfo* PrintWriter_methods_print_S_V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PrintWriter_method_print_S_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "print", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_a_print", // alternative name of method
  -1, // altlabelHashCode
  PrintWriter_methods_print_S_V_args, // the arguments
  0, //arguments count
  PrintWriter_methods_print_S_V_exceptions, // the declared exceptions
  PrintWriter_MetainfoWrapper::PrintWriter_method_print_S_V_dispatch, // invoke this method
  ::acdk::lang::dmi::ClazzMethodInfo::DefaultDispatchThrowableFunc, // dispatch throwing exceptions
  0 // cached method signature hash
};

::acdk::lang::dmi::ClazzMethodArgInfo PrintWriter_methods_print_I_V_arg_c = 
{
  ::acdk::lang::dmi::MiMethodArgInfo, 
  0, //AttributesRes
  "c", // name of arg
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getIntClazz() // type or arg
};

::acdk::lang::dmi::ClazzMethodArgInfo* PrintWriter_methods_print_I_V_args[] = 
{
  &PrintWriter_methods_print_I_V_arg_c,
  0
};

::acdk::lang::dmi::ClazzInfo* PrintWriter_methods_print_I_V_exceptions[] =
{
  0
};

::acdk::lang::dmi::ClazzMethodInfo PrintWriter_method_print_I_V = 
{
  ::acdk::lang::dmi::MiPublic | ::acdk::lang::dmi::MiMethodInfo | ::acdk::lang::dmi::MiMiVirtual | ::acdk::lang::dmi::MiMiOrgPoly,// class flags, like static, 
  0, //AttributesRes
  "print", // name of method
  -1, // hashCode
  "", // ns
  0, // _scopeParent
  0, // _nextSibling
  ::acdk::lang::dmi::ClazzInfo::getVoidClazz(), // return type
  "_b_print", // alternative name of method
  -1, // altlabelHashCode
  PrintWriter_methods_print_I_V_args, // the arguments
  0, //arguments count
  PrintWriter_methods_print_I_V_exceptions,