From 8c8aa6b07e595cfac56838b5964ab3e96051f1b2 Mon Sep 17 00:00:00 2001 From: "Roberto C. Sanchez" Date: Sat, 29 Mar 2014 10:53:49 -0400 Subject: Imported Upstream version 1.5.7 --- bindings/bcppmake/MainCLXTest.cpp | 16 + bindings/bcppmake/MainCLXTest.dfm | 16 + bindings/bcppmake/MainCLXTest.h | 21 + bindings/bcppmake/MainTest.cpp | 37 + bindings/bcppmake/MainTest.dfm | 36 + bindings/bcppmake/MainTest.h | 25 + bindings/bcppmake/clxtest.bpr | 93 + bindings/bcppmake/clxtest.cpp | 24 + bindings/bcppmake/sword.bpf | 10 + bindings/bcppmake/sword.bpr | 111 + bindings/bcppmake/sword.c | 31 + bindings/bcppmake/sworddll.bpg | 33 + bindings/bcppmake/test.cpp | 23 + bindings/clx/Sword.pas | 40 +- bindings/corba/java/Makefile | 19 + .../java/src/org/crosswire/sword/orb/SwordOrb.java | 143 + .../corba/java/src/org/crosswire/util/Base64.java | 1238 +++ bindings/corba/java/swordorb.jpx | 41 + bindings/corba/java/swordorb.jpx.local | 10 + bindings/corba/java/testclient | 2 + bindings/corba/orbitcpp/Makefile | 48 + bindings/corba/orbitcpp/server.cpp | 45 + bindings/corba/orbitcpp/swordorb-impl.cpp | 231 + bindings/corba/orbitcpp/swordorb-impl.hpp | 67 + bindings/corba/orbitcpp/testclient.cpp | 61 + bindings/corba/swordorb.idl | 80 + bindings/flatapi.cpp | 77 +- bindings/gsoap/Makefile | 12 + bindings/gsoap/gsoapsword.cpp | 142 + bindings/gsoap/gsoapsword.h | 65 + bindings/gsoap/include/stdsoap.h | 493 + bindings/gsoap/soapcpp | Bin 0 -> 534312 bytes bindings/gsoap/stdsoap.o | Bin 0 -> 79640 bytes bindings/gsoap/testclient.cpp | 76 + bindings/perl/Changes | 18 + bindings/perl/Makefile.PL | 91 + bindings/perl/README | 36 + bindings/perl/Sword.pm | 1087 ++ bindings/perl/Sword.xs | 254 + bindings/perl/perlobject.map | 106 + bindings/perl/test.pl | 163 + bindings/perl/typemap | 3 + bindings/swig/Makefile.am | 95 + bindings/swig/Makefile.oth | 22 + bindings/swig/Makefile.swig | 578 ++ bindings/swig/examples/mod2zmod.pl | 84 + bindings/swig/listkey.i | 92 + bindings/swig/localemgr.i | 25 + bindings/swig/lzsscompress.i | 12 + bindings/swig/package/Makefile.am | 96 + bindings/swig/package/README.cvs | 10 + bindings/swig/package/autogen.sh | 16 + bindings/swig/package/configure.ac | 41 + bindings/swig/package/perl.m4 | 71 + bindings/swig/package/php4.m4 | 33 + bindings/swig/package/python.m4 | 117 + bindings/swig/package/swig.m4 | 29 + bindings/swig/package/sword.m4 | 172 + bindings/swig/package/tcl.m4 | 114 + bindings/swig/package/zlib.m4 | 111 + bindings/swig/perl/Changes | 6 + bindings/swig/perl/README | 35 + bindings/swig/perl/Sword.cxx | 10209 ++++++++++++++++++ bindings/swig/perl/Sword.pm | 1426 +++ bindings/swig/perl/test.pl | 17 + bindings/swig/php/Sword.cpp | 10396 +++++++++++++++++++ bindings/swig/php/Sword.php | 24 + bindings/swig/php/php_Sword.h | 261 + bindings/swig/python/README.txt | 1 + bindings/swig/python/Sword.cxx | 5062 +++++++++ bindings/swig/python/Sword.py | 796 ++ bindings/swig/rawcom.i | 15 + bindings/swig/rawgenbook.i | 22 + bindings/swig/rawld.i | 13 + bindings/swig/rawld4.i | 13 + bindings/swig/rawtext.i | 12 + bindings/swig/swbuf.i | 65 + bindings/swig/swcom.i | 11 + bindings/swig/swcompress.i | 17 + bindings/swig/swconfig.i | 43 + bindings/swig/swfiltermgr.i | 22 + bindings/swig/swgenbook.i | 11 + bindings/swig/swig-perl.doxygen | 177 + bindings/swig/swkey.i | 75 + bindings/swig/swld.i | 11 + bindings/swig/swmgr.i | 59 + bindings/swig/swmodule.i | 100 + bindings/swig/sword.i | 52 + bindings/swig/sword.pl | 104 + bindings/swig/swposition.i | 15 + bindings/swig/swtext.i | 11 + bindings/swig/treekey.i | 48 + bindings/swig/treekeyidx.i | 19 + bindings/swig/versekey.i | 128 + bindings/swig/zcom.i | 13 + bindings/swig/zipcompress.i | 12 + bindings/swig/zld.i | 13 + bindings/swig/ztext.i | 13 + 98 files changed, 36117 insertions(+), 52 deletions(-) create mode 100644 bindings/bcppmake/MainCLXTest.cpp create mode 100644 bindings/bcppmake/MainCLXTest.dfm create mode 100644 bindings/bcppmake/MainCLXTest.h create mode 100644 bindings/bcppmake/MainTest.cpp create mode 100644 bindings/bcppmake/MainTest.dfm create mode 100644 bindings/bcppmake/MainTest.h create mode 100644 bindings/bcppmake/clxtest.bpr create mode 100644 bindings/bcppmake/clxtest.cpp create mode 100644 bindings/bcppmake/sword.bpf create mode 100644 bindings/bcppmake/sword.bpr create mode 100644 bindings/bcppmake/sword.c create mode 100644 bindings/bcppmake/sworddll.bpg create mode 100644 bindings/bcppmake/test.cpp create mode 100644 bindings/corba/java/Makefile create mode 100644 bindings/corba/java/src/org/crosswire/sword/orb/SwordOrb.java create mode 100644 bindings/corba/java/src/org/crosswire/util/Base64.java create mode 100644 bindings/corba/java/swordorb.jpx create mode 100644 bindings/corba/java/swordorb.jpx.local create mode 100755 bindings/corba/java/testclient create mode 100644 bindings/corba/orbitcpp/Makefile create mode 100644 bindings/corba/orbitcpp/server.cpp create mode 100644 bindings/corba/orbitcpp/swordorb-impl.cpp create mode 100644 bindings/corba/orbitcpp/swordorb-impl.hpp create mode 100644 bindings/corba/orbitcpp/testclient.cpp create mode 100644 bindings/corba/swordorb.idl create mode 100644 bindings/gsoap/Makefile create mode 100644 bindings/gsoap/gsoapsword.cpp create mode 100644 bindings/gsoap/gsoapsword.h create mode 100644 bindings/gsoap/include/stdsoap.h create mode 100755 bindings/gsoap/soapcpp create mode 100644 bindings/gsoap/stdsoap.o create mode 100644 bindings/gsoap/testclient.cpp create mode 100644 bindings/perl/Changes create mode 100644 bindings/perl/Makefile.PL create mode 100644 bindings/perl/README create mode 100644 bindings/perl/Sword.pm create mode 100644 bindings/perl/Sword.xs create mode 100644 bindings/perl/perlobject.map create mode 100644 bindings/perl/test.pl create mode 100644 bindings/perl/typemap create mode 100644 bindings/swig/Makefile.am create mode 100644 bindings/swig/Makefile.oth create mode 100644 bindings/swig/Makefile.swig create mode 100755 bindings/swig/examples/mod2zmod.pl create mode 100644 bindings/swig/listkey.i create mode 100644 bindings/swig/localemgr.i create mode 100644 bindings/swig/lzsscompress.i create mode 100644 bindings/swig/package/Makefile.am create mode 100644 bindings/swig/package/README.cvs create mode 100755 bindings/swig/package/autogen.sh create mode 100644 bindings/swig/package/configure.ac create mode 100644 bindings/swig/package/perl.m4 create mode 100644 bindings/swig/package/php4.m4 create mode 100644 bindings/swig/package/python.m4 create mode 100644 bindings/swig/package/swig.m4 create mode 100644 bindings/swig/package/sword.m4 create mode 100644 bindings/swig/package/tcl.m4 create mode 100644 bindings/swig/package/zlib.m4 create mode 100644 bindings/swig/perl/Changes create mode 100644 bindings/swig/perl/README create mode 100644 bindings/swig/perl/Sword.cxx create mode 100644 bindings/swig/perl/Sword.pm create mode 100644 bindings/swig/perl/test.pl create mode 100644 bindings/swig/php/Sword.cpp create mode 100644 bindings/swig/php/Sword.php create mode 100644 bindings/swig/php/php_Sword.h create mode 100644 bindings/swig/python/README.txt create mode 100644 bindings/swig/python/Sword.cxx create mode 100644 bindings/swig/python/Sword.py create mode 100644 bindings/swig/rawcom.i create mode 100644 bindings/swig/rawgenbook.i create mode 100644 bindings/swig/rawld.i create mode 100644 bindings/swig/rawld4.i create mode 100644 bindings/swig/rawtext.i create mode 100644 bindings/swig/swbuf.i create mode 100644 bindings/swig/swcom.i create mode 100644 bindings/swig/swcompress.i create mode 100644 bindings/swig/swconfig.i create mode 100644 bindings/swig/swfiltermgr.i create mode 100644 bindings/swig/swgenbook.i create mode 100644 bindings/swig/swig-perl.doxygen create mode 100644 bindings/swig/swkey.i create mode 100644 bindings/swig/swld.i create mode 100644 bindings/swig/swmgr.i create mode 100644 bindings/swig/swmodule.i create mode 100644 bindings/swig/sword.i create mode 100644 bindings/swig/sword.pl create mode 100644 bindings/swig/swposition.i create mode 100644 bindings/swig/swtext.i create mode 100644 bindings/swig/treekey.i create mode 100644 bindings/swig/treekeyidx.i create mode 100644 bindings/swig/versekey.i create mode 100644 bindings/swig/zcom.i create mode 100644 bindings/swig/zipcompress.i create mode 100644 bindings/swig/zld.i create mode 100644 bindings/swig/ztext.i (limited to 'bindings') diff --git a/bindings/bcppmake/MainCLXTest.cpp b/bindings/bcppmake/MainCLXTest.cpp new file mode 100644 index 0000000..b82658a --- /dev/null +++ b/bindings/bcppmake/MainCLXTest.cpp @@ -0,0 +1,16 @@ +//--------------------------------------------------------------------------- + +#include +#pragma hdrstop + +#include "MainCLXTest.h" +//--------------------------------------------------------------------------- +#pragma package(smart_init) +#pragma resource "*.dfm" +TForm2 *Form2; +//--------------------------------------------------------------------------- +__fastcall TForm2::TForm2(TComponent* Owner) + : TForm(Owner) +{ +} +//--------------------------------------------------------------------------- diff --git a/bindings/bcppmake/MainCLXTest.dfm b/bindings/bcppmake/MainCLXTest.dfm new file mode 100644 index 0000000..3d5e63c --- /dev/null +++ b/bindings/bcppmake/MainCLXTest.dfm @@ -0,0 +1,16 @@ +object Form2: TForm2 + Left = 346 + Top = 107 + Width = 870 + Height = 600 + Caption = 'Form2' + Color = clBtnFace + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'MS Sans Serif' + Font.Style = [] + OldCreateOrder = False + PixelsPerInch = 96 + TextHeight = 13 +end diff --git a/bindings/bcppmake/MainCLXTest.h b/bindings/bcppmake/MainCLXTest.h new file mode 100644 index 0000000..fbb0f72 --- /dev/null +++ b/bindings/bcppmake/MainCLXTest.h @@ -0,0 +1,21 @@ +//--------------------------------------------------------------------------- + +#ifndef MainCLXTestH +#define MainCLXTestH +//--------------------------------------------------------------------------- +#include +#include +#include +#include +//--------------------------------------------------------------------------- +class TForm2 : public TForm +{ +__published: // IDE-managed Components +private: // User declarations +public: // User declarations + __fastcall TForm2(TComponent* Owner); +}; +//--------------------------------------------------------------------------- +extern PACKAGE TForm2 *Form2; +//--------------------------------------------------------------------------- +#endif diff --git a/bindings/bcppmake/MainTest.cpp b/bindings/bcppmake/MainTest.cpp new file mode 100644 index 0000000..46c0b65 --- /dev/null +++ b/bindings/bcppmake/MainTest.cpp @@ -0,0 +1,37 @@ +//--------------------------------------------------------------------------- + +#include +#pragma hdrstop + +#include "MainTest.h" +extern "C" { +#include +} +//using namespace sword; +//--------------------------------------------------------------------------- +#pragma package(smart_init) +#pragma resource "*.dfm" +TForm1 *Form1; +//--------------------------------------------------------------------------- +__fastcall TForm1::TForm1(TComponent* Owner) + : TForm(Owner) +{ +} +//--------------------------------------------------------------------------- +void __fastcall TForm1::FormShow(TObject *Sender) +{ + SWHANDLE mgr = SWMgr_new(); + SWHANDLE it = SWMgr_getModulesIterator(mgr); + SWHANDLE module = 0; + String modlist; + do { + module = ModList_iterator_val(it); + if (module) { + modlist += SWModule_getName(module) + (String)"\r\n"; + ModList_iterator_next(it); + } + } while (module); + Memo1->Text = modlist; + SWMgr_delete(mgr); +} +//--------------------------------------------------------------------------- diff --git a/bindings/bcppmake/MainTest.dfm b/bindings/bcppmake/MainTest.dfm new file mode 100644 index 0000000..ffb3c5a --- /dev/null +++ b/bindings/bcppmake/MainTest.dfm @@ -0,0 +1,36 @@ +object Form1: TForm1 + Left = 346 + Top = 234 + Width = 446 + Height = 265 + Caption = 'Form1' + Color = clBtnFace + Font.Charset = DEFAULT_CHARSET + Font.Color = clWindowText + Font.Height = -11 + Font.Name = 'MS Sans Serif' + Font.Style = [] + OldCreateOrder = False + OnShow = FormShow + PixelsPerInch = 96 + TextHeight = 13 + object Memo1: TMemo + Left = 0 + Top = 0 + Width = 438 + Height = 197 + Align = alClient + Lines.Strings = ( + 'Memo1') + TabOrder = 0 + end + object Panel1: TPanel + Left = 0 + Top = 197 + Width = 438 + Height = 41 + Align = alBottom + Caption = 'Panel1' + TabOrder = 1 + end +end diff --git a/bindings/bcppmake/MainTest.h b/bindings/bcppmake/MainTest.h new file mode 100644 index 0000000..99802c8 --- /dev/null +++ b/bindings/bcppmake/MainTest.h @@ -0,0 +1,25 @@ +//--------------------------------------------------------------------------- + +#ifndef MainTestH +#define MainTestH +//--------------------------------------------------------------------------- +#include +#include +#include +#include +#include +//--------------------------------------------------------------------------- +class TForm1 : public TForm +{ +__published: // IDE-managed Components + TMemo *Memo1; + TPanel *Panel1; + void __fastcall FormShow(TObject *Sender); +private: // User declarations +public: // User declarations + __fastcall TForm1(TComponent* Owner); +}; +//--------------------------------------------------------------------------- +extern PACKAGE TForm1 *Form1; +//--------------------------------------------------------------------------- +#endif diff --git a/bindings/bcppmake/clxtest.bpr b/bindings/bcppmake/clxtest.bpr new file mode 100644 index 0000000..0231ee9 --- /dev/null +++ b/bindings/bcppmake/clxtest.bpr @@ -0,0 +1,93 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +[Version Info] +IncludeVerInfo=0 +AutoIncBuild=0 +MajorVer=1 +MinorVer=0 +Release=0 +Build=0 +Debug=0 +PreRelease=0 +Special=0 +Private=0 +DLL=0 +Locale=1033 +CodePage=1252 + +[Version Info Keys] +CompanyName= +FileDescription= +FileVersion=1.0.0.0 +InternalName= +LegalCopyright= +LegalTrademarks= +OriginalFilename= +ProductName= +ProductVersion=1.0.0.0 +Comments= + +[Debugging] +DebugSourceDirs=$(BCB)\source\vcl + +[Parameters] +RunParams= +HostApplication= +RemoteHost= +RemotePath= +RemoteDebug=0 + +[Compiler] +ShowInfoMsgs=0 +LinkDebugVcl=0 +LinkCGLIB=0 + +[Language] +ActiveLang= +ProjectLang= +RootDir= + + \ No newline at end of file diff --git a/bindings/bcppmake/clxtest.cpp b/bindings/bcppmake/clxtest.cpp new file mode 100644 index 0000000..9c481eb --- /dev/null +++ b/bindings/bcppmake/clxtest.cpp @@ -0,0 +1,24 @@ +//--------------------------------------------------------------------------- + +#include +#pragma hdrstop +USERES("clxtest.res"); +USEFORM("MainCLXTest.cpp", Form2); +USEUNIT("..\clx\Sword.pas"); +USELIB("sword.lib"); +//--------------------------------------------------------------------------- +WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) +{ + try + { + Application->Initialize(); + Application->CreateForm(__classid(TForm2), &Form2); + Application->Run(); + } + catch (Exception &exception) + { + Application->ShowException(&exception); + } + return 0; +} +//--------------------------------------------------------------------------- diff --git a/bindings/bcppmake/sword.bpf b/bindings/bcppmake/sword.bpf new file mode 100644 index 0000000..6497780 --- /dev/null +++ b/bindings/bcppmake/sword.bpf @@ -0,0 +1,10 @@ +USEUNIT("sword.c"); +USEUNIT("..\flatapi.cpp"); +USELIB("..\..\lib\libsword.lib"); +USELIB("..\..\..\icu-sword\as_is\borland\icui18n.lib"); +USELIB("..\..\..\icu-sword\as_is\borland\icudatab.lib"); +USELIB("..\..\..\icu-sword\as_is\borland\icucommon.lib"); +//--------------------------------------------------------------------------- +This file is used by the project manager only and should be treated like the project file + + DllEntryPoint \ No newline at end of file diff --git a/bindings/bcppmake/sword.bpr b/bindings/bcppmake/sword.bpr new file mode 100644 index 0000000..092cb6f --- /dev/null +++ b/bindings/bcppmake/sword.bpr @@ -0,0 +1,111 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +[Version Info] +IncludeVerInfo=0 +AutoIncBuild=0 +MajorVer=1 +MinorVer=0 +Release=0 +Build=0 +Debug=0 +PreRelease=0 +Special=0 +Private=0 +DLL=0 +Locale=1033 +CodePage=1252 + +[Version Info Keys] +CompanyName= +FileDescription= +FileVersion=1.0.0.0 +InternalName= +LegalCopyright= +LegalTrademarks= +OriginalFilename= +ProductName= +ProductVersion=1.0.0.0 +Comments= + +[HistoryLists\hlIncludePath] +Count=4 +Item0=..\;..;..\..\include;$(BCB)\include;$(BCB)\include\vcl +Item1=..\;..\..\include;$(BCB)\include;$(BCB)\include\vcl +Item2=..\..\include;$(BCB)\include;$(BCB)\include\vcl +Item3=..\;$(BCB)\include;$(BCB)\include\vcl + +[HistoryLists\hlLibraryPath] +Count=2 +Item0=..\;..;$(BCB)\lib\obj;$(BCB)\lib +Item1=..\;$(BCB)\lib\obj;$(BCB)\lib + +[HistoryLists\hlDebugSourcePath] +Count=1 +Item0=$(BCB)\source\vcl + +[HistoryLists\hlConditionals] +Count=2 +Item0=_DEBUG;SWMAKINGDLL +Item1=_DEBUG + +[Debugging] +DebugSourceDirs=$(BCB)\source\vcl + +[Parameters] +RunParams= +HostApplication= +RemoteHost= +RemotePath= +RemoteDebug=0 + +[Compiler] +ShowInfoMsgs=0 +LinkDebugVcl=0 +LinkCGLIB=0 + + \ No newline at end of file diff --git a/bindings/bcppmake/sword.c b/bindings/bcppmake/sword.c new file mode 100644 index 0000000..4c1c100 --- /dev/null +++ b/bindings/bcppmake/sword.c @@ -0,0 +1,31 @@ +//--------------------------------------------------------------------------- + +#include +//--------------------------------------------------------------------------- +// Important note about DLL memory management when your DLL uses the +// static version of the RunTime Library: +// +// If your DLL exports any functions that pass String objects (or structs/ +// classes containing nested Strings) as parameter or function results, +// you will need to add the library MEMMGR.LIB to both the DLL project and +// any other projects that use the DLL. You will also need to use MEMMGR.LIB +// if any other projects which use the DLL will be performing new or delete +// operations on any non-TObject-derived classes which are exported from the +// DLL. Adding MEMMGR.LIB to your project will change the DLL and its calling +// EXE's to use the BORLNDMM.DLL as their memory manager. In these cases, +// the file BORLNDMM.DLL should be deployed along with your DLL. +// +// To avoid using BORLNDMM.DLL, pass string information using "char *" or +// ShortString parameters. +// +// If your DLL uses the dynamic version of the RTL, you do not need to +// explicitly add MEMMGR.LIB as this will be done implicitly for you +//--------------------------------------------------------------------------- + +#pragma argsused +int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void* lpReserved) +{ + return 1; +} +//--------------------------------------------------------------------------- + \ No newline at end of file diff --git a/bindings/bcppmake/sworddll.bpg b/bindings/bcppmake/sworddll.bpg new file mode 100644 index 0000000..7f3c269 --- /dev/null +++ b/bindings/bcppmake/sworddll.bpg @@ -0,0 +1,33 @@ +#------------------------------------------------------------------------------ +VERSION = BWS.01 +#------------------------------------------------------------------------------ +!ifndef ROOT +ROOT = $(MAKEDIR)\.. +!endif +#------------------------------------------------------------------------------ +MAKE = $(ROOT)\bin\make.exe -$(MAKEFLAGS) -f$** +DCC = $(ROOT)\bin\dcc32.exe $** +BRCC = $(ROOT)\bin\brcc32.exe $** +#------------------------------------------------------------------------------ +PROJECTS = libsword.lib sword.dll test.exe clxtest.exe +#------------------------------------------------------------------------------ +default: $(PROJECTS) +#------------------------------------------------------------------------------ + +libsword.lib: ..\..\lib\bcppmake\libsword.bpr + $(ROOT)\bin\bpr2mak -t$(ROOT)\bin\deflib.bmk $** + $(ROOT)\bin\make -$(MAKEFLAGS) -f$*.mak + +sword.dll: sword.bpr + $(ROOT)\bin\bpr2mak $** + $(ROOT)\bin\make -$(MAKEFLAGS) -f$*.mak + +test.exe: test.bpr + $(ROOT)\bin\bpr2mak $** + $(ROOT)\bin\make -$(MAKEFLAGS) -f$*.mak + +clxtest.exe: clxtest.bpr + $(ROOT)\bin\bpr2mak $** + $(ROOT)\bin\make -$(MAKEFLAGS) -f$*.mak + + diff --git a/bindings/bcppmake/test.cpp b/bindings/bcppmake/test.cpp new file mode 100644 index 0000000..1d02c50 --- /dev/null +++ b/bindings/bcppmake/test.cpp @@ -0,0 +1,23 @@ +//--------------------------------------------------------------------------- + +#include +#pragma hdrstop +USERES("test.res"); +USEFORM("MainTest.cpp", Form1); +USELIB("sword.lib"); +//--------------------------------------------------------------------------- +WINAPI WinMain(HINSTANCE, HINSTANCE, LPSTR, int) +{ + try + { + Application->Initialize(); + Application->CreateForm(__classid(TForm1), &Form1); + Application->Run(); + } + catch (Exception &exception) + { + Application->ShowException(&exception); + } + return 0; +} +//--------------------------------------------------------------------------- diff --git a/bindings/clx/Sword.pas b/bindings/clx/Sword.pas index 239f932..9fecc17 100644 --- a/bindings/clx/Sword.pas +++ b/bindings/clx/Sword.pas @@ -1,25 +1,27 @@ unit Sword; + interface - function SWMgr_getPrefixPath(h: integer): PChar; cdecl; external 'libsword.so'; - function SWMgr_new: integer; cdecl; external 'libsword.so'; - procedure SWMgr_delete(h: integer); cdecl; external 'libsword.so'; - function SWMgr_getModulesIterator(h: integer) : integer; cdecl; external 'libsword.so'; - function SWMgr_getModuleByName(h: integer; name: PChar) : integer; cdecl; external 'libsword.so'; - - procedure ModList_iterator_next(h: integer); cdecl; external 'libsword.so'; - function ModList_iterator_val(h: integer) : integer; cdecl; external 'libsword.so'; - - function SWModule_getType(h: integer) : PChar; cdecl; external 'libsword.so'; - function SWModule_getName(h: integer) : PChar; cdecl; external 'libsword.so'; - function SWModule_getDescription(h: integer) : PChar; cdecl; external 'libsword.so'; - function SWModule_getStripText(h: integer) : PChar; cdecl; external 'libsword.so'; - function SWModule_getRenderText(h: integer) : PChar; cdecl; external 'libsword.so'; - function SWModule_getKeyText(h: integer) : PChar; cdecl; external 'libsword.so'; - procedure SWModule_setKeyText(h: integer; key: PChar); cdecl; external 'libsword.so'; - procedure SWModule_begin(h: integer); cdecl; external 'libsword.so'; - procedure SWModule_next(h: integer); cdecl; external 'libsword.so'; - procedure SWModule_previous(h: integer); cdecl; external 'libsword.so'; + const LIBNAME = 'sword.dll'; + function SWMgr_getPrefixPath(h: integer): PChar; cdecl; external libname; + function SWMgr_new: integer; cdecl; external LIBNAME; + procedure SWMgr_delete(h: integer); cdecl; external LIBNAME; + function SWMgr_getModulesIterator(h: integer) : integer; cdecl; external LIBNAME; + function SWMgr_getModuleByName(h: integer; name: PChar) : integer; cdecl; external LIBNAME; + + procedure ModList_iterator_next(h: integer); cdecl; external LIBNAME; + function ModList_iterator_val(h: integer) : integer; cdecl; external LIBNAME; + + function SWModule_getType(h: integer) : PChar; cdecl; external LIBNAME; + function SWModule_getName(h: integer) : PChar; cdecl; external LIBNAME; + function SWModule_getDescription(h: integer) : PChar; cdecl; external LIBNAME; + function SWModule_getStripText(h: integer) : PChar; cdecl; external LIBNAME; + function SWModule_getRenderText(h: integer) : PChar; cdecl; external LIBNAME; + function SWModule_getKeyText(h: integer) : PChar; cdecl; external LIBNAME; + procedure SWModule_setKeyText(h: integer; key: PChar); cdecl; external LIBNAME; + procedure SWModule_begin(h: integer); cdecl; external LIBNAME; + procedure SWModule_next(h: integer); cdecl; external LIBNAME; + procedure SWModule_previous(h: integer); cdecl; external LIBNAME; type SWModule = class(TObject) diff --git a/bindings/corba/java/Makefile b/bindings/corba/java/Makefile new file mode 100644 index 0000000..ff55983 --- /dev/null +++ b/bindings/corba/java/Makefile @@ -0,0 +1,19 @@ +all: src/org/crosswire/sword/orb/SWMgr.java classes/org/crosswire/sword/orb/SwordOrb.class + +src/org/crosswire/sword/orb/SWMgr.java: ../swordorb.idl + idlj -pkgTranslate swordorb org.crosswire.sword.orb -td src ../swordorb.idl + +classes/org/crosswire/sword/orb/SwordOrb.class: src/org/crosswire/sword/orb/SwordOrb.java + javac -classpath /var/tomcat/common/lib/servlet-api.jar -d classes -sourcepath src src/org/crosswire/sword/orb/*.java src/org/crosswire/util/*.java + + +clean: + rm src/org/crosswire/sword/orb/SW*.java + rm src/org/crosswire/sword/orb/_SW*.java + rm src/org/crosswire/sword/orb/Mod*.java + rm src/org/crosswire/sword/orb/Search*.java + rm src/org/crosswire/sword/orb/String*.java + rm -rf classes/* + +install: + cp -a classes/org/ /var/tomcat/webapps/swordweb/WEB-INF/classes/ diff --git a/bindings/corba/java/src/org/crosswire/sword/orb/SwordOrb.java b/bindings/corba/java/src/org/crosswire/sword/orb/SwordOrb.java new file mode 100644 index 0000000..cbb4c05 --- /dev/null +++ b/bindings/corba/java/src/org/crosswire/sword/orb/SwordOrb.java @@ -0,0 +1,143 @@ +package org.crosswire.sword.orb; + +import java.io.InputStream; +import java.io.InputStreamReader; +import java.io.BufferedReader; +import java.io.StringWriter; +import javax.servlet.http.HttpSession; +import javax.servlet.http.HttpSessionBindingListener; +import javax.servlet.http.HttpSessionBindingEvent; + +public class SwordOrb extends Object implements HttpSessionBindingListener { + public static final String BIBLES = "Biblical Texts"; + public static final String COMMENTARIES = "Commentaries"; + public static final String LEXDICTS = "Lexicons / Dictionaries"; + public static final String GENBOOKS = "Generic Books"; + public static final String DAILYDEVOS = "Daily Devotional"; + static org.omg.CORBA.ORB orb = org.omg.CORBA.ORB.init(new String[]{}, null); + String ior = null; + + private SWMgr attach() { + SWMgr retVal = null; + try { +System.out.println("attaching..."); + org.omg.CORBA.Object obj = orb.string_to_object(ior); + retVal = SWMgrHelper.narrow(obj); +System.out.println("calling testConnection"); + retVal.testConnection(); +System.out.println("testConnection successful"); + } + catch(org.omg.CORBA.SystemException e) { + e.printStackTrace(); + retVal = null; +System.out.println("failed in attach"); + } + return retVal; + } + + public SwordOrb() { + } + + +// this doesn't seem to work. Never seems to get called for me + public void finalize () throws Throwable { + // shut down external process + try { + getSWMgrInstance().terminate(); + } + catch (Exception e) {} // we know this doesn't return property cuz we killed the orb! :) + + } + + + public void valueBound(HttpSessionBindingEvent httpSessionBindingEvent) {} + + public void valueUnbound(HttpSessionBindingEvent httpSessionBindingEvent) { + try { +// throw new Exception("value unbound; showing stacktrace"); + getSWMgrInstance().terminate(); + } + catch (Exception e) {} // we know this doesn't return properly cuz we killed the orb! :) +// catch (Exception e) {e.printStackTrace();} // we know this doesn't return properly cuz we killed the orb! :) + } + + + private void startOrb() { + try { + // start external process + java.lang.Process p = Runtime.getRuntime().exec("swordorbserver"); + InputStream is = p.getInputStream(); + InputStreamReader isr = new InputStreamReader(is); + BufferedReader input = new BufferedReader(isr); + + String line; + line = input.readLine(); +// retVal = p.waitFor(); + ior = line; +System.out.println("Launched ORB, IOR: " + ior); + } + catch (Exception e) {e.printStackTrace();} + } + + + public SWMgr getSWMgrInstance() { + SWMgr retVal = null; + try { +System.out.println("trying to attach to running ORB"); + retVal = attach(); + } + catch(org.omg.CORBA.SystemException e) { + e.printStackTrace(); + retVal = null; + } + if (retVal == null) { + try { +System.out.println("no ORB running; trying to launch"); + startOrb(); +System.out.println("trying to attach to newly launched ORB"); + retVal = attach(); + } + catch(org.omg.CORBA.SystemException e) { + e.printStackTrace(); + } + } + return retVal; + } + + + public static SWMgr getSWMgrInstance(HttpSession session) { + SwordOrb orb = (SwordOrb)session.getAttribute("SwordOrb"); + if (orb == null) { +System.out.println("No ORB found in session; constructing a new instance"); + orb = new SwordOrb(); + session.setAttribute("SwordOrb", orb); + } + else { +System.out.println("ORB found in session"); + } + SWMgr mgr = orb.getSWMgrInstance(); + return mgr; + } + + + public static void main(String args[]) throws Exception { + SWMgr mgr = new SwordOrb().getSWMgrInstance(); + + System.out.println("PrefixPath: " + mgr.getPrefixPath()); + System.out.println("ConfigPath: " + mgr.getConfigPath()); + ModInfo[] modInfoList = mgr.getModInfoList(); + System.out.println("sequence size: " + modInfoList.length); + SWModule module; + for (int i = 0; i < modInfoList.length; i++) { + System.out.println(modInfoList[i].name + ": " + modInfoList[i].category + ": " + modInfoList[i].language); + module = mgr.getModuleByName(modInfoList[i].name); + module.setKeyText("jas1:19"); + System.out.println(module.getRenderText()); + } + module = mgr.getModuleByName("WEB"); + SearchHit[] searchResults = module.search("God love world", SearchType.MULTIWORD, 0, ""); + for (int i = 0; i < searchResults.length; i++) + System.out.println(searchResults[i].key); + + } +} diff --git a/bindings/corba/java/src/org/crosswire/util/Base64.java b/bindings/corba/java/src/org/crosswire/util/Base64.java new file mode 100644 index 0000000..984dc7b --- /dev/null +++ b/bindings/corba/java/src/org/crosswire/util/Base64.java @@ -0,0 +1,1238 @@ +package org.crosswire.util; + +/** + * Changed last char from '/' to '-' because cookies can't use '/' so we're not really a BASE64 + * standard encoder anymore + * Changed package name. --crosswire. + * Thanks to Robert Harder for placing this code into the public domain + * + * Encodes and decodes to and from Base64 notation. + * + *

+ * Change Log: + *

+ *
    + *
  • v1.3.5 - Added flag to turn on and off line breaks. Fixed bug in input stream + * where last buffer being read, if not completely full, was not returned.
  • + *
  • v1.3.4 - Fixed when "improperly padded stream" error was thrown at the wrong time.
  • + *
  • v1.3.3 - Fixed I/O streams which were totally messed up.
  • + *
+ * + *

+ * I am placing this code in the Public Domain. Do with it as you will. + * This software comes with no guarantees or warranties but with + * plenty of well-wishing instead! + * Please visit http://iharder.net/xmlizable + * periodically to check for updates or to contribute improvements. + *

+ * + * @author Robert Harder + * @author rob@iharder.net + * @version 1.3.4 + */ +public class Base64 +{ + + /** Specify encoding (value is true). */ + public final static boolean ENCODE = true; + + + /** Specify decoding (value is false). */ + public final static boolean DECODE = false; + + + /** Maximum line length (76) of Base64 output. */ + private final static int MAX_LINE_LENGTH = java.lang.Integer.MAX_VALUE; + + + /** The equals sign (=) as a byte. */ + private final static byte EQUALS_SIGN = (byte)'='; + + + /** The new line character (\n) as a byte. */ + private final static byte NEW_LINE = (byte)'\n'; + + + /** The 64 valid Base64 values. */ + private final static byte[] ALPHABET = + { + (byte)'A', (byte)'B', (byte)'C', (byte)'D', (byte)'E', (byte)'F', (byte)'G', + (byte)'H', (byte)'I', (byte)'J', (byte)'K', (byte)'L', (byte)'M', (byte)'N', + (byte)'O', (byte)'P', (byte)'Q', (byte)'R', (byte)'S', (byte)'T', (byte)'U', + (byte)'V', (byte)'W', (byte)'X', (byte)'Y', (byte)'Z', + (byte)'a', (byte)'b', (byte)'c', (byte)'d', (byte)'e', (byte)'f', (byte)'g', + (byte)'h', (byte)'i', (byte)'j', (byte)'k', (byte)'l', (byte)'m', (byte)'n', + (byte)'o', (byte)'p', (byte)'q', (byte)'r', (byte)'s', (byte)'t', (byte)'u', + (byte)'v', (byte)'w', (byte)'x', (byte)'y', (byte)'z', + (byte)'0', (byte)'1', (byte)'2', (byte)'3', (byte)'4', (byte)'5', + (byte)'6', (byte)'7', (byte)'8', (byte)'9', (byte)'+', (byte)'-' // changed last char from '/' to '-' because cookies can't use '/' + }; + + /** + * Translates a Base64 value to either its 6-bit reconstruction value + * or a negative number indicating some other meaning. + **/ + private final static byte[] DECODABET = + { + -9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 0 - 8 + -5,-5, // Whitespace: Tab and Linefeed + -9,-9, // Decimal 11 - 12 + -5, // Whitespace: Carriage Return + -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 14 - 26 + -9,-9,-9,-9,-9, // Decimal 27 - 31 + -5, // Whitespace: Space + -9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 33 - 42 + 62, // Plus sign at decimal 43 + -9,-9,-9, // Decimal 44 - 46 + 63, // Slash at decimal 47 + 52,53,54,55,56,57,58,59,60,61, // Numbers zero through nine + -9,-9,-9, // Decimal 58 - 60 + -1, // Equals sign at decimal 61 + -9,-9,-9, // Decimal 62 - 64 + 0,1,2,3,4,5,6,7,8,9,10,11,12,13, // Letters 'A' through 'N' + 14,15,16,17,18,19,20,21,22,23,24,25, // Letters 'O' through 'Z' + -9,-9,-9,-9,-9,-9, // Decimal 91 - 96 + 26,27,28,29,30,31,32,33,34,35,36,37,38, // Letters 'a' through 'm' + 39,40,41,42,43,44,45,46,47,48,49,50,51, // Letters 'n' through 'z' + -9,-9,-9,-9 // Decimal 123 - 126 + /*,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 127 - 139 + -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 140 - 152 + -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 153 - 165 + -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 166 - 178 + -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 179 - 191 + -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 192 - 204 + -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 205 - 217 + -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 218 - 230 + -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9, // Decimal 231 - 243 + -9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9,-9 // Decimal 244 - 255 */ + }; + + private final static byte BAD_ENCODING = -9; // Indicates error in encoding + private final static byte WHITE_SPACE_ENC = -5; // Indicates white space in encoding + private final static byte EQUALS_SIGN_ENC = -1; // Indicates equals sign in encoding + + + /** Defeats instantiation. */ + private Base64(){} + + + + /** + * Testing. Feel free--in fact I encourage you--to throw out + * this entire "main" method when you actually deploy this code. + */ + public static void main( String[] args ) + { + try + { + // Test encoding/decoding byte arrays + { + byte[] bytes1 = { (byte)2,(byte)2,(byte)3,(byte)0,(byte)9 }; // My zip code + byte[] bytes2 = { (byte)99,(byte)2,(byte)2,(byte)3,(byte)0,(byte)9 }; + System.out.println( "Bytes 2,2,3,0,9 as Base64: " + encodeBytes( bytes1 ) ); + System.out.println( "Bytes 2,2,3,0,9 w/ offset: " + encodeBytes( bytes2, 1, bytes2.length-1 ) ); + byte[] dbytes = decode( encodeBytes( bytes1 ) ); + System.out.print( encodeBytes( bytes1 ) + " decoded: " ); + for( int i = 0; i < dbytes.length; i++ ) + System.out.print( dbytes[i] + (i= 0 ){ + byte[] temp = new byte[ bytes.length + 1 ]; + System.arraycopy( bytes,0, temp,0,bytes.length ); + temp[bytes.length] = (byte)b; + bytes = temp; + } // end while: terribly inefficient way to read data + b64is.close(); + javax.swing.ImageIcon iicon = new javax.swing.ImageIcon( bytes ); + javax.swing.JLabel jlabel = new javax.swing.JLabel( "Read from test.gif.b64", iicon,0 ); + javax.swing.JFrame jframe = new javax.swing.JFrame(); + jframe.getContentPane().add( jlabel ); + jframe.pack(); + jframe.show(); + + // Write raw bytes to file + java.io.FileOutputStream fos = new java.io.FileOutputStream( "test.gif_out" ); + fos.write( bytes ); + fos.close(); + + // Read raw bytes and encode + fis = new java.io.FileInputStream( "test.gif_out" ); + b64is = new Base64.InputStream( fis, ENCODE ); + byte[] ebytes = new byte[0]; + b = -1; + while( (b = b64is.read()) >= 0 ){ + byte[] temp = new byte[ ebytes.length + 1 ]; + System.arraycopy( ebytes,0, temp,0,ebytes.length ); + temp[ebytes.length] = (byte)b; + ebytes = temp; + } // end while: terribly inefficient way to read data + b64is.close(); + String s = new String( ebytes ); + javax.swing.JTextArea jta = new javax.swing.JTextArea( s ); + javax.swing.JScrollPane jsp = new javax.swing.JScrollPane( jta ); + jframe = new javax.swing.JFrame(); + jframe.setTitle( "Read from test.gif_out" ); + jframe.getContentPane().add( jsp ); + jframe.pack(); + jframe.show(); + + // Write encoded bytes to file + fos = new java.io.FileOutputStream( "test.gif.b64_out" ); + fos.write( ebytes ); + + // Read GIF stored in base64 form. + fis = new java.io.FileInputStream( "test.gif.b64_out" ); + b64is = new Base64.InputStream( fis, DECODE ); + byte[] edbytes = new byte[0]; + b = -1; + while( (b = b64is.read()) >= 0 ){ + byte[] temp = new byte[ edbytes.length + 1 ]; + System.arraycopy( edbytes,0, temp,0,edbytes.length ); + temp[edbytes.length] = (byte)b; + edbytes = temp; + } // end while: terribly inefficient way to read data + b64is.close(); + iicon = new javax.swing.ImageIcon( edbytes ); + jlabel = new javax.swing.JLabel( "Read from test.gif.b64_out", iicon,0 ); + jframe = new javax.swing.JFrame(); + jframe.getContentPane().add( jlabel ); + jframe.pack(); + jframe.show(); + } // end: Test Input Stream + + + // Test Output Stream + { + // Read raw bytes + java.io.FileInputStream fis = new java.io.FileInputStream( "test.gif_out" ); + byte[] rbytes = new byte[0]; + int b = -1; + while( (b = fis.read()) >= 0 ){ + byte[] temp = new byte[ rbytes.length + 1 ]; + System.arraycopy( rbytes,0, temp,0,rbytes.length ); + temp[rbytes.length] = (byte)b; + rbytes = temp; + } // end while: terribly inefficient way to read data + fis.close(); + + // Write raw bytes to encoded file + java.io.FileOutputStream fos = new java.io.FileOutputStream("test.gif.b64_out2"); + Base64.OutputStream b64os = new Base64.OutputStream( fos, ENCODE ); + b64os.write( rbytes ); + b64os.close(); + + + // Read raw bytes that are actually encoded (but we'll ignore that) + fis = new java.io.FileInputStream( "test.gif.b64_out2" ); + byte[] rebytes = new byte[0]; + b = -1; + while( (b = fis.read()) >= 0 ){ + byte[] temp = new byte[ rebytes.length + 1 ]; + System.arraycopy( rebytes,0, temp,0,rebytes.length ); + temp[rebytes.length] = (byte)b; + rebytes = temp; + } // end while: terribly inefficient way to read data + fis.close(); + String s = new String( rebytes ); + javax.swing.JTextArea jta = new javax.swing.JTextArea( s ); + javax.swing.JScrollPane jsp = new javax.swing.JScrollPane( jta ); + javax.swing.JFrame jframe = new javax.swing.JFrame(); + jframe.setTitle( "Read from test.gif.b64_out2" ); + jframe.getContentPane().add( jsp ); + jframe.pack(); + jframe.show(); + + // Write encoded bytes to decoded raw file + fos = new java.io.FileOutputStream("test.gif_out2"); + b64os = new Base64.OutputStream( fos, DECODE ); + b64os.write( rebytes ); + b64os.close(); + javax.swing.ImageIcon iicon = new javax.swing.ImageIcon( "test.gif_out2" ); + javax.swing.JLabel jlabel = new javax.swing.JLabel( "Read from test.gif_out2", iicon,0 ); + jframe = new javax.swing.JFrame(); + jframe.getContentPane().add( jlabel ); + jframe.pack(); + jframe.show(); + + } // end: Test Output Stream + + + // Test wagner's files + { + java.io.FileInputStream fis = new java.io.FileInputStream("D:\\temp\\testencoding.txt"); + Base64.InputStream b64is = new Base64.InputStream( fis, DECODE ); + java.io.FileOutputStream fos = new java.io.FileOutputStream("D:\\temp\\file.zip"); + int b; + while( (b=b64is.read()) >= 0 ) + fos.write( b ); + fos.close(); + b64is.close(); + + } // end test wagner's file + + } // end try + catch( Exception e) + { e.printStackTrace(); + } + } // end main + + +/* ******** E N C O D I N G M E T H O D S ******** */ + + + /** + * Encodes the first three bytes of array threeBytes + * and returns a four-byte array in Base64 notation. + * + * @param threeBytes the array to convert + * @return four byte array in Base64 notation. + * @since 1.3 + */ + private static byte[] encode3to4( byte[] threeBytes ) + { return encode3to4( threeBytes, 3 ); + } // end encodeToBytes + + + + /** + * Encodes up to the first three bytes of array threeBytes + * and returns a four-byte array in Base64 notation. + * The actual number of significant bytes in your array is + * given by numSigBytes. + * The array threeBytes needs only be as big as + * numSigBytes. + * + * @param threeBytes the array to convert + * @param numSigBytes the number of significant bytes in your array + * @return four byte array in Base64 notation. + * @since 1.3 + */ + private static byte[] encode3to4( byte[] threeBytes, int numSigBytes ) + { byte[] dest = new byte[4]; + encode3to4( threeBytes, 0, numSigBytes, dest, 0 ); + return dest; + } + + + + /** + * Encodes up to three bytes of the array source + * and writes the resulting four Base64 bytes to destination. + * The source and destination arrays can be manipulated + * anywhere along their length by specifying + * srcOffset and destOffset. + * This method does not check to make sure your arrays + * are large enough to accomodate srcOffset + 3 for + * the source array or destOffset + 4 for + * the destination array. + * The actual number of significant bytes in your array is + * given by numSigBytes. + * + * @param source the array to convert + * @param srcOffset the index where conversion begins + * @param numSigBytes the number of significant bytes in your array + * @param destination the array to hold the conversion + * @param destOffset the index where output will be put + * @return the destination array + * @since 1.3 + */ + private static byte[] encode3to4( + byte[] source, int srcOffset, int numSigBytes, + byte[] destination, int destOffset ) + { + // 1 2 3 + // 01234567890123456789012345678901 Bit position + // --------000000001111111122222222 Array position from threeBytes + // --------| || || || | Six bit groups to index ALPHABET + // >>18 >>12 >> 6 >> 0 Right shift necessary + // 0x3f 0x3f 0x3f Additional AND + + // Create buffer with zero-padding if there are only one or two + // significant bytes passed in the array. + // We have to shift left 24 in order to flush out the 1's that appear + // when Java treats a value as negative that is cast from a byte to an int. + int inBuff = ( numSigBytes > 0 ? ((source[ srcOffset ] << 24) >>> 8) : 0 ) + | ( numSigBytes > 1 ? ((source[ srcOffset + 1 ] << 24) >>> 16) : 0 ) + | ( numSigBytes > 2 ? ((source[ srcOffset + 2 ] << 24) >>> 24) : 0 ); + + switch( numSigBytes ) + { + case 3: + destination[ destOffset ] = ALPHABET[ (inBuff >>> 18) ]; + destination[ destOffset + 1 ] = ALPHABET[ (inBuff >>> 12) & 0x3f ]; + destination[ destOffset + 2 ] = ALPHABET[ (inBuff >>> 6) & 0x3f ]; + destination[ destOffset + 3 ] = ALPHABET[ (inBuff ) & 0x3f ]; + return destination; + + case 2: + destination[ destOffset ] = ALPHABET[ (inBuff >>> 18) ]; + destination[ destOffset + 1 ] = ALPHABET[ (inBuff >>> 12) & 0x3f ]; + destination[ destOffset + 2 ] = ALPHABET[ (inBuff >>> 6) & 0x3f ]; + destination[ destOffset + 3 ] = EQUALS_SIGN; + return destination; + + case 1: + destination[ destOffset ] = ALPHABET[ (inBuff >>> 18) ]; + destination[ destOffset + 1 ] = ALPHABET[ (inBuff >>> 12) & 0x3f ]; + destination[ destOffset + 2 ] = EQUALS_SIGN; + destination[ destOffset + 3 ] = EQUALS_SIGN; + return destination; + + default: + return destination; + } // end switch + } // end encode3to4 + + /** + * Serializes an object and returns the Base64-encoded + * version of that serialized object. If the object + * cannot be serialized or there is another error, + * the method will return null. + * + * @param serializableObject The object to encode + * @return The Base64-encoded object + * @since 1.4 + */ + public static String encodeObject( java.io.Serializable serializableObject ) + { + return encodeObject( serializableObject, true ); + } // end encodeObject + + /** + * Serializes an object and returns the Base64-encoded + * version of that serialized object. If the object + * cannot be serialized or there is another error, + * the method will return null. + * + * @param serializableObject The object to encode + * @param breakLines Break lines at 80 characters or less. + * @return The Base64-encoded object + * @since 1.4 + */ + public static String encodeObject( java.io.Serializable serializableObject, boolean breakLines ) + { + java.io.ByteArrayOutputStream baos = null; + java.io.OutputStream b64os = null; + java.io.ObjectOutputStream oos = null; + + try + { + baos = new java.io.ByteArrayOutputStream(); + b64os = new Base64.OutputStream( baos, Base64.ENCODE, breakLines ); + oos = new java.io.ObjectOutputStream( b64os ); + + oos.writeObject( serializableObject ); + } // end try + catch( java.io.IOException e ) + { + e.printStackTrace(); + return null; + } // end catch + finally + { + try{ oos.close(); } catch( Exception e ){} + try{ b64os.close(); } catch( Exception e ){} + try{ baos.close(); } catch( Exception e ){} + } // end finally + + return new String( baos.toByteArray() ); + } // end encode + + + /** + * Encodes a byte array into Base64 notation. + * Equivalen to calling + * encodeBytes( source, 0, source.length ) + * + * @param source The data to convert + * @since 1.4 + */ + public static String encodeBytes( byte[] source ) + { + return encodeBytes( source, true ); + } // end encodeBytes + + /** + * Encodes a byte array into Base64 notation. + * Equivalen to calling + * encodeBytes( source, 0, source.length ) + * + * @param source The data to convert + * @param breakLines Break lines at 80 characters or less. + * @since 1.4 + */ + public static String encodeBytes( byte[] source, boolean breakLines ) + { + return encodeBytes( source, 0, source.length, breakLines ); + } // end encodeBytes + + + /** + * Encodes a byte array into Base64 notation. + * + * @param source The data to convert + * @param off Offset in array where conversion should begin + * @param len Length of data to convert + * @since 1.4 + */ + public static String encodeBytes( byte[] source, int off, int len ) + { + return encodeBytes( source, off, len, true ); + } // end encodeBytes + + + /** + * Encodes a byte array into Base64 notation. + * + * @param source The data to convert + * @param off Offset in array where conversion should begin + * @param len Length of data to convert + * @param breakLines Break lines at 80 characters or less. + * @since 1.4 + */ + public static String encodeBytes( byte[] source, int off, int len, boolean breakLines ) + { + int len43 = len * 4 / 3; + byte[] outBuff = new byte[ ( len43 ) // Main 4:3 + + ( (len % 3) > 0 ? 4 : 0 ) // Account for padding + + (breakLines ? ( len43 / MAX_LINE_LENGTH ) : 0) ]; // New lines + int d = 0; + int e = 0; + int len2 = len - 2; + int lineLength = 0; + for( ; d < len2; d+=3, e+=4 ) + { + encode3to4( source, d+off, 3, outBuff, e ); + + lineLength += 4; + if( breakLines && lineLength == MAX_LINE_LENGTH ) + { + outBuff[e+4] = NEW_LINE; + e++; + lineLength = 0; + } // end if: end of line + } // en dfor: each piece of array + + if( d < len ) + { + encode3to4( source, d+off, len - d, outBuff, e ); + e += 4; + } // end if: some padding needed + + return new String( outBuff, 0, e ); + } // end encodeBytes + + + /** + * Encodes a string in Base64 notation with line breaks + * after every 75 Base64 characters. + * + * @param s the string to encode + * @return the encoded string + * @since 1.3 + */ + public static String encodeString( String s ) + { + return encodeString( s, true ); + } // end encodeString + + /** + * Encodes a string in Base64 notation with line breaks + * after every 75 Base64 characters. + * + * @param s the string to encode + * @param breakLines Break lines at 80 characters or less. + * @return the encoded string + * @since 1.3 + */ + public static String encodeString( String s, boolean breakLines ) + { + return encodeBytes( s.getBytes(), breakLines ); + } // end encodeString + + + + +/* ******** D E C O D I N G M E T H O D S ******** */ + + + /** + * Decodes the first four bytes of array fourBytes + * and returns an array up to three bytes long with the + * decoded values. + * + * @param fourBytes the array with Base64 content + * @return array with decoded values + * @since 1.3 + */ + private static byte[] decode4to3( byte[] fourBytes ) + { + byte[] outBuff1 = new byte[3]; + int count = decode4to3( fourBytes, 0, outBuff1, 0 ); + byte[] outBuff2 = new byte[ count ]; + + for( int i = 0; i < count; i++ ) + outBuff2[i] = outBuff1[i]; + + return outBuff2; + } + + + + + /** + * Decodes four bytes from array source + * and writes the resulting bytes (up to three of them) + * to destination. + * The source and destination arrays can be manipulated + * anywhere along their length by specifying + * srcOffset and destOffset. + * This method does not check to make sure your arrays + * are large enough to accomodate srcOffset + 4 for + * the source array or destOffset + 3 for + * the destination array. + * This method returns the actual number of bytes that + * were converted from the Base64 encoding. + * + * + * @param source the array to convert + * @param srcOffset the index where conversion begins + * @param destination the array to hold the conversion + * @param destOffset the index where output will be put + * @return the number of decoded bytes converted + * @since 1.3 + */ + private static int decode4to3( byte[] source, int srcOffset, byte[] destination, int destOffset ) + { + // Example: Dk== + if( source[ srcOffset + 2] == EQUALS_SIGN ) + { + // Two ways to do the same thing. Don't know which way I like best. + //int outBuff = ( ( DECODABET[ source[ srcOffset ] ] << 24 ) >>> 6 ) + // | ( ( DECODABET[ source[ srcOffset + 1] ] << 24 ) >>> 12 ); + int outBuff = ( ( DECODABET[ source[ srcOffset ] ] & 0xFF ) << 18 ) + | ( ( DECODABET[ source[ srcOffset + 1] ] & 0xFF ) << 12 ); + + destination[ destOffset ] = (byte)( outBuff >>> 16 ); + return 1; + } + + // Example: DkL= + else if( source[ srcOffset + 3 ] == EQUALS_SIGN ) + { + // Two ways to do the same thing. Don't know which way I like best. + //int outBuff = ( ( DECODABET[ source[ srcOffset ] ] << 24 ) >>> 6 ) + // | ( ( DECODABET[ source[ srcOffset + 1 ] ] << 24 ) >>> 12 ) + // | ( ( DECODABET[ source[ srcOffset + 2 ] ] << 24 ) >>> 18 ); + int outBuff = ( ( DECODABET[ source[ srcOffset ] ] & 0xFF ) << 18 ) + | ( ( DECODABET[ source[ srcOffset + 1 ] ] & 0xFF ) << 12 ) + | ( ( DECODABET[ source[ srcOffset + 2 ] ] & 0xFF ) << 6 ); + + destination[ destOffset ] = (byte)( outBuff >>> 16 ); + destination[ destOffset + 1 ] = (byte)( outBuff >>> 8 ); + return 2; + } + + // Example: DkLE + else + { + try{ + // Two ways to do the same thing. Don't know which way I like best. + //int outBuff = ( ( DECODABET[ source[ srcOffset ] ] << 24 ) >>> 6 ) + // | ( ( DECODABET[ source[ srcOffset + 1 ] ] << 24 ) >>> 12 ) + // | ( ( DECODABET[ source[ srcOffset + 2 ] ] << 24 ) >>> 18 ) + // | ( ( DECODABET[ source[ srcOffset + 3 ] ] << 24 ) >>> 24 ); + int outBuff = ( ( DECODABET[ source[ srcOffset ] ] & 0xFF ) << 18 ) + | ( ( DECODABET[ source[ srcOffset + 1 ] ] & 0xFF ) << 12 ) + | ( ( DECODABET[ source[ srcOffset + 2 ] ] & 0xFF ) << 6) + | ( ( DECODABET[ source[ srcOffset + 3 ] ] & 0xFF ) ); + + + destination[ destOffset ] = (byte)( outBuff >> 16 ); + destination[ destOffset + 1 ] = (byte)( outBuff >> 8 ); + destination[ destOffset + 2 ] = (byte)( outBuff ); + + return 3; + }catch( Exception e){ + System.out.println(""+source[srcOffset]+ ": " + ( DECODABET[ source[ srcOffset ] ] ) ); + System.out.println(""+source[srcOffset+1]+ ": " + ( DECODABET[ source[ srcOffset + 1 ] ] ) ); + System.out.println(""+source[srcOffset+2]+ ": " + ( DECODABET[ source[ srcOffset + 2 ] ] ) ); + System.out.println(""+source[srcOffset+3]+ ": " + ( DECODABET[ source[ srcOffset + 3 ] ] ) ); + return -1; + } //e nd catch + } + } // end decodeToBytes + + + + /** + * Decodes data from Base64 notation. + * + * @param s the string to decode + * @return the decoded data + * @since 1.4 + */ + public static byte[] decode( String s ) + { + byte[] bytes = s.getBytes(); + return decode( bytes, 0, bytes.length ); + } // end decode + + + /** + * Decodes data from Base64 notation and + * returns it as a string. + * Equivlaent to calling + * new String( decode( s ) ) + * + * @param s the strind to decode + * @return The data as a string + * @since 1.4 + */ + public static String decodeToString( String s ) + { return new String( decode( s ) ); + } // end decodeToString + + + /** + * Attempts to decode Base64 data and deserialize a Java + * Object within. Returns null if there was an error. + * + * @param encodedObject The Base64 data to decode + * @return The decoded and deserialized object + * @since 1.4 + */ + public static Object decodeToObject( String encodedObject ) + { + byte[] objBytes = decode( encodedObject ); + + java.io.ByteArrayInputStream bais = null; + java.io.ObjectInputStream ois = null; + + try + { + bais = new java.io.ByteArrayInputStream( objBytes ); + ois = new java.io.ObjectInputStream( bais ); + + return ois.readObject(); + } // end try + catch( java.io.IOException e ) + { + e.printStackTrace(); + return null; + } // end catch + catch( java.lang.ClassNotFoundException e ) + { + e.printStackTrace(); + return null; + } // end catch + finally + { + try{ bais.close(); } catch( Exception e ){} + try{ ois.close(); } catch( Exception e ){} + } // end finally + } // end decodeObject + + + /** + * Decodes Base64 content in byte array format and returns + * the decoded byte array. + * + * @param source The Base64 encoded data + * @param off The offset of where to begin decoding + * @param len The length of characters to decode + * @return decoded data + * @since 1.3 + */ + public static byte[] decode( byte[] source, int off, int len ) + { + int len34 = len * 3 / 4; + byte[] outBuff = new byte[ len34 ]; // Upper limit on size of output + int outBuffPosn = 0; + + byte[] b4 = new byte[4]; + int b4Posn = 0; + int i = 0; + byte sbiCrop = 0; + byte sbiDecode = 0; + for( i = 0; i < len; i++ ) + { + sbiCrop = (byte)(source[i] & 0x7f); // Only the low seven bits + sbiDecode = DECODABET[ sbiCrop ]; + + if( sbiDecode >= WHITE_SPACE_ENC ) // White space, Equals sign or better + { + if( sbiDecode >= EQUALS_SIGN_ENC ) + { + b4[ b4Posn++ ] = sbiCrop; + if( b4Posn > 3 ) + { + outBuffPosn += decode4to3( b4, 0, outBuff, outBuffPosn ); + b4Posn = 0; + + // If that was the equals sign, break out of 'for' loop + if( sbiCrop == EQUALS_SIGN ) + break; + } // end if: quartet built + + } // end if: equals sign or better + + } // end if: white space, equals sign or better + else + { + System.err.println( "Bad Base64 input character at " + i + ": " + source[i] + "(decimal)" ); + return null; + } // end else: + } // each input character + + byte[] out = new byte[ outBuffPosn ]; + System.arraycopy( outBuff, 0, out, 0, outBuffPosn ); + return out; + } // end decode + + + + + /* ******** I N N E R C L A S S I N P U T S T R E A M ******** */ + + + + /** + * A {@link Base64#InputStream} will read data from another + * {@link java.io.InputStream}, given in the constructor, + * and encode/decode to/from Base64 notation on the fly. + * + * @see Base64 + * @see java.io.FilterInputStream + * @since 1.3 + */ + public static class InputStream extends java.io.FilterInputStream + { + private boolean encode; // Encoding or decoding + private int position; // Current position in the buffer + private byte[] buffer; // Small buffer holding converted data + private int bufferLength; // Length of buffer (3 or 4) + private int numSigBytes; // Number of meaningful bytes in the buffer + private int lineLength; + private boolean breakLines; // Break lines at less than 80 characters + + + /** + * Constructs a {@link Base64#InputStream} in DECODE mode. + * + * @param in the {@link java.io.InputStream} from which to read data. + * @since 1.3 + */ + public InputStream( java.io.InputStream in ) + { + this( in, Base64.DECODE ); + } // end constructor + + + /** + * Constructs a {@link Base64#InputStream} in + * either ENCODE or DECODE mode. + * + * @param in the {@link java.io.InputStream} from which to read data. + * @param encode Conversion direction + * @see Base64#ENCODE + * @see Base64#DECODE + * @since 1.3 + */ + public InputStream( java.io.InputStream in, boolean encode ) + { + this( in, encode, true ); + } // end constructor + + + /** + * Constructs a {@link Base64#InputStream} in + * either ENCODE or DECODE mode. + * + * @param in the {@link java.io.InputStream} from which to read data. + * @param encode Conversion direction + * @param breakLines Break lines at less than 80 characters. + * @see Base64#ENCODE + * @see Base64#DECODE + * @since 1.3 + */ + public InputStream( java.io.InputStream in, boolean encode, boolean breakLines ) + { + super( in ); + this.breakLines = breakLines; + this.encode = encode; + this.bufferLength = encode ? 4 : 3; + this.buffer = new byte[ bufferLength ]; + this.position = -1; + this.lineLength = 0; + } // end constructor + + /** + * Reads enough of the input stream to convert + * to/from Base64 and returns the next byte. + * + * @return next byte + * @since 1.3 + */ + public int read() throws java.io.IOException + { + // Do we need to get data? + if( position < 0 ) + { + if( encode ) + { + byte[] b3 = new byte[3]; + int numBinaryBytes = 0; + for( int i = 0; i < 3; i++ ) + { + try + { + int b = in.read(); + + // If end of stream, b is -1. + if( b >= 0 ) + { + b3[i] = (byte)b; + numBinaryBytes++; + } // end if: not end of stream + + } // end try: read + catch( java.io.IOException e ) + { + // Only a problem if we got no data at all. + if( i == 0 ) + throw e; + + } // end catch + } // end for: each needed input byte + + if( numBinaryBytes > 0 ) + { + encode3to4( b3, 0, numBinaryBytes, buffer, 0 ); + position = 0; + numSigBytes = 4; + } // end if: got data + else + { + return -1; + } // end else + } // end if: encoding + + // Else decoding + else + { + byte[] b4 = new byte[4]; + int i = 0; + for( i = 0; i < 4; i++ ) + { + // Read four "meaningful" bytes: + int b = 0; + do{ b = in.read(); } + while( b >= 0 && DECODABET[ b & 0x7f ] <= WHITE_SPACE_ENC ); + + if( b < 0 ) + break; // Reads a -1 if end of stream + + b4[i] = (byte)b; + } // end for: each needed input byte + + if( i == 4 ) + { + numSigBytes = decode4to3( b4, 0, buffer, 0 ); + position = 0; + } // end if: got four characters + else if( i == 0 ){ + return -1; + } // end else if: also padded correctly + else + { + // Must have broken out from above. + throw new java.io.IOException( "Improperly padded Base64 input." ); + } // end + + } // end else: decode + } // end else: get data + + // Got data? + if( position >= 0 ) + { + // End of relevant data? + if( /*!encode &&*/ position >= numSigBytes ) + return -1; + + if( encode && breakLines && lineLength >= MAX_LINE_LENGTH ) + { + lineLength = 0; + return '\n'; + } // end if + else + { + lineLength++; // This isn't important when decoding + // but throwing an extra "if" seems + // just as wasteful. + + int b = buffer[ position++ ]; + + if( position >= bufferLength ) + position = -1; + + return b & 0xFF; // This is how you "cast" a byte that's + // intended to be unsigned. + } // end else + } // end if: position >= 0 + + // Else error + else + { + // When JDK1.4 is more accepted, use an assertion here. + throw new java.io.IOException( "Error in Base64 code reading stream." ); + } // end else + } // end read + + + /** + * Calls {@link #read} repeatedly until the end of stream + * is reached or len bytes are read. + * Returns number of bytes read into array or -1 if + * end of stream is encountered. + * + * @param dest array to hold values + * @param off offset for array + * @param len max number of bytes to read into array + * @return bytes read into array or -1 if end of stream is encountered. + * @since 1.3 + */ + public int read( byte[] dest, int off, int len ) throws java.io.IOException + { + int i; + int b; + for( i = 0; i < len; i++ ) + { + b = read(); + + //if( b < 0 && i == 0 ) + // return -1; + + if( b >= 0 ) + dest[off + i] = (byte)b; + else if( i == 0 ) + return -1; + else + break; // Out of 'for' loop + } // end for: each byte read + return i; + } // end read + + } // end inner class InputStream + + + + + + + /* ******** I N N E R C L A S S O U T P U T S T R E A M ******** */ + + + + /** + * A {@link Base64#OutputStream} will write data to another + * {@link java.io.OutputStream}, given in the constructor, + * and encode/decode to/from Base64 notation on the fly. + * + * @see Base64 + * @see java.io.FilterOutputStream + * @since 1.3 + */ + public static class OutputStream extends java.io.FilterOutputStream + { + private boolean encode; + private int position; + private byte[] buffer; + private int bufferLength; + private int lineLength; + private boolean breakLines; + + + /** + * Constructs a {@link Base64#OutputStream} in ENCODE mode. + * + * @param out the {@link java.io.OutputStream} to which data will be written. + * @since 1.3 + */ + public OutputStream( java.io.OutputStream out ) + { + this( out, Base64.ENCODE ); + } // end constructor + + + /** + * Constructs a {@link Base64#OutputStream} in + * either ENCODE or DECODE mode. + * + * @param out the {@link java.io.OutputStream} to which data will be written. + * @param encode Conversion direction + * @see Base64#ENCODE + * @see Base64#DECODE + * @since 1.3 + */ + public OutputStream( java.io.OutputStream out, boolean encode ) + { + this( out, encode, true ); + } // end constructor + + + /** + * Constructs a {@link Base64#OutputStream} in + * either ENCODE or DECODE mode. + * + * @param out the {@link java.io.OutputStream} to which data will be written. + * @param encode Conversion direction + * @param breakLines Break lines to be less than 80 characters. + * @see Base64#ENCODE + * @see Base64#DECODE + * @since 1.3 + */ + public OutputStream( java.io.OutputStream out, boolean encode, boolean breakLines ) + { + super( out ); + this.breakLines = breakLines; + this.encode = encode; + this.bufferLength = encode ? 3 : 4; + this.buffer = new byte[ bufferLength ]; + this.position = 0; + this.lineLength = 0; + } // end constructor + + + /** + * Writes the byte to the output stream after + * converting to/from Base64 notation. + * When encoding, bytes are buffered three + * at a time before the output stream actually + * gets a write() call. + * When decoding, bytes are buffered four + * at a time. + * + * @param theByte the byte to write + * @since 1.3 + */ + public void write(int theByte) throws java.io.IOException + { + if( encode ) + { + buffer[ position++ ] = (byte)theByte; + if( position >= bufferLength ) // Enough to encode. + { + out.write( Base64.encode3to4( buffer, bufferLength ) ); + + lineLength += 4; + if( breakLines && lineLength >= MAX_LINE_LENGTH ) + { + out.write( NEW_LINE ); + lineLength = 0; + } // end if: end of line + + position = 0; + } // end if: enough to output + } // end if: encoding + + // Else, Decoding + else + { + // Meaningful Base64 character? + if( DECODABET[ theByte & 0x7f ] > WHITE_SPACE_ENC ) + { + buffer[ position++ ] = (byte)theByte; + if( position >= bufferLength ) // Enough to output. + { + out.write( Base64.decode4to3( buffer ) ); + position = 0; + } // end if: enough to output + } // end if: meaningful base64 character + else if( DECODABET[ theByte & 0x7f ] != WHITE_SPACE_ENC ) + { + throw new java.io.IOException( "Invalid character in Base64 data." ); + } // end else: not white space either + } // end else: decoding + } // end write + + + + /** + * Calls {@link #write} repeatedly until len + * bytes are written. + * + * @param theBytes array from which to read bytes + * @param off offset for array + * @param len max number of bytes to read into array + * @since 1.3 + */ + public void write( byte[] theBytes, int off, int len ) throws java.io.IOException + { + for( int i = 0; i < len; i++ ) + { + write( theBytes[ off + i ] ); + } // end for: each byte written + + } // end write + + + /** + * Appropriately pads Base64 notation when encoding + * or throws an exception if Base64 input is not + * properly padded when decoding. + * + * @since 1.3 + */ + public void flush() throws java.io.IOException + { + super.flush(); + + if( position > 0 ) + { + if( encode ) + { + out.write( Base64.encode3to4( buffer, position ) ); + } // end if: encoding + else + { + throw new java.io.IOException( "Base64 input not properly padded." ); + } // end else: decoding + } // end if: buffer partially full + + out.flush(); + } // end flush + + + /** + * Flushes and closes stream. + * + * @since 1.3 + */ + public void close() throws java.io.IOException + { + super.close(); + //this.flush(); + + out.close(); + + buffer = null; + out = null; + } // end close + + } // end inner class OutputStream + + +} // end class Base64 diff --git a/bindings/corba/java/swordorb.jpx b/bindings/corba/java/swordorb.jpx new file mode 100644 index 0000000..34642c6 --- /dev/null +++ b/bindings/corba/java/swordorb.jpx @@ -0,0 +1,41 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/bindings/corba/java/swordorb.jpx.local b/bindings/corba/java/swordorb.jpx.local new file mode 100644 index 0000000..3303b21 --- /dev/null +++ b/bindings/corba/java/swordorb.jpx.local @@ -0,0 +1,10 @@ +debug.Breakpoints.1[0]=1 023 hellomodule.HelloClient32 src/hellomodule/HelloClient.java1 81 10 1 10 1 10 1 0 -1 +debug.Breakpoints.2[0]=1 032 org.crosswire.sword.orb.SwordOrb41 src/org/crosswire/sword/orb/SwordOrb.java2 991 10 1 10 1 10 1 0 -1 +debug.NoTracingClasses.1[0]=16 java.lang.Object1 1 -1 +debug.NoTracingClasses.2[0]=21 java.lang.ClassLoader1 1 -1 +debug.NoTracingClasses.3[0]=16 java.lang.String1 1 -1 +debug.SplitThreadsAndDataView[0]=0 +import.optimize.legacyPropertiesRead[0]=1 +sys.Author[0]= +sys.DefaultPackage[0]=org.crosswire.sword.orb +wizard.package.package_history.1[0]=helloworld diff --git a/bindings/corba/java/testclient b/bindings/corba/java/testclient new file mode 100755 index 0000000..44cb34f --- /dev/null +++ b/bindings/corba/java/testclient @@ -0,0 +1,2 @@ +#!/bin/sh +java -cp /var/tomcat/common/lib/servlet-api.jar:classes org.crosswire.sword.orb.SwordOrb $* diff --git a/bindings/corba/orbitcpp/Makefile b/bindings/corba/orbitcpp/Makefile new file mode 100644 index 0000000..0aabb16 --- /dev/null +++ b/bindings/corba/orbitcpp/Makefile @@ -0,0 +1,48 @@ +all: server testclient + +#comment these out if you didn't compile sword with lucene support +luceneflags=-DUSELUCENE +lucenelibs=-lclucene +#---------------------------------- + +LIBS += ${lucenelibs} +CFLAGS += ${luceneflags} +CXXFLAGS += ${luceneflags} + +server: swordorb-common.o server.cpp swordorb-impl.o swordorb-cpp.o swordorb-cpp-common.o swordorb-stubs.o swordorb-cpp-stubs.o swordorb-cpp-skels.o swordorb-skels.o swordorb-cpp.o + g++ -g -I. -I../../../include -I/usr/include/orbitcpp-2.0/ `orbit2-config --cflags` -o server server.cpp swordorb-impl.o swordorb-common.o swordorb-cpp-common.o swordorb-stubs.o swordorb-cpp-stubs.o swordorb-cpp-skels.o swordorb-skels.o `orbit2-config --libs` -lORBit-2-cpp -lsword -lz ${LIBS} + +testclient: testclient.cpp swordorb-impl.cpp swordorb-common.o swordorb-cpp-common.o swordorb-stubs.o swordorb-cpp-stubs.o swordorb-skels.o swordorb-cpp-skels.o + g++ -I. -I../../../include -I/usr/include/orbitcpp-2.0/ `orbit2-config --cflags` -o testclient testclient.cpp swordorb-common.o swordorb-cpp-common.o swordorb-stubs.o swordorb-cpp-stubs.o swordorb-skels.o swordorb-cpp-skels.o `orbit2-config --libs` -lORBit-2-cpp + +swordorb-cpp.o: swordorb-cpp.cc + g++ -I. -I../../../include -I/usr/include/orbitcpp-2.0/ `orbit2-config --cflags` -g -c swordorb-cpp.cc + +swordorb-impl.o: swordorb-impl.cpp + g++ -g -I. -I../../../include -I/usr/include/orbitcpp-2.0/ `orbit2-config --cflags` -g -c swordorb-impl.cpp + +swordorb-common.o: swordorb-common.c + gcc -I. -I../../../include -I/usr/include/orbitcpp-2.0/ `orbit2-config --cflags` -g -c swordorb-common.c + +swordorb-common.c: ./../swordorb.idl + orbit-idl-2 -l c ./../swordorb.idl + orbit-idl-2 -l cpp ./../swordorb.idl + +swordorb-cpp-common.o: swordorb-cpp-common.cc + g++ -I. -I../../../include -I/usr/include/orbitcpp-2.0/ `orbit2-config --cflags` -g -c swordorb-cpp-common.cc + +swordorb-stubs.o: swordorb-stubs.c + gcc -I. -I../../../include -I/usr/include/orbitcpp-2.0/ `orbit2-config --cflags` -g -c swordorb-stubs.c + +swordorb-cpp-stubs.o: swordorb-cpp-stubs.cc + g++ -I. -I../../../include -I/usr/include/orbitcpp-2.0/ `orbit2-config --cflags` -g -c swordorb-cpp-stubs.cc + +swordorb-skels.o: swordorb-skels.c + gcc -I. -I../../../include -I/usr/include/orbitcpp-2.0/ `orbit2-config --cflags` -g -c swordorb-skels.c + +swordorb-cpp-skels.o: swordorb-cpp-skels.cc + g++ -I. -I../../../include -I/usr/include/orbitcpp-2.0/ `orbit2-config --cflags` -g -c swordorb-cpp-skels.cc + +clean: + rm -f *.h *.cc *.o *.c server testclient + diff --git a/bindings/corba/orbitcpp/server.cpp b/bindings/corba/orbitcpp/server.cpp new file mode 100644 index 0000000..b60e1d9 --- /dev/null +++ b/bindings/corba/orbitcpp/server.cpp @@ -0,0 +1,45 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: t; c-basic-offset: 4 -*- */ + +#include "swordorb-impl.hpp" +#include +#include +#include + +sword::SWMgr swordmgr(new sword::MarkupFilterMgr(sword::FMT_WEBIF)); + +int main (int argc, char* argv[]) { + try { + // Initialize the CORBA orb + CORBA::ORB_ptr orb = CORBA::ORB_init (argc, argv); + + // Get the root POA + CORBA::Object_var pfobj = orb->resolve_initial_references("RootPOA"); + + PortableServer::POA_var rootPOA = + PortableServer::POA::_narrow(pfobj); + + // Activate the root POA's manager + PortableServer::POAManager_var mgr = rootPOA->the_POAManager(); + + mgr->activate(); + + // Create a Servant and explicitly create a CORBA object + swordorb::SWMgr_impl servant(&swordmgr); + CORBA::Object_var object = servant._this(); + + // Here we get the IOR for the Hello server object. + // Our "client" will use the IOR to find the object to connect to + CORBA::String_var ref = orb->object_to_string( object ); + + // print out the IOR + std::cout << ref << std::endl; + + // run the server event loop + orb->run(); + } + catch(const CORBA::Exception& ex) + { + std::cout << "Exception caught." << std::endl; + } + +} diff --git a/bindings/corba/orbitcpp/swordorb-impl.cpp b/bindings/corba/orbitcpp/swordorb-impl.cpp new file mode 100644 index 0000000..c775b41 --- /dev/null +++ b/bindings/corba/orbitcpp/swordorb-impl.cpp @@ -0,0 +1,231 @@ +#include "swordorb-impl.hpp" +#include +#include +#include +#include +#include + +/* +char* swordorb::SWModule_impl::helloWorld(const char* greeting) throw(CORBA::SystemException) { + std::cout << "Server: Greeting was \"" << greeting << "\"" << std::endl; + return CORBA::string_dup("Hello client, from server!"); +} +*/ + +using sword::VerseKey; +using sword::SWBuf; +using sword::TreeKeyIdx; + +namespace swordorb { + +sword::RawText NULLMod("/dev/null", SWNULL, SWNULL); + +ModInfoList *SWMgr_impl::getModInfoList() throw(CORBA::SystemException) { + + ModInfoList *milist = new ModInfoList; + sword::SWModule *module = 0; + int size = 0; + for (sword::ModMap::iterator it = delegate->Modules.begin(); it != delegate->Modules.end(); it++) { + if ((!(it->second->getConfigEntry("CipherKey"))) || (*(it->second->getConfigEntry("CipherKey")))) + size++; + } + milist->length(size); + int i = 0; + for (sword::ModMap::iterator it = delegate->Modules.begin(); it != delegate->Modules.end(); it++) { + module = it->second; + if ((!(module->getConfigEntry("CipherKey"))) || (*(module->getConfigEntry("CipherKey")))) { + SWBuf type = module->Type(); + SWBuf cat = module->getConfigEntry("Category"); + if (cat.length() > 0) + type = cat; + (*milist)[i].name = CORBA::string_dup(module->Name()); + (*milist)[i].description = CORBA::string_dup(module->Description()); + (*milist)[i].category = CORBA::string_dup(type.c_str()); + (*milist)[i++].language = CORBA::string_dup(module->Lang()); + } + } + return milist; +} + + + +SWModule_ptr SWMgr_impl::getModuleByName(const char *name) throw(CORBA::SystemException) { + SWModuleMap::iterator it; + SWModule_ptr retVal; + sword::SWModule *mod = delegate->Modules[name]; + it = moduleImpls.find((mod)?name:SWNULL); + if (it == moduleImpls.end()) { + moduleImpls[(mod)?name:SWNULL] = new SWModule_impl((mod)?mod:&NULLMod); + it = moduleImpls.find((mod)?name:SWNULL); + } + if (it != moduleImpls.end()) { + retVal = it->second->_this(); + } + return ::swordorb::SWModule::_duplicate(retVal); +} + + +StringList *SWMgr_impl::getGlobalOptions() throw(CORBA::SystemException) { + sword::StringList options = delegate->getGlobalOptions(); + StringList *retVal = new StringList; + int count = 0; + for (sword::StringList::iterator it = options.begin(); it != options.end(); it++) { + count++; + } + retVal->length(count); + count = 0; + for (sword::StringList::iterator it = options.begin(); it != options.end(); it++) { + (*retVal)[count++] = CORBA::string_dup(it->c_str()); + } + return retVal; +} + + +StringList *SWMgr_impl::getGlobalOptionValues(const char *option) throw(CORBA::SystemException) { + sword::StringList options = delegate->getGlobalOptionValues(option); + StringList *retVal = new StringList; + int count = 0; + for (sword::StringList::iterator it = options.begin(); it != options.end(); it++) { + count++; + } + retVal->length(count); + count = 0; + for (sword::StringList::iterator it = options.begin(); it != options.end(); it++) { + (*retVal)[count++] = CORBA::string_dup(it->c_str()); + } + return retVal; +} + +void SWMgr_impl::terminate() throw(CORBA::SystemException) { + exit(0); +} + + +CORBA::Boolean SWMgr_impl::testConnection() throw(CORBA::SystemException) { + return true; +} + + +char *SWModule_impl::getCategory() throw(CORBA::SystemException) { + SWBuf type = delegate->Type(); + SWBuf cat = delegate->getConfigEntry("Category"); + if (cat.length() > 0) + type = cat; + return CORBA::string_dup((char *)type.c_str()); +} + + +SearchHitList *SWModule_impl::search(const char *istr, SearchType searchType, CORBA::Long flags, const char *scope) throw(CORBA::SystemException) { + int stype = 2; + sword::ListKey lscope; + sword::VerseKey parser; + if (searchType == REGEX) stype = 0; + if (searchType == PHRASE) stype = -1; + if (searchType == MULTIWORD) stype = -2; + sword::ListKey result; + + if ((scope) && (strlen(scope)) > 0) { + lscope = parser.ParseVerseList(scope, parser, true); + result = delegate->Search(istr, stype, flags, &lscope); + } + else result = delegate->Search(istr, stype, flags); + + SearchHitList *retVal = new SearchHitList; + int count = 0; + for (result = sword::TOP; !result.Error(); result++) count++; + retVal->length(count); + int i = 0; + for (result = sword::TOP; !result.Error(); result++) { + (*retVal)[i].modName = CORBA::string_dup(delegate->Name()); + (*retVal)[i].key = CORBA::string_dup((const char *)result); + (*retVal)[i++].score = (long)result.getElement()->userData; + } + + return retVal; +} + + + +StringList *SWModule_impl::getEntryAttribute(const char *level1, const char *level2, const char *level3) throw(CORBA::SystemException) { + delegate->RenderText(); // force parse + sword::AttributeTypeList &entryAttribs = delegate->getEntryAttributes(); + sword::AttributeTypeList::iterator i1 = entryAttribs.find(level1); + sword::AttributeList::iterator i2; + sword::AttributeValue::iterator i3, j3; + StringList *retVal = new StringList; + int count = 0; + + if (i1 != entryAttribs.end()) { + i2 = i1->second.find(level2); + if (i2 != i1->second.end()) { + i3 = i2->second.find(level3); + if (i3 != i2->second.end()) { + for (j3 = i3; j3 != i2->second.end(); j3++) + count++; + retVal->length(count); + count = 0; + for (j3 = i3; j3 != i2->second.end(); j3++) { + (*retVal)[count++] = CORBA::string_dup(i3->second.c_str()); + } + } + } + } + if (!count) + retVal->length(count); + + return retVal; +} + + +StringList *SWModule_impl::getKeyChildren() throw(CORBA::SystemException) { + sword::SWKey *key = delegate->getKey(); + StringList *retVal = new StringList; + int count = 0; + + sword::VerseKey *vkey = SWDYNAMIC_CAST(VerseKey, key); + if (vkey) { + retVal->length(6); + SWBuf num; + num.appendFormatted("%d", vkey->Testament()); + (*retVal)[0] = CORBA::string_dup(num.c_str()); + num = ""; + num.appendFormatted("%d", vkey->Book()); + (*retVal)[1] = CORBA::string_dup(num.c_str()); + num = ""; + num.appendFormatted("%d", vkey->Chapter()); + (*retVal)[2] = CORBA::string_dup(num.c_str()); + num = ""; + num.appendFormatted("%d", vkey->Verse()); + (*retVal)[3] = CORBA::string_dup(num.c_str()); + num = ""; + num.appendFormatted("%d", vkey->books[vkey->Testament()-1][vkey->Book()-1].chapmax); + (*retVal)[4] = CORBA::string_dup(num.c_str()); + num = ""; + num.appendFormatted("%d", vkey->books[vkey->Testament()-1][vkey->Book()-1].versemax[vkey->Chapter()-1]); + (*retVal)[5] = CORBA::string_dup(num.c_str()); + } + else { + TreeKeyIdx *tkey = SWDYNAMIC_CAST(TreeKeyIdx, key); + if (tkey) { + if (tkey->firstChild()) { + do { + count++; + } + while (tkey->nextSibling()); + tkey->parent(); + } + retVal->length(count); + count = 0; + if (tkey->firstChild()) { + do { + (*retVal)[count++] = CORBA::string_dup(tkey->getLocalName()); + } + while (tkey->nextSibling()); + tkey->parent(); + } + } + } + return retVal; +} + +} diff --git a/bindings/corba/orbitcpp/swordorb-impl.hpp b/bindings/corba/orbitcpp/swordorb-impl.hpp new file mode 100644 index 0000000..bd3be38 --- /dev/null +++ b/bindings/corba/orbitcpp/swordorb-impl.hpp @@ -0,0 +1,67 @@ +#ifndef _ORBIT_CPP_IDL_sword_IMPL_HH +#define _ORBIT_CPP_IDL_sword_IMPL_HH + +#include "swordorb-cpp-skels.h" +#include +#include +#include +#include + + +namespace swordorb { + +static const char *SWNULL = ""; +extern sword::RawText NULLMod; + +//Inherit from abstract Skeleton: +class SWModule_impl : public POA_swordorb::SWModule { + sword::SWModule *delegate; +public: + SWModule_impl(sword::SWModule *delegate) { this->delegate = delegate; } + + SearchHitList *search(const char *istr, SearchType searchType, CORBA::Long flags, const char *scope) throw(CORBA::SystemException); + void terminateSearch() throw(CORBA::SystemException) { delegate->terminateSearch = true; } + char error() throw(CORBA::SystemException) { return delegate->Error(); } + CORBA::Long getEntrySize() throw(CORBA::SystemException) { return delegate->getEntrySize(); } + void setKeyText(const char *key) throw(CORBA::SystemException) { delegate->KeyText(key); } + char *getKeyText() throw(CORBA::SystemException) { return CORBA::string_dup((char *)delegate->KeyText()); } + StringList *getKeyChildren() throw(CORBA::SystemException); + char *getName() throw(CORBA::SystemException) { return CORBA::string_dup((char *)delegate->Name()); } + char *getDescription() throw(CORBA::SystemException) { return CORBA::string_dup((char *)delegate->Description()); } + char *getCategory() throw(CORBA::SystemException); + void previous() throw(CORBA::SystemException) { delegate->decrement(); } + void next() throw(CORBA::SystemException) { delegate->increment(); } + void begin() throw(CORBA::SystemException) { delegate->setPosition(sword::TOP); } + char *getStripText() throw(CORBA::SystemException) { return CORBA::string_dup((char *)delegate->StripText()); } + StringList *getEntryAttribute(const char *level1, const char *level2, const char *level3) throw(CORBA::SystemException); + char *getRenderText() throw(CORBA::SystemException) { return CORBA::string_dup((char *)delegate->RenderText()); } + char *getConfigEntry(const char *key) throw(CORBA::SystemException) { return CORBA::string_dup(((char *)delegate->getConfigEntry(key)) ? (char *)delegate->getConfigEntry(key):SWNULL); } + +}; + +typedef std::map SWModuleMap; + +class SWMgr_impl : public POA_swordorb::SWMgr { + sword::SWMgr *delegate; + SWModuleMap moduleImpls; +public: + SWMgr_impl(sword::SWMgr *delegate) { this->delegate = delegate; } + + ModInfoList *getModInfoList() throw(CORBA::SystemException); + SWModule_ptr getModuleByName(const char *name) throw(CORBA::SystemException); + char *getPrefixPath() throw(CORBA::SystemException) { return CORBA::string_dup(delegate->prefixPath); } + char *getConfigPath() throw(CORBA::SystemException) { return CORBA::string_dup(delegate->configPath); } + void setGlobalOption(const char *option, const char *value) throw(CORBA::SystemException) { delegate->setGlobalOption(option, value); } + char *getGlobalOption(const char *option) throw(CORBA::SystemException) { return CORBA::string_dup((char *)delegate->getGlobalOption(option)); } + char *getGlobalOptionTip(const char *option) throw(CORBA::SystemException) { return CORBA::string_dup((char *)delegate->getGlobalOptionTip(option)); } + StringList *getGlobalOptions() throw(CORBA::SystemException); + StringList *getGlobalOptionValues(const char *option) throw(CORBA::SystemException); + void setCipherKey(const char *modName, const char *key) throw(CORBA::SystemException) { delegate->setCipherKey(modName, key); } + void terminate() throw(CORBA::SystemException); + CORBA::Boolean testConnection() throw(CORBA::SystemException); + +}; +}; // namespace hellomodule + + +#endif //_ORBIT_CPP_IDL_helloworld_IMPL_HH diff --git a/bindings/corba/orbitcpp/testclient.cpp b/bindings/corba/orbitcpp/testclient.cpp new file mode 100644 index 0000000..2bbb60c --- /dev/null +++ b/bindings/corba/orbitcpp/testclient.cpp @@ -0,0 +1,61 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: f; c-basic-offset: 4 -*- */ + +#include "swordorb-cpp-stubs.h" +#include "swordorb-cpp-common.h" +#include + +int main (int argc, char *argv[]) +{ + if (argc != 2) + { + std::cerr << "Usage:" << std::endl + << " " << argv[0] << " IOR" << std::endl + << std::endl; + return -1; + } + + try + { + // Initialize ORBit + CORBA::ORB_ptr orb = CORBA::ORB_init(argc, argv, "orbit-local-orb"); + + // Get a reference to the server from the IOR passed on the + // command line + CORBA::Object_var obj = orb->string_to_object(argv[1]); + swordorb::SWMgr_var mgr = swordorb::SWMgr::_narrow(obj); + + swordorb::SWModule_ptr module; + swordorb::ModInfoList *modInfoList; + + std::cout << "Connected: " << mgr->testConnection() << "\n"; + std::cout << "PrefixPath: " << mgr->getPrefixPath() << "\n"; + std::cout << "ConfigPath: " << mgr->getConfigPath() << "\n"; + modInfoList = mgr->getModInfoList(); + std::cout << "sequence length: " << modInfoList->length() << "\n"; +/* + for (int i = 0; i < modInfoList->length(); i++) { + std::cout << (*modInfoList)[i].name << ": " << (*modInfoList)[i].category << ": " << (*modInfoList)[i].language << "\n"; + module = mgr->getModuleByName((*modInfoList)[i].name); + module->setKeyText("jas1:19"); + std::cout << module->getRenderText() << "\n"; + } +*/ + module = mgr->getModuleByName("NASB"); + module->setKeyText("jn3:1"); + std::cout << module->getRenderText(); + /* + swordorb::SearchHitList *searchResults; + searchResults = module->search("God love world", swordorb::MULTIWORD, 0, ""); + for (int i = 0; i < searchResults->length(); i++) { + std::cout << (*searchResults)[i].key << "\n"; + } + */; + + + + } catch(const CORBA::Exception& ex) { + std::cout << "Exception caught. Maybe the server is not running, or the IOR is wrong." << std::endl; + } + + return 0; +} diff --git a/bindings/corba/swordorb.idl b/bindings/corba/swordorb.idl new file mode 100644 index 0000000..4df5c52 --- /dev/null +++ b/bindings/corba/swordorb.idl @@ -0,0 +1,80 @@ +/****************************************************************************** + * sword.idl - This file contains a simple idl for accessing sword + */ + +#ifndef SWORDORB_IDL +#define SWORDORB_IDL + +module swordorb { + +typedef sequence StringList; + +struct ModInfo { + string name; + string description; + string category; + string language; +}; + +typedef sequence ModInfoList; + +struct SearchHit { + string modName; + string key; + long score; +}; + +typedef sequence SearchHitList; +//----------------------------------------------------------------- +// SWModule methods + + enum SearchType { + REGEX, + PHRASE, + MULTIWORD + }; + + +interface SWModule { + void terminateSearch(); + SearchHitList search(in string istr, in SearchType searchType, in long flags, in string scope); + char error(); + long getEntrySize(); + StringList getEntryAttribute(in string level1, in string level2, in string level3); + void setKeyText(in string key); + string getKeyText(); + StringList getKeyChildren(); + string getName(); + string getDescription(); + string getCategory(); + void previous(); + void next(); + void begin(); + string getStripText(); + string getRenderText(); + string getConfigEntry(in string key); +}; + + +//----------------------------------------------------------------- +// SWMgr methods +// +interface SWMgr { + ModInfoList getModInfoList(); + SWModule getModuleByName(in string name); + string getPrefixPath(); + string getConfigPath(); + void setGlobalOption(in string option, in string value); + string getGlobalOption(in string option); + string getGlobalOptionTip(in string option); + StringList getGlobalOptions(); + StringList getGlobalOptionValues(in string option); + void setCipherKey(in string modName, in string key); + void terminate(); + boolean testConnection(); + +}; + +}; + +#endif diff --git a/bindings/flatapi.cpp b/bindings/flatapi.cpp index 4611a28..bb9ae3f 100644 --- a/bindings/flatapi.cpp +++ b/bindings/flatapi.cpp @@ -14,8 +14,19 @@ #include #include #include - +#ifndef NO_SWORD_NAMESPACE +using namespace sword; +#endif +extern "C" { #include "flatapi.h" +} + +typedef struct { + ModMap::iterator it; +// void *it; + ModMap::iterator end; +// void *end; +} ModItType; //----------------------------------------------------------------- @@ -61,47 +72,47 @@ SWHANDLE SWMgr_getModulesIterator(SWHANDLE hmgr) { } -SWHANDLE SWMgr_getModuleByName(SWHANDLE hmgr, char *name) { +SWHANDLE SWMgr_getModuleByName(SWHANDLE hmgr, const char *name) { SWMgr *mgr = (SWMgr *)hmgr; return (mgr) ? (SWHANDLE) mgr->Modules[name] : 0; } -char *SWMgr_getPrefixPath(SWHANDLE hmgr) { +const char *SWMgr_getPrefixPath(SWHANDLE hmgr) { SWMgr *mgr = (SWMgr *)hmgr; return (mgr) ? mgr->prefixPath : 0; } -char *SWMgr_getConfigPath(SWHANDLE hmgr) { +const char *SWMgr_getConfigPath(SWHANDLE hmgr) { SWMgr *mgr = (SWMgr *)hmgr; return (mgr) ? mgr->configPath : 0; } -void SWMgr_setGlobalOption(SWHANDLE hmgr, char *option, char *value) { +void SWMgr_setGlobalOption(SWHANDLE hmgr, const char *option, const char *value) { SWMgr *mgr = (SWMgr *)hmgr; if (mgr) mgr->setGlobalOption(option, value); } -char *SWMgr_getGlobalOption(SWHANDLE hmgr, char *option) { +const char *SWMgr_getGlobalOption(SWHANDLE hmgr, const char *option) { SWMgr *mgr = (SWMgr *)hmgr; - return (mgr) ? (char *)mgr->getGlobalOption(option) : 0; + return (mgr) ? (const char *)mgr->getGlobalOption(option) : 0; } -char *SWMgr_getGlobalOptionTip(SWHANDLE hmgr, char *option) { +const char *SWMgr_getGlobalOptionTip(SWHANDLE hmgr, const char *option) { SWMgr *mgr = (SWMgr *)hmgr; - return (mgr) ? (char *)mgr->getGlobalOptionTip(option) : 0; + return (mgr) ? (const char *)mgr->getGlobalOptionTip(option) : 0; } // ret: forward_iterator SWHANDLE SWMgr_getGlobalOptionsIterator(SWHANDLE hmgr) { SWMgr *mgr = (SWMgr *)hmgr; - static OptionsList::iterator it; + static StringList::iterator it; if (mgr) it = mgr->getGlobalOptions().begin(); @@ -110,9 +121,9 @@ SWHANDLE SWMgr_getGlobalOptionsIterator(SWHANDLE hmgr) { // ret: forward_iterator -SWHANDLE SWMgr_getGlobalOptionValuesIterator(SWHANDLE hmgr, char *option) { +SWHANDLE SWMgr_getGlobalOptionValuesIterator(SWHANDLE hmgr, const char *option) { SWMgr *mgr = (SWMgr *)hmgr; - static OptionsList::iterator it; + static StringList::iterator it; if (mgr) it = mgr->getGlobalOptionValues(option).begin(); @@ -120,7 +131,7 @@ SWHANDLE SWMgr_getGlobalOptionValuesIterator(SWHANDLE hmgr, char *option) { } -void SWMgr_setCipherKey(SWHANDLE hmgr, char *modName, char *key) { +void SWMgr_setCipherKey(SWHANDLE hmgr, const char *modName, const char *key) { SWMgr *mgr = (SWMgr *)hmgr; if (mgr) mgr->setCipherKey(modName, key); @@ -137,7 +148,7 @@ void SWModule_terminateSearch(SWHANDLE hmodule) { module->terminateSearch = true; } -// SWModule (const char *imodname = 0, const char *imoddesc = 0, SWDisplay * idisp = 0, char *imodtype = 0, SWTextEncoding encoding = ENC_UNKNOWN, SWTextDirection dir = DIRECTION_LTR, SWTextMarkup markup = FMT_UNKNOWN, const char* modlang = 0); +// SWModule (const const char *imodname = 0, const const char *imoddesc = 0, SWDisplay * idisp = 0, const char *imodtype = 0, SWTextEncoding encoding = ENC_UNKNOWN, SWTextDirection dir = DIRECTION_LTR, SWTextMarkup markup = FMT_UNKNOWN, const char* modlang = 0); // virtual ~ SWModule (); /** Gets and clears error status @@ -156,39 +167,39 @@ int SWModule_getEntrySize(SWHANDLE hmodule) { } -void SWModule_setKeyText(SWHANDLE hmodule, char *key) { +void SWModule_setKeyText(SWHANDLE hmodule, const char *key) { SWModule *module = (SWModule *)hmodule; if (module) - module->Key(key); + module->setKey(key); } -// virtual char SetKey (const SWKey &ikey); +// virtual char setKey (const SWKey &ikey); // virtual SWKey & Key () const { -char *SWModule_getKeyText(SWHANDLE hmodule) { +const char *SWModule_getKeyText(SWHANDLE hmodule) { SWModule *module = (SWModule *)hmodule; - return (char *)((module) ? module->KeyText() : 0); + return (const char *)((module) ? module->KeyText() : 0); } // virtual char Display (); // virtual SWDisplay *Disp (SWDisplay * idisp = 0); -char *SWModule_getName(SWHANDLE hmodule) { +const char *SWModule_getName(SWHANDLE hmodule) { SWModule *module = (SWModule *)hmodule; - return (char *)((module) ? module->Name() : 0); + return (const char *)((module) ? module->Name() : 0); } -char *SWModule_getDescription(SWHANDLE hmodule) { +const char *SWModule_getDescription(SWHANDLE hmodule) { SWModule *module = (SWModule *)hmodule; - return (char *)((module) ? module->Description() : 0); + return (const char *)((module) ? module->Description() : 0); } -char *SWModule_getType(SWHANDLE hmodule) { +const char *SWModule_getType(SWHANDLE hmodule) { SWModule *module = (SWModule *)hmodule; - return (char *)((module) ? module->Type() : 0); + return (const char *)((module) ? module->Type() : 0); } @@ -213,15 +224,15 @@ void SWModule_begin(SWHANDLE hmodule) { } -char *SWModule_getStripText(SWHANDLE hmodule) { +const char *SWModule_getStripText(SWHANDLE hmodule) { SWModule *module = (SWModule *)hmodule; - return (char *)((module) ? module->StripText() : 0); + return (const char *)((module) ? module->StripText() : 0); } -char *SWModule_getRenderText(SWHANDLE hmodule) { +const char *SWModule_getRenderText(SWHANDLE hmodule) { SWModule *module = (SWModule *)hmodule; - return (char *)((module) ? module->RenderText() : 0); + return (const char *)((module) ? module->RenderText() : 0); } @@ -230,14 +241,14 @@ char *SWModule_getRenderText(SWHANDLE hmodule) { // stringlist_iterator methods void stringlist_iterator_next(SWHANDLE hsli) { - OptionsList::iterator *sli = (OptionsList::iterator *)hsli; + StringList::iterator *sli = (StringList::iterator *)hsli; (*sli)++; } -char *stringlist_iterator_val(SWHANDLE hsli) { - OptionsList::iterator *sli = (OptionsList::iterator *)hsli; - return (char *)(*sli)->c_str(); +const char *stringlist_iterator_val(SWHANDLE hsli) { + StringList::iterator *sli = (StringList::iterator *)hsli; + return (const char *)(*sli)->c_str(); } diff --git a/bindings/gsoap/Makefile b/bindings/gsoap/Makefile new file mode 100644 index 0000000..639634a --- /dev/null +++ b/bindings/gsoap/Makefile @@ -0,0 +1,12 @@ +all: gsoapsword testclient + +gsoapsword: gsoapsword.h gsoapsword.cpp stdsoap.o + ./soapcpp gsoapsword.h + g++ -g -ggdb -I/usr/include/sword -I./include -o gsoapsword gsoapsword.cpp yoyo.cpp stdsoap.o soapC.cpp soapServer.cpp -lsword -lz + +testclient: gsoapsword.h testclient.cpp stdsoap.o + ./soapcpp gsoapsword.h + g++ -I./include -o testclient testclient.cpp stdsoap.o soapC.cpp soapClient.cpp + +clean: + rm gsoapsword testclient soapC.cpp soapServer.cpp soapClient.cpp soapH.h soapStub.h sword.xsd sword.nsmap sword.wsdl diff --git a/bindings/gsoap/gsoapsword.cpp b/bindings/gsoap/gsoapsword.cpp new file mode 100644 index 0000000..cb3a58d --- /dev/null +++ b/bindings/gsoap/gsoapsword.cpp @@ -0,0 +1,142 @@ +#include "soapH.h" +#include +#include +#include + + +SWMgr *mgr; + +int sword__ModList_iterator_next(xsd__int hmmi, xsd__int &noop) { + ModList_iterator_next(hmmi); + return SOAP_OK; +} + +int sword__ModList_iterator_val(xsd__int hmmi, xsd__int &hmodule) { + hmodule = ModList_iterator_val(hmmi); + return SOAP_OK; +} + +int sword__SWMgr_new(xsd__int &retVal) { + retVal = SWMgr_new(); + return SOAP_OK; +} + +int sword__SWMgr_delete(xsd__int hmgr, xsd__int &noop) { + SWMgr_delete(hmgr); + return SOAP_OK; +} + +int sword__SWMgr_getModulesIterator(xsd__int hmgr, xsd__int &hmodIterator) { + hmodIterator = SWMgr_getModulesIterator(hmgr); + return SOAP_OK; +} + +int sword__SWMgr_getModuleByName(xsd__int hmgr, xsd__string name, xsd__int &hmodule) { + hmodule = SWMgr_getModuleByName(hmodule, name); + return SOAP_OK; +} + + + +int sword__SWModule_getName(xsd__int hmodule, xsd__string &name) { + name = (char *)SWModule_getName(hmodule); + return SOAP_OK; +} + +int sword__SWModule_getDescription(xsd__int hmodule, xsd__string &description) { + description = (char *)SWModule_getDescription(hmodule); + return SOAP_OK; +} + + +int sword__Quick_getModuleRawEntry(xsd__string modName, xsd__string modKey, xsd__string &modText) { + SWModule *mod = mgr->Modules[modName]; + if (mod) { + mod->setKey(modKey); + modText = mod->getRawEntry(); + } + return SOAP_OK; +} + + +int sword__Quick_setModuleRawEntry(xsd__string modName, xsd__string modKey, xsd__string modText, xsd__int &noop) { + SWModule *mod = mgr->Modules[modName]; + if (mod) { + mod->setKey(modKey); + (*mod) << modText; + } + return SOAP_OK; +} + + +int sword__Quick_getModuleRenderText(xsd__string modName, xsd__string modKey, xsd__string &modText) { + SWModule *mod = mgr->Modules[modName]; + if (mod) { + mod->setKey(modKey); + modText = (char *)mod->RenderText(); + } + return SOAP_OK; +} + + +int sword__Quick_getJScriptAttribArray(xsd__string modName, xsd__string modKey, xsd__string &arrayText) { + SWModule *mod = mgr->Modules[modName]; + if (mod) { + mod->setKey(modKey); + AttributeTypeList::iterator i1; + AttributeList::iterator i2; + AttributeValue::iterator i3; + int l1, l2, l3; + char lbuf1[20], lbuf2[20], lbuf3[20]; + static string retVal = ""; + retVal = "var entryAttribs = new Array();\n"; + string l1keys = "entryAttribs[0] = new Array("; + for (l1=0,i1 = target->getEntryAttributes().begin(); i1 != target->getEntryAttributes().end(); i1++,l1++) { + sprintf(lbuf1, "%d", l1+1); + retVal += "entryAttribs["+lbuf1+"] = new Array();\n"; + string l2keys = "entryAttribs["+lbuf1+"][0] = new Array("; + cout << "[ " << i1->first << " ]\n"; + for (l2=0,i2 = i1->second.begin(); i2 != i1->second.end(); i2++,l2++) { + sprintf(lbuf2, "%d", l2+1); + retVal += "entryAttribs["+lbuf1+"]["+lbuf2+"][0] = new Array();\n"; + string l3keys = "entryAttribs["+lbuf1+"]["+lbuf2+"][0] = new Array("; + cout << "\t[ " << i2->first << " ]\n"; + for (l3=0,i3 = i2->second.begin(); i3 != i2->second.end(); i3++,l3++) { + cout << "\t\t" << i3->first << " = " << i3->second << "\n"; + } + } + } + } + return SOAP_OK; +} + + + + +main() { + + + int m, s; + mgr = new SWMgr(new MarkupFilterMgr()); + m = soap_bind("localhost", 18083, 100); + if (m < 0) { + soap_print_fault(stderr); + exit(-1); + } + fprintf(stderr, "Socket connection successful: master socket = %d\n", m); + for (int i = 1; ; i++) { + s = soap_accept(); + if (s < 0) { + soap_print_fault(stderr); + exit(-1); + } + fprintf(stderr, "%d: accepted connection from IP = %d.%d.%d.%d socket = %d", i, (soap_ip<<24)&0xFF, (soap_ip<<16)&0xFF, (soap_ip<<8)&0xFF, soap_ip&0xFF, s); + soap_serve(); // process RPC skeletons + fprintf(stderr, "request served\n"); + soap_end(); // clean up everything and close socket + } + delete mgr; +} + +#include "sword.nsmap" + diff --git a/bindings/gsoap/gsoapsword.h b/bindings/gsoap/gsoapsword.h new file mode 100644 index 0000000..1a712a5 --- /dev/null +++ b/bindings/gsoap/gsoapsword.h @@ -0,0 +1,65 @@ +#ifndef GSOAPAPI_H +#define GSOAPAPI_H + +typedef long xsd__int; +typedef char * xsd__string; + +//----------------------------------------------------------------- +// stringlist_iterator methods + +//int sword__stringlist_iterator_next(xsd__int hsli char **); +//int sword__stringlist_iterator_val(xsd__int hsli, char **); + + +//----------------------------------------------------------------- +// modmap methods +// +int sword__ModList_iterator_next(xsd__int hmmi, xsd__int &noop); +int sword__ModList_iterator_val(xsd__int hmmi, xsd__int &hmodule); + + +//----------------------------------------------------------------- +// SWMgr methods +// +int sword__SWMgr_new(xsd__int &retVal); +// SWConfig *, SWConfig *, bool, SWFilterMgr * +//xsd__int sword__SWMgr_newEx(xsd__int hiconfig, xsd__int hisysconfig, char autoload, xsd__int hfilterMgr); +int sword__SWMgr_delete(xsd__int hmgr, xsd__int &noop); +//xsd__int sword__SWMgr_getConfig(xsd__int hmgr); +int sword__SWMgr_getModulesIterator(xsd__int hmgr, xsd__int &hmodIterator); +int sword__SWMgr_getModuleByName(xsd__int hmgr, xsd__string name, xsd__int &hmodule); +//char * sword__SWMgr_getPrefixPath(xsd__int hmgr); +//char * sword__SWMgr_getConfigPath(xsd__int hmgr); +//void sword__SWMgr_setGlobalOption(xsd__int hmgr, char *option, char *value); +//char * sword__SWMgr_getGlobalOption(xsd__int hmgr, char *option); +//char * sword__SWMgr_getGlobalOptionTip(xsd__int hmgr, char *option); +// ret: forward_iterator +//xsd__int sword__SWMgr_getGlobalOptionsIterator(xsd__int hmgr); +// ret: forward_iterator +//xsd__int sword__SWMgr_getGlobalOptionValuesIterator(xsd__int hmgr, char *option); +//void sword__SWMgr_setCipherKey(xsd__int hmgr, char *modName, char *key); + + +//----------------------------------------------------------------- +// SWModule methods + +//void sword__SWModule_terminateSearch(xsd__int hmodule); +//char sword__SWModule_error(xsd__int hmodule); +//int sword__SWModule_getEntrySize(xsd__int hmodule); +//void sword__SWModule_setKeyText(xsd__int hmodule, char *key); +//char *sword__SWModule_getKeyText(xsd__int hmodule); +int sword__SWModule_getName(xsd__int hmodule, xsd__string &name); +int sword__SWModule_getDescription(xsd__int hmodule, xsd__string &description); +//char *sword__SWModule_getType(xsd__int hmodule); +//void sword__SWModule_previous(xsd__int hmodule); +//void sword__SWModule_next(xsd__int hmodule); +//void sword__SWModule_begin(xsd__int hmodule); +//char *sword__SWModule_getStripText(xsd__int hmodule); +//char *sword__SWModule_getRenderText(xsd__int hmodule); + + +int sword__Quick_getModuleRawEntry(xsd__string modName, xsd__string modKey, xsd__string &modText); +int sword__Quick_setModuleRawEntry(xsd__string modName, xsd__string modKey, xsd__string modText, xsd__int &noop); +int sword__Quick_getModuleRenderText(xsd__string modName, xsd__string modKey, xsd__string &modText); +int sword__Quick_getJScriptAttribArray(xsd__string modName, xsd__string modKey, xsd__string &arrayText); +#endif diff --git a/bindings/gsoap/include/stdsoap.h b/bindings/gsoap/include/stdsoap.h new file mode 100644 index 0000000..462483a --- /dev/null +++ b/bindings/gsoap/include/stdsoap.h @@ -0,0 +1,493 @@ +/* stdsoap.h + + Copyright (C) 2001 Robert A. van Engelen, Florida State University. + All rights reserved. +*/ + +#include +#include +#include +#include +#include +#include +#include +#ifndef WIN32 +#include /* for TCP_NODELAY */ +#include +#endif + +#ifdef WITH_OPENSSL +#include +#include +#ifndef ALLOW_OLD_VERSIONS +#if (OPENSSL_VERSION_NUMBER < 0x00905100L) +#error "Must use OpenSSL 0.9.6 or later" +#endif +#endif +#endif + +#include /* for isnan(): remove if NAN and INF support is not required */ +#include /* for time_t (xsd:dateTime) support, remove if not required */ + +#ifndef _MATH_H +#define isnan(_) (0) +#else +extern struct soap_double_nan { int n1, n2; } soap_double_nan; +#endif + +#ifndef STDSOAP +#define STDSOAP + +#ifndef WIN32 +#define LONG64 long long +#define ULONG64 unsigned long long +#endif + +/* #define DEBUG */ /* Uncomment to debug sending (in file SENT.log) receiving (in file RECV.log) and messages (in file TEST.log) */ + +#define SOAP_BUFLEN 8192 /* buffer length for socket packets */ +#define SOAP_MAXLEN 256 /* maximum length of buffer to hold XML number representations */ +#define SOAP_PTRHASH 1024 /* size of pointer analysis hash table (must be power of 2) */ +#define SOAP_IDHASH 16 /* size of hash table for element id's */ +#define SOAP_BLKLEN 256 /* size of blocks to collect long strings */ +#define SOAP_TAGLEN 256 /* maximum length of XML tag/element names + 1 */ + +typedef long wchar; /* for compatibility */ + +#ifndef FLT_NAN +#ifdef _MATH_H +#define FLT_NAN (*(float*)&soap_double_nan) +#else +#define FLT_NAN (0.0) +#endif +#endif +#ifndef FLT_PINFTY +#ifdef HUGE_VAL +#define FLT_PINFTY (float)HUGE_VAL +#else +#ifdef FLT_MAX +#define FLT_PINFTY FLT_MAX +#else +#ifdef FLOAT_MAX +#define FLT_PINFTY FLOAT_MAX +#else +#define FLT_PINFTY (3.40282347e+38) +#endif +#endif +#endif +#endif +#ifndef FLT_NINFTY +#define FLT_NINFTY (-FLT_PINFTY) +#endif + +#ifndef DBL_NAN +#ifdef _MATH_H +#define DBL_NAN (*(double*)&soap_double_nan) +#else +#define DBL_NAN (0.0) +#endif +#endif +#ifndef DBL_PINFTY +#ifdef HUGE_VAL +#define DBL_PINFTY (double)HUGE_VAL +#else +#ifdef DBL_MAX +#define DBL_PINFTY DBL_MAX +#else +#ifdef DOUBLE_MAX +#define DBL_PINFTY DOUBLE_MAX +#else +#define DBL_PINFTY (1.7976931348623157e+308) +#endif +#endif +#endif +#endif +#ifndef DBL_NINFTY +#define DBL_NINFTY (-DBL_PINFTY) +#endif + +extern int (*soap_fpost)(const char*, const char*, const char*, const char*, size_t); +extern int (*soap_fresponse)(int, size_t); +extern int (*soap_fparse)(); +extern int (*soap_fopen)(const char*, const char*, int); +extern int (*soap_fclose)(); +extern int (*soap_fsend)(const char*, size_t); +extern size_t (*soap_frecv)(char*, size_t); +extern int (*soap_fignore)(const char*); + +extern const char *soap_float_format; /* points to user-definable format string */ +extern const char *soap_double_format; /* points to user-definable format string */ + +extern const char *soap_http_version; /* default = "1.0" */ +extern const char *soap_encodingStyle; /* default = NULL which means that SOAP encoding is used for marshalling */ +extern const char *soap_defaultNamespace; /* default = NULL which means that no default namespace is used */ +extern int soap_disable_href; /* when !=0, disables hrefs so objects are duplicated on the output */ +extern int soap_enable_embedding; /* when !=0, enable hrefs within embedded elements */ +extern int soap_enable_null; /* when !=0, always sends null elements */ +extern int soap_enable_utf_string; /* when !=0, assume strings are UTF8/16 encoded and just emit them */ +extern int soap_disable_request_count; /* when !=0, do not include HTTP Content-Length in request */ +extern int soap_disable_response_count; /* when !=0, do not include HTTP Content-Length in service response (normally calculated by the Web server in case CGI is used so disabling saves time) */ +extern int soap_enable_array_overflow; /* when !=0, allows ignoring remaining elements that do not fit in a fixed-size array */ +extern int soap_keep_alive; /* when !=0, set SO_KEEPALIVE socket and do not close sockets, unless new host/port is accessed */ + +extern const char *soap_proxy_host; +extern int soap_proxy_port; + +#ifdef WITH_OPENSSL +extern SSL_CTX *soap_ssl_ctx; +extern BIO *soap_bio; +extern SSL *soap_ssl; +extern int soap_require_server_auth; +extern const char *soap_keyfile; +extern const char *soap_password; +extern const char *soap_dhfile; +extern const char *soap_cafile; +#endif + +#ifdef WIN32 +#include +#include +#else +#include +#include +#include +#include +#define closesocket(n) close(n) +#endif + +int soap_serve(); + +extern void soap_serializeheader(); +extern void soap_putheader(); +extern int soap_getheader(); +extern void soap_serializefault(); +extern void soap_putfault(); +extern int soap_getfault(); +extern void soap_putindependent(); +extern int soap_getindependent(); + +int soap_bind(const char *hostname, int port, int backlog); +int soap_accept(); +int soap_ssl_accept(); + +struct Namespace {const char *id, *ns, *in;}; +extern struct Namespace namespaces[]; + +static FILE * fdebug; + +struct soap_entry +{ int id; + void *entry; + int type; + short marked1; + short marked2; + struct soap_entry *next; +}; + +extern char soap_tag[SOAP_TAGLEN]; /* used by soap_element_begin_in */ +extern char soap_id[SOAP_TAGLEN]; /* set by soap_element_begin_in */ +extern char soap_href[SOAP_TAGLEN]; /* set by soap_element_begin_in */ +extern char soap_type[SOAP_TAGLEN]; +extern char soap_arrayType[SOAP_TAGLEN]; +extern char soap_arraySize[SOAP_TAGLEN]; +extern char soap_xmlns_name[SOAP_TAGLEN]; +extern char soap_xmlns_value[SOAP_TAGLEN]; +extern char soap_offset[SOAP_TAGLEN]; /* ditto */ +extern int soap_position; /* ditto */ +extern int soap_positions[32]; /* ditto */ +extern int soap_null; /* ditto */ +extern int soap_counting; +extern int soap_level; +extern int soap_is_in_header; + +/* Defining the std soap error codes */ + +#define SOAP_OK 0 +#define SOAP_CLI_FAULT 1 +#define SOAP_SVR_FAULT 2 +#define SOAP_TAG_MISMATCH 3 +#define SOAP_TYPE_MISMATCH 4 +#define SOAP_SYNTAX_ERROR 5 +#define SOAP_NO_TAG 6 +#define SOAP_IOB 7 +#define SOAP_MUSTUNDERSTAND 8 +#define SOAP_NAMESPACE 9 +#define SOAP_OBJ_MISMATCH 10 +#define SOAP_FATAL_ERROR 11 +#define SOAP_FAULT 12 +#define SOAP_NO_METHOD 13 +#define SOAP_EOM 14 +#define SOAP_NULL 15 +#define SOAP_MULTI_ID 16 +#define SOAP_MISSING_ID 17 +#define SOAP_HREF 18 +#define SOAP_TCP_ERROR 19 +#define SOAP_HTTP_ERROR 20 +#define SOAP_SSL_ERROR 21 +#define SOAP_EOF EOF + +extern int soap_error ; + +/* DEBUG macros */ + +#ifdef DEBUG +#define DBGLOG(DBGFILE, DBGCMD) \ +{\ + fdebug = fopen(#DBGFILE".log", "a");\ + DBGCMD;\ + fclose(fdebug);\ +} +#else +#define DBGLOG(DBGFILE, DBGCMD) +#endif + +struct soap_class +{ void *ptr; + int type; + int size; + struct soap_class *next; +}; + +extern struct soap_class *soap_class_chain; + +struct soap_stack +{ struct soap_stack *next; + char *id; + int i; + int level; +}; + +/* Hash table (temporarily replaced by array indexing) */ + +extern struct soap_entry *soap_ptr[SOAP_PTRHASH]; + +/*int sock;*/ +extern int soap_socket; +extern int soap_recvfd; +extern int soap_sendfd; +extern int soap_buffering; +extern unsigned long soap_ip; /* IP address of connecting party after soap_accept() */ + +/* send routine */ +int soap_send(const char *buf); + +int soap_send_hex(int); +int soap_send_base64(const unsigned char *, size_t); + +int soap_gethex(); +unsigned char *soap_getbase64(int *, int); + +extern int errmode ; + +int soap_pointer_lookup(const void *p, int t,struct soap_entry **np1); +int soap_array_pointer_lookup(const void *p, int n, int t, struct soap_entry **np1); +int soap_pointer_lookup_id(void *p, int t,struct soap_entry **np1); +int soap_pointer_enter(const void *p, int t,struct soap_entry **np1); +int soap_array_pointer_enter(const void *p, int t, struct soap_entry **np1); +void soap_pointer_dump(); +void soap_begin_count(); +void soap_begin_send(); +int soap_end_send(); + +void soap_embedded(const void *p, int t); +int soap_reference(const void *p, int t); +int soap_array_reference(const void *p, int n, int t); +int soap_embedded_id(int id, const void *p, int t); +int soap_is_embedded(struct soap_entry *); +int soap_is_single(struct soap_entry *); +int soap_is_multi(struct soap_entry *); +void soap_set_embedded(struct soap_entry *); + +int soap_begin_recv(); +int soap_end_recv(); +int soap_getline(char *, int); + +void soap_send_namespaces(); + +#ifdef WIN32 +#define atoll atoi +#else +extern void itoa(int, char*); +#endif + +/* The hash table to hold IDs needs entries of the form: */ +struct soap_hash_entry +{ int type; + size_t size; + void *link; + void *copy; + void *ptr; + int level; + struct soap_hash_entry *next; + char s[4]; +}; + +extern struct soap_hash_entry *soap_hash[SOAP_IDHASH]; + +extern int soap_alloced ; /* keep this info so we know that object must be init'ed */ +extern void *soap_malloc_chain ; + +void * soap_malloc(size_t n); +void soap_dealloc(void *p); + +int soap_lookup_type(const char *id); + +void * soap_id_lookup(const char *id, void **p, int t, size_t n, int k); + +void * soap_id_forward(const char *id, void *p, int t, size_t n); + +void * soap_id_enter(const char *id, void *p, int t, size_t n, int k); +void * soap_class_id_enter(const char *id, void *p, int t, const char *type); + +extern int soap_size(const int *, int); +extern int soap_getoffsets(const char *, const int *, int *, int); +extern int soap_getsize(const char *, const char *, int *); +extern int soap_getsizes(const char *, int *, int); +extern int soap_getposition(const char *, int *); +extern char * soap_putsize(const char *, int); +extern char * soap_putsizesoffsets(const char *, const int *, const int *, int); +extern char * soap_putsizes(const char *, const int *, int); +extern char * soap_putoffset(int); +extern char * soap_putoffsets(const int *, int); +extern char * soap_putposition(); + +extern int soap_peeked ; +extern int soap_body; + +/* Support routines (library) */ +int soap_ignore_element(); + +int soap_closesock(); + +void soap_init(); +void soap_begin(); + +int soap_match_tag(const char*, const char *); + +int soap_match_array(const char*); + +void soap_end(); +void soap_free(); +void soap_destroy(); + +void soap_element_begin_out(const char *tag, int id, const char *type); +void soap_array_begin_out(const char *tag, int id, const char *type, const char *offset); + +void soap_element_end_out(const char *tag); + +void soap_element_ref(const char *tag, int id, int href); + +void soap_element_null(const char *tag, int id, const char *type); + +int soap_element_begin_in(const char *tag); + +int soap_element_end_in(const char *tag); + +int soap_peek_element(); +void soap_revert(); + +int soap_ignore_element(); + +void soap_convert_string_out(const char *s); + +int soap_match_namespace(const char*, const char*, int, int); + +void soap_pop_namespace(); +int soap_push_namespace(const char *,const char *); + +extern int soap_block_size; +extern int soap_new_block(); +extern void *soap_push_block(size_t); +extern void soap_pop_block(); +extern void soap_store_block(char *); + +void *soap_instantiate(int t, const char *); +void soap_delete(void *, int, int); + +void soap_outint(const char *tag, int id, const int *p, const char *, int); +int * soap_inint(const char *tag, int *p, const char *, int); + +void soap_outbyte(const char *tag, int id, const char *p, const char *, int); +char * soap_inbyte(const char *tag, char *p, const char *, int); + +void soap_outlong(const char *tag, int id, const long *p, const char *, int); +long * soap_inlong(const char *tag, long *p, const char *, int); + +void soap_outLONG64(const char *tag, int id, const LONG64 *p, const char *, int); +LONG64 * soap_inLONG64(const char *tag, LONG64 *p, const char *, int); + +void soap_outshort(const char *tag, int id, const short *p, const char *, int); +short * soap_inshort(const char *tag, short *p, const char *, int); + +void soap_outfloat(const char *tag, int id, const float *p, const char *, int); +float * soap_infloat(const char *tag, float *p, const char *, int); + +void soap_outdouble(const char *tag, int id, const double *p, const char *, int); +double * soap_indouble(const char *tag, double *p, const char *, int); + +void soap_outunsignedByte(const char *tag, int id, const unsigned char *p, const char *, int); +unsigned char * soap_inunsignedByte(const char *tag, unsigned char *p, const char *, int); + +void soap_outunsignedShort(const char *tag, int id, const unsigned short *p, const char *, int); +unsigned short * soap_inunsignedShort(const char *tag, unsigned short *p, const char *, int); + +void soap_outunsignedInt(const char *tag, int id, const unsigned int *p, const char *, int); +unsigned int * soap_inunsignedInt(const char *tag, unsigned int *p, const char *, int); + +void soap_outunsignedLong(const char *tag, int id, const unsigned long *p, const char *, int); +unsigned long * soap_inunsignedLong(const char *tag, unsigned long *p, const char *, int); + +void soap_outunsignedLONG64(const char *tag, int id, const ULONG64 *p, const char *, int); +ULONG64 * soap_inunsignedLONG64(const char *tag, ULONG64 *p, const char *, int); + +void soap_outstring(const char *tag, int id, char *const*p, const char *, int); +char ** soap_instring(const char *tag, char **p, const char *, int); + +void soap_outwstring(const char *tag, int id, wchar_t *const*p, const char *, int); +wchar_t **soap_inwstring(const char *tag, wchar_t **p, const char *, int); + +void soap_outliteral(const char *tag, char *const*p); +char **soap_inliteral(const char *tag, char **p); + +void soap_outwliteral(const char *tag, wchar_t *const*p); +wchar_t **soap_inwliteral(const char *tag, wchar_t **p); + +#ifdef _TIME_H +void soap_outdateTime(const char *tag, int id, const time_t *p, const char *, int); +time_t *soap_indateTime(const char *tag, time_t *p, const char *, int); +#endif + +char *soap_value(); + +wchar soap_skip(); + +/* 1. generate the prototypes and encode all types (base types are defined above) */ + +void soap_envelope_begin_out(); +void soap_envelope_end_out(); + +int soap_envelope_begin_in(); +int soap_envelope_end_in(); + +void soap_body_begin_out(); +void soap_body_end_out(); + +int soap_body_begin_in(); +int soap_body_end_in(); + +int soap_recv_header(); + +int soap_connect(const char *URL, const char *action); + +int soap_response(); + +/* Methods dealing with the fault struct*/ + +int soap_send_fault(); + +int soap_recv_fault(); + +extern void soap_print_fault(FILE*); +extern void soap_print_fault_location(FILE*); + +#endif diff --git a/bindings/gsoap/soapcpp b/bindings/gsoap/soapcpp new file mode 100755 index 0000000..462b1b5 Binary files /dev/null and b/bindings/gsoap/soapcpp differ diff --git a/bindings/gsoap/stdsoap.o b/bindings/gsoap/stdsoap.o new file mode 100644 index 0000000..2e4bae8 Binary files /dev/null and b/bindings/gsoap/stdsoap.o differ diff --git a/bindings/gsoap/testclient.cpp b/bindings/gsoap/testclient.cpp new file mode 100644 index 0000000..b0d4d94 --- /dev/null +++ b/bindings/gsoap/testclient.cpp @@ -0,0 +1,76 @@ +#include "soapH.h" +#include + +char server[] = "http://localhost:18083"; + +int main(int argc, char **argv) { + xsd__int mgr; + xsd__int noop; + + if (soap_call_sword__SWMgr_new(server, NULL, mgr)) { + soap_print_fault(stderr); + soap_print_fault_location(stderr); + exit(-1); + } + + xsd__int modIt; + if (soap_call_sword__SWMgr_getModulesIterator(server, NULL, mgr, modIt)) { + soap_print_fault(stderr); + soap_print_fault_location(stderr); + exit(-1); + } + + xsd__int module; + do { + if (soap_call_sword__ModList_iterator_val(server, NULL, modIt, module)) { + soap_print_fault(stderr); + soap_print_fault_location(stderr); + exit(-1); + } + + + if (module) { + char *name; + char *desc; + if (soap_call_sword__SWModule_getName(server, NULL, module, name)) { + soap_print_fault(stderr); + soap_print_fault_location(stderr); + exit(-1); + } + if (soap_call_sword__SWModule_getDescription(server, NULL, module, desc)) { + soap_print_fault(stderr); + soap_print_fault_location(stderr); + exit(-1); + } + + cout << "[" << name << "] " << desc << endl; + + if (soap_call_sword__ModList_iterator_next(server, NULL, modIt, noop)) { + soap_print_fault(stderr); + soap_print_fault_location(stderr); + exit(-1); + } + } + + + } while (module); + + if (soap_call_sword__SWMgr_delete(server, NULL, mgr, noop)) { + soap_print_fault(stderr); + soap_print_fault_location(stderr); + exit(-1); + } + char *text; + if (soap_call_sword__Quick_getModuleRenderText(server, NULL, "KJV", "jas1:19", text)) { + soap_print_fault(stderr); + soap_print_fault_location(stderr); + exit(-1); + } + cout << text << endl; + + printf("success: %d\n", mgr); + soap_free(); + return 0; +} + +#include "sword.nsmap" diff --git a/bindings/perl/Changes b/bindings/perl/Changes new file mode 100644 index 0000000..e21158d --- /dev/null +++ b/bindings/perl/Changes @@ -0,0 +1,18 @@ +Revision history for Perl extension Sword. + +0.01 Mon Jul 16 12:08:07 2001 + - original version; created by h2xs 1.21 with options + -A -n Sword + - Basic verse movement w/next and prev + +0.02 Thu Jul 20 2001 + - Added search, go to verse movement + +0.3 Sat Jul 21 2001 + - Added verse list, verse range support + - Added (untested) locale support + - Made documentation + - Fixed bugs + +0.31 Sun Jun 09 2002 Joachim Ansorg + -Fixed some compilation problems diff --git a/bindings/perl/Makefile.PL b/bindings/perl/Makefile.PL new file mode 100644 index 0000000..4255b5a --- /dev/null +++ b/bindings/perl/Makefile.PL @@ -0,0 +1,91 @@ +use ExtUtils::MakeMaker; + +my $sword_lib_path; +my $sword_lib_path_raw; +my $sword_include_path; + +sub find_inc { + my ($inc_dir) = @_; + if(-f "$inc_dir/swmgr.h") { + print "$inc_dir.\n"; + $sword_include_path = "-I$inc_dir "; + return 1; + } else { + if($inc_dir !~ /sword$/) { + return find_inc("$inc_dir/sword"); + } + return; + } +} + +sub find_lib { + my ($lib_dir) = @_; + if(-f "$lib_dir/libsword.a") { + print "$lib_dir.\n"; + $sword_lib_path = "-L$lib_dir "; + $sword_lib_path_raw = "$lib_dir"; + return 1; + } else { + return; + } +} + +sub search_lib_path { + print "Searching for Sword library ... "; + foreach my $lib_dir (@_) { + if(find_lib($lib_dir)) { + return 1; + } + } + print join(" ", @_), "\n"; + die "Sword not found! Set SWORD_LIB_PATH to the directory where your libsword.a is. +You can download Sword from http://www.crosswire.org. +"; +} + +sub search_inc_path { + print "Searching for Sword headers ... "; + foreach my $inc_dir (@_) { + if(find_inc($inc_dir)) { + return 1; + } + } + print join(" ", @_), "\n"; + die "Sword headers not found! Set SWORD_INCLUDE_PATH to the directory where your Sword include files are.\n"; +} + +sub one_dir_up { + my ($dir) = @_; + $dir =~ s!/[^/]+/*$!!g; + return $dir ? $dir : "/"; +} + +search_lib_path($ENV{SWORD_LIB_PATH}, $ENV{SWORD_PATH}, one_dir_up($ENV{SWORD_PATH}) . "/lib", "/lib", "/usr/lib", "/usr/local/lib", split(":", $ENV{LD_LIBRARY_PATH})); + +search_inc_path(one_dir_up($sword_lib_path_raw) . "/include", $ENV{SWORD_INCLUDE_PATH}, $ENV{SWORD_PATH}, one_dir_up($ENV{SWORD_PATH}) . "/include", "/usr/include", "/usr/local/include"); +if(! $sword_include_path ) { +} + + +$CC = 'g++'; + +# See lib/ExtUtils/MakeMaker.pm for details of how to influence +# the contents of the Makefile that is written. +WriteMakefile( + 'NAME' => 'Sword', + 'VERSION_FROM' => 'Sword.pm', # finds $VERSION + 'PREREQ_PM' => {}, # e.g., Module::Name => 1.1 + ($] >= 5.005 ? ## Add these new keywords supported since 5.005 + (ABSTRACT_FROM => 'Sword.pm', # retrieve abstract from module + AUTHOR => 'John Keiser ') : ()), + 'LIBS' => ["$sword_lib_path-lsword -lz"], # e.g., '-lm' + 'DEFINE' => '', # e.g., '-DHAVE_SOMETHING' + 'CC' => $CC, + 'LD' => '$(CC)', + # Insert -I. if you add *.h files later: + 'INC' => "$sword_include_path", # e.g., '-I/usr/include/other' + # Un-comment this if you add C files to link with later: + # 'OBJECT' => '$(O_FILES)', # link all the C files too + 'XSOPT' => '-C++', + 'TYPEMAPS' => ['perlobject.map' ], +); diff --git a/bindings/perl/README b/bindings/perl/README new file mode 100644 index 0000000..a03d9cb --- /dev/null +++ b/bindings/perl/README @@ -0,0 +1,36 @@ +Sword version 0.31 +================== + +The README is used to introduce the module and provide instructions on +how to install the module, any machine dependencies it may have (for +example C compilers and installed libraries) and any other information +that should be provided before the module is installed. + +A README file is required for CPAN modules since CPAN extracts the +README file from a module distribution so that people browsing the +archive can use it get an idea of the modules uses. It is usually a +good idea to provide version information here so that people can +decide whether fixes for the module are worth downloading. + +INSTALL +------- + +tar xzvf Sword-0.01.tar.gz +cd Sword-0.01 +perl Makefile.PL +make +make install + +If you have trouble with the first step, it's because the Makefile can't find Sword.  Set the lib path in your LD_LIBRARY_PATH or set the SWORD_LIB_PATH environment variable to the path to libsword.a. + + +HELP +--- +"man Sword" or "perldoc Sword" after install for examples that will help you. + + +COPYRIGHT AND LICENCE + +This program is licensed under the GPL. + +Copyright (C) 2001 John Keiser diff --git a/bindings/perl/Sword.pm b/bindings/perl/Sword.pm new file mode 100644 index 0000000..04aa2fe --- /dev/null +++ b/bindings/perl/Sword.pm @@ -0,0 +1,1087 @@ +package Sword; + +use 5.006; +use strict; +use warnings; + +require Exporter; +require DynaLoader; + +our @ISA = qw(Exporter DynaLoader); + +# Items to export into callers namespace by default. Note: do not export +# names by default without a very good reason. Use EXPORT_OK instead. +# Do not simply export all your public functions/methods/constants. + +# This allows declaration use Sword ':all'; +# If you do not need this, moving things directly into @EXPORT or @EXPORT_OK +# will save memory. +our %EXPORT_TAGS = ( 'all' => [ qw( + get_modules + get_verse +) ] ); + +our @EXPORT_OK = ( @{ $EXPORT_TAGS{'all'} } ); + +our @EXPORT = qw( + +); +our $VERSION = '0.31'; + +bootstrap Sword $VERSION; + +# Preloaded methods go here. +sub get_verse { + my ($verse, $mod) = @_; + if(!$mod) { + $mod = (get_modules())[0]; + } + + my $vi = new Sword::VerseIterator $mod; + if(!$vi->go_to_verse($verse)) { + return; + } else { + return $vi->get_verse(); + } +} + +my %base_modules; + +sub get_module { + my ($mod) = @_; + $base_modules{$mod} = new Sword::Module($mod) if !$base_modules{$mod}; + return $base_modules{$mod} +} + +1; + + +package Sword::VerseIterator; + +sub set_book { + my $this = shift; + + my ($book) = @_; + $this->go_to_verse($book . " 1:1"); +} + +1; + + +package Sword::Module; + +sub new { + my $class = shift; + $class = ref($class) || $class; + my $this = {}; + bless $this, $class; + + my ($module_name) = @_; + $this->{MOD_NAME} = $module_name; + $this->{VI} = new Sword::VerseIterator($module_name); + + return $this; +} + +sub _initialize_book_list { + my $this = shift; + if(! $this->{BOOKS} ) { + $this->{BOOKS} = {}; + $this->{BOOK_ARRAY} = []; + foreach my $book ($this->{VI}->_get_books) { + $book->{real_book_num} = @{$this->{BOOK_ARRAY}}; + $this->{BOOKS}{$book->{name}} = $book; + push @{$this->{BOOK_ARRAY}}, $book->{name}; + } + } +} + +sub get_books { + my $this = shift; + $this->_initialize_book_list(); + + return @{$this->{BOOK_ARRAY}}; +} + +sub get_num_chapters { + my $this = shift; + $this->_initialize_book_list(); + + my ($book) = @_; + $book = $this->_canonicalize_book($book); + return $this->{BOOKS}{$book}{num_chapters}; +} + +sub get_num_verses_list { + my $this = shift; + $this->_initialize_book_list(); + + my ($book) = @_; + $book = $this->_canonicalize_book($book); + return @{$this->{BOOKS}{$book}{chapter_maxes}}; +} + +sub get_testament { + my $this = shift; + $this->_initialize_book_list(); + + my ($book) = @_; + $book = $this->_canonicalize_book($book); + return $this->{BOOKS}{$book}{testament_num} ? "NT" : "OT"; +} + +sub get_book_num { + my $this = shift; + $this->_initialize_book_list(); + + my ($book) = @_; + $book = $this->_canonicalize_book($book); + return $this->{BOOKS}{$book}{book_num}; +} + +sub get_iterator { + my $this = shift; + $this->_initialize_book_list(); + + my ($verse) = @_; + my $retval = new Sword::VerseIterator($this->{MOD_NAME}); + $retval->go_to_verse($verse) if $verse; + return $retval; +} + +sub get_verse { + my $this = shift; + $this->_initialize_book_list(); + + my ($verse) = @_; + $this->{VI}->go_to_verse($verse); + return $this->{VI}->get_verse; +} + +sub search { + my $this = shift; + + my ($term) = @_; + return $this->{VI}->_search($term); +} + +sub search_verses { + my $this = shift; + + my ($term) = @_; + return $this->{VI}->_search_verses($term); +} + +sub get_name { + my $this = shift; + + return $this->{VI}->_get_module_name(); +} + +sub get_description { + my $this = shift; + + return $this->{VI}->_get_module_desc(); +} + +sub get_type { + my $this = shift; + + return $this->{VI}->_get_module_type(); +} + +sub _canonicalize_book { + my $this = shift; + my ($book) = @_; + $this->_initialize_book_list(); + return $book if $this->{BOOKS}{$book}; + $this->{VI}->set_book($book); + return $this->{VI}->get_book(); +} + + +# Verse stuff + +sub verse_greater { + my $this = shift; + + my ($verse1, $verse2) = @_; + # Problem w/ sword comparing NT and OT? + #return $this->{VI}->_verse_greater($verse1, $verse2); + + return -1 if ! $this->{VI}->go_to_verse($verse1); + my $chap1 = $this->{VI}->get_chapter_num(); + my $verse_num1 = $this->{VI}->get_verse_num(); + my $book_struct_1 = $this->{BOOKS}{$this->{VI}->get_book()}; + + return -1 if ! $this->{VI}->go_to_verse($verse2); + my $chap2 = $this->{VI}->get_chapter_num(); + my $verse_num2 = $this->{VI}->get_verse_num(); + my $book_struct_2 = $this->{BOOKS}{$this->{VI}->get_book()}; + + return 1 if $book_struct_1->{real_book_num} > $book_struct_2->{real_book_num}; + return 0 if $book_struct_1->{real_book_num} < $book_struct_2->{real_book_num}; + return 1 if $chap1 > $chap2; + return 0 if $chap1 < $chap2; + return 1 if $verse_num1 > $verse_num2; + return 0 if $verse_num1 < $verse_num2; + return 0; +} + +# This method assumes that the lists are sorted. +sub union_verse_list { + my $this = shift; + + my ($list1, $list2) = @_; + my @retval; + + my $i1 = 0; + my $i2 = 0; + my $val; + while($i1 < @{$list1} || $i2 < @{$list2}) { + if($i1 < @{$list1}) { + if($i2 < @{$list2} && $this->verse_greater($list1->[$i1], $list2->[$i2])) { + $val = $list2->[$i2]; + } else { + $val = $list1->[$i1]; + } + } else { + $val = $list2->[$i2]; + } + + push @retval, $val; + + # Move past duplicates + while($i1 < @{$list1} && $list1->[$i1] eq $val) { + $i1++; + } + while($i2 < @{$list2} && $list2->[$i2] eq $val) { + $i2++; + } + } + + return @retval; +} + + +# This method assumes that the lists are sorted. +sub intersect_verse_list { + my $this = shift; + + my ($list1, $list2) = @_; + my @retval; + + my $i1 = 0; + my $i2 = 0; + my $val; + while($i1 < @{$list1} && $i2 < @{$list2}) { + if($list1->[$i1] eq $list2->[$i2]) { + $val = $list1->[$i1]; + push @retval, $list1->[$i1]; + } elsif($this->verse_greater($list1->[$i1], $list2->[$i2])) { + $val = $list2->[$i2]; + } else { + $val = $list1->[$i1]; + } + + # Move past duplicates + while($i1 < @{$list1} && $list1->[$i1] eq $val) { + $i1++; + } + while($i2 < @{$list2} && $list2->[$i2] eq $val) { + $i2++; + } + } + + return @retval; +} + +# XXX this is somewhat inefficient right now (though not as bad as intersect) +sub union_verse_range { + my $this = shift; + my ($list1, $list2) = @_; + + my @full_list = (@{$list1}, @{$list2}); + @full_list = $this->sort_verse_range(@full_list); + return $this->condense_verse_range(@full_list); +} + +# XXX this is inefficient as heck right now +sub intersect_verse_range { + my $this = shift; + my ($list1, $list2) = @_; + + my @vlist1 = $this->expand_verse_range(@{$list1}); + my @vlist2 = $this->expand_verse_range(@{$list2}); + + my @retval = $this->intersect_verse_list(\@vlist1, \@vlist2); + + return $this->condense_verse_range(@retval); +} + +sub _parse_verse_ref { + my $this = shift; + + my ($verse_ref, $interpret_as_chapter) = @_; + + return ("", -1, -1) if(!$verse_ref); + + if (! ($verse_ref =~ /^\s*(.*[A-Za-z])?\s*(\d*\s*:?\s*\d*)\s*$/)) { + die " >> No book, chapter or verse found ($verse_ref).\n"; + } + + my $book = $1 ? $this->_canonicalize_book($1) : ""; + my $num_ref = $2; + $num_ref =~ s/\s*//g; + return ($book, -1, -1) if ! $num_ref; + print " >> Bad numeric reference ($num_ref).\n" if ! ($num_ref =~ /^(\d+):?(\d*)$/); + return ($book, -1, $1) if ! $book && ! $2 && ! $interpret_as_chapter; + return ($book, $1, -1) if ! $2; + return ($book, $1, $2); +} + +sub parse_verse_range { + my $this = shift; + + my ($verse_list, $include_zeroes, $split_books, $default_book) = @_; + + my @retval; + + # + # The default book to use if the person decides to specify just + # chapters and verses. If the person specifies a book in the + # query string, that is the book that will be used thereafter. + # + my $prev_book = $default_book ? $default_book : "Genesis"; + # + # Note that you can't specify a verse without first having specified + # a chapter (at some point), so this value won't be used. + # + my $prev_chapter = $include_zeroes ? 0 : 1; + + foreach my $outer_part (split(/;/, $verse_list)) { + my $interpret_as_chapter = 1; + foreach my $part (split(/,/, $outer_part)) { + die "Too many dashes or nothing in front of the dash: $part" if !($part =~ /^([^-]+)-?([^-]*)$/); + + # + # Get first verse part + # + my ($book1, $chap1, $verse1) = $this->_parse_verse_ref($1, $interpret_as_chapter); + + # Save the specified book/chapter/verse. + my ($orig_book2, $orig_chap2, $orig_verse2) = ($book1, $chap1, $verse1); + # Start interpreting raw numbers as chapters if book was specified. + $interpret_as_chapter = 1 if $book1; + # Start interpreting raw numbers as verses if verse was specified. + $interpret_as_chapter = 0 if $verse1 != -1; + + # + # Figure out the implied parts from the parts given + # + # book: chapter 1, verse 1 + # book+chapter: verse 1 + # book+verse: impossible + # book+chapter+verse: nothing + # chapter: prev. book, verse 1 + # chapter+verse: prev. book + # verse: prev. book, prev. chapter + # nothing: impossible + # + # TRANSLATION: + # BOOK: prev. book + # CHAPTER: chapter 1 if book specified, prev. chapter if no book specified + # VERSE: verse 1 + # + $chap1 = ($include_zeroes ? 0 : 1) if $book1 && $chap1 == -1; + $book1 = $prev_book if !$book1; + $chap1 = $prev_chapter if $chap1 == -1; + $verse1 = ($include_zeroes ? 0 : 1) if $verse1 == -1; + + # + # Verify chapter/verse is in range + # + if($chap1 > $this->{BOOKS}{$book1}{num_chapters}) { + die "$book1 $chap1:$verse1 invalid: $chap1 is not a chapter in $book1 (valid chapters are 1-" . $this->{BOOKS}{$book1}{num_chapters} . ")"; + } + if($verse1 > @{$this->{BOOKS}{$book1}{chapter_maxes}}[$chap1 - 1]) { + die "$book1 $chap1:$verse1 invalid: $verse1 is not a verse in $book1 $chap1 (valid chapters are 1-" . @{$this->{BOOKS}{$book1}{chapter_maxes}}[$chap1 - 1] . ")"; + } + + + # + # Get second verse part + # + my ($book2, $chap2, $verse2) = $this->_parse_verse_ref($2, $interpret_as_chapter); + + # + # Copy any elements specified from the first one into the second. + # "Genesis" = "Genesis-Genesis" + # "4:9" = "4:9-4:9" + # "5:1-12" = "5:1-5:12" + # "Exodus 4:8-Leviticus" = "Exodus 4:8-Leviticus" + # + if(!$book2) { + $book2 = $orig_book2; + if($chap2 == -1) { + $chap2 = $orig_chap2; + if($verse2 == -1) { + $verse2 = $orig_verse2; + } + } + } + + # + # Figure out the implied parts from the parts given + # + # book: last chapter, last verse + # book+chapter: last verse + # book+verse: impossible + # book+chapter+verse: nothing + # chapter: same book, last verse + # chapter+verse: same book + # verse: same book, same chapter + # nothing: impossible (elements would be copied from first part) + # + # TRANSLATION: + # BOOK: same book + # CHAPTER: last chapter if book specified, same chapter if no book specified + # VERSE: last verse + # + $chap2 = $chap1 if !$book2 && $chap2 == -1; + $book2 = $book1 if !$book2; + $chap2 = $this->{BOOKS}{$book2}{num_chapters} if $chap2 == -1; + $verse2 = @{$this->{BOOKS}{$book2}{chapter_maxes}}[$chap2 - 1] if $verse2 == -1; + + # + # Verify chapter/verse is in range + # + if($chap2 > $this->{BOOKS}{$book2}{num_chapters}) { + die "$book2 $chap2:$verse2 invalid: $chap2 is not a chapter in $book2 (valid chapters are 1-" . $this->{BOOKS}{$book2}{num_chapters} . ")"; + } + if($verse2 > @{$this->{BOOKS}{$book2}{chapter_maxes}}[$chap2 - 1]) { + die "$book2 $chap2:$verse2 invalid: $verse2 is not a verse in $book2 $chap2 (valid chapters are 1-" . @{$this->{BOOKS}{$book2}{chapter_maxes}}[$chap2 - 1] . ")"; + } + + #print " > $book1 $chap1:$verse1 - $book2 $chap2:$verse2\n"; + + # Save previous book/chapter + $prev_book = $book2; + $prev_chapter = $chap2; + + if ($this->verse_greater("$book1 $chap1:$verse1", "$book2 $chap2:$verse2")) { + die "Range $book1 $chap1:$verse1 - $book2 $chap2:$verse2 invalid: second verse must be the same or higher than the first verse."; + } + + if(! $split_books || $book1 eq $book2) { + push @retval, [ "$book1 $chap1:$verse1", "$book2 $chap2:$verse2" ]; + } else { + # First book + my $last_chapter = $this->{BOOKS}{$book1}{num_chapters}; + push @retval, [ "$book1 $chap1:$verse1", "$book1 $last_chapter:" . @{$this->{BOOKS}{$book1}{chapter_maxes}}[$last_chapter - 1] ]; + + # Middle books + for(my $i=$this->{BOOKS}{$book1}{real_book_num}+1; $i<$this->{BOOKS}{$book2}{real_book_num}; $i++) { + my $middle_book = $this->{BOOK_ARRAY}[$i]; + my $last_chapter = $this->{BOOKS}{$middle_book}{num_chapters}; + push @retval, [ + "$middle_book " . ($include_zeroes ? "0:0" : "1:1"), + "$middle_book $last_chapter:" . @{$this->{BOOKS}{$middle_book}{chapter_maxes}}[$last_chapter - 1] + ]; + } + + # Last book + push @retval, [ "$book2 " . ($include_zeroes ? "0:0" : "1:1"), "$book2 $chap2:$verse2" ]; + } + } + } + + return @retval; +}; + +sub next_verse { + my $this = shift; + + my ($verse) = @_; + $this->{VI}->go_to_verse($verse); + $this->{VI}->next; + return $this->{VI}->get_key; +} + +sub prev_verse { + my $this = shift; + + my ($verse) = @_; + $this->{VI}->go_to_verse($verse); + $this->{VI}->prev; + return $this->{VI}->get_key; +} + +sub parse_verse { + my $this = shift; + + my ($verse) = @_; + + $verse =~ /^(.*[A-Za-z])\s*(\d+)\s*:\s*(\d+)\s*$/; + return ($this->_canonicalize_book($1), $2, $3); +} + +sub sort_verse_list { + my $this = shift; + + my @verse_list = @_; + return sort { ($a eq $b) ? 0 : ($this->verse_greater($a, $b) ? 1 : -1) } @verse_list; +} + +sub _compare_range { + my $this = shift; + + my ($a, $b) = @_; + if($a->[0] eq $b->[0]) { + if($a->[1] eq $b->[1]) { + return 0; + } else { + return ($this->verse_greater($a->[1], $b->[1]) ? 1 : -1); + } + } else { + return ($this->verse_greater($a->[0], $b->[0]) ? 1 : -1); + } +} + +sub sort_verse_range { + my $this = shift; + + my @verse_range = @_; + return sort { $this->_compare_range($a, $b) } @verse_range; +} + +sub _as_verse_range { + # THIS IS NOT AN OBJECT METHOD + return ref($_[0]) ? @{$_[0]} : ($_[0], $_[0]); +} + +# This function will normalize an existing verse range or create a new one from a verse list. +# This function assumes verses are in order (by lower part of range). +# XXX This does not merge stuff with zeroes very well, I suspect. +sub condense_verse_range { + my $this = shift; + my @verse_range = @_; + my @retval; + + for(my $i=0;$i<@verse_range;$i++) { + my ($new_low, $new_high) = _as_verse_range($verse_range[$i]); + my $i2; + for($i2=$i+1; $i2<@verse_range; $i2++) { + my ($vr2_low, $vr2_high) = _as_verse_range($verse_range[$i2]); + + # Check if it's 1 above the current verse and not in the same book + my $next_verse = $this->next_verse($new_high); + if($next_verse eq $vr2_low) { + my ($high_book) = $this->parse_verse($new_high); + my ($vr2_low_book) = $this->parse_verse($vr2_low); + last if $high_book ne $vr2_low_book; + } elsif($this->verse_greater($vr2_low, $new_high)) { + last; + } + + $new_high = $vr2_high if $this->verse_greater($vr2_high, $new_high); + } + push @retval, [ $new_low, $new_high ]; + $i = $i2 - 1; + } + + return @retval; +} + +sub expand_verse_range { + my $this = shift; + my @verse_range = @_; + my @retval; + + foreach my $vr (@verse_range) { + my ($vr_low, $vr_high) = _as_verse_range($vr); + die "Verse not found in range $vr_low-$vr_high\n" if ! $this->{VI}->go_to_verse($vr_low); + do { + push @retval, $this->{VI}->get_key; + } while($this->{VI}->get_key ne $vr_high && $this->{VI}->next); + } + + return @retval; +} + +sub make_verse_range_str { + my $this = shift; + my @verse_range = @_; + my $retval; + + my $prev_book = ""; + my $prev_chapter = -1; + foreach my $vr (@verse_range) { + my ($vr_low, $vr_high) = _as_verse_range($vr); + my ($book_low, $chapter_low, $verse_low) = $this->parse_verse($vr_low); + my ($book_high, $chapter_high, $verse_high) = $this->parse_verse($vr_high); + if($book_low ne $prev_book || $book_high ne $book_low) { + # New book. Put semicolon and such. + $retval .= "; " if $prev_book; + $retval .= "$book_low $chapter_low:$verse_low"; + } elsif($chapter_low != $prev_chapter || $chapter_high != $chapter_low) { + # Same book. New chapter. + $retval .= ", $chapter_low:$verse_low" + } else { + $retval .= ",$verse_low"; + } + + if($book_high ne $book_low) { + $retval .= "-$book_high $chapter_high:$verse_high"; + } elsif($chapter_high != $chapter_low) { + $retval .= "-$chapter_high:$verse_high"; + } elsif($verse_high != $verse_low) { + $retval .= "-$verse_high"; + } + + $prev_book = $book_high; + $prev_chapter = $chapter_high; + } + return $retval; +} + +1; + +__END__ +# Below is stub documentation for your module. You better edit it! + +=head1 NAME + +Sword - Perl extension to grab Bible verses from Sword (http://www.crosswire.org/sword). + +=head1 SYNOPSIS + + use Sword; + my $mod = new Sword::Module("KJV"); + my $vi = $mod->get_iterator(); + do { + print $vi->get_key(), " : ", $vi->get_verse(), "\n"; + } while($vi->next()); + + +=head1 DESCRIPTION + +=head2 Summary + + There are three basic ways of navigating the Bible with Sword: + + 1. go directly to verses by name and then step through the Bible up and + down + + This prints out everything from I John 2:3 to the end of the Bible: + + use Sword; + my $mod = new Sword::Module("KJV"); + my $vi = $mod->get_iterator("I John 2:3"); + do { + print $vi->get_key(), " : ", $vi->get_verse(), "\n"; + } while($vi->next()); + # $vi->prev() would go to the beginning of the Bible backwards + + + 2. Browse by book, chapter and verse + + This prints out the first verse of every book in the Bible: + + use Sword; + my $mod = new Sword::Module("KJV"); + my $vi = $mod->get_iterator(); + foreach my $book ($mod->get_books()) { + $vi->set_book($book); + $vi->set_chapter_num(1); + $vi->set_verse_num(1); + print $vi->get_key(), " : ", $vi->get_verse(), "\n"; + # You can use get_book, get_chapter_num + } + + + 3. Search for verses + + And of course you can search!  This gets everything in the KJV with the + word "sword" in it: + + use Sword; + my $mod = new Sword::Module("KJV"); + foreach my $result ($mod->search("sword")) { + print "$result->[0] : $result->[1]\n"; + } + + This package has several other lesser-known but useful capabilities, as well, + including the ability to merge separate verse lists and work with ranges of + verses. + + +=head2 PACKAGE Sword + +This package contains the generic routines not specific to any module. + +=item get_modules([$type]) + + my @modules = Sword::get_modules; + +Get an array of module names by type. Type is Biblical Texts by default. ALL not supported yet. + +=item get_module($module_name) + + my $mod = Sword::get_module("KJV"); + +Get an actual Sword::Module object using the given module name. + +=item get_locales + + my @locales = Sword::get_locales; + +Get an array of available locale names + +=item set_locale + + Sword::set_locale($locale); + +Sets the default locale for book names and verses and such. Subsequent Modules and VerseIterators will be affected. + +=item get_verse($verse, [$module_name]) + + print Sword::get_verse("Genesis 1:4"), "\n"; + +Gets a verse from a module, by key. Module name defaults to the first Biblical Text module. + + +=head2 CLASS Sword::Module + + my $mod = Sword::get_module("KJV"); + my $mod = new Sword::Module("KJV"); + +Sword::Module represents a sword module, which is really a single text (like KJV or NIV). It is best to use +Sword::get_module() to get this. + +=item new($module_name) + + my $mod = new Sword::Module("KJV"); + +Get a module object with the specified name HEY. + + +=item get_verse($verse) + + print $mod->get_verse("John 3:16"), "\n"; + +Get the specifed verse. + +=item get_iterator([$verse]) + + my $vi = $mod->get_iterator("Malachi 4:6"); + $vi->next; + print "The verse after Malachi 4:6 is ", $vi->get_key, "\n"; + +Get a Sword::VerseIterator (see appropriate documentation. Assumes Genesis 1:1 if none specified. + +=item search($term) + + foreach my $result ($mod->search("hope")) { print "$result->[0] : $result->[1]\n"; } + +Search for the specified terms using Sword, and return an array of results. Each result is a reference +to a 2-element array containing the verse # and the actual verse. + +=item search_verses($term) + + foreach my $result ($mod->search_verses("hope")) { print "$result : ", $mod->get_verse($result), "\n"; } + +Search for the specified terms using Sword, and return a simple array containing the verse #'s only. + +=item verse_greater($verse1, $verse2) + + print "James 1:19 is ", $mod->verse_greater("James 1:19", "Hebrews 11:12") ? "after" : "before", " Hebrews 11:12\n"; + +Find out whether verse 1 is greater than verse 2. +Returns -1 on error, 0 for false and 1 for true. + +=item next_verse($verse) + + print "The verse after James 1:19 is ", $mod->next_verse("James 1:19"), "\n"; + +Get the verse after the given verse. This goes past book boundaries. + +=item prev_verse($verse) + + print "The verse before James 1:19 is ", $mod->prev_verse("James 1:19"), "\n"; + +Get the verse before the given verse. This goes past book boundaries. + +=item parse_verse($verse) + + my @parsed = $mod->parse_verse("Revelation 4:5"); print "Revelation 4:5 parses to $parsed[0] $parsed[1]:$parsed[2]\n"; + +Parse the given verse, canonicalizing the book (turning Revelation into "Revelation of John", for example). +This returns three pieces, the book, the chapter and the verse. It returns 3 undefined values if it fails. + + +=item get_books + + print "Books in the Bible: ", join(", ", $mod->get_books()), "\n"; + +Get an array of the books in this module. (Currently biblical modules that do not use some books are not supported. + +=item get_num_chapters($book) + + for(my $i=0;$i<$mod->get_num_chapters("Genesis");$i++) { print $mod->get_verse("Genesis " . $i+1 . ":1" } + +Get the number of chapters in a book. + +=item get_num_verses_list($book) + + my @verses_list = $mod->get_num_verses_list("Malachi"); print "Genesis 4 has $verses_list[3] chapters.\n"; + +Get an array containing the number of verses in each chapter in a book. + +=item get_testament($book) + + print "Testament of Malachi is ", $mod->get_testament("Malachi"), "\n"; + +Returns the testament of a book (NT or OT for New Testament or Old Testament) + +=item get_book_num($book) + + print "Malachi is the ", ($mod->get_book_num("Malachi")+1), "th book in the Old Testament.\n"; + +Get the number of the specified book in its testament (Genesis = 0, Matthew = 0) + + +=item get_name + + print "Module Name: ", $mod->get_name, "\n"; + +Get the name of the module (e.g. KJV). + +=item get_description + + print "Module Description: ", $mod->get_description, "\n"; + +Get the description of the module. + +=item get_type + + print "Module Type: ", $mod->get_type, "\n"; + +Get the type of the module (e.g. Biblical Texts). + + +=item sort_verse_list(@verse_list) + + my @sorted_list = $mod->sort_verse_list("Acts 1:2", "John 2:3", "Malachi 1:5"); + +Sort a verse list (an array of verse names like "Acts 1:2") according to book/chapter/verse. + +=item union_verse_list($verse_list1, $verse_list2) + + my @list1 = $mod->search_verses("trumpet"); + my @list2 = $mod->search_verses("horn"); + my @new_verse_list = $mod->union_verse_list(\@list1, \@list2); + +Take two arrays of verse names ("James 1:19", etc.) and merges them together, removing duplicates. +(Tip: union a list with an empty list to just remove duplicates.) + +This assumes the two lists are sorted. + +=item intersect_verse_list($verse_list1, $verse_list2) + + my @list1 = $mod->search_verses("hope"); + my @list2 = $mod->search_verses("love"); + my @new_verse_list = $mod->intersect_verse_list(\@list1, \@list2); + +Take two arrays of verse names ("James 1:19", etc.), takes all the verses in common, and puts them +into a new list, removing duplicates. + +This assumes the two lists are sorted. + +=item parse_verse_range($verse_range_str, [$include_zeroes, $split_books, $default_book]) + + my @verse_ranges = $mod->parse_verse_range("James 1:19-24;Genesis 1-3;Exodus 4:2-4,6;Haggai"); + +Parse a list of verses and turn it into a verse range structure, which is a list of lists, each +containing 2 elements, the lower and then the upper bound, like so (this is the result of the +above example): + + ( [ "James 1:19", "James 1:24" ], + [ "Genesis 1:1", "Genesis 3:24" ], + [ "Exodus 4:2", "Exodus 4:4" ], + [ "Exodus 4:6", "Exodus 4:6" ], + [ "Haggai 1:1", "Haggai 2:23 ] ) + +The $include_zeroes parameter specifies whether the default chapter/verse should be 1 or 0 +when it is unspecified. It will be 1 if include_zeroes is false or unspecified, or 0 if it +is true. + +The $split_books parameter specifies what happens when the user specifies multiple books +(e.g. "Genesis 20:12-Exodus 2:2"). Normally the system just creates one range entry +( "Genesis 20:12", "Exodus 2:2" ). With this turned on the system creates a range entry +for each book ("Genesis 20:12", "Genesis 50:26" and "Exodus 1:1", "Exodus 2:2"). This +works even across multiple books (i.e. "Genesis-Revelation"). + +=item condense_verse_range(@verse_range_or_list) + + my @condensed_range = $mod->condense_verse_range($mod->parse_verse_range("Acts 8:1; Acts 8:2-5; Genesis 2:3-4,2-5")); + my @condensed_range = $mod->condense_verse_range("Acts 1:1", "Acts 1:2", "Acts 1:3", "James 1:19"); + +Condense an existing range down to its minimum range (put overlapping or adjacent verses together). + +This assumes the verse range or list is sorted. + +=item sort_verse_range(@verse_range) + + my @sorted_verse_range = $mod->sort_verse_range($mod->parse_verse_range("Acts 8:2-4,1; Acts 9; Genesis 2")); + +Sort a verse range (see parse_verse_range for structure) according to low end of +range (low to high) and then size of range (from smallest to largest). This does not +remove duplicates. + +=item union_verse_range($verse_range1, $verse_range2) + + my @range1 = $mod->parse_verse_range("John 1:2-12,2:1-4,3:6-7,9-10"); + my @range2 = $mod->parse_verse_range("John 1:1-2,2:2,4-6,3:5-8"); + my @new_verse_range = $mod->union_verse_range(\@range1, \@range2); + +Take two verse range lists (see parse_verse_range for structure) and merges them together, +removing duplicates. (Tip: union a range with an empty list to simply remove duplicates.) + +This assumes the two ranges are sorted. + +=item intersect_verse_range($verse_list1, $verse_list2) + + my @range1 = $mod->parse_verse_range("John 1:2-12,2:1-4,3:6-7,9-10"); + my @range2 = $mod->parse_verse_range("John 1:1-2,2:2,4-6,3:5-8"); + my @new_verse_range = $mod->intersect_verse_range(\@range1, \@range2); + +Take two verse range lists (see parse_verse_range for structure), takes all the verses in common, +and puts them into a new range set, removing duplicates. + +This assumes the two ranges are sorted. +=item expand_verse_range(@verse_range) + + my @verse_list = $mod->expand_verse_range($mod->parse_verse_range("Acts 8:2-4,1; Acts 9")); + +Take a verse range (see parse_verse_range for structure) and turn it into a simple list of verses. + +=item make_verse_range_str(@verse_range) + + my @verse_list = $mod->make_verse_range_str($mod->parse_verse_range("James 1:19-24;Genesis 1-3;Exodus 4:2-4,6;Haggai")); + +Take a verse range (see parse_verse_range for structure) or verse list and turn it into a human-readable +string suitable to pass into parse_verse_range. + + +=head2 CLASS Sword::VerseIterator + + my $vi = $mod->get_iterator("Genesis 1:1"); + my $vi = new Sword::VerseIterator("KJV"); + +VerseIterator provides functions for moving up and down through the Bible more efficiently than get_verse, next_verse and prev_verse in Sword::Module. It is best to get this using Sword::Module->get_iterator($verse). + +=item new($module_name) + + my $vi = new Sword::VerseIterator("KJV"); + +Create a new VerseIterator on the specified module. + + +=item get_verse + + print "Current verse (", $vi->get_key(), ") is ", $vi->get_verse(), "\n"; + +Get the current verse text (meaning the actual Bible text at that verse). + +=item get_key + + print "Current verse (", $vi->get_key(), ") is ", $vi->get_verse(), "\n"; + +Get the current verse key (e.g. "Malachi 5:5") + +=item go_to_verse($verse) + + die "Could not go to Malachi 5:5" if !$vi->go_to_verse("Malachi 5:5"); + +Go to the specified verse (e.g. "Malachi 5:5"). +Returns 0 on success, nonzero on on failure. + +=item next([$how_far]) + + die "Could not go to the next verse after " . $vi->get_key if !$vi->next; + +Advance the iterator forward through the Bible. how_far (default 1) tells how many verses to go. +Returns 0 on success, nonzero on on failure. + +=item prev([$how_far]) + + die "Could not go to the verse before " . $vi->get_key if !$vi->prev; + +Advance the iterator backward through the Bible. how_far (default 1) tells how many verses to go. +Returns 0 on success, nonzero on on failure. + + +=item get_book + + print "Current verse is ", $vi->get_book, " ", $vi->get_chapter_num, ":", $vi->get_verse_num, ".\n"; + +Get the current book (canonical--i.e. Revelation of John even if you specified Revelation in +go_to_verse or set_book). + +=item get_chapter_num + + print "Current verse is ", $vi->get_book, " ", $vi->get_chapter_num, ":", $vi->get_verse_num, ".\n"; + +Get the current chapter #. + +=item get_verse_num + + print "Current verse is ", $vi->get_book, " ", $vi->get_chapter_num, ":", $vi->get_verse_num, ".\n"; + +Get the current verse # within the chapter. + +=item set_book + + $vi->set_book("Genesis"); + $vi->set_chapter_num(4); + $vi->set_verse_num(5); + print $vi->get_key, " : ", $vi->get_verse, "\n"; + +Set the book the iterator is on. This resets chapter and verse to 1. + +=item set_chapter_num + + $vi->set_book("Genesis"); + $vi->set_chapter_num(4); + $vi->set_verse_num(5); + print $vi->get_key, " : ", $vi->get_verse, "\n"; + +Set the chapter in the current book. This resets verse to 1. + +=item set_verse_num + + $vi->set_book("Genesis"); + $vi->set_chapter_num(4); + $vi->set_verse_num(5); + print $vi->get_key, " : ", $vi->get_verse, "\n"; + +Set the verse in the current chapter. + + +=item get_module_name + + print "The module we're using is ", $vi->get_module_name, "\n"; + +Get the name of the module this VerseIterator is going through. + + +=head1 AUTHOR + +John Keiser, jkeiser@iname.com + +=head1 SEE ALSO + +L. + +=cut diff --git a/bindings/perl/Sword.xs b/bindings/perl/Sword.xs new file mode 100644 index 0000000..e78c3aa --- /dev/null +++ b/bindings/perl/Sword.xs @@ -0,0 +1,254 @@ + +#ifdef __cplusplus +extern "C" { +#endif +#include "EXTERN.h" +#include "perl.h" +#include "XSUB.h" +#ifdef __cplusplus +} +#endif + +#undef list + +#include +#include +#include +#include +#include + +SWMgr manager; + +class VerseIterator { +public: + SWModule * module; + VerseKey key; + VerseIterator(char * module_name); + ~VerseIterator(); + + // Iterator info + const char * get_module_name() { return module->Name(); } + + // Verse info + const char * get_verse() { module->SetKey(key); return (const char*)*module; } + const char * get_key() { return key; } + + // Iteration + int next(int how_far); + int prev(int how_far); + + // Go to verse + int go_to_verse(char * verse); + + // Book / Chapter / Verse traversal + const char * get_book() { return key.books[key.Testament() - 1][key.Book() - 1].name; } + int get_chapter_num() { return key.Chapter(); } + int get_verse_num() { return key.Verse(); } + + void set_chapter_num(int chapter_num) { key.Chapter(chapter_num); } + void set_verse_num(int verse_num) { key.Verse(verse_num); } + + // Stuff that should go into some sort of Module class + char * _get_module_name() { return module->Name(); } + char * _get_module_desc() { return module->Description(); } + char * _get_module_type() { return module->Type(); } + int _verse_greater(char * verse1, char * verse2); +}; + +VerseIterator::VerseIterator(char * module_name) { + module = manager.Modules[module_name]; + key = module->Key(); + key.setLocale(LocaleMgr::systemLocaleMgr.getDefaultLocaleName()); + + key = key.LowerBound(); +} + +VerseIterator::~VerseIterator() { +} + +int VerseIterator::next(int how_far) { + if(key == key.UpperBound()) { + return 0; + } + module->SetKey(key); + (*module) += how_far; + key = module->Key(); + return 1; +} + +int VerseIterator::prev(int how_far) { + if(key == key.LowerBound()) { + return 0; + } + module->SetKey(key); + (*module) -= how_far; + key = module->Key(); + return 1; +} + +int VerseIterator::go_to_verse(char * verse) { + int retval = module->SetKey(verse); + key = module->Key(); + return ! retval; +} + +int VerseIterator::_verse_greater(char * verse1, char * verse2) { + if(module->SetKey(verse1)) { + return -1; + } + SWKey key1 = module->Key(); + if(module->SetKey(verse2)) { + return -1; + } + SWKey key2 = module->Key(); + return key1 > key2; +} + +MODULE = Sword PACKAGE = Sword + +void +get_modules(char * textType = "Biblical Texts") +PPCODE: + ModMap::iterator modIterator; + for (modIterator = manager.Modules.begin(); modIterator != manager.Modules.end(); modIterator++) { + SWModule *module = (*modIterator).second; + if(!strcmp(module->Type(),textType)) { + string s = (*modIterator).first; + XPUSHs(sv_2mortal(newSVpv(s.c_str(), s.length()))); + } + } + +void +get_locales() +PPCODE: + LocaleMgr lm = LocaleMgr::systemLocaleMgr; + list loclist = lm.getAvailableLocales(); + list::iterator li = loclist.begin(); + for (;li != loclist.end(); li++) { + XPUSHs(sv_2mortal(newSVpv(li->c_str(), li->length()))); + } + +void +set_locale(char * locale) +CODE: + LocaleMgr::systemLocaleMgr.setDefaultLocaleName(locale); + + +MODULE = Sword PACKAGE = Sword::VerseIterator + +VerseIterator * +VerseIterator::new(char * module_name) + +void +VerseIterator::DESTROY() + +const char * +VerseIterator::get_module_name() + +const char * +VerseIterator::get_verse() + +const char * +VerseIterator::get_key() + + +int +VerseIterator::next(int how_far = 1) + +int +VerseIterator::prev(int how_far = 1) + + +int +VerseIterator::go_to_verse(char * verse) + + +const char * +VerseIterator::get_book() + +int +VerseIterator::get_chapter_num() + +int +VerseIterator::get_verse_num() + +void +VerseIterator::set_chapter_num(int chapter_num) + +void +VerseIterator::set_verse_num(int verse_num) + + +void +VerseIterator::_get_books() +PPCODE: + + for(int testament_num=0;testament_num<2;testament_num++) { + for(int book_num=0;book_numkey.BMAX[testament_num];book_num++) { + int num_chapters = THIS->key.books[testament_num][book_num].chapmax; + HV * book_info = newHV(); + hv_store(book_info, "name", 4, newSVpv(THIS->key.books[testament_num][book_num].name, 0), 0); + hv_store(book_info, "num_chapters", 12, newSVnv(num_chapters), 0); + hv_store(book_info, "testament_num", 13, newSVnv(testament_num), 0); + hv_store(book_info, "book_num", 8, newSVnv(book_num), 0); + AV * chapter_maxes = newAV(); + for(int i=0;ikey.books[testament_num][book_num].versemax[i])); + } + hv_store(book_info, "chapter_maxes", 13, newRV_noinc((SV *)chapter_maxes), 0); + XPUSHs(newRV_noinc((SV *)book_info)); + } + } + +void +VerseIterator::_search(char * searchStr) +PPCODE: + ListKey &searchResults = THIS->module->Search(searchStr); + + searchResults.Persist(true); + + for(int i=0;imodule->SetKey(key); + av_push(search_result, newSVpv(*THIS->module, 0)); + XPUSHs(newRV_noinc((SV *)search_result)); + } + +void +VerseIterator::_search_verses(char * searchStr) +PPCODE: + ListKey &searchResults = THIS->module->Search(searchStr); + + searchResults.Persist(true); + + for(int i=0;ikey.ParseVerseList(verseList, "Genesis 1:1", false); + + searchResults.Persist(true); + + for(int i=0;i unblessed Perl HV object. +# AV * -> unblessed Perl AV object. +# +# INPUT/OUTPUT maps +# +# O_* -> opaque blessed objects +# T_* -> opaque blessed or unblessed objects +# +# O_OBJECT -> link an opaque C or C++ object to a blessed Perl object. +# T_OBJECT -> link an opaque C or C++ object to an unblessed Perl object. +# O_HvRV -> a blessed Perl HV object. +# T_HvRV -> an unblessed Perl HV object. +# O_AvRV -> a blessed Perl AV object. +# T_AvRV -> an unblessed Perl AV object. + +TYPEMAP + +HV * T_HvRV +AV * T_AvRV + + +###################################################################### +OUTPUT + +# The Perl object is blessed into 'CLASS', which should be a +# char* having the name of the package for the blessing. +O_OBJECT + sv_setref_pv( $arg, CLASS, (void*)$var ); + +T_OBJECT + sv_setref_pv( $arg, Nullch, (void*)$var ); + +# Cannot use sv_setref_pv() because that will destroy +# the HV-ness of the object. Remember that newRV() will increment +# the refcount. +O_HvRV + $arg = sv_bless( newRV((SV*)$var), gv_stashpv(CLASS,1) ); + +T_HvRV + $arg = newRV((SV*)$var); + +# Cannot use sv_setref_pv() because that will destroy +# the AV-ness of the object. Remember that newRV() will increment +# the refcount. +O_AvRV + $arg = sv_bless( newRV((SV*)$var), gv_stashpv(CLASS,1) ); + +T_AvRV + $arg = newRV((SV*)$var); + + +###################################################################### +INPUT + +O_OBJECT + if( sv_isobject($arg) && (SvTYPE(SvRV($arg)) == SVt_PVMG) ) + $var = ($type)SvIV((SV*)SvRV( $arg )); + else{ + warn( \"${Package}::$func_name() -- $var is not a blessed SV reference\" ); + XSRETURN_UNDEF; + } + +T_OBJECT + if( SvROK($arg) ) + $var = ($type)SvIV((SV*)SvRV( $arg )); + else{ + warn( \"${Package}::$func_name() -- $var is not an SV reference\" ); + XSRETURN_UNDEF; + } + +O_HvRV + if( sv_isobject($arg) && (SvTYPE(SvRV($arg)) == SVt_PVHV) ) + $var = (HV*)SvRV( $arg ); + else { + warn( \"${Package}::$func_name() -- $var is not a blessed HV reference\" ); + XSRETURN_UNDEF; + } + +T_HvRV + if( SvROK($arg) && (SvTYPE(SvRV($arg)) == SVt_PVHV) ) + $var = (HV*)SvRV( $arg ); + else { + warn( \"${Package}::$func_name() -- $var is not an HV reference\" ); + XSRETURN_UNDEF; + } + +O_AvRV + if( sv_isobject($arg) && (SvTYPE(SvRV($arg)) == SVt_PVAV) ) + $var = (AV*)SvRV( $arg ); + else { + warn( \"${Package}::$func_name() -- $var is not a blessed AV reference\" ); + XSRETURN_UNDEF; + } + +T_AvRV + if( SvROK($arg) && (SvTYPE(SvRV($arg)) == SVt_PVAV) ) + $var = (AV*)SvRV( $arg ); + else { + warn( \"${Package}::$func_name() -- $var is not an AV reference\" ); + XSRETURN_UNDEF; + } + diff --git a/bindings/perl/test.pl b/bindings/perl/test.pl new file mode 100644 index 0000000..0a76142 --- /dev/null +++ b/bindings/perl/test.pl @@ -0,0 +1,163 @@ +# Before `make install' is performed this script should be runnable with +# `make test'. After `make install' it should work as `perl test.pl' + +######################### + +# change 'tests => 1' to 'tests => last_test_to_print'; + +use Test; +BEGIN { plan tests => 1 }; +use Sword; +use Devel::Peek; +ok(1); # If we made it this far, we're ok. +######################### + +# Insert your test code below, the Test module is use()ed here so read +# its man page ( perldoc Test ) for help writing this test script. + +my $test_name; +my $old_test_name = -1; +my $sub_test_num; +sub print_if { + if($test_name ne $old_test_name) { + $old_test_name = $test_name; + $sub_test_num = 1; + } else { + $sub_test_num++; + } + print "not " if ! $_[0]; + print "ok $test_name-$sub_test_num\n"; +} + +$test_name = "list"; +my @modules = Sword::get_modules; +print_if (@modules > 0); +$test_name = "get_verse"; +# Check get_verse +print_if Sword::get_verse("James 1:19", $module_name) =~ /slow/i; +$test_name = "init"; +my $module_name = $modules[0]; +my $b = new Sword::VerseIterator($module_name); +# Make sure it initialized +print_if $b; +# Make sure it's initially Genesis 1:1 +print_if $b->get_key eq "Genesis 1:1" && $b->get_verse =~ /beginning/i; +$test_name = "iter"; +# Test prev/next +print_if $b->next(2) && $b->prev && $b->next(2); +print_if $b->get_key eq "Genesis 1:4" && $b->get_verse =~ /darkness/i; +# Test prev going back before beginning +print_if $b->prev(4); +print_if $b->get_key eq "Genesis 1:1" && $b->get_verse =~ /beginning/i; +# Test failing prev +print_if ! $b->prev; +# Test go to verse +print_if $b->go_to_verse("Revelation 4:11") && $b->get_key eq "Revelation of John 4:11"; + +$test_name = "iter-thread"; +my $c = new Sword::VerseIterator($module_name); +# Test multiple keys at once +print_if $c && $c->get_key eq "Genesis 1:1" && $c->get_verse =~ /beginning/i; +print_if $b->get_key eq "Revelation of John 4:11" && $b->get_verse =~ /worthy/i; + +$test_name = "iter-parts"; +# Test book/chapter/verse get +print_if $b->get_key eq $b->get_book() . " " . $b->get_chapter_num . ":" . $b->get_verse_num; +print_if $c->get_key eq $c->get_book() . " " . $c->get_chapter_num . ":" . $c->get_verse_num; +# Test book/chapter/verse set +$b->set_chapter_num(8); +$b->set_verse_num(6); +print_if $b->get_key eq "Revelation of John 8:6"; +$b->set_book("Genesis"); +$b->set_chapter_num(1); +$b->set_verse_num(4); +print_if $b->get_key eq "Genesis 1:4" && $b->get_verse =~ /darkness/i; +$b->set_book("Revelation of John"); +$b->set_chapter_num(4); +$b->set_verse_num(11); +print_if $b->get_key eq "Revelation of John 4:11" && $b->get_verse =~ /worthy/i; + +$test_name = "module"; +my $module = Sword::get_module($module_name); +# Test module attributes +print_if $module->get_name eq $module_name; +print_if $module->get_description; +print_if $module->get_type eq "Biblical Texts"; +# Test get iterator +my $d = $module->get_iterator(); +print_if $d->get_key eq "Genesis 1:1" && $d->get_verse =~ /beginning/i; +my $e = $module->get_iterator("James 1:19"); +print_if $e->get_key eq "James 1:19" && $e->get_verse =~ /slow/i; +# Test get_verse +print_if $module->get_verse("Genesis 1:4") =~ /darkness/i; +# Test verse module stuff +my $retval = $module->verse_greater("James 3:4", "Malachi 4:5"); +print_if $retval != -1 && $retval; +$retval = $module->verse_greater("Genesis 8:10", "Malachi 4:5"); +print_if $retval != -1 && ! $retval; +$retval = $module->verse_greater("Genesis 12:1", "Genesis 12:1"); +print_if $retval != -1 && ! $retval; +print_if $module->next_verse("Malachi 4:6") eq "Matthew 1:1"; +print_if $module->prev_verse("Matthew 1:1") eq "Malachi 4:6"; +print_if join(" ... ", $module->parse_verse("Revelation of John 21:12")) eq "Revelation of John ... 21 ... 12"; + +$test_name = "books"; +my @books = $module->get_books; +# Test get books list +print_if @books == 66; +print_if $books[0] eq "Genesis" && $books[27] eq "Hosea" && $books[65] eq "Revelation of John"; +# Test if # chapters is working +print_if $module->get_num_chapters("Hosea") == 14; +# Test testament stuff +print_if $module->get_testament("Hosea") eq "OT" && $module->get_testament("Mark") eq "NT"; +# Test max verses +my @verses_list = $module->get_num_verses_list("I Kings"); +print $verses_list[4] == 34; + +$test_name = "search"; +# Test search +my $found = 0; +foreach my $result ($module->search("pure")) { + $found = 1 if $result->[0] eq "I John 3:3"; +} +print_if $found; +$found = 0; +foreach my $result ($module->search_verses("pure")) { + $found = 1 if $result eq "I John 3:3"; +} +print_if $found; + + +$test_name = "range"; +my $output_str; +my $verse_range_str = "1:5;Judges 8:12-15,17,9:2-3;18;John 4-5:4,Revelation 5;Joshua 4-5;Exodus-Leviticus"; +print_if $module->make_verse_range_str($module->parse_verse_range($verse_range_str)) eq "Genesis 1:5; Judges 8:12-15,17, 9:2-3, 18:1-31; John 4:1-5:4; Revelation of John 5:1-14; Joshua 4:1-5:15; Exodus 1:1-Leviticus 27:34"; +print_if $module->make_verse_range_str($module->parse_verse_range($verse_range_str, 0, 0, "Romans")) eq "Romans 1:5; Judges 8:12-15,17, 9:2-3, 18:1-31; John 4:1-5:4; Revelation of John 5:1-14; Joshua 4:1-5:15; Exodus 1:1-Leviticus 27:34"; +print_if $module->make_verse_range_str($module->parse_verse_range($verse_range_str, 1)) eq "Genesis 1:5; Judges 8:12-15,17, 9:2-3, 18:0-31; John 4:0-5:4; Revelation of John 5:0-14; Joshua 4:0-5:15; Exodus 0:0-Leviticus 27:34"; +print_if $module->make_verse_range_str($module->parse_verse_range("Luke 9:27-Acts 2:3", 0, 1)) eq "Luke 9:27-24:53; John 1:1-21:25; Acts 1:1-2:3"; + +my @verse_range = $module->parse_verse_range("Acts 21:8,4-6,40-22:1;Acts 28:31-Romans 1:1;Malachi 2:2"); +my @verse_list = $module->expand_verse_range(@verse_range); +print_if $module->make_verse_range_str(@verse_list) eq "Acts 21:8,4,5,6,40, 22:1, 28:31; Romans 1:1; Malachi 2:2"; +@verse_list = $module->sort_verse_list(@verse_list); +print_if $module->make_verse_range_str(@verse_list) eq "Malachi 2:2; Acts 21:4,5,6,8,40, 22:1, 28:31; Romans 1:1"; + +my @sorted_verse_range = $module->sort_verse_range(@verse_range); +print_if $module->make_verse_range_str(@sorted_verse_range) eq "Malachi 2:2; Acts 21:4-6,8, 21:40-22:1; Acts 28:31-Romans 1:1"; + +my @difficult_verse_range = $module->parse_verse_range("Acts 4:5-8,4-9,4,28:31-Romans 1:6;Acts 28:30-Romans 1:4;Acts 4:4-12,13-15"); +my @made_verse_range = $module->condense_verse_range($module->sort_verse_range(@difficult_verse_range)); +print_if $module->make_verse_range_str(@made_verse_range) eq "Acts 4:4-15; Acts 28:30-Romans 1:6"; +my @made_verse_list = $module->condense_verse_range($module->sort_verse_list($module->expand_verse_range(@difficult_verse_range))); +print_if $module->make_verse_range_str(@made_verse_list) eq "Acts 4:4-15, 28:30-31; Romans 1:1-6"; + +my @verse_list1 = ("John 1:2", "John 3:4", "John 4:5", "John 4:5"); +my @verse_list2 = ("John 1:2", "John 3:4", "John 3:4", "John 7:8"); +print_if $module->make_verse_range_str($module->union_verse_list(\@verse_list1, \@verse_list2)) eq "John 1:2, 3:4, 4:5, 7:8"; +print_if $module->make_verse_range_str($module->intersect_verse_list(\@verse_list1, \@verse_list2)) eq "John 1:2, 3:4"; + +my @verse_range1 = $module->parse_verse_range("John 1:2-12,2:1-4,3:6-7,9-10"); +my @verse_range2 = $module->parse_verse_range("John 1:1-2,2:2,4-6,3:5-8"); +print_if $module->make_verse_range_str($module->union_verse_range(\@verse_range1, \@verse_range2)) eq "John 1:1-12, 2:1-6, 3:5-10"; +print_if $module->make_verse_range_str($module->intersect_verse_range(\@verse_range1, \@verse_range2)) eq "John 1:2, 2:2,4, 3:6-7"; + diff --git a/bindings/perl/typemap b/bindings/perl/typemap new file mode 100644 index 0000000..1a1fe01 --- /dev/null +++ b/bindings/perl/typemap @@ -0,0 +1,3 @@ +TYPEMAP +VerseIterator * O_OBJECT +const char * T_PV diff --git a/bindings/swig/Makefile.am b/bindings/swig/Makefile.am new file mode 100644 index 0000000..45a37ef --- /dev/null +++ b/bindings/swig/Makefile.am @@ -0,0 +1,95 @@ + +if RUNSWIG +PERLSWIG=perlswig +TCLSWIG=tclswig +PYTHONSWIG=pythonswig +PHPSWIG=phpswig +else +PERLSWIG= +TCLSWIG= +PYTHONSWIG= +PHPSWIG= +endif + +all: $(PERLBUILD) $(TCLBUILD) $(PYTHONBUILD) $(PHPBUILD) + echo "built" + +perl_make: perl_makebuild + cd perl && make + +perlswig: sword.i + mkdir -p perl + $(SWIG) -perl -c++ -shadow -o perl/Sword.cxx -I$(top_srcdir) $(SWORD_INCLUDES) $(top_srcdir)/sword.i + +perl_makebuild: $(PERLSWIG) + mkdir -p perl + echo "writing perl/Makefile.PL" + @echo "#! /usr/bin/perl" > perl/Makefile.PL + @echo "" >> perl/Makefile.PL + @echo "use ExtUtils::MakeMaker;" >> perl/Makefile.PL + @echo "" >> perl/Makefile.PL + @echo "# See lib/ExtUtils/MakeMaker.pm for details of how to influence" >> perl/Makefile.PL + @echo "# the contents of the Makefile that is written." >> perl/Makefile.PL + @echo "WriteMakefile(" >> perl/Makefile.PL + @echo " 'NAME' => 'Sword'," >> perl/Makefile.PL + @echo " 'VERSION' => '$(VERSION)'," >> perl/Makefile.PL + @echo " 'INC' => '$(SWORD_INCLUDES)'," >> perl/Makefile.PL + @echo " 'DEFINE' => '-DSWIG'," >> perl/Makefile.PL + @echo " 'LIBS' => '$(LIB_SWORD) -lz'," >> perl/Makefile.PL + @echo " 'PREREQ_PM' => {}, # e.g., Module::Name => 1.1" >> perl/Makefile.PL + @echo " ($$] >= 5.005 ? ## Add these new keywords supported since 5.005" >> perl/Makefile.PL + @echo " (ABSTRACT => 'Sword Project perl bindings', # retrieve abstract from module" >> perl/Makefile.PL + @echo " AUTHOR => 'Sword Project ') : ())," >> perl/Makefile.PL + @echo ");" >> perl/Makefile.PL + @echo "" >> perl/Makefile.PL + @echo "rename 'Makefile', 'Makefile.old' or die \"can't rename Makefile\";" >> perl/Makefile.PL + @echo "open(INPUT, '> perl/Makefile.PL + @echo "open(OUTPUT, '>Makefile') or die \"can't open output Makefile\";" >> perl/Makefile.PL + @echo "while () {" >> perl/Makefile.PL + @echo " s/\-lsword/\-lsword \-lstdc\+\+/;" >> perl/Makefile.PL + @echo " print OUTPUT \"$$""_\";" >> perl/Makefile.PL + @echo "}" >> perl/Makefile.PL + @echo "" >> perl/Makefile.PL + @echo "close INPUT;" >> perl/Makefile.PL + @echo "close OUTPUT;" >> perl/Makefile.PL + cd perl && $(PERL) Makefile.PL && make clean + @echo "\.old" > perl/MANIFEST.SKIP + @echo "~$$" >> perl/MANIFEST.SKIP + @echo "\.bak" >> perl/MANIFEST.SKIP + @echo "^CVS" >> perl/MANIFEST.SKIP + @echo "Makefile$$" >> perl/MANIFEST.SKIP + cd perl && $(PERL) Makefile.PL && make manifest + +tclswig: sword.i + mkdir -p tcl + $(SWIG) -tcl -c++ -namespace -pkgversion $(VERSION) -o tcl/Sword.cxx -I$(top_srcdir) $(top_srcdir)/sword.i + +python_make: python_makebuild + cd python && $(PYTHON) setup.py build_ext $(SWORD_INCLUDES) $(LIB_SWORD) + +pythonswig: sword.i + mkdir -p python + $(SWIG) -python -c++ -shadow -o python/Sword.cxx -I$(top_srcdir) $(top_srcdir)/sword.i + +python_makebuild: $(PYTHONSWIG) + mkdir -p python + echo "writing python/setup.py" + @echo "#! /usr/bin/python" > python/setup.py + @echo "" >> python/setup.py + @echo "from distutils.core import setup, Extension" >> python/setup.py + @echo "setup (name = \"sword\"," >> python/setup.py + @echo " version = \"$(VERSION)\"," >> python/setup.py + @echo " maintainer = \"Sword Developers\"," >> python/setup.py + @echo " maintainer_email = \"sword-devel@crosswire.org\"," >> python/setup.py + @echo " url = \"http://www.crosswire.org/sword\"," >> python/setup.py + @echo " py_modules = [\"Sword\"]," >> python/setup.py + @echo " ext_modules = [Extension(\"sword\", [\"Sword.cxx\"]," >> python/setup.py + @echo " define_macros=[('SWIG',1)])], " >> python/setup.py + @echo ")" >> python/setup.py + + + +phpswig: sword.i + mkdir -p php + $(SWIG) -php4 -c++ -fullmake -o php/Sword.cxx -I$(top_srcdir) $(top_srcdir)/sword.i + diff --git a/bindings/swig/Makefile.oth b/bindings/swig/Makefile.oth new file mode 100644 index 0000000..44f00ce --- /dev/null +++ b/bindings/swig/Makefile.oth @@ -0,0 +1,22 @@ +TOP = $(PWD) +SWIG = swig +#SWIGOPT = -Wall -proxy +SWIGOPT = -shadow +CXXSRCS = +TARGET = sword +INTERFACE = sword.i +LIBS = -lm -lz -lsword +INCLUDE = -I$(TOP)/../../include/ + +all:: + $(MAKE) -f $(TOP)/Makefile.swig CXXSRCS='$(CXXSRCS)' SWIG='$(SWIG)' \ + TARGET='$(TARGET)' SWIGOPT='$(SWIGOPT)' INTERFACE='$(INTERFACE)' LIBS='$(LIBS)' INCLUDE='$(INCLUDE)' perl5_cpp + +static:: + $(MAKE) -f $(TOP)/Makefile.swig CXXSRCS='$(CXXSRCS)' SWIG='$(SWIG)' \ + TARGET='myperl' INTERFACE='$(INTERFACE)' INCLUDE='$INCLUDE' perl5_cpp_static + +clean:: + rm -f *_wrap* *.o *~ *.so myperl *.pyc .~* core + +check: all diff --git a/bindings/swig/Makefile.swig b/bindings/swig/Makefile.swig new file mode 100644 index 0000000..9b8271a --- /dev/null +++ b/bindings/swig/Makefile.swig @@ -0,0 +1,578 @@ +# Generated automatically from Makefile.in by configure. +# ------------------------------------------------------------ +# SWIG Examples Makefile +# +# This file is used by the examples to build modules. Assuming +# you ran configure, this file will probably work. However, +# it's not perfect so you might need to do some hand tweaking. +# +# Other notes: +# +# 1. Take a look at the prefixes below. Since SWIG works with +# multiple target languages, you may need to find out where +# certain packages have been installed. Set the prefixes +# accordingly. +# +# 2. To use this makefile, simply set SRCS, INTERFACE, INCLUDE, LIBS, +# TARGET, and do a +# $(MAKE) -f Makefile.template.in SRCS='$(SRCS)' \ +# INCLUDE='$(INCLUDE) LIBS='$(LIBS)' INTERFACE='$(INTERFACE)' \ +# TARGET='$(TARGET)' method +# +# 'method' describes what is being built. +#--------------------------------------------------------------- + +TARGET = +CC = gcc +CXX = c++ +CFLAGS = +prefix = /usr/local +exec_prefix= ${prefix} +SRCS = +INCLUDE = +LIBS = +INTERFACE = +SWIGOPT = +SWIG = swig +RUNTIMEDIR = $(exec_prefix)/lib + +LIBM = -lieee -lm +LIBC = +LIBCRYPT = -lcrypt +SYSLIBS = $(LIBM) $(LIBC) $(LIBCRYPT) + +libtool_comp = $(TOP)/../Tools/libtool --mode compile +libtool_link = $(TOP)/../Tools/libtool --mode link + +# X11 options + +XLIB = -L/usr/X11R6/lib -lX11 +XINCLUDE = -I/usr/X11R6/include + +IWRAP = $(INTERFACE:.i=_wrap.i) +ISRCS = $(IWRAP:.i=.c) +ICXXSRCS = $(IWRAP:.i=.cxx) +IOBJS = $(IWRAP:.i=.o) + +################################################################## +# Dynamic loading for C++ +# If you are going to be building dynamic loadable modules in C++, +# you may need to edit this line appropriately. +# +# This line works for g++, but I'm not sure what it might be +# for other C++ compilers +################################################################## + +CPP_DLLIBS = #-L/usr/local/lib/gcc-lib/sparc-sun-solaris2.5.1/2.7.2 \ + -L/usr/local/lib -lg++ -lstdc++ -lgcc + +# Solaris workshop 5.0 +# CPP_DLLIBS = -L/opt/SUNWspro/lib -lCrun + +# Symbols used for using shared libraries +SO= .so +LDSHARED= gcc -shared +CCSHARED= -fpic +CXXSHARED= gcc -shared + +# This is used for building shared libraries with a number of C++ +# compilers. If it doesn't work, comment it out. +CXXSHARED= c++ -shared + +OBJS = $(SRCS:.c=.o) $(CXXSRCS:.cxx=.o) + +################################################################## +##### Tcl/Tk ###### +################################################################## + +# Set these to your local copy of Tcl/Tk. + +TCL_INCLUDE = +TCL_LIB = +TCL_OPTS = -ldl +TK_OPTS = -ltk -ltcl -ldl + +# Extra Tcl specific dynamic linking options +TCL_DLNK = + +# ----------------------------------------------------------- +# Build a new version of the tclsh shell +# ----------------------------------------------------------- + + +tclsh: $(SRCS) + $(SWIG) -tcl8 $(SWIGOPT) $(TCL_SWIGOPTS) -ltclsh.i $(INTERFACE) + $(CC) $(CFLAGS) $(SRCS) $(ISRCS) $(INCLUDE) $(TCL_INCLUDE) \ + $(TCL_LIB) $(TCL_OPTS) $(LIBS) $(SYSLIBS) -o $(TARGET) + +tclsh_cpp: $(SRCS) + $(SWIG) -tcl8 -c++ $(SWIGOPT) $(TCL_SWIGOPTS) -ltclsh.i $(INTERFACE) + $(CXX) $(CFLAGS) $(SRCS) $(CXXSRCS) $(ICXXSRCS) $(INCLUDE) $(TCL_INCLUDE) \ + $(TCL_LIB) $(TCL_OPTS) $(LIBS) $(SYSLIBS) -o $(TARGET) + +# ----------------------------------------------------------- +# Build a new copy of wish +# ----------------------------------------------------------- + +wish: $(SRCS) + $(SWIG) -tcl8 $(SWIGOPT) $(TCL_SWIGOPTS) -lwish.i $(INTERFACE) + $(CC) $(CFLAGS) $(SRCS) $(ISRCS) $(INCLUDE) $(TCL_INCLUDE) \ + $(XINCLUDE) $(TCL_LIB) $(TK_OPTS) $(XLIB) $(LIBS) $(SYSLIBS) -o $(TARGET) + + +wish_cpp: $(SRCS) + $(SWIG) -tcl8 -c++ $(SWIGOPT) $(TCL_SWIGOPTS) -lwish.i $(INTERFACE) + $(CXX) $(CFLAGS) $(SRCS) $(CXXSRCS) $(ICXXSRCS) $(INCLUDE) $(TCL_INCLUDE) \ + $(XINCLUDE) $(TCL_LIB) $(TK_OPTS) $(XLIB) $(LIBS) $(SYSLIBS) -o $(TARGET) + +# ----------------------------------------------------------- +# Build a Tcl dynamic loadable module (you might need to tweak this) +# ----------------------------------------------------------- + +tcl: $(SRCS) + $(SWIG) -tcl8 $(SWIGOPT) $(TCL_SWIGOPTS) $(INTERFACE) + $(CC) -c $(CCSHARED) $(CFLAGS) $(SRCS) $(ISRCS) $(INCLUDE) $(TCL_INCLUDE) + $(LDSHARED) $(OBJS) $(IOBJS) $(TCL_DLNK) $(LIBS) -o $(TARGET)$(SO) + +# ----------------------------------------------------------- +# Build a Tcl7.5 dynamic loadable module for C++ +# ----------------------------------------------------------- + +tcl_cpp: $(SRCS) + $(SWIG) -tcl8 -c++ $(SWIGOPT) $(TCL_SWIGOPTS) $(INTERFACE) + $(CXX) -c $(CCSHARED) $(CFLAGS) $(SRCS) $(CXXSRCS) $(ICXXSRCS) $(INCLUDE) $(TCL_INCLUDE) + $(CXXSHARED) $(OBJS) $(IOBJS) $(TCL_DLNK) $(LIBS) $(CPP_DLLIBS) -o $(TARGET)$(SO) + +# ----------------------------------------------------------- +# Build a Tcl7.5 dynamic loadable module, linked against SWIG runtime lib +# ----------------------------------------------------------- + +TCL_RUNTIME=-L$(RUNTIMEDIR) -lswigtcl8 + +tcl_multi: $(SRCS) + $(SWIG) -c -tcl8 $(SWIGOPT) $(TCL_SWIGOPTS) $(INTERFACE) + $(CC) -c $(CCSHARED) $(CFLAGS) $(SRCS) $(ISRCS) $(INCLUDE) $(TCL_INCLUDE) + $(LDSHARED) $(OBJS) $(IOBJS) $(TCL_RUNTIME) $(TCL_DLNK) $(LIBS) -o $(TARGET)$(SO) + +tcl_multi_cpp: $(SRCS) + $(SWIG) -c -tcl8 -c++ $(SWIGOPT) $(TCL_SWIGOPTS) $(INTERFACE) + $(CXX) -c $(CCSHARED) $(CFLAGS) $(SRCS) $(CXXSRCS) $(ICXXSRCS) $(INCLUDE) $(TCL_INCLUDE) + $(CXXSHARED) $(OBJS) $(IOBJS) $(TCL_RUNTIME) $(TCL_DLNK) $(LIBS) $(CPP_DLLIBS) -o $(TARGET)$(SO) + +################################################################## +##### PERL 5 ###### +################################################################## + +# You need to set this variable to the Perl5 directory containing the +# files "perl.h", "EXTERN.h" and "XSUB.h". With Perl5.003, it's +# usually something like /usr/local/lib/perl5/arch-osname/5.003/CORE. + +PERL5_INCLUDE= /usr/lib/perl5/5.6.1/i386-linux/CORE + +# Extra Perl specific dynamic linking options +PERL5_DLNK = + +# ---------------------------------------------------------------- +# Build a Perl5 dynamically loadable module (C) +# ---------------------------------------------------------------- + +perl5: $(SRCS) + $(SWIG) -perl5 $(SWIGOPT) $(INTERFACE) + $(CC) -c -Dbool=char $(CCSHARED) $(CFLAGS) -DSWIG $(SRCS) $(ISRCS) $(INCLUDE) -I$(PERL5_INCLUDE) + $(LDSHARED) $(OBJS) $(IOBJS) $(PERL5_DLNK) $(LIBS) -o $(TARGET)$(SO) + +# ---------------------------------------------------------------- +# Build a Perl5 dynamically loadable module (C++) +# ---------------------------------------------------------------- + +perl5_cpp: $(SRCS) + $(SWIG) -perl5 -c++ $(SWIGOPT) $(INTERFACE) + $(CXX) -c $(CCSHARED) $(CFLAGS) -DSWIG -Dexplicit= $(SRCS) $(CXXSRCS) $(ICXXSRCS) $(INCLUDE) -I$(PERL5_INCLUDE) + $(CXXSHARED) $(OBJS) $(IOBJS) $(PERL5_DLNK) $(LIBS) $(CPP_DLLIBS) -o $(TARGET)$(SO) + +# ---------------------------------------------------------------- +# Build a Perl5 dynamically loadable module, linked against SWIG runtime lib +# ---------------------------------------------------------------- + +PERL5_RUNTIME=-L$(RUNTIMEDIR) -lswigpl + +perl5_multi: $(SRCS) + $(SWIG) -c -perl5 $(SWIGOPT) $(INTERFACE) + $(CC) -c -DSWIG -Dbool=char $(CCSHARED) $(CFLAGS) $(SRCS) $(ISRCS) $(INCLUDE) -I$(PERL5_INCLUDE) + $(LDSHARED) $(OBJS) $(IOBJS) $(PERL5_RUNTIME) $(PERL5_DLNK) $(LIBS) -o $(TARGET)$(SO) + +perl5_multi_cpp: $(SRCS) + $(SWIG) -c -perl5 -c++ $(SWIGOPT) $(INTERFACE) + $(CXX) -c $(CCSHARED) $(CFLAGS) -DSWIG -Dexplicit= $(SRCS) $(CXXSRCS) $(ICXXSRCS) $(INCLUDE) -I$(PERL5_INCLUDE) + $(CXXSHARED) $(OBJS) $(IOBJS) $(PERL5_RUNTIME) $(PERL5_DLNK) $(LIBS) $(CPP_DLLIBS) -o $(TARGET)$(SO) + +# ---------------------------------------------------------------- +# Build a module from existing XS C source code. (ie. from xsubpp). +# ---------------------------------------------------------------- +perl5_xs: $(SRCS) + $(CC) -c $(CCSHARED) $(CFLAGS) $(SRCS) $(INCLUDE) -I$(PERL5_INCLUDE) + $(LDSHARED) $(OBJS) $(LIBS) -o $(TARGET)$(SO) + +# ---------------------------------------------------------------- +# Build a statically linked Perl5 executable +# ---------------------------------------------------------------- + +PERL5_LIB = -L$(PERL5_INCLUDE) -lperl.so -ldl $(SYSLIBS) + +perl5_static: $(SRCS) + $(SWIG) -perl5 -static -lperlmain.i $(SWIGOPT) $(INTERFACE) + $(CC) $(CFLAGS) -Dbool=char $(SRCS) $(ISRCS) $(INCLUDE) -I$(PERL5_INCLUDE) $(PERL5_LIB) $(LIBS) -o $(TARGET) + +perl5_static_cpp: $(SRCS) + $(SWIG) -perl5 -c++ -static -lperlmain.i $(SWIGOPT) $(INTERFACE) + $(CXX) $(CFLAGS) -Dexplicit= $(SRCS) $(CXXSRCS) $(ICXXSRCS) $(INCLUDE) -I$(PERL5_INCLUDE) $(PERL5_LIB) $(LIBS) -o $(TARGET) + + +################################################################## +##### PYTHON ###### +################################################################## + +# Make sure these locate your Python installation +PYTHON_INCLUDE= -DHAVE_CONFIG_H +PYTHON_LIB = + +# Extra Python specific dynamic linking options +PYTHON_DLNK = + +# ---------------------------------------------------------------- +# Build a C dynamically loadable module +# ---------------------------------------------------------------- + +python: $(SRCS) + $(SWIG) -python $(SWIGOPT) $(INTERFACE) + $(CC) -c $(CCSHARED) $(CFLAGS) $(ISRCS) $(SRCS) $(INCLUDE) $(PYTHON_INCLUDE) + $(LDSHARED) $(OBJS) $(IOBJS) $(PYTHON_DLNK) $(LIBS) -o $(TARGET)module$(SO) + +# ----------------------------------------------------------------- +# Build a C++ dynamically loadable module +# ----------------------------------------------------------------- + +python_cpp: $(SRCS) + $(SWIG) -c++ -python $(SWIGOPT) $(INTERFACE) + $(CXX) -c $(CCSHARED) $(CFLAGS) $(ICXXSRCS) $(SRCS) $(CXXSRCS) $(INCLUDE) $(PYTHON_INCLUDE) + $(CXXSHARED) $(OBJS) $(IOBJS) $(PYTHON_DLNK) $(LIBS) $(CPP_DLLIBS) -o $(TARGET)module$(SO) + +# ----------------------------------------------------------------- +# Build a dynamically loadable module, linked against SWIG Runtime lib +# ----------------------------------------------------------------- + +PYTHON_RUNTIME=-L$(RUNTIMEDIR) -lswigpy + +python_multi: $(SRCS) + $(SWIG) -c -python $(SWIGOPT) $(INTERFACE) + $(CC) -c $(CCSHARED) $(CFLAGS) $(ISRCS) $(SRCS) $(INCLUDE) $(PYTHON_INCLUDE) + $(LDSHARED) $(OBJS) $(IOBJS) $(PYTHON_RUNTIME) $(PYTHON_DLNK) $(LIBS) -o $(TARGET)module$(SO) + +python_multi_cpp: $(SRCS) + $(SWIG) -c -c++ -python $(SWIGOPT) $(INTERFACE) + $(CXX) -c $(CCSHARED) $(CFLAGS) $(ICXXSRCS) $(SRCS) $(CXXSRCS) $(INCLUDE) $(PYTHON_INCLUDE) + $(CXXSHARED) $(OBJS) $(IOBJS) $(PYTHON_RUNTIME) $(PYTHON_DLNK) $(LIBS) $(CPP_DLLIBS) -o $(TARGET)module$(SO) + + +# ----------------------------------------------------------------- +# Build statically linked Python interpreter +# +# These should only be used in conjunction with the %include embed.i +# library file +# ----------------------------------------------------------------- + +#TKINTER = -L/usr/X11R6.3/lib -L/usr/local/compat/lib -ltk4.0 -ltcl7.4 -lX11 +TKINTER = +PYTHON_LIBOPTS = -lpython2.2 -ldl $(TKINTER) $(SYSLIBS) + +python_static: $(SRCS) + $(SWIG) -python -lembed.i $(SWIGOPT) $(INTERFACE) + $(CC) $(CFLAGS) -Xlinker -export-dynamic $(ISRCS) $(SRCS) $(INCLUDE) \ + $(PYTHON_INCLUDE) $(LIBS) -L$(PYTHON_LIB) $(PYTHON_LIBOPTS) -o $(TARGET) + +python_static_cpp: $(SRCS) + $(SWIG) -c++ -python -lembed.i $(SWIGOPT) $(INTERFACE) + $(CXX) $(CFLAGS) $(ICXXSRCS) $(SRCS) $(CXXSRCS) $(INCLUDE) \ + $(PYTHON_INCLUDE) $(LIBS) -L$(PYTHON_LIB) $(PYTHON_LIBOPTS) -o $(TARGET) + +# ----------------------------------------------------------------- +# Cleaning the python examples +# ----------------------------------------------------------------- + +python_clean: + rm -f *_wrap* *.o *~ *$(SO) mypython *.pyc .~* core + +################################################################## +##### GUILE ###### +################################################################## + +# Make sure these locate your Guile installation +GUILE_INCLUDE = +GUILE_LIB = + +# ---------------------------------------------------------------- +# Build a C dynamically loadable module +# ---------------------------------------------------------------- + +guile: $(SRCS) + $(SWIG) -guile -Linkage ltdlmod $(SWIGOPT) $(INTERFACE) + $(CC) -c $(CCSHARED) $(CFLAGS) $(INCLUDE) $(GUILE_INCLUDE) $(ISRCS) $(SRCS) + $(LDSHARED) $(OBJS) $(IOBJS) $(LIBS) -o lib$(TARGET)$(SO) + +# ----------------------------------------------------------------- +# Build a C++ dynamically loadable module +# ----------------------------------------------------------------- + +guile_cpp: $(SRCS) + $(SWIG) -c++ -guile -Linkage ltdlmod $(SWIGOPT) $(INTERFACE) + $(CXX) -c $(CCSHARED) $(CFLAGS) $(INCLUDE) $(GUILE_INCLUDE) $(ICXXSRCS) $(SRCS) $(CXXSRCS) + $(CXXSHARED) $(OBJS) $(IOBJS) $(LIBS) $(CPP_DLLIBS) -o lib$(TARGET)$(SO) + +# ----------------------------------------------------------------- +# Build a dynamically loadable module with passive linkage +# ----------------------------------------------------------------- + +guile_passive: $(SRCS) + $(SWIG) -guile -Linkage passive $(SWIGOPT) $(INTERFACE) + $(CC) -c $(CCSHARED) $(CFLAGS) $(INCLUDE) $(GUILE_INCLUDE) $(ISRCS) $(SRCS) + $(LDSHARED) $(OBJS) $(IOBJS) $(LIBS) -o lib$(TARGET)$(SO) + +guile_passive_cpp: $(SRCS) + $(SWIG) -c++ -guile -Linkage passive $(SWIGOPT) $(INTERFACE) + $(CXX) -c $(CCSHARED) $(CFLAGS) $(INCLUDE) $(GUILE_INCLUDE) $(ICXXSRCS) $(SRCS) $(CXXSRCS) + $(CXXSHARED) $(OBJS) $(IOBJS) $(LIBS) $(CPP_DLLIBS) -o lib$(TARGET)$(SO) + +# ----------------------------------------------------------------- +# Build a dynamically loadable module with passive linkage, +# linked against SWIG runtime lib +# ----------------------------------------------------------------- + +GUILE_RUNTIME=-L$(RUNTIMEDIR) -lswigguile + +guile_passive_multi: $(SRCS) + $(SWIG) -c -guile -Linkage passive $(SWIGOPT) $(INTERFACE) + $(CC) -c $(CCSHARED) $(CFLAGS) $(INCLUDE) $(GUILE_INCLUDE) $(ISRCS) $(SRCS) + $(LDSHARED) $(OBJS) $(IOBJS) $(GUILE_RUNTIME) $(LIBS) -o lib$(TARGET)$(SO) + +guile_passive_multi_cpp: $(SRCS) + $(SWIG) -c -c++ -guile -Linkage passive $(SWIGOPT) $(INTERFACE) + $(CXX) -c $(CCSHARED) $(CFLAGS) $(INCLUDE) $(GUILE_INCLUDE) $(ICXXSRCS) $(SRCS) $(CXXSRCS) + $(CXXSHARED) $(OBJS) $(IOBJS) $(GUILE_RUNTIME) $(LIBS) $(CPP_DLLIBS) -o lib$(TARGET)$(SO) + +# ----------------------------------------------------------------- +# Build statically linked Guile interpreter +# ----------------------------------------------------------------- + +GUILE_LIBOPTS = -ldl $(SYSLIBS) + +guile_static: $(SRCS) + $(SWIG) -guile -lguilemain.i -Linkage ltdlmod $(SWIGOPT) $(INTERFACE) + $(CC) $(CFLAGS) $(ISRCS) $(SRCS) $(INCLUDE) \ + -DSWIGINIT="SCM scm_init_$(TARGET)_module(void); scm_init_$(TARGET)_module();" \ + $(GUILE_INCLUDE) $(LIBS) -L$(GUILE_LIB) $(GUILE_LIBOPTS) -o $(TARGET)-guile + +guile_static_cpp: $(SRCS) + $(SWIG) -c++ -guile -lguilemain.i -Linkage ltdlmod $(SWIGOPT) $(INTERFACE) + $(CXX) $(CFLAGS) $(ICXXSRCS) $(SRCS) $(CXXSRCS) $(INCLUDE) \ + -DSWIGINIT="SCM scm_init_$(TARGET)_module(void); scm_init_$(TARGET)_module();" \ + $(GUILE_INCLUDE) $(LIBS) -L$(GUILE_LIB) $(GUILE_LIBOPTS) -o $(TARGET)-guile + +guile_simple: $(SRCS) + $(SWIG) -guile -lguilemain.i -Linkage simple $(SWIGOPT) $(INTERFACE) + $(CC) $(CFLAGS) $(ISRCS) $(SRCS) $(INCLUDE) \ + $(GUILE_INCLUDE) $(LIBS) -L$(GUILE_LIB) $(GUILE_LIBOPTS) -o $(TARGET)-guile + +guile_simple_cpp: $(SRCS) + $(SWIG) -c++ -guile -lguilemain.i -Linkage simple $(SWIGOPT) $(INTERFACE) + $(CXX) $(CFLAGS) $(ICXXSRCS) $(SRCS) $(CXXSRCS) $(INCLUDE) \ + $(GUILE_INCLUDE) $(LIBS) -L$(GUILE_LIB) $(GUILE_LIBOPTS) -o $(TARGET)-guile + +################################################################## +##### JAVA ###### +################################################################## + +# You need to set this variable to the java directories containing the +# files "jni.h" and "md.h" +# usually something like /usr/java/include and /usr/java/include/. +JAVA_INCLUDE= + +# Extra Java specific dynamic linking options +JAVA_DLNK = +JAVALIBPREFIX = lib + +# ---------------------------------------------------------------- +# Build a java dynamically loadable module (C) +# ---------------------------------------------------------------- + +java: $(SRCS) + $(SWIG) -java $(SWIGOPT) $(INTERFACE) + $(CC) -c $(CCSHARED) $(CFLAGS) $(SRCS) $(ISRCS) $(INCLUDE) $(JAVA_INCLUDE) + $(LDSHARED) $(OBJS) $(IOBJS) $(JAVA_DLNK) $(LIBS) -o $(JAVALIBPREFIX)$(TARGET)$(SO) + +# ---------------------------------------------------------------- +# Build a java dynamically loadable module (C++) +# ---------------------------------------------------------------- + +java_cpp: $(SRCS) + $(SWIG) -java -c++ $(SWIGOPT) $(INTERFACE) + $(CXX) -c $(CCSHARED) $(CFLAGS) $(SRCS) $(CXXSRCS) $(ICXXSRCS) $(INCLUDE) $(JAVA_INCLUDE) + $(CXXSHARED) $(OBJS) $(IOBJS) $(JAVA_DLNK) $(LIBS) $(CPP_DLLIBS) -o $(JAVALIBPREFIX)$(TARGET)$(SO) + +# ---------------------------------------------------------------- +# Build a java dynamically loadable module +# ---------------------------------------------------------------- + +java_multi: $(SRCS) + $(SWIG) -java $(SWIGOPT) $(INTERFACE) + $(CC) -c $(CCSHARED) $(CFLAGS) $(SRCS) $(ISRCS) $(INCLUDE) $(JAVA_INCLUDE) + $(LDSHARED) $(OBJS) $(IOBJS) $(JAVA_DLNK) $(LIBS) -o $(JAVALIBPREFIX)$(TARGET)$(SO) + +java_multi_cpp: $(SRCS) + $(SWIG) -java -c++ $(SWIGOPT) $(INTERFACE) + $(CXX) -c $(CCSHARED) $(CFLAGS) $(SRCS) $(CXXSRCS) $(ICXXSRCS) $(INCLUDE) $(JAVA_INCLUDE) + $(CXXSHARED) $(OBJS) $(IOBJS) $(JAVA_DLNK) $(LIBS) $(CPP_DLLIBS) -o $(JAVALIBPREFIX)$(TARGET)$(SO) + +# ----------------------------------------------------------------- +# Cleaning the java examples +# ----------------------------------------------------------------- + +java_clean: + mv main.java main.java.tmp + rm -f *_wrap* *.o core *~ *$(SO) *.class *.java + mv main.java.tmp main.java + +################################################################## +##### MZSCHEME ###### +################################################################## + +MZC = test -n "" && + +# ---------------------------------------------------------------- +# Build a C/C++ dynamically loadable module +# ---------------------------------------------------------------- + +mzscheme: $(SRCS) + $(SWIG) -mzscheme $(SWIGOPT) $(INTERFACE) + $(MZC) ++ccf "$(INCLUDE)" --cc $(ISRCS) $(SRCS) + $(MZC) --ld $(TARGET)$(SO) $(OBJS) $(IOBJS) + +mzscheme_cpp: $(SRCS) + $(SWIG) -mzscheme -c++ $(SWIGOPT) $(INTERFACE) + $(MZC) ++ccf "$(INCLUDE)" --cc $(ICXXSRCS) $(SRCS) $(CXXSRCS) + $(MZC) --ld $(TARGET)$(SO) $(OBJS) $(IOBJS) $(CPP_DLLIBS) + +# ---------------------------------------------------------------- +# Build a dynamically loadable module, linked against SWIG runtime +# ---------------------------------------------------------------- + +MZSCHEME_RUNTIME=-L$(RUNTIMEDIR) -lswigmz + +mzscheme_multi: $(SRCS) + $(SWIG) -c -mzscheme $(SWIGOPT) $(INTERFACE) + $(MZC) ++ccf "$(INCLUDE)" --cc $(ISRCS) $(SRCS) + $(MZC) --ld $(TARGET)$(SO) $(OBJS) $(IOBJS) $(MZSCHEME_RUNTIME) + +mzscheme_multi_cpp: $(SRCS) + $(SWIG) -c -mzscheme -c++ $(SWIGOPT) $(INTERFACE) + $(MZC) ++ccf "$(INCLUDE)" --cc $(ICXXSRCS) $(SRCS) $(CXXSRCS) + $(MZC) --ld $(TARGET)$(SO) $(OBJS) $(IOBJS) $(MZSCHEME_RUNTIME) $(CPP_DLLIBS) + +################################################################## +##### RUBY ###### +################################################################## + +# Make sure these locate your Ruby installation +RUBY_CFLAGS= -DHAVE_CONFIG_H +RUBY_INCLUDE= -I/usr/local/lib/ruby/1.4/arch +RUBY_LIB = /usr/local/lib/ruby/1.4/arch +RUBY_DLNK = + +# ---------------------------------------------------------------- +# Build a C dynamically loadable module +# ---------------------------------------------------------------- + +ruby: $(SRCS) + $(SWIG) -ruby $(SWIGOPT) $(INTERFACE) + $(CC) -c $(CCSHARED) $(CFLAGS) $(RUBY_CFLAGS) $(ISRCS) $(SRCS) $(INCLUDE) $(RUBY_INCLUDE) + $(LDSHARED) $(OBJS) $(IOBJS) $(RUBY_DLNK) $(LIBS) -o $(TARGET)$(SO) + +# ----------------------------------------------------------------- +# Build a C++ dynamically loadable module +# ----------------------------------------------------------------- + +ruby_cpp: $(SRCS) + $(SWIG) -c++ -ruby $(SWIGOPT) $(INTERFACE) + $(CXX) -c $(CCSHARED) $(CFLAGS) $(RUBY_CFLAGS) $(ICXXSRCS) $(SRCS) $(CXXSRCS) $(INCLUDE) $(RUBY_INCLUDE) + $(CXXSHARED) $(OBJS) $(IOBJS) $(RUBY_DLNK) $(LIBS) $(CPP_DLLIBS) -o $(TARGET)$(SO) + +# ----------------------------------------------------------------- +# Build a dynamically loadable module, linked against SWIG runtime lib +# ----------------------------------------------------------------- + +RUBY_RUNTIME=-L$(RUNTIMEDIR) -lswigrb + +ruby_multi: $(SRCS) + $(SWIG) -c -ruby $(SWIGOPT) $(INTERFACE) + $(CC) -c $(CCSHARED) $(CFLAGS) $(RUBY_CFLAGS) $(ISRCS) $(SRCS) $(INCLUDE) $(RUBY_INCLUDE) + $(LDSHARED) $(OBJS) $(IOBJS) $(RUBY_RUNTIME) $(RUBY_DLNK) $(LIBS) -o $(TARGET)$(SO) + +ruby_multi_cpp: $(SRCS) + $(SWIG) -c -c++ -ruby $(SWIGOPT) $(INTERFACE) + $(CXX) -c $(CCSHARED) $(CFLAGS) $(RUBY_CFLAGS) $(ICXXSRCS) $(SRCS) $(CXXSRCS) $(INCLUDE) $(RUBY_INCLUDE) + $(CXXSHARED) $(OBJS) $(IOBJS) $(RUBY_RUNTIME) $(RUBY_DLNK) $(LIBS) $(CPP_DLLIBS) -o $(TARGET)$(SO) + +# ----------------------------------------------------------------- +# Build statically linked Ruby interpreter +# +# These should only be used in conjunction with the %include embed.i +# library file +# ----------------------------------------------------------------- + +RUBY_LIBOPTS = -lruby -lm -ldl $(SYSLIBS) + +ruby_static: $(SRCS) + $(SWIG) -ruby -lembed.i $(SWIGOPT) $(INTERFACE) + $(CC) $(CFLAGS) $(RUBY_CFLAGS) -Xlinker -export-dynamic $(ISRCS) $(SRCS) $(INCLUDE) \ + $(RUBY_INCLUDE) $(LIBS) -L$(RUBY_LIB) $(RUBY_LIBOPTS) -o $(TARGET) + +ruby_cpp_static: $(SRCS) + $(SWIG) -c++ -ruby -lembed.i $(SWIGOPT) $(INTERFACE) + $(CXX) $(CFLAGS) $(RUBY_CFLAGS) $(ICXXSRCS) $(SRCS) $(CXXSRCS) $(INCLUDE) \ + $(RUBY_INCLUDE) $(LIBS) -L$(RUBY_LIB) $(RUBY_LIBOPTS) -o $(TARGET) + + +# ------------------------------------------------------------------- +# Build a PHP4 dynamically loadable module (C) +# ------------------------------------------------------------------- + +PHP4_INCLUDE = + +php4: $(SRCS) + $(SWIG) -php4 $(SWIGOPT) $(INTERFACE) + $(CC) -c $(CCSHARED) $(CFLAGS) $(SRCS) $(ISRCS) $(INCLUDE) $(PHP4_INCLUDE) + $(LDSHARED) $(OBJS) $(IOBJS) $(LIBS) -o $(TARGET)$(SO) + +# -------------------------------------------------------------------- +# Build a PHP4 dynamically loadable module (C++) +# -------------------------------------------------------------------- + +php4_cpp: $(SRCS) + $(SWIG) -php4 -c++ $(SWIGOPT) $(INTERFACE) + $(CXX) -c $(CCSHARED) $(CFLAGS) $(SRCS) $(CXXSRCS) $(ICXXSRCS) $(INCLUDE) $(PHP4_INCLUDE) + $(CXXSHARED) $(OBJS) $(IOBJS) $(LIBS) $(CPP_DLLIBS) -o $(TARGET)$(SO) + +# --------------------------------------------------------------------- +# Build a dynamically loadable module, linked against SWIG Runtime lib +# --------------------------------------------------------------------- + +PHP4_RUNTIME=-L$(RUNTIMEDIR) -lswigphp4 + +php4_multi: $(SRCS) + $(SWIG) -c -php4 $(SWIGOPT) $(INTERFACE) + $(CC) -c $(CCSHARED) $(CFLAGS) $(ISRCS) $(SRCS) $(INCLUDE) $(PHP4_INCLUDE) + $(LDSHARED) $(OBJS) $(IOBJS) $(PHP4_RUNTIME) $(PHP4_DLNK) $(LIBS) -o $(TARGET)module$(SO) + +php4_multi_cpp: $(SRCS) + $(SWIG) -c -c++ -php4 $(SWIGOPT) $(INTERFACE) + $(CXX) -c $(CCSHARED) $(CFLAGS) $(ICXXSRCS) $(SRCS) $(CXXSRCS) $(INCLUDE) $(PHP4_INCLUDE) + $(CXXSHARED) $(OBJS) $(IOBJS) $(PHP4_RUNTIME) $(PHP4_DLNK) $(LIBS) $(CPP_DLLIBS) -o $(TARGET)module$(SO) diff --git a/bindings/swig/examples/mod2zmod.pl b/bindings/swig/examples/mod2zmod.pl new file mode 100755 index 0000000..2cc205c --- /dev/null +++ b/bindings/swig/examples/mod2zmod.pl @@ -0,0 +1,84 @@ +#!/usr/bin/perl + +# This program converts a given module into a compressed module of the same type. +# This is just an example to demomstrate the power of the Perl Sword bindings. +# The code is almost written the same way the C++ of mod2zmod.cpp code was written + +use Sword; +use strict; + +my $appname = "mod2zmod.pl"; + +sub printUsage() +{ + print "\n$appname - Convert a module into a compressed module of the same type.\n"; + print "Usage: $appname [blocktype [compresstype]]\n"; + print("datapath: the directory in which to write the zModule\n"); + print("blockType : (default 4)\n\t2 - verses\n\t3 - chapters\n\t4 - books\n"); + print("compressType: (default 1):\n\t1 - LZSS\n\t2 - Zip\n\n"); + + exit(-1); +} + +#main part of the program +if (scalar(@ARGV) < 2 || scalar(@ARGV) > 4) { + printUsage; +} + +#initialization stuff +my $datapath = $ARGV[1]; +my $blockType = defined $ARGV[2] ? $ARGV[2] : 4; +my $compressType = defined $ARGV[3] ? $ARGV[3] : 1; +my $mgr = new Sword::SWMgr(); +my $module = $mgr->module($ARGV[0]); +my $compressor = ($compressType == 1) ? new Sword::LZSSCompress() : new Sword::ZipCompress(); + +my $newmod; + +if ($module->Type() eq "Biblical Texts") { + if (!Sword::zText::createModule( $datapath, $blockType )) { + print "$appname: Couldn't create module in $datapath"; + exit(-1); + } + $newmod = new Sword::zText( $datapath, 0, 0, $blockType, $compressor ); + +} elsif ($module->Type() eq "Lexicons / Dictionaries") { + if (!Sword::zLD::createModule( $datapath )){ + print "$appname: Couldn't create module in $datapath"; + exit(-1); + } + $newmod = new Sword::zLD( $datapath, 0, 0, $blockType, $compressor) +} elsif ($module->Type() eq "Commentaries") { + if (!Sword::zCom::createModule( $datapath, $blockType )){ + print "$appname: Couldn't create module in $datapath"; + exit(-1); + } + $newmod = new Sword::zCom( $datapath, 0, 0, $blockType, $compressor) +} + +# now copy the content of the module! + +my $buffer; + +$module->top(); +$module->setSkipConsecutiveLinks(0); +do { + my $key = $module->Key(); + if (($buffer eq $module->getRawEntry()) &&($buffer ne "")) { + print "Adding [", $key->getText(), "] link to: \n"; + $newmod->writeLink($key); + } + else { + $buffer = $module->getRawEntry(); + if ($buffer ne "") { + $newmod->SetKey($key); + $newmod->write($buffer); + # print "Added ", $key->getText(), "\n"; + } + else { + print "Skipping empty ", $key->getText(), "\n"; + } + } +} while($module->next()); + +print "The new module is now available in $datapath!\n"; diff --git a/bindings/swig/listkey.i b/bindings/swig/listkey.i new file mode 100644 index 0000000..62fe87d --- /dev/null +++ b/bindings/swig/listkey.i @@ -0,0 +1,92 @@ +%{ +#include "listkey.h" +using namespace sword; +%} + +class ListKey : public SWKey { +public: + /** initializes instance of ListKey + * + * @param ikey text key + */ + ListKey (const char *ikey = 0); + ListKey (ListKey const &k); + + /** Cleans up instance of ListKey + */ + virtual ~ ListKey (); + + virtual SWKey *clone () const; + + /** Clears out elements of list + */ + virtual void ClearList (); + + /** Returns number of elements in list + * @return number of elements in list + */ + virtual int Count (); + + /** Removes current element from list + */ + virtual void Remove (); + + /** Sets key to element number + * + * @param ielement element number to set to + * @return error status + */ + //virtual char SetToElement (int ielement, SW_POSITION = TOP); +%extend { + virtual char SetToElement(int element) { + return self->SetToElement(element, TOP); + }; +} + + /** Gets a key element number + * + * @param pos element number to get (or default current) + * @return Key or null on error + */ + virtual SWKey* GetElement (int pos = -1); + + /** Adds an element to the list + * @param ikey the element to add + */ + //ListKey & operator << (const SWKey &ikey); + virtual void add(const SWKey &ikey); + + /** Equates this ListKey to another ListKey object + * + * @param ikey other ListKey object + */ + virtual void copyFrom(const ListKey & ikey); + //virtual void copyFrom(const SWKey & ikey) { SWKey::copyFrom(ikey); } + + /** Positions this key + * + * @param p position + * @return *this + */ + virtual void setPosition(SW_POSITION); + + /** Decrements a number of elements + */ + virtual void decrement(int step); + + /** Increments a number of elements + */ + virtual void increment(int step); + + virtual char Traversable (); + virtual long Index () const; + + /** + * Returns the index for the new one given as as parameter. + * The first parameter is the new index. + */ + virtual long Index (long index); + + //SWKEY_OPERATORS + //ListKey & operator =(const ListKey &key) { copyFrom(key); return *this; } +}; diff --git a/bindings/swig/localemgr.i b/bindings/swig/localemgr.i new file mode 100644 index 0000000..8fb7487 --- /dev/null +++ b/bindings/swig/localemgr.i @@ -0,0 +1,25 @@ +%{ +#include + +using namespace std; +using namespace sword; +%} + +typedef map < SWBuf, SWLocale *, less < string > >LocaleMap; + +class LocaleMgr { +public: + LocaleMgr (const char *iConfigPath = 0); + virtual ~LocaleMgr (); + virtual SWLocale *getLocale (const char *name); + virtual std::list < SWBuf > getAvailableLocales (); + //virtual const char *translate (const char *name, const char *text); + virtual const char *getDefaultLocaleName(); + virtual void setDefaultLocaleName (const char *name); + +%extend { + static LocaleMgr* const getSystemLocaleMgr() { + return &(LocaleMgr::systemLocaleMgr); + }; +} +}; diff --git a/bindings/swig/lzsscompress.i b/bindings/swig/lzsscompress.i new file mode 100644 index 0000000..e83ba24 --- /dev/null +++ b/bindings/swig/lzsscompress.i @@ -0,0 +1,12 @@ +%{ +#include +using namespace sword; +%} + +class LZSSCompress : public SWCompress { +public: + LZSSCompress (); + virtual ~LZSSCompress (); + virtual void Encode (void); + virtual void Decode (void); +}; diff --git a/bindings/swig/package/Makefile.am b/bindings/swig/package/Makefile.am new file mode 100644 index 0000000..c8a50e3 --- /dev/null +++ b/bindings/swig/package/Makefile.am @@ -0,0 +1,96 @@ +EXTRA_DIST = *.i + +if RUNSWIG +PERLSWIG=perlswig +TCLSWIG=tclswig +PYTHONSWIG=pythonswig +PHPSWIG=phpswig +else +PERLSWIG= +TCLSWIG= +PYTHONSWIG= +PHPSWIG= +endif + +all: $(PERLBUILD) $(TCLBUILD) $(PYTHONBUILD) $(PHPBUILD) + echo "built" + +perl_make: perl_makebuild + cd perl && make + +perlswig: sword.i + mkdir -p perl + $(SWIG) -perl -c++ -shadow -o perl/Sword.cxx -I$(top_srcdir) $(SWORD_INCLUDES) $(top_srcdir)/sword.i + +perl_makebuild: $(PERLSWIG) + mkdir -p perl + echo "writing perl/Makefile.PL" + @echo "#! /usr/bin/perl" > perl/Makefile.PL + @echo "" >> perl/Makefile.PL + @echo "use ExtUtils::MakeMaker;" >> perl/Makefile.PL + @echo "" >> perl/Makefile.PL + @echo "# See lib/ExtUtils/MakeMaker.pm for details of how to influence" >> perl/Makefile.PL + @echo "# the contents of the Makefile that is written." >> perl/Makefile.PL + @echo "WriteMakefile(" >> perl/Makefile.PL + @echo " 'NAME' => 'Sword'," >> perl/Makefile.PL + @echo " 'VERSION' => '$(VERSION)'," >> perl/Makefile.PL + @echo " 'INC' => '$(SWORD_INCLUDES)'," >> perl/Makefile.PL + @echo " 'DEFINE' => '-DSWIG'," >> perl/Makefile.PL + @echo " 'LIBS' => '$(LIB_SWORD) -lz'," >> perl/Makefile.PL + @echo " 'PREREQ_PM' => {}, # e.g., Module::Name => 1.1" >> perl/Makefile.PL + @echo " ($$] >= 5.005 ? ## Add these new keywords supported since 5.005" >> perl/Makefile.PL + @echo " (ABSTRACT => 'Sword Project perl bindings', # retrieve abstract from module" >> perl/Makefile.PL + @echo " AUTHOR => 'Sword Project ') : ())," >> perl/Makefile.PL + @echo ");" >> perl/Makefile.PL + @echo "" >> perl/Makefile.PL + @echo "rename 'Makefile', 'Makefile.old' or die \"can't rename Makefile\";" >> perl/Makefile.PL + @echo "open(INPUT, '> perl/Makefile.PL + @echo "open(OUTPUT, '>Makefile') or die \"can't open output Makefile\";" >> perl/Makefile.PL + @echo "while () {" >> perl/Makefile.PL + @echo " s/\-lsword/\-lsword \-lstdc\+\+/;" >> perl/Makefile.PL + @echo " print OUTPUT \"$$""_\";" >> perl/Makefile.PL + @echo "}" >> perl/Makefile.PL + @echo "" >> perl/Makefile.PL + @echo "close INPUT;" >> perl/Makefile.PL + @echo "close OUTPUT;" >> perl/Makefile.PL + cd perl && $(PERL) Makefile.PL && make clean + @echo "\.old" > perl/MANIFEST.SKIP + @echo "~$$" >> perl/MANIFEST.SKIP + @echo "\.bak" >> perl/MANIFEST.SKIP + @echo "^CVS" >> perl/MANIFEST.SKIP + @echo "Makefile$$" >> perl/MANIFEST.SKIP + cd perl && $(PERL) Makefile.PL && make manifest + +tclswig: sword.i + mkdir -p tcl + $(SWIG) -tcl -c++ -namespace -pkgversion $(VERSION) -o tcl/Sword.cxx -I$(top_srcdir) $(top_srcdir)/sword.i + +python_make: python_makebuild + cd python && $(PYTHON) setup.py build_ext $(SWORD_INCLUDES) $(LIB_SWORD) + +pythonswig: sword.i + mkdir -p python + $(SWIG) -python -c++ -shadow -o python/Sword.cxx -I$(top_srcdir) $(top_srcdir)/sword.i + +python_makebuild: $(PYTHONSWIG) + mkdir -p python + echo "writing python/setup.py" + @echo "#! /usr/bin/python" > python/setup.py + @echo "" >> python/setup.py + @echo "from distutils.core import setup, Extension" >> python/setup.py + @echo "setup (name = \"sword\"," >> python/setup.py + @echo " version = \"$(VERSION)\"," >> python/setup.py + @echo " maintainer = \"Sword Developers\"," >> python/setup.py + @echo " maintainer_email = \"sword-devel@crosswire.org\"," >> python/setup.py + @echo " url = \"http://www.crosswire.org/sword\"," >> python/setup.py + @echo " py_modules = [\"Sword\"]," >> python/setup.py + @echo " ext_modules = [Extension(\"sword\", [\"Sword.cxx\"]," >> python/setup.py + @echo " define_macros=[('SWIG',1)])], " >> python/setup.py + @echo ")" >> python/setup.py + + + +phpswig: sword.i + mkdir -p php + $(SWIG) -php4 -c++ -fullmake -o php/Sword.cxx -I$(top_srcdir) $(top_srcdir)/sword.i + diff --git a/bindings/swig/package/README.cvs b/bindings/swig/package/README.cvs new file mode 100644 index 0000000..db24038 --- /dev/null +++ b/bindings/swig/package/README.cvs @@ -0,0 +1,10 @@ +README +------ + +To build the sword bindings for Sword you require + +SWIG 1.3 (see http://www.swig.org) +one of perl, python, tcl, php +Sword 1.5.6 + +First run ./autogen.sh to generate this directory diff --git a/bindings/swig/package/autogen.sh b/bindings/swig/package/autogen.sh new file mode 100755 index 0000000..dac8704 --- /dev/null +++ b/bindings/swig/package/autogen.sh @@ -0,0 +1,16 @@ +#!/bin/sh +echo "*** copying swig files" +cp -a ../*.i . + +ACLOCAL="$AUTODIR""aclocal" +echo "*** Recreating aclocal.m4" +echo "$ACLOCAL" + $ACLOCAL -I .; + +echo "*** Recreating configure" +AUTOCONF="$AUTODIR""autoconf" + $AUTOCONF; + +echo "*** Recreating the Makefile.in files" +AUTOMAKE="$AUTODIR""automake" + $AUTOMAKE -ac --foreign; diff --git a/bindings/swig/package/configure.ac b/bindings/swig/package/configure.ac new file mode 100644 index 0000000..63b7a43 --- /dev/null +++ b/bindings/swig/package/configure.ac @@ -0,0 +1,41 @@ +# --------------------------------------------------------------------- +# Initialisation +# --------------------------------------------------------------------- +AC_INIT(swordbindings, 1.5.6, sword-bugs@crosswire.org) +AC_CONFIG_SRCDIR(sword.i) +AC_PREREQ(2.52) +AC_REVISION($Revision: 1.1 $) +AM_INIT_AUTOMAKE(swordbindings,1.5.6) + +# --------------------------------------------------------------------- +# Check Programs +# --------------------------------------------------------------------- +AC_LANG(C++) +AC_PROG_CC +AC_PROG_CXX +AC_PROG_INSTALL +SW_PROG_SWIG + +# --------------------------------------------------------------------- +# Check libraries +# --------------------------------------------------------------------- +SW_CHECK_SWORD(1.5.5.99) + +# --------------------------------------------------------------------- +# Misc +# --------------------------------------------------------------------- +AM_MAINTAINER_MODE + +# --------------------------------------------------------------------- +# Check Scripting languages +# --------------------------------------------------------------------- +SW_FIND_PERL +SW_FIND_PYTHON +SW_FIND_PHP4 +SW_FIND_TCL + +# --------------------------------------------------------------------- +# Final output +# --------------------------------------------------------------------- +AC_CONFIG_FILES(Makefile) +AC_OUTPUT diff --git a/bindings/swig/package/perl.m4 b/bindings/swig/package/perl.m4 new file mode 100644 index 0000000..9add0b3 --- /dev/null +++ b/bindings/swig/package/perl.m4 @@ -0,0 +1,71 @@ +#---------------------------------------------------------------- +# Look for Perl5 +#---------------------------------------------------------------- + +AC_DEFUN(SW_FIND_PERL, +[ + + +PERLBIN= +PERLSWIG= + +AC_ARG_WITH(perl,[ --with-perl=path Set location of Perl5 executable],[ PERLBIN="$withval"], [PERLBIN=]) + +# First figure out what the name of Perl5 is + +if test -z "$PERLBIN"; then +AC_PATH_PROGS(PERL, perl perl5.6.1 perl5.6.0 perl5.004 perl5.003 perl5.002 perl5.001 perl5 perl) +else +AC_PATH_PROG(PERL, perl, , $PERLBIN) +#PERL="$PERLBIN" +fi + + +AC_MSG_CHECKING(for Perl5 header files) +if test -n "$PERL"; then + PERL5DIR=`($PERL -e 'use Config; print $Config{archlib};') 2>/dev/null` + if test "$PERL5DIR" != ""; then + dirs="$PERL5DIR $PERL5DIR/CORE" + PERL5EXT=none + PERLBUILD=perl_make + for i in $dirs; do + if test -r $i/perl.h; then + AC_MSG_RESULT($i) + PERL5EXT="$i" + break; + fi + done + if test "$PERL5EXT" = none; then + PERL5EXT="$PERL5DIR/CORE" + AC_MSG_RESULT(could not locate perl.h...using $PERL5EXT) + fi + + AC_MSG_CHECKING(for Perl5 library) + PERL5LIB=`($PERL -e 'use Config; $_=$Config{libperl}; s/^lib//; s/$Config{_a}$//; print $_') 2>/dev/null` + if test "$PERL5LIB" = "" ; then + AC_MSG_RESULT(not found) + else + AC_MSG_RESULT($PERL5LIB) + fi + else + AC_MSG_RESULT(unable to determine perl5 configuration) + PERL5EXT=$PERL5DIR + fi +else + AC_MSG_RESULT(could not figure out how to run perl5) +# PERL5EXT="/usr/local/lib/perl/archname/5.003/CORE" +fi + +# Only cygwin (Windows) needs the library for dynamic linking +case $ac_sys_system/$ac_sys_release in +CYGWIN*) PERL5DYNAMICLINKING="-L$PERL5EXT -l$PERL5LIB";; +*)PERL5DYNAMICLINKING="";; +esac + + +AC_SUBST(PERL5EXT) +AC_SUBST(PERL5DYNAMICLINKING) +AC_SUBST(PERL5LIB) +AC_SUBST(PERLBUILD) + +]) diff --git a/bindings/swig/package/php4.m4 b/bindings/swig/package/php4.m4 new file mode 100644 index 0000000..d184ec2 --- /dev/null +++ b/bindings/swig/package/php4.m4 @@ -0,0 +1,33 @@ +#------------------------------------------------------------------------- +# Look for Php4 +#------------------------------------------------------------------------- + +AC_DEFUN(SW_FIND_PHP4, +[ + +PHP4BIN= + +AC_ARG_WITH(php4,[ --with-php4=path Set location of PHP4 executable],[ PHP4BIN="$withval"], [PHP4BIN=]) + +if test -z "$PHP4BIN"; then +AC_PATH_PROGS(PHP4, php php4) +else +PHP4="$PHP4BIN" +fi +AC_MSG_CHECKING(for PHP4 header files) +dirs="/usr/include/php /usr/local/include/php /usr/local/apache/php /usr/include/php4 /usr/local/include/php4 /usr/local/apache/php4" +for i in $dirs; do + if test -r $i/php_config.h -o -r $i/php_version.h; then + AC_MSG_RESULT($i) + PHP4EXT="$i" + PHP4INC="-I$PHP4EXT -I$PHP4EXT/Zend -I$PHP4EXT/main -I$PHP4EXT/TSRM" + break; + fi +done +if test -z "$PHP4INC"; then + AC_MSG_RESULT(not found) +fi + +AC_SUBST(PHP4INC) + +]) diff --git a/bindings/swig/package/python.m4 b/bindings/swig/package/python.m4 new file mode 100644 index 0000000..a047ea4 --- /dev/null +++ b/bindings/swig/package/python.m4 @@ -0,0 +1,117 @@ +#---------------------------------------------------------------- +# Look for Python +#---------------------------------------------------------------- + +AC_DEFUN(SW_FIND_PYTHON, +[ + +PYINCLUDE= +PYLIB= +PYPACKAGE= +PYTHONBUILD= + +# I don't think any of this commented stuff works anymore + +#PYLINK="-lModules -lPython -lObjects -lParser" + +#AC_ARG_WITH(py,[ --with-py=path Set location of Python],[ +# PYPACKAGE="$withval"], [PYPACKAGE=]) +#AC_ARG_WITH(pyincl,[ --with-pyincl=path Set location of Python include directory],[ +# PYINCLUDE="$withval"], [PYINCLUDE=]) +#AC_ARG_WITH(pylib,[ --with-pylib=path Set location of Python library directory],[ +# PYLIB="$withval"], [PYLIB=]) + +#if test -z "$PYINCLUDE"; then +# if test -n "$PYPACKAGE"; then +# PYINCLUDE="$PYPACKAGE/include" +# fi +#fi + +#if test -z "$PYLIB"; then +# if test -n "$PYPACKAGE"; then +# PYLIB="$PYPACKAGE/lib" +# fi +#fi + +AC_ARG_WITH(python,[ --with-python=path Set location of Python executable],[ PYBIN="$withval"], [PYBIN=]) + +# First figure out the name of the Python executable + +if test -z "$PYBIN"; then +AC_PATH_PROGS(PYTHON, $prefix/bin/python python python2.4 python2.3 python2.2 python2.1 python2.0 python1.6 python1.5 python1.4 python) +else +PYTHON="$PYBIN" +fi + +if test -n "$PYTHON"; then + AC_MSG_CHECKING(for Python prefix) + PYPREFIX=`($PYTHON -c "import sys; print sys.prefix") 2>/dev/null` + AC_MSG_RESULT($PYPREFIX) + AC_MSG_CHECKING(for Python exec-prefix) + PYEPREFIX=`($PYTHON -c "import sys; print sys.exec_prefix") 2>/dev/null` + AC_MSG_RESULT($PYEPREFIX) + + + # Note: I could not think of a standard way to get the version string from different versions. + # This trick pulls it out of the file location for a standard library file. + + AC_MSG_CHECKING(for Python version) + + # Need to do this hack since autoconf replaces __file__ with the name of the configure file + filehack="file__" + PYVERSION=`($PYTHON -c "import string,operator; print operator.getitem(string.split(string.__$filehack,'/'),-2)")` + AC_MSG_RESULT($PYVERSION) + + # Set the include directory + + AC_MSG_CHECKING(for Python header files) + if test -r $PYPREFIX/include/$PYVERSION/Python.h; then + PYINCLUDE="-I$PYPREFIX/include/$PYVERSION -I$PYEPREFIX/lib/$PYVERSION/config" + fi + if test -z "$PYINCLUDE"; then + if test -r $PYPREFIX/include/Py/Python.h; then + PYINCLUDE="-I$PYPREFIX/include/Py -I$PYEPREFIX/lib/python/lib" + fi + fi + AC_MSG_RESULT($PYINCLUDE) + + # Set the library directory blindly. This probably won't work with older versions + AC_MSG_CHECKING(for Python library) + dirs="$PYVERSION/config $PYVERSION/lib python/lib" + for i in $dirs; do + if test -d $PYEPREFIX/lib/$i; then + PYLIB="$PYEPREFIX/lib/$i" + PYTHONBUILD=python_make + break + fi + done + if test -z "$PYLIB"; then + AC_MSG_RESULT(Not found) + else + AC_MSG_RESULT($PYLIB) + fi + + # Check for really old versions + if test -r $PYLIB/libPython.a; then + PYLINK="-lModules -lPython -lObjects -lParser" + else + PYLINK="-l$PYVERSION" + fi +fi + +# Only cygwin (Windows) needs the library for dynamic linking +case $ac_sys_system/$ac_sys_release in +CYGWIN*) PYTHONDYNAMICLINKING="-L$PYLIB $PYLINK" + PYINCLUDE="-DUSE_DL_IMPORT $PYINCLUDE" + ;; +*)PYTHONDYNAMICLINKING="";; +esac + + +AC_SUBST(PYINCLUDE) +AC_SUBST(PYLIB) +AC_SUBST(PYLINK) +AC_SUBST(PYTHONBUILD) +AC_SUBST(PYTHONDYNAMICLINKING) + +]) diff --git a/bindings/swig/package/swig.m4 b/bindings/swig/package/swig.m4 new file mode 100644 index 0000000..9ff89d7 --- /dev/null +++ b/bindings/swig/package/swig.m4 @@ -0,0 +1,29 @@ +#---------------------------------------------------------------- +# Look for SWIG +#---------------------------------------------------------------- + +AC_DEFUN(SW_PROG_SWIG, +[ + +AC_ARG_WITH(swigbin,[ --with-swigbin=path Set location of swig executable],[ SWIGBIN="$withval"], [SWIGBIN=]) +AC_ARG_ENABLE(swig,[ --enable-swig=path Run swig to generate new source default=no],, enable_swig=no) + +if test -z "$SWIGBIN"; then +AC_PATH_PROG(SWIG, swig) +else +AC_PATH_PROG(SWIG, swig, "not found", $SWIGBIN) +fi + +runswig=true +if test x"$SWIG"="xnot found"; then + runswig=false +fi +if test x"$enable_swig"="xno"; then + runswig=false +fi + +AM_CONDITIONAL(RUNSWIG, test x$runswig = xtrue) + +#ac_cv_swigversion=`` + +]) diff --git a/bindings/swig/package/sword.m4 b/bindings/swig/package/sword.m4 new file mode 100644 index 0000000..f22da68 --- /dev/null +++ b/bindings/swig/package/sword.m4 @@ -0,0 +1,172 @@ +## -*- autoconf -*- +dnl This file was created by Joachim Ansorg +dnl It provides macord for the autoconf package to find the Sword library on your system. + +dnl ---------------------------------------------------------------------- +dnl Check wheter to use static linking +dnl first parameter is the required version +dnl second is whether to use static sword library +dnl ---------------------------------------------------------------------- +AC_DEFUN(SW_CHECK_SWORD, +[ +dnl AC_MSG_CHECKING([for a Sword installation]) + +dnl The option for the configure script +AC_ARG_WITH(sword-dir, +[ --with-sword-dir=DIR Patch where Sword is being installed (default=/usr) ], +[ + ac_sword_dir=$withval +],ac_sword_dir=/usr +) + +AC_ARG_ENABLE(static-sword, +[ --enable-static-sword Link to the static Sword library], + ac_static_sword="YES", + [ ac_static_sword="$2" ] +) + +dnl try to find Sword library files +AC_MSG_CHECKING([for Sword library files]) +AC_REQUIRE([AC_FIND_ZLIB]) +ac_sword_library_dirs="$ac_sword_dir/lib /usr/lib /usr/lib/sword /usr/local/lib /usr/local/lib/sword /usr/local/sword/lib" + +if test "$ac_static_sword" = "YES"; then + SEARCH_LIBS="libsword.a"; +else + SEARCH_LIBS="libsword.a libsword.so"; +fi + + +AC_CACHE_VAL(ac_cv_sword_libdir, AC_FIND_FILE($SEARCH_LIBS, $ac_sword_library_dirs, ac_cv_sword_libdir)) + +if test "$ac_cv_sword_libdir" = "NO"; then + AC_MSG_ERROR(SWORD library not found. Try to use configure with --with-sword-dir=/your/SWORD/path!); +fi + +if test "$ac_static_sword" = "YES"; then + LIB_SWORD="$ac_cv_sword_libdir/libsword.a"; +else + LIB_SWORD="-L$ac_cv_sword_libdir -lsword"; +fi + +#AC_SUBST(SWORD_LIBRARY_PATH) +AC_SUBST(LIB_SWORD) +all_libraries="$all_libraries -L$ac_cv_sword_libdir" + +if test "$ac_static_sword" = "YES"; then + MESSAGE="static library $ac_cv_sword_libdir/libsword.a"; +else + MESSAGE="$ac_cv_sword_libdir"; +fi +AC_MSG_RESULT([$MESSAGE]) + + + +dnl -- try to find Swords include files -- +AC_MSG_CHECKING([for Sword include files]) +ac_sword_include_dirs="$ac_sword_dir/include/sword $ac_sword_dir/include /usr/include/sword /usr/include /usr/local/include/sword /usr/local/include /usr/local/sword/include /usr/local/sword/include/sword" + +AC_CACHE_VAL(ac_cv_sword_incdir, AC_FIND_FILE(swmgr.h, $ac_sword_include_dirs, ac_cv_sword_incdir)) + +if test "$ac_cv_sword_incdir" = "NO"; then + AC_MSG_ERROR([The Sword include file files were not found. +Please try to use configure with --with-sword-dir=/your/SWORD/path ! +]) +fi + +SWORD_INCLUDES="-I$ac_cv_sword_incdir" +AC_SUBST(SWORD_INCLUDES) +all_includes="$all_includes -I$ac_cv_sword_incdir" + +AC_MSG_RESULT([$ac_cv_sword_incdir]) + + + +dnl -- check if Sword matches the minimum version -- +AC_MSG_CHECKING([if you have Sword $1 or later]) + +AC_CACHE_VAL(ac_cv_installed_sword_version, +[ +AC_LANG_SAVE +AC_LANG_CPLUSPLUS +ac_LD_LIBRARY_PATH_safe=$LD_LIBRARY_PATH +ac_LIBRARY_PATH="$LIBRARY_PATH" +ac_cxxflags_safe="$CXXFLAGS" +ac_ldflags_safe="$LDFLAGS" +ac_libs_safe="$LIBS" + +CXXFLAGS="$CXXFLAGS -I$" +LDFLAGS="$LDFLAGS -L$ac_cv_sword_libdir" +LIBS="$LIB_SWORD -lz" +LD_LIBRARY_PATH="$ac_cv_sword_libdir" +export LD_LIBRARY_PATH +LIBRARY_PATH= +export LIBRARY_PATH + +cat > conftest.$ac_ext < +#include +using std::cout; +using std::endl; +using sword::SWVersion; + +int main(int argc, char* argv[]) { + if (argc != 2) { + cout << SWVersion::currentVersion << endl; + } + else if (argc == 2) + { + if (SWVersion(&argv[[1]]) < SWVersion::currentVersion || SWVersion(&argv[[1]]) == SWVersion::currentVersion) + { + cout << 0 << endl; + return 0; + } + else + { + cout << 1 << endl; + return 1; //version not recent enough + } + } + return 0; +} +EOF + +ac_link='${CXX-g++} -o conftest $CXXFLAGS $all_includes $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS 1>&5' +if AC_TRY_EVAL(ac_link) && test -s conftest; then + if test -x conftest; then + eval ac_cv_installed_sword_version=`./conftest 2>&5` + echo "configure: ac_cv_installed_sword_version=$ac_cv_installed_sword_version" >&AC_FD_CC + eval sword_test_returncode=`./conftest $1 2>&5`; + echo "configure: sword_test_returncode=$sword_test_returncode" >&AC_FD_CC + fi +else + echo "configure: failed program was:" >&AC_FD_CC + cat conftest.$ac_ext >&AC_FD_CC +fi + +rm -f conftest* +CXXFLAGS="$ac_cxxflags_safe" +LDFLAGS="$ac_ldflags_safe" +LIBS="$ac_libs_safe" + +LD_LIBRARY_PATH="$ac_LD_LIBRARY_PATH_safe" +export LD_LIBRARY_PATH +LIBRARY_PATH="$ac_LIBRARY_PATH" +export LIBRARY_PATH +AC_LANG_RESTORE +]) + +right_version="ok"; +if test "x$sword_test_returncode" = "x1"; then + echo "configure: changing right_version" >&AC_FD_CC + right_version="wrong version"; +fi; + +AC_MSG_RESULT([$ac_cv_installed_sword_version]) +echo "configure: right_version=$right_version" >&AC_FD_CC +if test "x$right_version" != "xok"; then + AC_MSG_ERROR([Your Sword installation is not recent enough! $sword_test_returncode Please +upgrade to version $1!]); +fi; + +]) diff --git a/bindings/swig/package/tcl.m4 b/bindings/swig/package/tcl.m4 new file mode 100644 index 0000000..9b99c7f --- /dev/null +++ b/bindings/swig/package/tcl.m4 @@ -0,0 +1,114 @@ +#-------------------------------------------------------------------- +# Try to locate the Tcl package +#-------------------------------------------------------------------- + +AC_DEFUN(SW_FIND_TCL, +[ + + +TCLINCLUDE= +TCLLIB= +TCLPACKAGE= +#TCLSWIG= + +AC_ARG_WITH(tclconfig,[ --with-tclconfig=path Set location of tclConfig.sh], + with_tclconfig="$withval") +AC_ARG_WITH(tcl,[ --with-tcl=path Set location of Tcl package],[ + TCLPACKAGE="$withval"], [TCLPACKAGE=]) +AC_ARG_WITH(tclincl,[ --with-tclincl=path Set location of Tcl include directory],[ + TCLINCLUDE="-I$withval"], [TCLINCLUDE=]) +AC_ARG_WITH(tcllib,[ --with-tcllib=path Set location of Tcl library directory],[ + TCLLIB="-L$withval"], [TCLLIB=]) + +AC_MSG_CHECKING([for Tcl configuration]) +# First check to see if --with-tclconfig was specified. +if test x"${with_tclconfig}" != x ; then + if test -f "${with_tclconfig}/tclConfig.sh" ; then + TCLCONFIG=`(cd ${with_tclconfig}; pwd)` + else + AC_MSG_ERROR([${with_tcl} directory doesn't contain tclConfig.sh]) + fi +fi +# check in a few common install locations +if test x"${TCLCONFIG}" = x ; then + for i in `ls -d /usr/lib 2>/dev/null` \ + `ls -d ${prefix}/lib 2>/dev/null` \ + `ls -d /usr/local/lib 2>/dev/null` ; do + if test -f "$i/tclConfig.sh" ; then + TCLCONFIG=`(cd $i; pwd)` + break + fi + done +fi +if test x"${TCLCONFIG}" = x ; then + AC_MSG_RESULT(no) +else + AC_MSG_RESULT(found $TCLCONFIG/tclConfig.sh) + . $TCLCONFIG/tclConfig.sh + TCLINCLUDE=-I$TCL_PREFIX/include + TCLLIB=$TCL_LIB_SPEC +fi + +if test -z "$TCLINCLUDE"; then + if test -n "$TCLPACKAGE"; then + TCLINCLUDE="-I$TCLPACKAGE/include" + fi +fi + +if test -z "$TCLLIB"; then + if test -n "$TCLPACKAGE"; then + TCLLIB="-L$TCLPACKAGE/lib -ltcl" + fi +fi + +AC_MSG_CHECKING(for Tcl header files) +if test -z "$TCLINCLUDE"; then +AC_TRY_CPP([#include ], , TCLINCLUDE="") +if test -z "$TCLINCLUDE"; then + dirs="$prefix/include /usr/local/include /usr/include /opt/local/include" + for i in $dirs ; do + if test -r $i/tcl.h; then + AC_MSG_RESULT($i) + TCLINCLUDE="-I$i" + break + fi + done +fi +if test -z "$TCLINCLUDE"; then +# TCLINCLUDE="-I/usr/local/include" + AC_MSG_RESULT(not found) +fi +else + AC_MSG_RESULT($TCLINCLUDE) +fi + +AC_MSG_CHECKING(for Tcl library) +if test -z "$TCLLIB"; then +dirs="$prefix/lib /usr/local/lib /usr/lib /opt/local/lib" +for i in $dirs ; do + if test -r $i/libtcl.a; then + AC_MSG_RESULT($i) + TCLLIB="-L$i -ltcl" + break + fi +done +if test -z "$TCLLIB"; then + AC_MSG_RESULT(not found) +# TCLLIB="-L/usr/local/lib" +fi +else +AC_MSG_RESULT($TCLLIB) +fi + +# Only cygwin (Windows) needs the library for dynamic linking +case $ac_sys_system/$ac_sys_release in +CYGWIN*) TCLDYNAMICLINKING="$TCLLIB";; +*)TCLDYNAMICLINKING="";; +esac + +AC_SUBST(TCLINCLUDE) +AC_SUBST(TCLLIB) +AC_SUBST(TCLDYNAMICLINKING) +#AC_SUBST(TCLSWIG) + +]) diff --git a/bindings/swig/package/zlib.m4 b/bindings/swig/package/zlib.m4 new file mode 100644 index 0000000..952e5bd --- /dev/null +++ b/bindings/swig/package/zlib.m4 @@ -0,0 +1,111 @@ +## -*- autoconf -*- + + +AC_DEFUN(AC_FIND_ZLIB, +[ +AC_REQUIRE([KDE_CHECK_EXTRA_LIBS]) +AC_MSG_CHECKING([for libz]) +AC_CACHE_VAL(ac_cv_lib_z, +[ +AC_LANG_C +kde_save_LIBS="$LIBS" +LIBS="$all_libraries $USER_LDFLAGS -lz $LIBSOCKET" +kde_save_CFLAGS="$CFLAGS" +CFLAGS="$CFLAGS $all_includes $USER_INCLUDES" +AC_TRY_LINK(dnl +[ +#include +], + [return (zlibVersion() == ZLIB_VERSION); ], + eval "ac_cv_lib_z='-lz'", + eval "ac_cv_lib_z=no") +LIBS="$kde_save_LIBS" +CFLAGS="$kde_save_CFLAGS" +])dnl +if test ! "$ac_cv_lib_z" = no; then + AC_DEFINE_UNQUOTED(HAVE_LIBZ, 1, [Define if you have libz]) + LIBZ="$ac_cv_lib_z" + AC_SUBST(LIBZ) + AC_MSG_RESULT($ac_cv_lib_z) +else + AC_MSG_ERROR(not found. Check your installation and look into config.log) + LIBZ="" + AC_SUBST(LIBZ) +fi +]) + +AC_DEFUN(KDE_CHECK_EXTRA_LIBS, +[ +AC_MSG_CHECKING(for extra includes) +AC_ARG_WITH(extra-includes, [ --with-extra-includes=DIR + adds non standard include paths], + kde_use_extra_includes="$withval", + kde_use_extra_includes=NONE +) +kde_extra_includes= +if test -n "$kde_use_extra_includes" && \ + test "$kde_use_extra_includes" != "NONE"; then + + ac_save_ifs=$IFS + IFS=':' + for dir in $kde_use_extra_includes; do + kde_extra_includes="$kde_extra_includes $dir" + USER_INCLUDES="$USER_INCLUDES -I$dir" + done + IFS=$ac_save_ifs + kde_use_extra_includes="added" +else + kde_use_extra_includes="no" +fi +AC_SUBST(USER_INCLUDES) + +AC_MSG_RESULT($kde_use_extra_includes) + +kde_extra_libs= +AC_MSG_CHECKING(for extra libs) +AC_ARG_WITH(extra-libs, [ --with-extra-libs=DIR adds non standard library paths], + kde_use_extra_libs=$withval, + kde_use_extra_libs=NONE +) +if test -n "$kde_use_extra_libs" && \ + test "$kde_use_extra_libs" != "NONE"; then + + ac_save_ifs=$IFS + IFS=':' + for dir in $kde_use_extra_libs; do + kde_extra_libs="$kde_extra_libs $dir" + KDE_EXTRA_RPATH="$KDE_EXTRA_RPATH -R $dir" + USER_LDFLAGS="$USER_LDFLAGS -L$dir" + done + IFS=$ac_save_ifs + kde_use_extra_libs="added" +else + kde_use_extra_libs="no" +fi + +AC_SUBST(USER_LDFLAGS) + +AC_MSG_RESULT($kde_use_extra_libs) + +]) + +dnl ------------------------------------------------------------------------ +dnl Find a file (or one of more files in a list of dirs) +dnl ------------------------------------------------------------------------ +dnl +AC_DEFUN(AC_FIND_FILE, +[ +$3=NO +for i in $2; +do + for j in $1; + do + echo "configure: __oline__: $i/$j" >&AC_FD_CC + if test -r "$i/$j"; then + echo "taking that" >&AC_FD_CC + $3=$i + break 2 + fi + done +done +]) diff --git a/bindings/swig/perl/Changes b/bindings/swig/perl/Changes new file mode 100644 index 0000000..724061a --- /dev/null +++ b/bindings/swig/perl/Changes @@ -0,0 +1,6 @@ +Revision history for Perl extension sword. + +1.5.5 Wed Oct 2 23:52:35 2002 + - original version; created by h2xs 1.21 with options + -X -n Sword -v 1.5.5 + diff --git a/bindings/swig/perl/README b/bindings/swig/perl/README new file mode 100644 index 0000000..af3aace --- /dev/null +++ b/bindings/swig/perl/README @@ -0,0 +1,35 @@ +sword version 1.5.5 +=================== + +The README is used to introduce the module and provide instructions on +how to install the module, any machine dependencies it may have (for +example C compilers and installed libraries) and any other information +that should be provided before the module is installed. + +A README file is required for CPAN modules since CPAN extracts the +README file from a module distribution so that people browsing the +archive can use it get an idea of the modules uses. It is usually a +good idea to provide version information here so that people can +decide whether fixes for the module are worth downloading. + +INSTALLATION + +To install this module type the following: + + perl Makefile.PL + make + make test + make install + +DEPENDENCIES + +This module requires these other modules and libraries: + + blah blah blah + +COPYRIGHT AND LICENCE + +Put the correct copyright and licence information here. + +Copyright (C) 2002 Crosswire Bible Society + diff --git a/bindings/swig/perl/Sword.cxx b/bindings/swig/perl/Sword.cxx new file mode 100644 index 0000000..f7384b0 --- /dev/null +++ b/bindings/swig/perl/Sword.cxx @@ -0,0 +1,10209 @@ +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 1.3.19 + * + * This file is not intended to be easily readable and contains a number of + * coding conventions designed to improve portability and efficiency. Do not make + * changes to this file unless you know what you are doing--modify the SWIG + * interface file instead. + * ----------------------------------------------------------------------------- */ + + +#ifdef __cplusplus +template class SwigValueWrapper { + T *tt; +public: + inline SwigValueWrapper() : tt(0) { } + inline ~SwigValueWrapper() { if (tt) delete tt; } + inline SwigValueWrapper& operator=(const T& t) { tt = new T(t); return *this; } + inline operator T&() const { return *tt; } + inline T *operator&() { return tt; } +}; +#endif + +/*********************************************************************** + * common.swg + * + * This file contains generic SWIG runtime support for pointer + * type checking as well as a few commonly used macros to control + * external linkage. + * + * Author : David Beazley (beazley@cs.uchicago.edu) + * + * Copyright (c) 1999-2000, The University of Chicago + * + * This file may be freely redistributed without license or fee provided + * this copyright message remains intact. + ************************************************************************/ + +#include + +#if defined(_WIN32) || defined(__WIN32__) +# if defined(_MSC_VER) +# if defined(STATIC_LINKED) +# define SWIGEXPORT(a) a +# define SWIGIMPORT(a) extern a +# else +# define SWIGEXPORT(a) __declspec(dllexport) a +# define SWIGIMPORT(a) extern a +# endif +# else +# if defined(__BORLANDC__) +# define SWIGEXPORT(a) a _export +# define SWIGIMPORT(a) a _export +# else +# define SWIGEXPORT(a) a +# define SWIGIMPORT(a) a +# endif +# endif +#else +# define SWIGEXPORT(a) a +# define SWIGIMPORT(a) a +#endif + +#ifdef SWIG_GLOBAL +#define SWIGRUNTIME(a) SWIGEXPORT(a) +#else +#define SWIGRUNTIME(a) static a +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +typedef void *(*swig_converter_func)(void *); +typedef struct swig_type_info *(*swig_dycast_func)(void **); + +typedef struct swig_type_info { + const char *name; + swig_converter_func converter; + const char *str; + void *clientdata; + swig_dycast_func dcast; + struct swig_type_info *next; + struct swig_type_info *prev; +} swig_type_info; + +#ifdef SWIG_NOINCLUDE + +SWIGIMPORT(swig_type_info *) SWIG_TypeRegister(swig_type_info *); +SWIGIMPORT(swig_type_info *) SWIG_TypeCheck(char *c, swig_type_info *); +SWIGIMPORT(void *) SWIG_TypeCast(swig_type_info *, void *); +SWIGIMPORT(swig_type_info *) SWIG_TypeDynamicCast(swig_type_info *, void **); +SWIGIMPORT(const char *) SWIG_TypeName(const swig_type_info *); +SWIGIMPORT(swig_type_info *) SWIG_TypeQuery(const char *); +SWIGIMPORT(void) SWIG_TypeClientData(swig_type_info *, void *); + +#else + +static swig_type_info *swig_type_list = 0; + +/* Register a type mapping with the type-checking */ +SWIGRUNTIME(swig_type_info *) +SWIG_TypeRegister(swig_type_info *ti) +{ + swig_type_info *tc, *head, *ret, *next; + /* Check to see if this type has already been registered */ + tc = swig_type_list; + while (tc) { + if (strcmp(tc->name, ti->name) == 0) { + /* Already exists in the table. Just add additional types to the list */ + if (tc->clientdata) ti->clientdata = tc->clientdata; + head = tc; + next = tc->next; + goto l1; + } + tc = tc->prev; + } + head = ti; + next = 0; + + /* Place in list */ + ti->prev = swig_type_list; + swig_type_list = ti; + + /* Build linked lists */ + l1: + ret = head; + tc = ti + 1; + /* Patch up the rest of the links */ + while (tc->name) { + head->next = tc; + tc->prev = head; + head = tc; + tc++; + } + if (next) next->prev = head; /**/ + head->next = next; + return ret; +} + +/* Check the typename */ +SWIGRUNTIME(swig_type_info *) +SWIG_TypeCheck(char *c, swig_type_info *ty) +{ + swig_type_info *s; + if (!ty) return 0; /* Void pointer */ + s = ty->next; /* First element always just a name */ + do { + if (strcmp(s->name,c) == 0) { + if (s == ty->next) return s; + /* Move s to the top of the linked list */ + s->prev->next = s->next; + if (s->next) { + s->next->prev = s->prev; + } + /* Insert s as second element in the list */ + s->next = ty->next; + if (ty->next) ty->next->prev = s; + ty->next = s; + s->prev = ty; /**/ + return s; + } + s = s->next; + } while (s && (s != ty->next)); + return 0; +} + +/* Cast a pointer up an inheritance hierarchy */ +SWIGRUNTIME(void *) +SWIG_TypeCast(swig_type_info *ty, void *ptr) +{ + if ((!ty) || (!ty->converter)) return ptr; + return (*ty->converter)(ptr); +} + +/* Dynamic pointer casting. Down an inheritance hierarchy */ +SWIGRUNTIME(swig_type_info *) +SWIG_TypeDynamicCast(swig_type_info *ty, void **ptr) +{ + swig_type_info *lastty = ty; + if (!ty || !ty->dcast) return ty; + while (ty && (ty->dcast)) { + ty = (*ty->dcast)(ptr); + if (ty) lastty = ty; + } + return lastty; +} + +/* Return the name associated with this type */ +SWIGRUNTIME(const char *) +SWIG_TypeName(const swig_type_info *ty) { + return ty->name; +} + +/* Search for a swig_type_info structure */ +SWIGRUNTIME(swig_type_info *) +SWIG_TypeQuery(const char *name) { + swig_type_info *ty = swig_type_list; + while (ty) { + if (ty->str && (strcmp(name,ty->str) == 0)) return ty; + if (ty->name && (strcmp(name,ty->name) == 0)) return ty; + ty = ty->prev; + } + return 0; +} + +/* Set the clientdata field for a type */ +SWIGRUNTIME(void) +SWIG_TypeClientData(swig_type_info *ti, void *clientdata) { + swig_type_info *tc, *equiv; + if (ti->clientdata == clientdata) return; + ti->clientdata = clientdata; + equiv = ti->next; + while (equiv) { + if (!equiv->converter) { + tc = swig_type_list; + while (tc) { + if ((strcmp(tc->name, equiv->name) == 0)) + SWIG_TypeClientData(tc,clientdata); + tc = tc->prev; + } + } + equiv = equiv->next; + } +} +#endif + +#ifdef __cplusplus +} + +#endif + +/* ----------------------------------------------------------------------------- + * perl5.swg + * + * Perl5 runtime library + * $Header: /cvs/core/sword/bindings/swig/perl/Sword.cxx,v 1.14 2003/07/17 21:38:30 dglassey Exp $ + * ----------------------------------------------------------------------------- */ + +#define SWIGPERL +#define SWIGPERL5 +#ifdef __cplusplus +/* Needed on some windows machines---since MS plays funny + games with the header files under C++ */ +#include +#include +extern "C" { +#endif +#include "EXTERN.h" +#include "perl.h" +#include "XSUB.h" + +/* Get rid of free and malloc defined by perl */ +#undef free +#undef malloc + +#ifndef pTHX_ +#define pTHX_ +#endif + +#include +#ifdef __cplusplus +} +#endif + +/* Macro to call an XS function */ + +#ifdef PERL_OBJECT +#define SWIG_CALLXS(_name) _name(cv,pPerl) +#else +#ifndef MULTIPLICITY +#define SWIG_CALLXS(_name) _name(cv) +#else +#define SWIG_CALLXS(_name) _name(PERL_GET_THX, cv) +#endif +#endif + +/* Macros for low-level exception handling */ +#define SWIG_fail goto fail +#define SWIG_croak(x) { if ((_swigerr = (const char *) x)) goto fail; } +#define SWIG_MAX_ERRMSG 256 + +/* Note: SwigMagicFuncHack is a typedef used to get the C++ + compiler to just shut up already */ + +#ifdef PERL_OBJECT +#define MAGIC_PPERL CPerlObj *pPerl = (CPerlObj *) this; +typedef int (CPerlObj::*SwigMagicFunc)(SV *, MAGIC *); + +#ifdef __cplusplus +extern "C" { +#endif +typedef int (CPerlObj::*SwigMagicFuncHack)(SV *, MAGIC *); +#ifdef __cplusplus +} +#endif + +#define SWIG_MAGIC(a,b) (SV *a, MAGIC *b) +#define SWIGCLASS_STATIC +#else +#define MAGIC_PPERL +#define SWIGCLASS_STATIC static +#ifndef MULTIPLICITY +#define SWIG_MAGIC(a,b) (SV *a, MAGIC *b) +typedef int (*SwigMagicFunc)(SV *, MAGIC *); + +#ifdef __cplusplus +extern "C" { +#endif +typedef int (*SwigMagicFuncHack)(SV *, MAGIC *); +#ifdef __cplusplus +} +#endif + + +#else +#define SWIG_MAGIC(a,b) (struct interpreter *interp, SV *a, MAGIC *b) +typedef int (*SwigMagicFunc)(struct interpreter *, SV *, MAGIC *); +#ifdef __cplusplus +extern "C" { +#endif +typedef int (*SwigMagicFuncHack)(struct interpreter *, SV *, MAGIC *); +#ifdef __cplusplus +} +#endif + +#endif +#endif + +#if defined(WIN32) && defined(PERL_OBJECT) && !defined(PerlIO_exportFILE) +#define PerlIO_exportFILE(fh,fl) (FILE*)(fh) +#endif + +/* Modifications for newer Perl 5.005 releases */ + +#if !defined(PERL_REVISION) || ((PERL_REVISION >= 5) && ((PERL_VERSION < 5) || ((PERL_VERSION == 5) && (PERL_SUBVERSION < 50)))) +#ifndef PL_sv_yes +#define PL_sv_yes sv_yes +#endif +#ifndef PL_sv_undef +#define PL_sv_undef sv_undef +#endif +#ifndef PL_na +#define PL_na na +#endif +#endif + +#include + +#ifdef __cplusplus +extern "C" { +#endif + +#ifdef SWIG_NOINCLUDE + +#ifndef PERL_OBJECT +extern int SWIG_ConvertPtr(SV *, void **, swig_type_info *, int flags); +extern void SWIG_MakePtr(SV *, void *, swig_type_info *, int flags); +#else +extern int _SWIG_ConvertPtr(CPerlObj *, SV *, void **, swig_type_info *,int flags); +extern void _SWIG_MakePtr(CPerlObj *, SV *, void *, swig_type_info *, int flags); +#define SWIG_ConvertPtr(a,b,c,d) _SWIG_ConvertPtr(pPerl,a,b,c,d) +#define SWIG_MakePtr(a,b,c,d) _SWIG_MakePtr(pPerl,a,b,c,d) +#endif + +#else + +/* Function for getting a pointer value */ + +#ifndef PERL_OBJECT +SWIGRUNTIME(int) +SWIG_ConvertPtr(SV *sv, void **ptr, swig_type_info *_t, int flags) +#else +#define SWIG_ConvertPtr(a,b,c,d) _SWIG_ConvertPtr(pPerl,a,b,c,d) +SWIGRUNTIME(int) +_SWIG_ConvertPtr(CPerlObj *pPerl, SV *sv, void **ptr, swig_type_info *_t, int flags) +#endif +{ + char *_c; + swig_type_info *tc; + IV tmp; + + /* If magical, apply more magic */ + if (SvGMAGICAL(sv)) + mg_get(sv); + + /* Check to see if this is an object */ + if (sv_isobject(sv)) { + SV *tsv = (SV*) SvRV(sv); + if ((SvTYPE(tsv) == SVt_PVHV)) { + MAGIC *mg; + if (SvMAGICAL(tsv)) { + mg = mg_find(tsv,'P'); + if (mg) { + SV *rsv = mg->mg_obj; + if (sv_isobject(rsv)) { + tmp = SvIV((SV*)SvRV(rsv)); + } + } + } else { + return -1; + } + } else { + tmp = SvIV((SV*)SvRV(sv)); + } + if (!_t) { + *(ptr) = (void *) tmp; + return 0; + } + } else if (! SvOK(sv)) { /* Check for undef */ + *(ptr) = (void *) 0; + return 0; + } else if (SvTYPE(sv) == SVt_RV) { /* Check for NULL pointer */ + *(ptr) = (void *) 0; + if (!SvROK(sv)) + return 0; + else + return -1; + } else { /* Don't know what it is */ + *(ptr) = (void *) 0; + return -1; + } + if (_t) { + /* Now see if the types match */ + _c = HvNAME(SvSTASH(SvRV(sv))); + tc = SWIG_TypeCheck(_c,_t); + if (!tc) { + *ptr = (void *) tmp; + return -1; + } + *ptr = SWIG_TypeCast(tc,(void *)tmp); + return 0; + } + *ptr = (void *) tmp; + return 0; +} +#ifndef PERL_OBJECT +SWIGRUNTIME(void) +SWIG_MakePtr(SV *sv, void *ptr, swig_type_info *t,int flags) +#else +#define SWIG_MakePtr(a,b,c,d) _SWIG_MakePtr(pPerl,a,b,c,d) +SWIGRUNTIME(void) +_SWIG_MakePtr(CPerlObj *pPerl, SV *sv, void *ptr, swig_type_info *t, int flags) +#endif +{ + sv_setref_pv(sv, (char *) t->name, ptr); +} + +#endif + +typedef XS(SwigPerlWrapper); +typedef SwigPerlWrapper *SwigPerlWrapperPtr; + +/* Structure for command table */ +typedef struct { + const char *name; + SwigPerlWrapperPtr wrapper; +} swig_command_info; + +/* Information for constant table */ + +#define SWIG_INT 1 +#define SWIG_FLOAT 2 +#define SWIG_STRING 3 +#define SWIG_POINTER 4 +#define SWIG_BINARY 5 + +/* Constant information structure */ +typedef struct swig_constant_info { + int type; + const char *name; + long lvalue; + double dvalue; + void *pvalue; + swig_type_info **ptype; +} swig_constant_info; + +#ifdef __cplusplus +} +#endif + +/* Structure for variable table */ +typedef struct { + const char *name; + SwigMagicFunc set; + SwigMagicFunc get; + swig_type_info **type; +} swig_variable_info; + +/* Magic variable code */ +#ifndef PERL_OBJECT +#define swig_create_magic(s,a,b,c) _swig_create_magic(s,a,b,c) + #ifndef MULTIPLICITY + static void _swig_create_magic(SV *sv, char *name, int (*set)(SV *, MAGIC *), int \ +(*get)(SV *,MAGIC *)) { + #else + static void _swig_create_magic(SV *sv, char *name, int (*set)(struct interpreter*,\ + SV *, MAGIC *), int (*get)(struct interpreter*, SV *,MAGIC *)) { + #endif +#else +#define swig_create_magic(s,a,b,c) _swig_create_magic(pPerl,s,a,b,c) +static void _swig_create_magic(CPerlObj *pPerl, SV *sv, const char *name, int (CPerlObj::*set)(SV *, MAGIC *), int (CPerlObj::*get)(SV *, MAGIC *)) { +#endif + MAGIC *mg; + sv_magic(sv,sv,'U',(char *) name,strlen(name)); + mg = mg_find(sv,'U'); + mg->mg_virtual = (MGVTBL *) malloc(sizeof(MGVTBL)); + mg->mg_virtual->svt_get = (SwigMagicFuncHack) get; + mg->mg_virtual->svt_set = (SwigMagicFuncHack) set; + mg->mg_virtual->svt_len = 0; + mg->mg_virtual->svt_clear = 0; + mg->mg_virtual->svt_free = 0; +} + + + + + + +#ifdef do_open + #undef do_open +#endif +#ifdef do_close + #undef do_close +#endif +#ifdef scalar + #undef scalar +#endif +#ifdef list + #undef list +#endif +#ifdef apply + #undef apply +#endif +#ifdef convert + #undef convert +#endif +#ifdef Error + #undef Error +#endif +#ifdef form + #undef form +#endif +#ifdef vform + #undef vform +#endif +#ifdef LABEL + #undef LABEL +#endif +#ifdef METHOD + #undef METHOD +#endif +#ifdef Move + #undef Move +#endif +#ifdef yylex + #undef yylex +#endif +#ifdef yyparse + #undef yyparse +#endif +#ifdef yyerror + #undef yyerror +#endif +#ifdef invert + #undef invert +#endif +#ifdef ref + #undef ref +#endif + + +/* -------- TYPES TABLE (BEGIN) -------- */ + +#define SWIGTYPE_p_SWLocale swig_types[0] +#define SWIGTYPE_p_SWMgr swig_types[1] +#define SWIGTYPE_p_SWCom swig_types[2] +#define SWIGTYPE_p_RawLD4 swig_types[3] +#define SWIGTYPE_p_ListKey swig_types[4] +#define SWIGTYPE_p_SWKey swig_types[5] +#define SWIGTYPE_p_ConfigEntMap swig_types[6] +#define SWIGTYPE_p_p_char swig_types[7] +#define SWIGTYPE_p_RawLD swig_types[8] +#define SWIGTYPE_p_char swig_types[9] +#define SWIGTYPE_p_TreeKey swig_types[10] +#define SWIGTYPE_p_StringList swig_types[11] +#define SWIGTYPE_p_bool swig_types[12] +#define SWIGTYPE_p_SWFilterMgr swig_types[13] +#define SWIGTYPE_p_SWLD swig_types[14] +#define SWIGTYPE_p_SWTextDirection swig_types[15] +#define SWIGTYPE_p_RawText swig_types[16] +#define SWIGTYPE_p_f_char_p_void__void swig_types[17] +#define SWIGTYPE_p_VerseKey swig_types[18] +#define SWIGTYPE_p_SWBuf swig_types[19] +#define SWIGTYPE_p_ModMap swig_types[20] +#define SWIGTYPE_p_zCom swig_types[21] +#define SWIGTYPE_p_SectionMap swig_types[22] +#define SWIGTYPE_p_SWDisplay swig_types[23] +#define SWIGTYPE_p_AttributeTypeList swig_types[24] +#define SWIGTYPE_p_SWText swig_types[25] +#define SWIGTYPE_p_std__listTSWBuf_t swig_types[26] +#define SWIGTYPE_p_TreeKeyIdx swig_types[27] +#define SWIGTYPE_p_SWCompress swig_types[28] +#define SWIGTYPE_p_LZSSCompress swig_types[29] +#define SWIGTYPE_p_ZipCompress swig_types[30] +#define SWIGTYPE_p_SW_POSITION swig_types[31] +#define SWIGTYPE_p_SWModule swig_types[32] +#define SWIGTYPE_p_zLD swig_types[33] +#define SWIGTYPE_p_SWGenBook swig_types[34] +#define SWIGTYPE_p_RawCom swig_types[35] +#define SWIGTYPE_p_RawGenBook swig_types[36] +#define SWIGTYPE_p_SWConfig swig_types[37] +#define SWIGTYPE_p_LocaleMgr swig_types[38] +#define SWIGTYPE_p_int swig_types[39] +#define SWIGTYPE_p_SWTextMarkup swig_types[40] +#define SWIGTYPE_p_zText swig_types[41] +#define SWIGTYPE_p_SWTextEncoding swig_types[42] +#define SWIGTYPE_p_unsigned_long swig_types[43] +static swig_type_info *swig_types[45]; + +/* -------- TYPES TABLE (END) -------- */ + +#define SWIG_init boot_Sword + +#define SWIG_name "Swordc::boot_Sword" +#define SWIG_prefix "Swordc::" + +#ifdef __cplusplus +extern "C" +#endif +#ifndef PERL_OBJECT +#ifndef MULTIPLICITY +SWIGEXPORT(void) SWIG_init (CV* cv); +#else +SWIGEXPORT(void) SWIG_init (pTHXo_ CV* cv); +#endif +#else +SWIGEXPORT(void) SWIG_init (CV *cv, CPerlObj *); +#endif + + +#undef bool +#undef assert +#undef LOCAL +#undef list + + +#include +#include +//#include +#include +//#include +#include "swconfig.h" + +using namespace sword; +using namespace std; + + +#define SWIG_MemoryError 1 +#define SWIG_IOError 2 +#define SWIG_RuntimeError 3 +#define SWIG_IndexError 4 +#define SWIG_TypeError 5 +#define SWIG_DivisionByZero 6 +#define SWIG_OverflowError 7 +#define SWIG_SyntaxError 8 +#define SWIG_ValueError 9 +#define SWIG_SystemError 10 +#define SWIG_UnknownError 99 + + +#define SWIG_exception(a,b) SWIG_croak(b) + + +#include +#include +#include + + +#include + +void SWConfig_set(SWConfig *self,char const *group,char const *entry,char const *value){ + self->Sections[group][entry] = value; + } +char const *SWConfig_get(SWConfig *self,char const *group,char const *entry){ + return self->Sections[group][entry].c_str(); + } + +#include +using namespace sword; + +int const SWMgr_moduleCount(SWMgr *self){ + return self->Modules.size(); + } +SWModule *SWMgr_getModuleAt(SWMgr *self,int const pos){ + if (pos < 0 || pos > self->Modules.size() ) + return 0; + + ModMap::iterator it = self->Modules.begin(); + + for (int i = 0; i < pos; ++i) { + it++; + } + + if ( it != self->Modules.end() ) { + return (*it).second; + } + + return 0; + } + +#include "swmodule.h" +using namespace sword; + +bool const SWModule_next(SWModule *self){ + (*self)++; + return !self->Error(); + } +bool const SWModule_prev(SWModule *self){ + (*self)--; + return !self->Error(); + } +bool const SWModule_inc(SWModule *self,int const howFar){ + (*self)+=howFar; + return !self->Error(); + } +bool const SWModule_dec(SWModule *self,int const howFar){ + (*self)-=howFar; + return !self->Error(); + } +void SWModule_setPosition(SWModule *self,SW_POSITION pos){ + (*self) = pos; + } +void SWModule_top(SWModule *self){ + (*self) = TOP; + } +void SWModule_bottom(SWModule *self){ + (*self) = BOTTOM; + } +char const *SWModule_text(SWModule *self){ + return (const char*)*self; + } +char const *SWModule_StripText(SWModule *self){ + return self->StripText(); + } +void SWModule_write(SWModule *self,char const *text){ + (*self) << text; + } +void SWModule_writeLink(SWModule *self,SWKey const *key){ + (*self) << key; + } + +#include "swkey.h" +#include "versekey.h" +using namespace sword; + +void SWKey_setPersist(SWKey *self,signed char persists){ + self->Persist(persists); + } +void SWKey_next(SWKey *self){ + (*self)++; + } +void SWKey_prev(SWKey *self){ + (*self)++; + } +void SWKey_setKey(SWKey *self,SWKey const *key){ + self->copyFrom(*key); + } +VerseKey *SWKey_toVerseKey(SWKey *self){ + return dynamic_cast(self); + } + +#include "versekey.h" +#include "listkey.h" +using namespace sword; + +int const VerseKey_bookCount(VerseKey *self,int const testament){ + if ( (testament < 1) || (testament > 2) ) { + return 0; + }; + return self->BMAX[testament-1]; + } +char const *VerseKey_bookName(VerseKey *self,int const testament,int const book){ + if ( (testament < 1) || (testament > 2) ) { + return ""; + }; + if ( (book < 1) || (book > self->BMAX[testament-1]) ) { + return ""; + } + + return self->books[testament-1][book-1].name; + } +int const VerseKey_chapterCount(VerseKey *self,int const testament,int const book){ + if ( (testament < 1) || (testament > 2) ) { + return 0; + }; + if ( (book < 1) || (book > self->BMAX[testament-1]) ) { + return 0; + } + + return self->books[testament-1][book-1].chapmax; + } +int const VerseKey_verseCount(VerseKey *self,int const testament,int const book,int const chapter){ + if ( (testament < 1) || (testament > 2) ) { + return 0; + }; + if ( (book < 1) || (book > self->BMAX[testament-1]) ) { + return 0; + } + if ( (chapter < 1) || (chapter > self->books[testament-1][book-1].chapmax) ) { + return 0; + } + + return self->books[testament-1][book-1].versemax[chapter-1]; + + } + +#include "listkey.h" +using namespace sword; + +char ListKey_SetToElement(ListKey *self,int element){ + return self->SetToElement(element, SW_POSITION(((char)1))); + } + +#include "treekey.h" +using namespace sword; + + +#include "treekeyidx.h" +using namespace sword; + + +#include + +using namespace std; +using namespace sword; + +LocaleMgr *const LocaleMgr_getSystemLocaleMgr(){ + return &(LocaleMgr::systemLocaleMgr); + } + +#include +using namespace sword; + + +#include "swtext.h" +using namespace sword; + + +#include "rawtext.h" +using namespace sword; + + +#include "ztext.h" +using namespace sword; + + +#include "swcom.h" +using namespace sword; + + +#include "rawcom.h" +using namespace sword; + + +#include "zcom.h" +using namespace sword; + + +#include "swgenbook.h" +using namespace sword; + + +#include "rawgenbook.h" +#include "treekeyidx.h" +#include "swkey.h" +using namespace sword; + +TreeKeyIdx *RawGenBook_getTreeKey(RawGenBook *self){ + return ( (TreeKeyIdx *) ( (SWKey *) (*self) ) ); + } + +#include "swld.h" +using namespace sword; + + +#include "rawld.h" +using namespace sword; + + +#include "rawld4.h" +using namespace sword; + + +#include "zld.h" +using namespace sword; + + +#include +using namespace sword; + + +#include +using namespace sword; + + +#include +using namespace sword; + + +#include "swbuf.h" +using namespace sword; + +#ifdef PERL_OBJECT +#define MAGIC_CLASS _wrap_Sword_var:: +class _wrap_Sword_var : public CPerlObj { +public: +#else +#define MAGIC_CLASS +#endif +SWIGCLASS_STATIC int swig_magic_readonly(pTHX_ SV *sv, MAGIC *mg) { + MAGIC_PPERL + sv = sv; mg = mg; + croak("Value is read-only."); + return 0; +} + + +#ifdef PERL_OBJECT +}; +#endif + +#ifdef __cplusplus +extern "C" { +#endif +XS(_wrap_SWConfig_filename_set) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWConfig *arg1 = (SWConfig *) 0 ; + SWBuf *arg2 = (SWBuf *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWConfig_filename_set(self,filename);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWConfig,0) < 0) { + SWIG_croak("Type error in argument 1 of SWConfig_filename_set. Expected _p_SWConfig"); + } + } + { + if (SWIG_ConvertPtr(ST(1), (void **) &arg2, SWIGTYPE_p_SWBuf,0) < 0) { + SWIG_croak("Type error in argument 2 of SWConfig_filename_set. Expected _p_SWBuf"); + } + } + if (arg1) (arg1)->filename = *arg2; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWConfig_filename_get) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWConfig *arg1 = (SWConfig *) 0 ; + SWBuf *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWConfig_filename_get(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWConfig,0) < 0) { + SWIG_croak("Type error in argument 1 of SWConfig_filename_get. Expected _p_SWConfig"); + } + } + result = (SWBuf *)& ((arg1)->filename); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_SWBuf,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWConfig_Sections_set) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWConfig *arg1 = (SWConfig *) 0 ; + SectionMap arg2 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWConfig_Sections_set(self,Sections);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWConfig,0) < 0) { + SWIG_croak("Type error in argument 1 of SWConfig_Sections_set. Expected _p_SWConfig"); + } + } + { + SectionMap * argp; + if (SWIG_ConvertPtr(ST(1),(void **) &argp, SWIGTYPE_p_SectionMap,0) < 0) { + SWIG_croak("Type error in argument 2 of SWConfig_Sections_set. Expected _p_SectionMap"); + } + arg2 = *argp; + } + if (arg1) (arg1)->Sections = arg2; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWConfig_Sections_get) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWConfig *arg1 = (SWConfig *) 0 ; + SectionMap result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWConfig_Sections_get(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWConfig,0) < 0) { + SWIG_croak("Type error in argument 1 of SWConfig_Sections_get. Expected _p_SWConfig"); + } + } + result = ((arg1)->Sections); + + { + SectionMap * resultobj = new SectionMap((SectionMap &)result); + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) resultobj, SWIGTYPE_p_SectionMap,0); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_SWConfig) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 ; + SWConfig *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: new_SWConfig(ifilename);"); + } + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + result = (SWConfig *)new SWConfig((char const *)arg1); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_SWConfig,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_delete_SWConfig) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWConfig *arg1 = (SWConfig *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: delete_SWConfig(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWConfig,0) < 0) { + SWIG_croak("Type error in argument 1 of delete_SWConfig. Expected _p_SWConfig"); + } + } + delete arg1; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWConfig_Load) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWConfig *arg1 = (SWConfig *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWConfig_Load(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWConfig,0) < 0) { + SWIG_croak("Type error in argument 1 of SWConfig_Load. Expected _p_SWConfig"); + } + } + (arg1)->Load(); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWConfig_Save) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWConfig *arg1 = (SWConfig *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWConfig_Save(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWConfig,0) < 0) { + SWIG_croak("Type error in argument 1 of SWConfig_Save. Expected _p_SWConfig"); + } + } + (arg1)->Save(); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWConfig_set) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWConfig *arg1 = (SWConfig *) 0 ; + char *arg2 ; + char *arg3 ; + char *arg4 ; + int argvi = 0; + dXSARGS; + + if ((items < 4) || (items > 4)) { + SWIG_croak("Usage: SWConfig_set(self,group,entry,value);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWConfig,0) < 0) { + SWIG_croak("Type error in argument 1 of SWConfig_set. Expected _p_SWConfig"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + if (!SvOK((SV*) ST(2))) arg3 = 0; + else arg3 = (char *) SvPV(ST(2), PL_na); + if (!SvOK((SV*) ST(3))) arg4 = 0; + else arg4 = (char *) SvPV(ST(3), PL_na); + SWConfig_set(arg1,(char const *)arg2,(char const *)arg3,(char const *)arg4); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWConfig_get) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWConfig *arg1 = (SWConfig *) 0 ; + char *arg2 ; + char *arg3 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 3) || (items > 3)) { + SWIG_croak("Usage: SWConfig_get(self,group,entry);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWConfig,0) < 0) { + SWIG_croak("Type error in argument 1 of SWConfig_get. Expected _p_SWConfig"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + if (!SvOK((SV*) ST(2))) arg3 = 0; + else arg3 = (char *) SvPV(ST(2), PL_na); + result = (char *)SWConfig_get(arg1,(char const *)arg2,(char const *)arg3); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWMgr_findConfig) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 ; + char **arg2 = (char **) 0 ; + char **arg3 = (char **) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 3) || (items > 3)) { + SWIG_croak("Usage: SWMgr_findConfig(configType,prefixPath,configPath);"); + } + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + { + if (SWIG_ConvertPtr(ST(1), (void **) &arg2, SWIGTYPE_p_p_char,0) < 0) { + SWIG_croak("Type error in argument 2 of SWMgr_findConfig. Expected _p_p_char"); + } + } + { + if (SWIG_ConvertPtr(ST(2), (void **) &arg3, SWIGTYPE_p_p_char,0) < 0) { + SWIG_croak("Type error in argument 3 of SWMgr_findConfig. Expected _p_p_char"); + } + } + SWMgr::findConfig(arg1,arg2,arg3); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWMgr_config_set) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWMgr *arg1 = (SWMgr *) 0 ; + SWConfig *arg2 = (SWConfig *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWMgr_config_set(self,config);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWMgr,0) < 0) { + SWIG_croak("Type error in argument 1 of SWMgr_config_set. Expected _p_SWMgr"); + } + } + { + if (SWIG_ConvertPtr(ST(1), (void **) &arg2, SWIGTYPE_p_SWConfig,0) < 0) { + SWIG_croak("Type error in argument 2 of SWMgr_config_set. Expected _p_SWConfig"); + } + } + if (arg1) (arg1)->config = arg2; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWMgr_config_get) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWMgr *arg1 = (SWMgr *) 0 ; + SWConfig *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWMgr_config_get(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWMgr,0) < 0) { + SWIG_croak("Type error in argument 1 of SWMgr_config_get. Expected _p_SWMgr"); + } + } + result = (SWConfig *) ((arg1)->config); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_SWConfig,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWMgr_sysconfig_set) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWMgr *arg1 = (SWMgr *) 0 ; + SWConfig *arg2 = (SWConfig *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWMgr_sysconfig_set(self,sysconfig);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWMgr,0) < 0) { + SWIG_croak("Type error in argument 1 of SWMgr_sysconfig_set. Expected _p_SWMgr"); + } + } + { + if (SWIG_ConvertPtr(ST(1), (void **) &arg2, SWIGTYPE_p_SWConfig,0) < 0) { + SWIG_croak("Type error in argument 2 of SWMgr_sysconfig_set. Expected _p_SWConfig"); + } + } + if (arg1) (arg1)->sysconfig = arg2; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWMgr_sysconfig_get) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWMgr *arg1 = (SWMgr *) 0 ; + SWConfig *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWMgr_sysconfig_get(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWMgr,0) < 0) { + SWIG_croak("Type error in argument 1 of SWMgr_sysconfig_get. Expected _p_SWMgr"); + } + } + result = (SWConfig *) ((arg1)->sysconfig); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_SWConfig,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWMgr_Modules_set) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWMgr *arg1 = (SWMgr *) 0 ; + ModMap arg2 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWMgr_Modules_set(self,Modules);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWMgr,0) < 0) { + SWIG_croak("Type error in argument 1 of SWMgr_Modules_set. Expected _p_SWMgr"); + } + } + { + ModMap * argp; + if (SWIG_ConvertPtr(ST(1),(void **) &argp, SWIGTYPE_p_ModMap,0) < 0) { + SWIG_croak("Type error in argument 2 of SWMgr_Modules_set. Expected _p_ModMap"); + } + arg2 = *argp; + } + if (arg1) (arg1)->Modules = arg2; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWMgr_Modules_get) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWMgr *arg1 = (SWMgr *) 0 ; + ModMap result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWMgr_Modules_get(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWMgr,0) < 0) { + SWIG_croak("Type error in argument 1 of SWMgr_Modules_get. Expected _p_SWMgr"); + } + } + result = ((arg1)->Modules); + + { + ModMap * resultobj = new ModMap((ModMap &)result); + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) resultobj, SWIGTYPE_p_ModMap,0); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWMgr_prefixPath_set) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWMgr *arg1 = (SWMgr *) 0 ; + char *arg2 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWMgr_prefixPath_set(self,prefixPath);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWMgr,0) < 0) { + SWIG_croak("Type error in argument 1 of SWMgr_prefixPath_set. Expected _p_SWMgr"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + { + if (arg1->prefixPath) delete [] arg1->prefixPath; + if (arg2) { + arg1->prefixPath = (char *) (new char[strlen(arg2)+1]); + strcpy((char *) arg1->prefixPath,arg2); + }else { + arg1->prefixPath = 0; + } + } + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWMgr_prefixPath_get) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWMgr *arg1 = (SWMgr *) 0 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWMgr_prefixPath_get(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWMgr,0) < 0) { + SWIG_croak("Type error in argument 1 of SWMgr_prefixPath_get. Expected _p_SWMgr"); + } + } + result = (char *) ((arg1)->prefixPath); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWMgr_configPath_set) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWMgr *arg1 = (SWMgr *) 0 ; + char *arg2 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWMgr_configPath_set(self,configPath);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWMgr,0) < 0) { + SWIG_croak("Type error in argument 1 of SWMgr_configPath_set. Expected _p_SWMgr"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + { + if (arg1->configPath) delete [] arg1->configPath; + if (arg2) { + arg1->configPath = (char *) (new char[strlen(arg2)+1]); + strcpy((char *) arg1->configPath,arg2); + }else { + arg1->configPath = 0; + } + } + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWMgr_configPath_get) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWMgr *arg1 = (SWMgr *) 0 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWMgr_configPath_get(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWMgr,0) < 0) { + SWIG_croak("Type error in argument 1 of SWMgr_configPath_get. Expected _p_SWMgr"); + } + } + result = (char *) ((arg1)->configPath); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_SWMgr__SWIG_0) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWConfig *arg1 = (SWConfig *) 0 ; + SWConfig *arg2 = (SWConfig *) 0 ; + bool arg3 = (bool) true ; + SWFilterMgr *arg4 = (SWFilterMgr *) 0 ; + SWMgr *result; + int argvi = 0; + dXSARGS; + + if ((items < 0) || (items > 4)) { + SWIG_croak("Usage: new_SWMgr(iconfig,isysconfig,autoload,filterMgr);"); + } + if (items > 0) { + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWConfig,0) < 0) { + SWIG_croak("Type error in argument 1 of new_SWMgr. Expected _p_SWConfig"); + } + } + } + if (items > 1) { + { + if (SWIG_ConvertPtr(ST(1), (void **) &arg2, SWIGTYPE_p_SWConfig,0) < 0) { + SWIG_croak("Type error in argument 2 of new_SWMgr. Expected _p_SWConfig"); + } + } + } + if (items > 2) { + arg3 = (bool) SvIV(ST(2)); + } + if (items > 3) { + { + if (SWIG_ConvertPtr(ST(3), (void **) &arg4, SWIGTYPE_p_SWFilterMgr,0) < 0) { + SWIG_croak("Type error in argument 4 of new_SWMgr. Expected _p_SWFilterMgr"); + } + } + } + result = (SWMgr *)new SWMgr(arg1,arg2,arg3,arg4); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_SWMgr,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_SWMgr__SWIG_1) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 ; + bool arg2 = (bool) true ; + SWFilterMgr *arg3 = (SWFilterMgr *) 0 ; + SWMgr *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 3)) { + SWIG_croak("Usage: new_SWMgr(iConfigPath,autoload,filterMgr);"); + } + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + if (items > 1) { + arg2 = (bool) SvIV(ST(1)); + } + if (items > 2) { + { + if (SWIG_ConvertPtr(ST(2), (void **) &arg3, SWIGTYPE_p_SWFilterMgr,0) < 0) { + SWIG_croak("Type error in argument 3 of new_SWMgr. Expected _p_SWFilterMgr"); + } + } + } + result = (SWMgr *)new SWMgr((char const *)arg1,arg2,arg3); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_SWMgr,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_SWMgr) { + dXSARGS; + + if ((items >= 0) && (items <= 4)) { + int _v; + if (items <= 0) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_new_SWMgr__SWIG_0); return; + } + { + void *tmp; + if (SWIG_ConvertPtr(ST(0), (void **) &tmp, SWIGTYPE_p_SWConfig, 0) == -1) { + _v = 0; + }else { + _v = 1; + } + } + if (_v) { + if (items <= 1) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_new_SWMgr__SWIG_0); return; + } + { + void *tmp; + if (SWIG_ConvertPtr(ST(1), (void **) &tmp, SWIGTYPE_p_SWConfig, 0) == -1) { + _v = 0; + }else { + _v = 1; + } + } + if (_v) { + if (items <= 2) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_new_SWMgr__SWIG_0); return; + } + { + _v = SvIOK(ST(2)) ? 1 : 0; + } + if (_v) { + if (items <= 3) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_new_SWMgr__SWIG_0); return; + } + { + void *tmp; + if (SWIG_ConvertPtr(ST(3), (void **) &tmp, SWIGTYPE_p_SWFilterMgr, 0) == -1) { + _v = 0; + }else { + _v = 1; + } + } + if (_v) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_new_SWMgr__SWIG_0); return; + } + } + } + } + } + if ((items >= 1) && (items <= 3)) { + int _v; + { + _v = SvPOK(ST(0)) ? 1 : 0; + } + if (_v) { + if (items <= 1) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_new_SWMgr__SWIG_1); return; + } + { + _v = SvIOK(ST(1)) ? 1 : 0; + } + if (_v) { + if (items <= 2) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_new_SWMgr__SWIG_1); return; + } + { + void *tmp; + if (SWIG_ConvertPtr(ST(2), (void **) &tmp, SWIGTYPE_p_SWFilterMgr, 0) == -1) { + _v = 0; + }else { + _v = 1; + } + } + if (_v) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_new_SWMgr__SWIG_1); return; + } + } + } + } + + croak("No matching function for overloaded 'new_SWMgr'"); + XSRETURN(0); +} + + +XS(_wrap_delete_SWMgr) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWMgr *arg1 = (SWMgr *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: delete_SWMgr(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWMgr,0) < 0) { + SWIG_croak("Type error in argument 1 of delete_SWMgr. Expected _p_SWMgr"); + } + } + delete arg1; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWMgr_Load) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWMgr *arg1 = (SWMgr *) 0 ; + signed char result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWMgr_Load(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWMgr,0) < 0) { + SWIG_croak("Type error in argument 1 of SWMgr_Load. Expected _p_SWMgr"); + } + } + result = (signed char)(arg1)->Load(); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWMgr_setGlobalOption) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWMgr *arg1 = (SWMgr *) 0 ; + char *arg2 ; + char *arg3 ; + int argvi = 0; + dXSARGS; + + if ((items < 3) || (items > 3)) { + SWIG_croak("Usage: SWMgr_setGlobalOption(self,option,value);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWMgr,0) < 0) { + SWIG_croak("Type error in argument 1 of SWMgr_setGlobalOption. Expected _p_SWMgr"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + if (!SvOK((SV*) ST(2))) arg3 = 0; + else arg3 = (char *) SvPV(ST(2), PL_na); + (arg1)->setGlobalOption((char const *)arg2,(char const *)arg3); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWMgr_getGlobalOption) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWMgr *arg1 = (SWMgr *) 0 ; + char *arg2 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWMgr_getGlobalOption(self,option);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWMgr,0) < 0) { + SWIG_croak("Type error in argument 1 of SWMgr_getGlobalOption. Expected _p_SWMgr"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + result = (char *)(arg1)->getGlobalOption((char const *)arg2); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWMgr_getGlobalOptionTip) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWMgr *arg1 = (SWMgr *) 0 ; + char *arg2 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWMgr_getGlobalOptionTip(self,option);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWMgr,0) < 0) { + SWIG_croak("Type error in argument 1 of SWMgr_getGlobalOptionTip. Expected _p_SWMgr"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + result = (char *)(arg1)->getGlobalOptionTip((char const *)arg2); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWMgr_getGlobalOptions) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWMgr *arg1 = (SWMgr *) 0 ; + StringList result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWMgr_getGlobalOptions(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWMgr,0) < 0) { + SWIG_croak("Type error in argument 1 of SWMgr_getGlobalOptions. Expected _p_SWMgr"); + } + } + result = (arg1)->getGlobalOptions(); + + { + StringList * resultobj = new StringList((StringList &)result); + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) resultobj, SWIGTYPE_p_StringList,0); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWMgr_getGlobalOptionValues) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWMgr *arg1 = (SWMgr *) 0 ; + char *arg2 ; + StringList result; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWMgr_getGlobalOptionValues(self,option);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWMgr,0) < 0) { + SWIG_croak("Type error in argument 1 of SWMgr_getGlobalOptionValues. Expected _p_SWMgr"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + result = (arg1)->getGlobalOptionValues((char const *)arg2); + + { + StringList * resultobj = new StringList((StringList &)result); + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) resultobj, SWIGTYPE_p_StringList,0); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWMgr_setCipherKey) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWMgr *arg1 = (SWMgr *) 0 ; + char *arg2 ; + char *arg3 ; + signed char result; + int argvi = 0; + dXSARGS; + + if ((items < 3) || (items > 3)) { + SWIG_croak("Usage: SWMgr_setCipherKey(self,modName,key);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWMgr,0) < 0) { + SWIG_croak("Type error in argument 1 of SWMgr_setCipherKey. Expected _p_SWMgr"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + if (!SvOK((SV*) ST(2))) arg3 = 0; + else arg3 = (char *) SvPV(ST(2), PL_na); + result = (signed char)(arg1)->setCipherKey((char const *)arg2,(char const *)arg3); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWMgr_getModule) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWMgr *arg1 = (SWMgr *) 0 ; + char *arg2 ; + SWModule *result; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWMgr_getModule(self,modName);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWMgr,0) < 0) { + SWIG_croak("Type error in argument 1 of SWMgr_getModule. Expected _p_SWMgr"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + result = (SWModule *)(arg1)->getModule((char const *)arg2); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_SWModule,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWMgr_InstallScan) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWMgr *arg1 = (SWMgr *) 0 ; + char *arg2 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWMgr_InstallScan(self,dir);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWMgr,0) < 0) { + SWIG_croak("Type error in argument 1 of SWMgr_InstallScan. Expected _p_SWMgr"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + (arg1)->InstallScan((char const *)arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWMgr_moduleCount) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWMgr *arg1 = (SWMgr *) 0 ; + int result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWMgr_moduleCount(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWMgr,0) < 0) { + SWIG_croak("Type error in argument 1 of SWMgr_moduleCount. Expected _p_SWMgr"); + } + } + result = (int)SWMgr_moduleCount(arg1); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWMgr_getModuleAt) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWMgr *arg1 = (SWMgr *) 0 ; + int arg2 ; + SWModule *result; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWMgr_getModuleAt(self,pos);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWMgr,0) < 0) { + SWIG_croak("Type error in argument 1 of SWMgr_getModuleAt. Expected _p_SWMgr"); + } + } + arg2 = (int) SvIV(ST(1)); + result = (SWModule *)SWMgr_getModuleAt(arg1,arg2); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_SWModule,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_terminateSearch_set) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + bool arg2 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWModule_terminateSearch_set(self,terminateSearch);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_terminateSearch_set. Expected _p_SWModule"); + } + } + arg2 = (bool) SvIV(ST(1)); + if (arg1) (arg1)->terminateSearch = arg2; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_terminateSearch_get) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + bool result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWModule_terminateSearch_get(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_terminateSearch_get. Expected _p_SWModule"); + } + } + result = (bool) ((arg1)->terminateSearch); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_SWModule) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 = (char *) 0 ; + char *arg2 = (char *) 0 ; + SWDisplay *arg3 = (SWDisplay *) 0 ; + char *arg4 = (char *) 0 ; + SWTextEncoding arg5 = (SWTextEncoding) ENC_UNKNOWN ; + SWTextDirection arg6 = (SWTextDirection) DIRECTION_LTR ; + SWTextMarkup arg7 = (SWTextMarkup) FMT_UNKNOWN ; + char *arg8 = (char *) 0 ; + SWModule *result; + int argvi = 0; + dXSARGS; + + if ((items < 0) || (items > 8)) { + SWIG_croak("Usage: new_SWModule(imodname,imoddesc,idisp,imodtype,encoding,dir,markup,modlang);"); + } + if (items > 0) { + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + } + if (items > 1) { + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + } + if (items > 2) { + { + if (SWIG_ConvertPtr(ST(2), (void **) &arg3, SWIGTYPE_p_SWDisplay,0) < 0) { + SWIG_croak("Type error in argument 3 of new_SWModule. Expected _p_SWDisplay"); + } + } + } + if (items > 3) { + if (!SvOK((SV*) ST(3))) arg4 = 0; + else arg4 = (char *) SvPV(ST(3), PL_na); + } + if (items > 4) { + { + SWTextEncoding * argp; + if (SWIG_ConvertPtr(ST(4),(void **) &argp, SWIGTYPE_p_SWTextEncoding,0) < 0) { + SWIG_croak("Type error in argument 5 of new_SWModule. Expected _p_SWTextEncoding"); + } + arg5 = *argp; + } + } + if (items > 5) { + { + SWTextDirection * argp; + if (SWIG_ConvertPtr(ST(5),(void **) &argp, SWIGTYPE_p_SWTextDirection,0) < 0) { + SWIG_croak("Type error in argument 6 of new_SWModule. Expected _p_SWTextDirection"); + } + arg6 = *argp; + } + } + if (items > 6) { + { + SWTextMarkup * argp; + if (SWIG_ConvertPtr(ST(6),(void **) &argp, SWIGTYPE_p_SWTextMarkup,0) < 0) { + SWIG_croak("Type error in argument 7 of new_SWModule. Expected _p_SWTextMarkup"); + } + arg7 = *argp; + } + } + if (items > 7) { + if (!SvOK((SV*) ST(7))) arg8 = 0; + else arg8 = (char *) SvPV(ST(7), PL_na); + } + result = (SWModule *)new SWModule((char const *)arg1,(char const *)arg2,arg3,arg4,arg5,arg6,arg7,(char const *)arg8); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_SWModule,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_Error) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + char result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWModule_Error(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_Error. Expected _p_SWModule"); + } + } + result = (char)(arg1)->Error(); + + ST(argvi) = sv_newmortal(); + sv_setpvn((SV*)ST(argvi++), &result, 1); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_isUnicode) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + bool result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWModule_isUnicode(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_isUnicode. Expected _p_SWModule"); + } + } + result = (bool)((SWModule const *)arg1)->isUnicode(); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_getConfig) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + ConfigEntMap *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWModule_getConfig(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_getConfig. Expected _p_SWModule"); + } + } + { + ConfigEntMap const &_result_ref = ((SWModule const *)arg1)->getConfig(); + result = (ConfigEntMap *) &_result_ref; + } + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_ConfigEntMap,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_getConfigEntry) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + char *arg2 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWModule_getConfigEntry(self,key);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_getConfigEntry. Expected _p_SWModule"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + result = (char *)((SWModule const *)arg1)->getConfigEntry((char const *)arg2); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_SetKey) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + SWKey *arg2 = (SWKey *) 0 ; + char result; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWModule_SetKey(self,ikey);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_SetKey. Expected _p_SWModule"); + } + } + { + if (SWIG_ConvertPtr(ST(1), (void **) &arg2, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 2 of SWModule_SetKey. Expected _p_SWKey"); + } + } + result = (char)(arg1)->SetKey((SWKey const *)arg2); + + ST(argvi) = sv_newmortal(); + sv_setpvn((SV*)ST(argvi++), &result, 1); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_Key) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + SWKey *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWModule_Key(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_Key. Expected _p_SWModule"); + } + } + { + SWKey &_result_ref = ((SWModule const *)arg1)->Key(); + result = (SWKey *) &_result_ref; + } + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_SWKey,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_CreateKey) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + SWKey *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWModule_CreateKey(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_CreateKey. Expected _p_SWModule"); + } + } + result = (SWKey *)(arg1)->CreateKey(); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_SWKey,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_KeyText) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + char *arg2 = (char *) 0 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 2)) { + SWIG_croak("Usage: SWModule_KeyText(self,imodtype);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_KeyText. Expected _p_SWModule"); + } + } + if (items > 1) { + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + } + result = (char *)(arg1)->KeyText((char const *)arg2); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_Display) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + char result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWModule_Display(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_Display. Expected _p_SWModule"); + } + } + result = (char)(arg1)->Display(); + + ST(argvi) = sv_newmortal(); + sv_setpvn((SV*)ST(argvi++), &result, 1); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_nullPercent) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char arg1 ; + void *arg2 = (void *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWModule_nullPercent(percent,userData);"); + } + arg1 = (char) *SvPV(ST(0),PL_na); + { + if (SWIG_ConvertPtr(ST(1), (void **) &arg2, 0,0) < 0) { + SWIG_croak("Type error in argument 2 of SWModule_nullPercent. Expected _p_void"); + } + } + SWModule::nullPercent(arg1,arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_Search) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + char *arg2 ; + int arg3 = (int) 0 ; + int arg4 = (int) 0 ; + SWKey *arg5 = (SWKey *) 0 ; + bool *arg6 = (bool *) 0 ; + void (*arg7)(char,void *) = (void (*)(char,void *)) &SWModule::nullPercent ; + void *arg8 = (void *) 0 ; + ListKey *result; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 8)) { + SWIG_croak("Usage: SWModule_Search(self,istr,searchType,flags,scope,justCheckIfSupported,percent,percentUserData);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_Search. Expected _p_SWModule"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + if (items > 2) { + arg3 = (int) SvIV(ST(2)); + } + if (items > 3) { + arg4 = (int) SvIV(ST(3)); + } + if (items > 4) { + { + if (SWIG_ConvertPtr(ST(4), (void **) &arg5, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 5 of SWModule_Search. Expected _p_SWKey"); + } + } + } + if (items > 5) { + { + if (SWIG_ConvertPtr(ST(5), (void **) &arg6, SWIGTYPE_p_bool,0) < 0) { + SWIG_croak("Type error in argument 6 of SWModule_Search. Expected _p_bool"); + } + } + } + if (items > 6) { + { + if (SWIG_ConvertPtr(ST(6), (void **) &arg7, SWIGTYPE_p_f_char_p_void__void,0) < 0) { + SWIG_croak("Type error in argument 7 of SWModule_Search. Expected _p_f_char_p_void__void"); + } + } + } + if (items > 7) { + { + if (SWIG_ConvertPtr(ST(7), (void **) &arg8, 0,0) < 0) { + SWIG_croak("Type error in argument 8 of SWModule_Search. Expected _p_void"); + } + } + } + { + ListKey &_result_ref = (arg1)->Search((char const *)arg2,arg3,arg4,arg5,arg6,arg7,arg8); + result = (ListKey *) &_result_ref; + } + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_ListKey,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_createSearchFramework) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + signed char result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWModule_createSearchFramework(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_createSearchFramework. Expected _p_SWModule"); + } + } + result = (signed char)(arg1)->createSearchFramework(); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_hasSearchFramework) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + bool result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWModule_hasSearchFramework(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_hasSearchFramework. Expected _p_SWModule"); + } + } + result = (bool)(arg1)->hasSearchFramework(); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_isSearchOptimallySupported) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + char *arg2 ; + int arg3 ; + int arg4 ; + SWKey *arg5 = (SWKey *) 0 ; + bool result; + int argvi = 0; + dXSARGS; + + if ((items < 5) || (items > 5)) { + SWIG_croak("Usage: SWModule_isSearchOptimallySupported(self,istr,searchType,flags,scope);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_isSearchOptimallySupported. Expected _p_SWModule"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + arg3 = (int) SvIV(ST(2)); + arg4 = (int) SvIV(ST(3)); + { + if (SWIG_ConvertPtr(ST(4), (void **) &arg5, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 5 of SWModule_isSearchOptimallySupported. Expected _p_SWKey"); + } + } + result = (bool)(arg1)->isSearchOptimallySupported((char const *)arg2,arg3,arg4,arg5); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_next) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + bool result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWModule_next(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_next. Expected _p_SWModule"); + } + } + result = (bool)SWModule_next(arg1); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_prev) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + bool result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWModule_prev(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_prev. Expected _p_SWModule"); + } + } + result = (bool)SWModule_prev(arg1); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_inc) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + int arg2 ; + bool result; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWModule_inc(self,howFar);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_inc. Expected _p_SWModule"); + } + } + arg2 = (int) SvIV(ST(1)); + result = (bool)SWModule_inc(arg1,arg2); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_dec) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + int arg2 ; + bool result; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWModule_dec(self,howFar);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_dec. Expected _p_SWModule"); + } + } + arg2 = (int) SvIV(ST(1)); + result = (bool)SWModule_dec(arg1,arg2); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_setPosition) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + SwigValueWrapper< SW_POSITION > arg2 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWModule_setPosition(self,pos);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_setPosition. Expected _p_SWModule"); + } + } + { + SW_POSITION * argp; + if (SWIG_ConvertPtr(ST(1),(void **) &argp, SWIGTYPE_p_SW_POSITION,0) < 0) { + SWIG_croak("Type error in argument 2 of SWModule_setPosition. Expected _p_SW_POSITION"); + } + arg2 = *argp; + } + SWModule_setPosition(arg1,arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_top) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWModule_top(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_top. Expected _p_SWModule"); + } + } + SWModule_top(arg1); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_bottom) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWModule_bottom(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_bottom. Expected _p_SWModule"); + } + } + SWModule_bottom(arg1); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_text) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWModule_text(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_text. Expected _p_SWModule"); + } + } + result = (char *)SWModule_text(arg1); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_StripText) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWModule_StripText(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_StripText. Expected _p_SWModule"); + } + } + result = (char *)SWModule_StripText(arg1); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_getRawEntry) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWModule_getRawEntry(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_getRawEntry. Expected _p_SWModule"); + } + } + result = (char *)(arg1)->getRawEntry(); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_setSkipConsecutiveLinks) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + bool arg2 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWModule_setSkipConsecutiveLinks(self,val);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_setSkipConsecutiveLinks. Expected _p_SWModule"); + } + } + arg2 = (bool) SvIV(ST(1)); + (arg1)->setSkipConsecutiveLinks(arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_getSkipConsecutiveLinks) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + bool result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWModule_getSkipConsecutiveLinks(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_getSkipConsecutiveLinks. Expected _p_SWModule"); + } + } + result = (bool)(arg1)->getSkipConsecutiveLinks(); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_getEntryAttributes) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + AttributeTypeList *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWModule_getEntryAttributes(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_getEntryAttributes. Expected _p_SWModule"); + } + } + { + AttributeTypeList &_result_ref = ((SWModule const *)arg1)->getEntryAttributes(); + result = (AttributeTypeList *) &_result_ref; + } + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_AttributeTypeList,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_processEntryAttributes) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + bool arg2 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWModule_processEntryAttributes(self,val);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_processEntryAttributes. Expected _p_SWModule"); + } + } + arg2 = (bool) SvIV(ST(1)); + ((SWModule const *)arg1)->processEntryAttributes(arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_isProcessEntryAttributes) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + bool result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWModule_isProcessEntryAttributes(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_isProcessEntryAttributes. Expected _p_SWModule"); + } + } + result = (bool)((SWModule const *)arg1)->isProcessEntryAttributes(); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_Name) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + char *arg2 = (char *) 0 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 2)) { + SWIG_croak("Usage: SWModule_Name(self,imodname);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_Name. Expected _p_SWModule"); + } + } + if (items > 1) { + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + } + result = (char *)(arg1)->Name((char const *)arg2); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_Description) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + char *arg2 = (char *) 0 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 2)) { + SWIG_croak("Usage: SWModule_Description(self,imoddesc);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_Description. Expected _p_SWModule"); + } + } + if (items > 1) { + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + } + result = (char *)(arg1)->Description((char const *)arg2); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_Type) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + char *arg2 = (char *) 0 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 2)) { + SWIG_croak("Usage: SWModule_Type(self,imodtype);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_Type. Expected _p_SWModule"); + } + } + if (items > 1) { + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + } + result = (char *)(arg1)->Type((char const *)arg2); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_Direction) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + signed char arg2 = (signed char) -1 ; + char result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 2)) { + SWIG_croak("Usage: SWModule_Direction(self,newdir);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_Direction. Expected _p_SWModule"); + } + } + if (items > 1) { + arg2 = (signed char) SvIV(ST(1)); + } + result = (char)(arg1)->Direction(arg2); + + ST(argvi) = sv_newmortal(); + sv_setpvn((SV*)ST(argvi++), &result, 1); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_Encoding) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + signed char arg2 = (signed char) -1 ; + char result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 2)) { + SWIG_croak("Usage: SWModule_Encoding(self,enc);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_Encoding. Expected _p_SWModule"); + } + } + if (items > 1) { + arg2 = (signed char) SvIV(ST(1)); + } + result = (char)(arg1)->Encoding(arg2); + + ST(argvi) = sv_newmortal(); + sv_setpvn((SV*)ST(argvi++), &result, 1); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_Markup) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + signed char arg2 = (signed char) -1 ; + char result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 2)) { + SWIG_croak("Usage: SWModule_Markup(self,enc);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_Markup. Expected _p_SWModule"); + } + } + if (items > 1) { + arg2 = (signed char) SvIV(ST(1)); + } + result = (char)(arg1)->Markup(arg2); + + ST(argvi) = sv_newmortal(); + sv_setpvn((SV*)ST(argvi++), &result, 1); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_Lang) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + char *arg2 = (char *) 0 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 2)) { + SWIG_croak("Usage: SWModule_Lang(self,imodlang);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_Lang. Expected _p_SWModule"); + } + } + if (items > 1) { + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + } + result = (char *)(arg1)->Lang((char const *)arg2); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_isWritable) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + bool result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWModule_isWritable(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_isWritable. Expected _p_SWModule"); + } + } + result = (bool)(arg1)->isWritable(); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_createModule) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 ; + signed char result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWModule_createModule(char const *);"); + } + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + result = (signed char)SWModule::createModule((char const *)arg1); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_setEntry) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + char *arg2 ; + long arg3 ; + int argvi = 0; + dXSARGS; + + if ((items < 3) || (items > 3)) { + SWIG_croak("Usage: SWModule_setEntry(self,inbuf,len);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_setEntry. Expected _p_SWModule"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + arg3 = (long) SvIV(ST(2)); + (arg1)->setEntry((char const *)arg2,arg3); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_deleteEntry) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWModule_deleteEntry(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_deleteEntry. Expected _p_SWModule"); + } + } + (arg1)->deleteEntry(); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_write) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + char *arg2 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWModule_write(self,text);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_write. Expected _p_SWModule"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + SWModule_write(arg1,(char const *)arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWModule_writeLink) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + SWKey *arg2 = (SWKey *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWModule_writeLink(self,key);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of SWModule_writeLink. Expected _p_SWModule"); + } + } + { + if (SWIG_ConvertPtr(ST(1), (void **) &arg2, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 2 of SWModule_writeLink. Expected _p_SWKey"); + } + } + SWModule_writeLink(arg1,(SWKey const *)arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_delete_SWModule) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWModule *arg1 = (SWModule *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: delete_SWModule(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWModule,0) < 0) { + SWIG_croak("Type error in argument 1 of delete_SWModule. Expected _p_SWModule"); + } + } + delete arg1; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_SW_POSITION) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char arg1 ; + SW_POSITION *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: new_SW_POSITION(ipos);"); + } + arg1 = (char) *SvPV(ST(0),PL_na); + result = (SW_POSITION *)new SW_POSITION(arg1); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_SW_POSITION,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_delete_SW_POSITION) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SW_POSITION *arg1 = (SW_POSITION *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: delete_SW_POSITION(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SW_POSITION,0) < 0) { + SWIG_croak("Type error in argument 1 of delete_SW_POSITION. Expected _p_SW_POSITION"); + } + } + delete arg1; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_SWKey__SWIG_0) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 = (char *) 0 ; + SWKey *result; + int argvi = 0; + dXSARGS; + + if ((items < 0) || (items > 1)) { + SWIG_croak("Usage: new_SWKey(ikey);"); + } + if (items > 0) { + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + } + result = (SWKey *)new SWKey((char const *)arg1); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_SWKey,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_SWKey__SWIG_1) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWKey *arg1 = 0 ; + SWKey *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: new_SWKey(k);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 1 of new_SWKey. Expected _p_SWKey"); + } + } + result = (SWKey *)new SWKey((SWKey const &)*arg1); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_SWKey,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_SWKey) { + dXSARGS; + + if ((items >= 0) && (items <= 1)) { + int _v; + if (items <= 0) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_new_SWKey__SWIG_0); return; + } + { + _v = SvPOK(ST(0)) ? 1 : 0; + } + if (_v) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_new_SWKey__SWIG_0); return; + } + } + if (items == 1) { + int _v; + { + void *tmp; + if (SWIG_ConvertPtr(ST(0), (void **) &tmp, SWIGTYPE_p_SWKey, 0) == -1) { + _v = 0; + }else { + _v = 1; + } + } + if (_v) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_new_SWKey__SWIG_1); return; + } + } + + croak("No matching function for overloaded 'new_SWKey'"); + XSRETURN(0); +} + + +XS(_wrap_SWKey_clone) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWKey *arg1 = (SWKey *) 0 ; + SWKey *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWKey_clone(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 1 of SWKey_clone. Expected _p_SWKey"); + } + } + result = (SWKey *)((SWKey const *)arg1)->clone(); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_SWKey,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_delete_SWKey) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWKey *arg1 = (SWKey *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: delete_SWKey(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 1 of delete_SWKey. Expected _p_SWKey"); + } + } + delete arg1; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWKey_Persist) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWKey *arg1 = (SWKey *) 0 ; + char result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWKey_Persist(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 1 of SWKey_Persist. Expected _p_SWKey"); + } + } + result = (char)((SWKey const *)arg1)->Persist(); + + ST(argvi) = sv_newmortal(); + sv_setpvn((SV*)ST(argvi++), &result, 1); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWKey_setPersist) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWKey *arg1 = (SWKey *) 0 ; + signed char arg2 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWKey_setPersist(self,persists);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 1 of SWKey_setPersist. Expected _p_SWKey"); + } + } + arg2 = (signed char) SvIV(ST(1)); + SWKey_setPersist(arg1,arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWKey_Error) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWKey *arg1 = (SWKey *) 0 ; + char result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWKey_Error(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 1 of SWKey_Error. Expected _p_SWKey"); + } + } + result = (char)(arg1)->Error(); + + ST(argvi) = sv_newmortal(); + sv_setpvn((SV*)ST(argvi++), &result, 1); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWKey_setText) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWKey *arg1 = (SWKey *) 0 ; + char *arg2 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWKey_setText(self,ikey);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 1 of SWKey_setText. Expected _p_SWKey"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + (arg1)->setText((char const *)arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWKey_getText) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWKey *arg1 = (SWKey *) 0 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWKey_getText(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 1 of SWKey_getText. Expected _p_SWKey"); + } + } + result = (char *)((SWKey const *)arg1)->getText(); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWKey_getShortText) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWKey *arg1 = (SWKey *) 0 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWKey_getShortText(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 1 of SWKey_getShortText. Expected _p_SWKey"); + } + } + result = (char *)((SWKey const *)arg1)->getShortText(); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWKey_compare) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWKey *arg1 = (SWKey *) 0 ; + SWKey *arg2 = 0 ; + int result; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWKey_compare(self,ikey);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 1 of SWKey_compare. Expected _p_SWKey"); + } + } + { + if (SWIG_ConvertPtr(ST(1), (void **) &arg2, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 2 of SWKey_compare. Expected _p_SWKey"); + } + } + result = (int)(arg1)->compare((SWKey const &)*arg2); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWKey_equals) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWKey *arg1 = (SWKey *) 0 ; + SWKey *arg2 = 0 ; + bool result; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWKey_equals(self,ikey);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 1 of SWKey_equals. Expected _p_SWKey"); + } + } + { + if (SWIG_ConvertPtr(ST(1), (void **) &arg2, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 2 of SWKey_equals. Expected _p_SWKey"); + } + } + result = (bool)(arg1)->equals((SWKey const &)*arg2); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWKey_decrement) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWKey *arg1 = (SWKey *) 0 ; + int arg2 = (int) 1 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 2)) { + SWIG_croak("Usage: SWKey_decrement(self,steps);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 1 of SWKey_decrement. Expected _p_SWKey"); + } + } + if (items > 1) { + arg2 = (int) SvIV(ST(1)); + } + (arg1)->decrement(arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWKey_increment) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWKey *arg1 = (SWKey *) 0 ; + int arg2 = (int) 1 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 2)) { + SWIG_croak("Usage: SWKey_increment(self,steps);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 1 of SWKey_increment. Expected _p_SWKey"); + } + } + if (items > 1) { + arg2 = (int) SvIV(ST(1)); + } + (arg1)->increment(arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWKey_Traversable) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWKey *arg1 = (SWKey *) 0 ; + char result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWKey_Traversable(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 1 of SWKey_Traversable. Expected _p_SWKey"); + } + } + result = (char)(arg1)->Traversable(); + + ST(argvi) = sv_newmortal(); + sv_setpvn((SV*)ST(argvi++), &result, 1); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWKey_Index) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWKey *arg1 = (SWKey *) 0 ; + long result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWKey_Index(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 1 of SWKey_Index. Expected _p_SWKey"); + } + } + result = (long)((SWKey const *)arg1)->Index(); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWKey_next) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWKey *arg1 = (SWKey *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWKey_next(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 1 of SWKey_next. Expected _p_SWKey"); + } + } + SWKey_next(arg1); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWKey_prev) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWKey *arg1 = (SWKey *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWKey_prev(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 1 of SWKey_prev. Expected _p_SWKey"); + } + } + SWKey_prev(arg1); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWKey_setKey) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWKey *arg1 = (SWKey *) 0 ; + SWKey *arg2 = (SWKey *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWKey_setKey(self,key);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 1 of SWKey_setKey. Expected _p_SWKey"); + } + } + { + if (SWIG_ConvertPtr(ST(1), (void **) &arg2, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 2 of SWKey_setKey. Expected _p_SWKey"); + } + } + SWKey_setKey(arg1,(SWKey const *)arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWKey_toVerseKey) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWKey *arg1 = (SWKey *) 0 ; + VerseKey *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWKey_toVerseKey(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 1 of SWKey_toVerseKey. Expected _p_SWKey"); + } + } + result = (VerseKey *)SWKey_toVerseKey(arg1); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_VerseKey,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_VerseKey__SWIG_0) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 = (char *) 0 ; + VerseKey *result; + int argvi = 0; + dXSARGS; + + if ((items < 0) || (items > 1)) { + SWIG_croak("Usage: new_VerseKey(ikey);"); + } + if (items > 0) { + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + } + result = (VerseKey *)new VerseKey((char const *)arg1); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_VerseKey,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_VerseKey__SWIG_1) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWKey *arg1 = (SWKey *) 0 ; + VerseKey *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: new_VerseKey(ikey);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 1 of new_VerseKey. Expected _p_SWKey"); + } + } + result = (VerseKey *)new VerseKey((SWKey const *)arg1); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_VerseKey,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_VerseKey__SWIG_2) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 ; + char *arg2 ; + VerseKey *result; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: new_VerseKey(min,max);"); + } + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + result = (VerseKey *)new VerseKey((char const *)arg1,(char const *)arg2); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_VerseKey,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_VerseKey__SWIG_3) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = 0 ; + VerseKey *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: new_VerseKey(k);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of new_VerseKey. Expected _p_VerseKey"); + } + } + result = (VerseKey *)new VerseKey((VerseKey const &)*arg1); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_VerseKey,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_VerseKey) { + dXSARGS; + + if ((items >= 0) && (items <= 1)) { + int _v; + if (items <= 0) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_new_VerseKey__SWIG_0); return; + } + { + _v = SvPOK(ST(0)) ? 1 : 0; + } + if (_v) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_new_VerseKey__SWIG_0); return; + } + } + if (items == 1) { + int _v; + { + void *tmp; + if (SWIG_ConvertPtr(ST(0), (void **) &tmp, SWIGTYPE_p_VerseKey, 0) == -1) { + _v = 0; + }else { + _v = 1; + } + } + if (_v) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_new_VerseKey__SWIG_3); return; + } + } + if (items == 1) { + int _v; + { + void *tmp; + if (SWIG_ConvertPtr(ST(0), (void **) &tmp, SWIGTYPE_p_SWKey, 0) == -1) { + _v = 0; + }else { + _v = 1; + } + } + if (_v) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_new_VerseKey__SWIG_1); return; + } + } + if (items == 2) { + int _v; + { + _v = SvPOK(ST(0)) ? 1 : 0; + } + if (_v) { + { + _v = SvPOK(ST(1)) ? 1 : 0; + } + if (_v) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_new_VerseKey__SWIG_2); return; + } + } + } + + croak("No matching function for overloaded 'new_VerseKey'"); + XSRETURN(0); +} + + +XS(_wrap_delete_VerseKey) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: delete_VerseKey(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of delete_VerseKey. Expected _p_VerseKey"); + } + } + delete arg1; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_clone) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + SWKey *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: VerseKey_clone(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_clone. Expected _p_VerseKey"); + } + } + result = (SWKey *)((VerseKey const *)arg1)->clone(); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_SWKey,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_LowerBound) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + VerseKey *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: VerseKey_LowerBound(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_LowerBound. Expected _p_VerseKey"); + } + } + { + VerseKey &_result_ref = ((VerseKey const *)arg1)->LowerBound(); + result = (VerseKey *) &_result_ref; + } + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_VerseKey,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_UpperBound) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + VerseKey *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: VerseKey_UpperBound(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_UpperBound. Expected _p_VerseKey"); + } + } + { + VerseKey &_result_ref = ((VerseKey const *)arg1)->UpperBound(); + result = (VerseKey *) &_result_ref; + } + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_VerseKey,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_ClearBounds) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: VerseKey_ClearBounds(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_ClearBounds. Expected _p_VerseKey"); + } + } + (arg1)->ClearBounds(); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_ParseVerseList) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + char *arg2 ; + char *arg3 = (char *) "Genesis 1:1" ; + bool arg4 = (bool) false ; + ListKey result; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 4)) { + SWIG_croak("Usage: VerseKey_ParseVerseList(self,buf,defaultKey,expandRange);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_ParseVerseList. Expected _p_VerseKey"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + if (items > 2) { + if (!SvOK((SV*) ST(2))) arg3 = 0; + else arg3 = (char *) SvPV(ST(2), PL_na); + } + if (items > 3) { + arg4 = (bool) SvIV(ST(3)); + } + result = (arg1)->ParseVerseList((char const *)arg2,(char const *)arg3,arg4); + + { + ListKey * resultobj = new ListKey((ListKey &)result); + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) resultobj, SWIGTYPE_p_ListKey,0); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_setText) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + char *arg2 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: VerseKey_setText(self,ikey);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_setText. Expected _p_VerseKey"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + (arg1)->setText((char const *)arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_getText) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: VerseKey_getText(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_getText. Expected _p_VerseKey"); + } + } + result = (char *)((VerseKey const *)arg1)->getText(); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_getRangeText) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: VerseKey_getRangeText(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_getRangeText. Expected _p_VerseKey"); + } + } + result = (char *)((VerseKey const *)arg1)->getRangeText(); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_getShortText) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: VerseKey_getShortText(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_getShortText. Expected _p_VerseKey"); + } + } + result = (char *)((VerseKey const *)arg1)->getShortText(); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_Traversable) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + char result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: VerseKey_Traversable(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_Traversable. Expected _p_VerseKey"); + } + } + result = (char)(arg1)->Traversable(); + + ST(argvi) = sv_newmortal(); + sv_setpvn((SV*)ST(argvi++), &result, 1); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_decrement) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + int arg2 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: VerseKey_decrement(self,step);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_decrement. Expected _p_VerseKey"); + } + } + arg2 = (int) SvIV(ST(1)); + (arg1)->decrement(arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_increment) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + int arg2 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: VerseKey_increment(self,step);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_increment. Expected _p_VerseKey"); + } + } + arg2 = (int) SvIV(ST(1)); + (arg1)->increment(arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_getBookName) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: VerseKey_getBookName(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_getBookName. Expected _p_VerseKey"); + } + } + result = (char *)((VerseKey const *)arg1)->getBookName(); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_getBookAbbrev) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: VerseKey_getBookAbbrev(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_getBookAbbrev. Expected _p_VerseKey"); + } + } + result = (char *)((VerseKey const *)arg1)->getBookAbbrev(); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_Testament) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + char result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: VerseKey_Testament(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_Testament. Expected _p_VerseKey"); + } + } + result = (char)((VerseKey const *)arg1)->Testament(); + + ST(argvi) = sv_newmortal(); + sv_setpvn((SV*)ST(argvi++), &result, 1); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_Book) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + char result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: VerseKey_Book(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_Book. Expected _p_VerseKey"); + } + } + result = (char)((VerseKey const *)arg1)->Book(); + + ST(argvi) = sv_newmortal(); + sv_setpvn((SV*)ST(argvi++), &result, 1); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_Chapter) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + int result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: VerseKey_Chapter(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_Chapter. Expected _p_VerseKey"); + } + } + result = (int)((VerseKey const *)arg1)->Chapter(); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_Verse) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + int result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: VerseKey_Verse(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_Verse. Expected _p_VerseKey"); + } + } + result = (int)((VerseKey const *)arg1)->Verse(); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_Normalize) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + char arg2 = (char) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 2)) { + SWIG_croak("Usage: VerseKey_Normalize(self,autocheck);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_Normalize. Expected _p_VerseKey"); + } + } + if (items > 1) { + arg2 = (char) *SvPV(ST(1),PL_na); + } + (arg1)->Normalize(arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_AutoNormalize) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + char arg2 = (char) MAXPOS(char) ; + char result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 2)) { + SWIG_croak("Usage: VerseKey_AutoNormalize(self,iautonorm);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_AutoNormalize. Expected _p_VerseKey"); + } + } + if (items > 1) { + arg2 = (char) *SvPV(ST(1),PL_na); + } + result = (char)(arg1)->AutoNormalize(arg2); + + ST(argvi) = sv_newmortal(); + sv_setpvn((SV*)ST(argvi++), &result, 1); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_Headings) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + char arg2 = (char) MAXPOS(char) ; + char result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 2)) { + SWIG_croak("Usage: VerseKey_Headings(self,iheadings);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_Headings. Expected _p_VerseKey"); + } + } + if (items > 1) { + arg2 = (char) *SvPV(ST(1),PL_na); + } + result = (char)(arg1)->Headings(arg2); + + ST(argvi) = sv_newmortal(); + sv_setpvn((SV*)ST(argvi++), &result, 1); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_getOSISRef) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: VerseKey_getOSISRef(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_getOSISRef. Expected _p_VerseKey"); + } + } + result = (char *)((VerseKey const *)arg1)->getOSISRef(); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_compare) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + SWKey *arg2 = 0 ; + int result; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: VerseKey_compare(self,ikey);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_compare. Expected _p_VerseKey"); + } + } + { + if (SWIG_ConvertPtr(ST(1), (void **) &arg2, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 2 of VerseKey_compare. Expected _p_SWKey"); + } + } + result = (int)(arg1)->compare((SWKey const &)*arg2); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey__compare) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + VerseKey *arg2 = 0 ; + int result; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: VerseKey__compare(self,ikey);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey__compare. Expected _p_VerseKey"); + } + } + { + if (SWIG_ConvertPtr(ST(1), (void **) &arg2, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 2 of VerseKey__compare. Expected _p_VerseKey"); + } + } + result = (int)(arg1)->_compare((VerseKey const &)*arg2); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_setLocale) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + char *arg2 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: VerseKey_setLocale(self,name);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_setLocale. Expected _p_VerseKey"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + (arg1)->setLocale((char const *)arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_getLocale) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: VerseKey_getLocale(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_getLocale. Expected _p_VerseKey"); + } + } + result = (char *)((VerseKey const *)arg1)->getLocale(); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_bookCount) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + int arg2 ; + int result; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: VerseKey_bookCount(self,testament);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_bookCount. Expected _p_VerseKey"); + } + } + arg2 = (int) SvIV(ST(1)); + result = (int)VerseKey_bookCount(arg1,arg2); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_bookName) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + int arg2 ; + int arg3 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 3) || (items > 3)) { + SWIG_croak("Usage: VerseKey_bookName(self,testament,book);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_bookName. Expected _p_VerseKey"); + } + } + arg2 = (int) SvIV(ST(1)); + arg3 = (int) SvIV(ST(2)); + result = (char *)VerseKey_bookName(arg1,arg2,arg3); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_chapterCount) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + int arg2 ; + int arg3 ; + int result; + int argvi = 0; + dXSARGS; + + if ((items < 3) || (items > 3)) { + SWIG_croak("Usage: VerseKey_chapterCount(self,testament,book);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_chapterCount. Expected _p_VerseKey"); + } + } + arg2 = (int) SvIV(ST(1)); + arg3 = (int) SvIV(ST(2)); + result = (int)VerseKey_chapterCount(arg1,arg2,arg3); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_VerseKey_verseCount) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + VerseKey *arg1 = (VerseKey *) 0 ; + int arg2 ; + int arg3 ; + int arg4 ; + int result; + int argvi = 0; + dXSARGS; + + if ((items < 4) || (items > 4)) { + SWIG_croak("Usage: VerseKey_verseCount(self,testament,book,chapter);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_VerseKey,0) < 0) { + SWIG_croak("Type error in argument 1 of VerseKey_verseCount. Expected _p_VerseKey"); + } + } + arg2 = (int) SvIV(ST(1)); + arg3 = (int) SvIV(ST(2)); + arg4 = (int) SvIV(ST(3)); + result = (int)VerseKey_verseCount(arg1,arg2,arg3,arg4); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_ListKey__SWIG_0) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 = (char *) 0 ; + ListKey *result; + int argvi = 0; + dXSARGS; + + if ((items < 0) || (items > 1)) { + SWIG_croak("Usage: new_ListKey(ikey);"); + } + if (items > 0) { + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + } + result = (ListKey *)new ListKey((char const *)arg1); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_ListKey,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_ListKey__SWIG_1) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + ListKey *arg1 = 0 ; + ListKey *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: new_ListKey(k);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_ListKey,0) < 0) { + SWIG_croak("Type error in argument 1 of new_ListKey. Expected _p_ListKey"); + } + } + result = (ListKey *)new ListKey((ListKey const &)*arg1); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_ListKey,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_ListKey) { + dXSARGS; + + if ((items >= 0) && (items <= 1)) { + int _v; + if (items <= 0) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_new_ListKey__SWIG_0); return; + } + { + _v = SvPOK(ST(0)) ? 1 : 0; + } + if (_v) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_new_ListKey__SWIG_0); return; + } + } + if (items == 1) { + int _v; + { + void *tmp; + if (SWIG_ConvertPtr(ST(0), (void **) &tmp, SWIGTYPE_p_ListKey, 0) == -1) { + _v = 0; + }else { + _v = 1; + } + } + if (_v) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_new_ListKey__SWIG_1); return; + } + } + + croak("No matching function for overloaded 'new_ListKey'"); + XSRETURN(0); +} + + +XS(_wrap_delete_ListKey) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + ListKey *arg1 = (ListKey *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: delete_ListKey(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_ListKey,0) < 0) { + SWIG_croak("Type error in argument 1 of delete_ListKey. Expected _p_ListKey"); + } + } + delete arg1; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_ListKey_clone) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + ListKey *arg1 = (ListKey *) 0 ; + SWKey *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: ListKey_clone(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_ListKey,0) < 0) { + SWIG_croak("Type error in argument 1 of ListKey_clone. Expected _p_ListKey"); + } + } + result = (SWKey *)((ListKey const *)arg1)->clone(); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_SWKey,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_ListKey_ClearList) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + ListKey *arg1 = (ListKey *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: ListKey_ClearList(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_ListKey,0) < 0) { + SWIG_croak("Type error in argument 1 of ListKey_ClearList. Expected _p_ListKey"); + } + } + (arg1)->ClearList(); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_ListKey_Count) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + ListKey *arg1 = (ListKey *) 0 ; + int result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: ListKey_Count(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_ListKey,0) < 0) { + SWIG_croak("Type error in argument 1 of ListKey_Count. Expected _p_ListKey"); + } + } + result = (int)(arg1)->Count(); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_ListKey_Remove) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + ListKey *arg1 = (ListKey *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: ListKey_Remove(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_ListKey,0) < 0) { + SWIG_croak("Type error in argument 1 of ListKey_Remove. Expected _p_ListKey"); + } + } + (arg1)->Remove(); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_ListKey_SetToElement) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + ListKey *arg1 = (ListKey *) 0 ; + int arg2 ; + char result; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: ListKey_SetToElement(self,element);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_ListKey,0) < 0) { + SWIG_croak("Type error in argument 1 of ListKey_SetToElement. Expected _p_ListKey"); + } + } + arg2 = (int) SvIV(ST(1)); + result = (char)ListKey_SetToElement(arg1,arg2); + + ST(argvi) = sv_newmortal(); + sv_setpvn((SV*)ST(argvi++), &result, 1); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_ListKey_GetElement) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + ListKey *arg1 = (ListKey *) 0 ; + int arg2 = (int) -1 ; + SWKey *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 2)) { + SWIG_croak("Usage: ListKey_GetElement(self,pos);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_ListKey,0) < 0) { + SWIG_croak("Type error in argument 1 of ListKey_GetElement. Expected _p_ListKey"); + } + } + if (items > 1) { + arg2 = (int) SvIV(ST(1)); + } + result = (SWKey *)(arg1)->GetElement(arg2); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_SWKey,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_ListKey_add) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + ListKey *arg1 = (ListKey *) 0 ; + SWKey *arg2 = 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: ListKey_add(self,ikey);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_ListKey,0) < 0) { + SWIG_croak("Type error in argument 1 of ListKey_add. Expected _p_ListKey"); + } + } + { + if (SWIG_ConvertPtr(ST(1), (void **) &arg2, SWIGTYPE_p_SWKey,0) < 0) { + SWIG_croak("Type error in argument 2 of ListKey_add. Expected _p_SWKey"); + } + } + (arg1)->add((SWKey const &)*arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_ListKey_copyFrom) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + ListKey *arg1 = (ListKey *) 0 ; + ListKey *arg2 = 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: ListKey_copyFrom(self,ikey);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_ListKey,0) < 0) { + SWIG_croak("Type error in argument 1 of ListKey_copyFrom. Expected _p_ListKey"); + } + } + { + if (SWIG_ConvertPtr(ST(1), (void **) &arg2, SWIGTYPE_p_ListKey,0) < 0) { + SWIG_croak("Type error in argument 2 of ListKey_copyFrom. Expected _p_ListKey"); + } + } + (arg1)->copyFrom((ListKey const &)*arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_ListKey_setPosition) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + ListKey *arg1 = (ListKey *) 0 ; + SwigValueWrapper< SW_POSITION > arg2 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: ListKey_setPosition(self,SW_POSITION);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_ListKey,0) < 0) { + SWIG_croak("Type error in argument 1 of ListKey_setPosition. Expected _p_ListKey"); + } + } + { + SW_POSITION * argp; + if (SWIG_ConvertPtr(ST(1),(void **) &argp, SWIGTYPE_p_SW_POSITION,0) < 0) { + SWIG_croak("Type error in argument 2 of ListKey_setPosition. Expected _p_SW_POSITION"); + } + arg2 = *argp; + } + (arg1)->setPosition(arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_ListKey_decrement) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + ListKey *arg1 = (ListKey *) 0 ; + int arg2 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: ListKey_decrement(self,step);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_ListKey,0) < 0) { + SWIG_croak("Type error in argument 1 of ListKey_decrement. Expected _p_ListKey"); + } + } + arg2 = (int) SvIV(ST(1)); + (arg1)->decrement(arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_ListKey_increment) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + ListKey *arg1 = (ListKey *) 0 ; + int arg2 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: ListKey_increment(self,step);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_ListKey,0) < 0) { + SWIG_croak("Type error in argument 1 of ListKey_increment. Expected _p_ListKey"); + } + } + arg2 = (int) SvIV(ST(1)); + (arg1)->increment(arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_ListKey_Traversable) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + ListKey *arg1 = (ListKey *) 0 ; + char result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: ListKey_Traversable(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_ListKey,0) < 0) { + SWIG_croak("Type error in argument 1 of ListKey_Traversable. Expected _p_ListKey"); + } + } + result = (char)(arg1)->Traversable(); + + ST(argvi) = sv_newmortal(); + sv_setpvn((SV*)ST(argvi++), &result, 1); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_ListKey_Index__SWIG_0) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + ListKey *arg1 = (ListKey *) 0 ; + long result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: ListKey_Index(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_ListKey,0) < 0) { + SWIG_croak("Type error in argument 1 of ListKey_Index. Expected _p_ListKey"); + } + } + result = (long)((ListKey const *)arg1)->Index(); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_ListKey_Index__SWIG_1) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + ListKey *arg1 = (ListKey *) 0 ; + long arg2 ; + long result; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: ListKey_Index(self,index);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_ListKey,0) < 0) { + SWIG_croak("Type error in argument 1 of ListKey_Index. Expected _p_ListKey"); + } + } + arg2 = (long) SvIV(ST(1)); + result = (long)(arg1)->Index(arg2); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_ListKey_Index) { + dXSARGS; + + if (items == 1) { + int _v; + { + void *tmp; + if (SWIG_ConvertPtr(ST(0), (void **) &tmp, SWIGTYPE_p_ListKey, 0) == -1) { + _v = 0; + }else { + _v = 1; + } + } + if (_v) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_ListKey_Index__SWIG_0); return; + } + } + if (items == 2) { + int _v; + { + void *tmp; + if (SWIG_ConvertPtr(ST(0), (void **) &tmp, SWIGTYPE_p_ListKey, 0) == -1) { + _v = 0; + }else { + _v = 1; + } + } + if (_v) { + { + _v = SvIOK(ST(1)) ? 1 : 0; + } + if (_v) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_ListKey_Index__SWIG_1); return; + } + } + } + + croak("No matching function for overloaded 'ListKey_Index'"); + XSRETURN(0); +} + + +XS(_wrap_TreeKey_getLocalName) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + TreeKey *arg1 = (TreeKey *) 0 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: TreeKey_getLocalName(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_TreeKey,0) < 0) { + SWIG_croak("Type error in argument 1 of TreeKey_getLocalName. Expected _p_TreeKey"); + } + } + result = (char *)(arg1)->getLocalName(); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_TreeKey_setLocalName) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + TreeKey *arg1 = (TreeKey *) 0 ; + char *arg2 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: TreeKey_setLocalName(self,char const *);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_TreeKey,0) < 0) { + SWIG_croak("Type error in argument 1 of TreeKey_setLocalName. Expected _p_TreeKey"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + result = (char *)(arg1)->setLocalName((char const *)arg2); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_TreeKey_getUserData) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + TreeKey *arg1 = (TreeKey *) 0 ; + int *arg2 = (int *) 0 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 2)) { + SWIG_croak("Usage: TreeKey_getUserData(self,size);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_TreeKey,0) < 0) { + SWIG_croak("Type error in argument 1 of TreeKey_getUserData. Expected _p_TreeKey"); + } + } + if (items > 1) { + { + if (SWIG_ConvertPtr(ST(1), (void **) &arg2, SWIGTYPE_p_int,0) < 0) { + SWIG_croak("Type error in argument 2 of TreeKey_getUserData. Expected _p_int"); + } + } + } + result = (char *)(arg1)->getUserData(arg2); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_TreeKey_setUserData) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + TreeKey *arg1 = (TreeKey *) 0 ; + char *arg2 ; + int arg3 = (int) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 3)) { + SWIG_croak("Usage: TreeKey_setUserData(self,userData,size);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_TreeKey,0) < 0) { + SWIG_croak("Type error in argument 1 of TreeKey_setUserData. Expected _p_TreeKey"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + if (items > 2) { + arg3 = (int) SvIV(ST(2)); + } + (arg1)->setUserData((char const *)arg2,arg3); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_TreeKey_getFullName) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + TreeKey *arg1 = (TreeKey *) 0 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: TreeKey_getFullName(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_TreeKey,0) < 0) { + SWIG_croak("Type error in argument 1 of TreeKey_getFullName. Expected _p_TreeKey"); + } + } + result = (char *)((TreeKey const *)arg1)->getFullName(); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_TreeKey_root) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + TreeKey *arg1 = (TreeKey *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: TreeKey_root(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_TreeKey,0) < 0) { + SWIG_croak("Type error in argument 1 of TreeKey_root. Expected _p_TreeKey"); + } + } + (arg1)->root(); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_TreeKey_parent) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + TreeKey *arg1 = (TreeKey *) 0 ; + bool result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: TreeKey_parent(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_TreeKey,0) < 0) { + SWIG_croak("Type error in argument 1 of TreeKey_parent. Expected _p_TreeKey"); + } + } + result = (bool)(arg1)->parent(); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_TreeKey_firstChild) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + TreeKey *arg1 = (TreeKey *) 0 ; + bool result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: TreeKey_firstChild(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_TreeKey,0) < 0) { + SWIG_croak("Type error in argument 1 of TreeKey_firstChild. Expected _p_TreeKey"); + } + } + result = (bool)(arg1)->firstChild(); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_TreeKey_nextSibling) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + TreeKey *arg1 = (TreeKey *) 0 ; + bool result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: TreeKey_nextSibling(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_TreeKey,0) < 0) { + SWIG_croak("Type error in argument 1 of TreeKey_nextSibling. Expected _p_TreeKey"); + } + } + result = (bool)(arg1)->nextSibling(); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_TreeKey_previousSibling) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + TreeKey *arg1 = (TreeKey *) 0 ; + bool result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: TreeKey_previousSibling(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_TreeKey,0) < 0) { + SWIG_croak("Type error in argument 1 of TreeKey_previousSibling. Expected _p_TreeKey"); + } + } + result = (bool)(arg1)->previousSibling(); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_TreeKey_hasChildren) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + TreeKey *arg1 = (TreeKey *) 0 ; + bool result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: TreeKey_hasChildren(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_TreeKey,0) < 0) { + SWIG_croak("Type error in argument 1 of TreeKey_hasChildren. Expected _p_TreeKey"); + } + } + result = (bool)(arg1)->hasChildren(); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_TreeKey_append) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + TreeKey *arg1 = (TreeKey *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: TreeKey_append(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_TreeKey,0) < 0) { + SWIG_croak("Type error in argument 1 of TreeKey_append. Expected _p_TreeKey"); + } + } + (arg1)->append(); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_TreeKey_appendChild) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + TreeKey *arg1 = (TreeKey *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: TreeKey_appendChild(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_TreeKey,0) < 0) { + SWIG_croak("Type error in argument 1 of TreeKey_appendChild. Expected _p_TreeKey"); + } + } + (arg1)->appendChild(); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_TreeKey_insertBefore) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + TreeKey *arg1 = (TreeKey *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: TreeKey_insertBefore(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_TreeKey,0) < 0) { + SWIG_croak("Type error in argument 1 of TreeKey_insertBefore. Expected _p_TreeKey"); + } + } + (arg1)->insertBefore(); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_TreeKey_remove) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + TreeKey *arg1 = (TreeKey *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: TreeKey_remove(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_TreeKey,0) < 0) { + SWIG_croak("Type error in argument 1 of TreeKey_remove. Expected _p_TreeKey"); + } + } + (arg1)->remove(); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_TreeKey_setOffset) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + TreeKey *arg1 = (TreeKey *) 0 ; + unsigned long arg2 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: TreeKey_setOffset(self,offset);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_TreeKey,0) < 0) { + SWIG_croak("Type error in argument 1 of TreeKey_setOffset. Expected _p_TreeKey"); + } + } + arg2 = (unsigned long) SvUV(ST(1)); + (arg1)->setOffset(arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_TreeKey_getOffset) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + TreeKey *arg1 = (TreeKey *) 0 ; + unsigned long result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: TreeKey_getOffset(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_TreeKey,0) < 0) { + SWIG_croak("Type error in argument 1 of TreeKey_getOffset. Expected _p_TreeKey"); + } + } + result = (unsigned long)((TreeKey const *)arg1)->getOffset(); + + ST(argvi) = sv_newmortal(); + sv_setuv(ST(argvi++), (UV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_TreeKey_setPosition) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + TreeKey *arg1 = (TreeKey *) 0 ; + SwigValueWrapper< SW_POSITION > arg2 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: TreeKey_setPosition(self,p);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_TreeKey,0) < 0) { + SWIG_croak("Type error in argument 1 of TreeKey_setPosition. Expected _p_TreeKey"); + } + } + { + SW_POSITION * argp; + if (SWIG_ConvertPtr(ST(1),(void **) &argp, SWIGTYPE_p_SW_POSITION,0) < 0) { + SWIG_croak("Type error in argument 2 of TreeKey_setPosition. Expected _p_SW_POSITION"); + } + arg2 = *argp; + } + (arg1)->setPosition(arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_TreeKey_Traversable) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + TreeKey *arg1 = (TreeKey *) 0 ; + char result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: TreeKey_Traversable(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_TreeKey,0) < 0) { + SWIG_croak("Type error in argument 1 of TreeKey_Traversable. Expected _p_TreeKey"); + } + } + result = (char)(arg1)->Traversable(); + + ST(argvi) = sv_newmortal(); + sv_setpvn((SV*)ST(argvi++), &result, 1); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_TreeKey_Index) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + TreeKey *arg1 = (TreeKey *) 0 ; + long result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: TreeKey_Index(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_TreeKey,0) < 0) { + SWIG_croak("Type error in argument 1 of TreeKey_Index. Expected _p_TreeKey"); + } + } + result = (long)((TreeKey const *)arg1)->Index(); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_delete_TreeKeyIdx) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + TreeKeyIdx *arg1 = (TreeKeyIdx *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: delete_TreeKeyIdx(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_TreeKeyIdx,0) < 0) { + SWIG_croak("Type error in argument 1 of delete_TreeKeyIdx. Expected _p_TreeKeyIdx"); + } + } + delete arg1; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_TreeKeyIdx_save) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + TreeKeyIdx *arg1 = (TreeKeyIdx *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: TreeKeyIdx_save(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_TreeKeyIdx,0) < 0) { + SWIG_croak("Type error in argument 1 of TreeKeyIdx_save. Expected _p_TreeKeyIdx"); + } + } + (arg1)->save(); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_TreeKeyIdx_copyFrom) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + TreeKeyIdx *arg1 = (TreeKeyIdx *) 0 ; + TreeKeyIdx *arg2 = 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: TreeKeyIdx_copyFrom(self,ikey);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_TreeKeyIdx,0) < 0) { + SWIG_croak("Type error in argument 1 of TreeKeyIdx_copyFrom. Expected _p_TreeKeyIdx"); + } + } + { + if (SWIG_ConvertPtr(ST(1), (void **) &arg2, SWIGTYPE_p_TreeKeyIdx,0) < 0) { + SWIG_croak("Type error in argument 2 of TreeKeyIdx_copyFrom. Expected _p_TreeKeyIdx"); + } + } + (arg1)->copyFrom((TreeKeyIdx const &)*arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_TreeKeyIdx__compare) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + TreeKeyIdx *arg1 = (TreeKeyIdx *) 0 ; + TreeKeyIdx *arg2 = 0 ; + int result; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: TreeKeyIdx__compare(self,ikey);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_TreeKeyIdx,0) < 0) { + SWIG_croak("Type error in argument 1 of TreeKeyIdx__compare. Expected _p_TreeKeyIdx"); + } + } + { + if (SWIG_ConvertPtr(ST(1), (void **) &arg2, SWIGTYPE_p_TreeKeyIdx,0) < 0) { + SWIG_croak("Type error in argument 2 of TreeKeyIdx__compare. Expected _p_TreeKeyIdx"); + } + } + result = (int)(arg1)->_compare((TreeKeyIdx const &)*arg2); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_TreeKeyIdx_create) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 ; + signed char result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: TreeKeyIdx_create(path);"); + } + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + result = (signed char)TreeKeyIdx::create((char const *)arg1); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_LocaleMgr) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 = (char *) 0 ; + LocaleMgr *result; + int argvi = 0; + dXSARGS; + + if ((items < 0) || (items > 1)) { + SWIG_croak("Usage: new_LocaleMgr(iConfigPath);"); + } + if (items > 0) { + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + } + result = (LocaleMgr *)new LocaleMgr((char const *)arg1); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_LocaleMgr,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_delete_LocaleMgr) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + LocaleMgr *arg1 = (LocaleMgr *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: delete_LocaleMgr(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_LocaleMgr,0) < 0) { + SWIG_croak("Type error in argument 1 of delete_LocaleMgr. Expected _p_LocaleMgr"); + } + } + delete arg1; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_LocaleMgr_getLocale) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + LocaleMgr *arg1 = (LocaleMgr *) 0 ; + char *arg2 ; + SWLocale *result; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: LocaleMgr_getLocale(self,name);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_LocaleMgr,0) < 0) { + SWIG_croak("Type error in argument 1 of LocaleMgr_getLocale. Expected _p_LocaleMgr"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + result = (SWLocale *)(arg1)->getLocale((char const *)arg2); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_SWLocale,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_LocaleMgr_getAvailableLocales) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + LocaleMgr *arg1 = (LocaleMgr *) 0 ; + std::list result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: LocaleMgr_getAvailableLocales(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_LocaleMgr,0) < 0) { + SWIG_croak("Type error in argument 1 of LocaleMgr_getAvailableLocales. Expected _p_LocaleMgr"); + } + } + result = (arg1)->getAvailableLocales(); + + { + std::list * resultobj = new std::list((std::list &)result); + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) resultobj, SWIGTYPE_p_std__listTSWBuf_t,0); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_LocaleMgr_getDefaultLocaleName) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + LocaleMgr *arg1 = (LocaleMgr *) 0 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: LocaleMgr_getDefaultLocaleName(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_LocaleMgr,0) < 0) { + SWIG_croak("Type error in argument 1 of LocaleMgr_getDefaultLocaleName. Expected _p_LocaleMgr"); + } + } + result = (char *)(arg1)->getDefaultLocaleName(); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_LocaleMgr_setDefaultLocaleName) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + LocaleMgr *arg1 = (LocaleMgr *) 0 ; + char *arg2 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: LocaleMgr_setDefaultLocaleName(self,name);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_LocaleMgr,0) < 0) { + SWIG_croak("Type error in argument 1 of LocaleMgr_setDefaultLocaleName. Expected _p_LocaleMgr"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + (arg1)->setDefaultLocaleName((char const *)arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_LocaleMgr_getSystemLocaleMgr) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + LocaleMgr *result; + int argvi = 0; + dXSARGS; + + if ((items < 0) || (items > 0)) { + SWIG_croak("Usage: LocaleMgr_getSystemLocaleMgr();"); + } + result = (LocaleMgr *)LocaleMgr_getSystemLocaleMgr(); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_LocaleMgr,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_SWText) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 = (char *) 0 ; + char *arg2 = (char *) 0 ; + SWDisplay *arg3 = (SWDisplay *) 0 ; + SWTextEncoding arg4 = (SWTextEncoding) ENC_UNKNOWN ; + SWTextDirection arg5 = (SWTextDirection) DIRECTION_LTR ; + SWTextMarkup arg6 = (SWTextMarkup) FMT_UNKNOWN ; + char *arg7 = (char *) 0 ; + SWText *result; + int argvi = 0; + dXSARGS; + + if ((items < 0) || (items > 7)) { + SWIG_croak("Usage: new_SWText(imodname,imoddesc,idisp,encoding,dir,markup,ilang);"); + } + if (items > 0) { + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + } + if (items > 1) { + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + } + if (items > 2) { + { + if (SWIG_ConvertPtr(ST(2), (void **) &arg3, SWIGTYPE_p_SWDisplay,0) < 0) { + SWIG_croak("Type error in argument 3 of new_SWText. Expected _p_SWDisplay"); + } + } + } + if (items > 3) { + { + SWTextEncoding * argp; + if (SWIG_ConvertPtr(ST(3),(void **) &argp, SWIGTYPE_p_SWTextEncoding,0) < 0) { + SWIG_croak("Type error in argument 4 of new_SWText. Expected _p_SWTextEncoding"); + } + arg4 = *argp; + } + } + if (items > 4) { + { + SWTextDirection * argp; + if (SWIG_ConvertPtr(ST(4),(void **) &argp, SWIGTYPE_p_SWTextDirection,0) < 0) { + SWIG_croak("Type error in argument 5 of new_SWText. Expected _p_SWTextDirection"); + } + arg5 = *argp; + } + } + if (items > 5) { + { + SWTextMarkup * argp; + if (SWIG_ConvertPtr(ST(5),(void **) &argp, SWIGTYPE_p_SWTextMarkup,0) < 0) { + SWIG_croak("Type error in argument 6 of new_SWText. Expected _p_SWTextMarkup"); + } + arg6 = *argp; + } + } + if (items > 6) { + if (!SvOK((SV*) ST(6))) arg7 = 0; + else arg7 = (char *) SvPV(ST(6), PL_na); + } + result = (SWText *)new SWText((char const *)arg1,(char const *)arg2,arg3,arg4,arg5,arg6,(char const *)arg7); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_SWText,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_delete_SWText) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWText *arg1 = (SWText *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: delete_SWText(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWText,0) < 0) { + SWIG_croak("Type error in argument 1 of delete_SWText. Expected _p_SWText"); + } + } + delete arg1; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_RawText) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + SWDisplay *arg4 = (SWDisplay *) 0 ; + SWTextEncoding arg5 = (SWTextEncoding) ENC_UNKNOWN ; + SWTextDirection arg6 = (SWTextDirection) DIRECTION_LTR ; + SWTextMarkup arg7 = (SWTextMarkup) FMT_UNKNOWN ; + char *arg8 = (char *) 0 ; + RawText *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 8)) { + SWIG_croak("Usage: new_RawText(ipath,iname,idesc,idisp,encoding,dir,markup,ilang);"); + } + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + if (items > 1) { + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + } + if (items > 2) { + if (!SvOK((SV*) ST(2))) arg3 = 0; + else arg3 = (char *) SvPV(ST(2), PL_na); + } + if (items > 3) { + { + if (SWIG_ConvertPtr(ST(3), (void **) &arg4, SWIGTYPE_p_SWDisplay,0) < 0) { + SWIG_croak("Type error in argument 4 of new_RawText. Expected _p_SWDisplay"); + } + } + } + if (items > 4) { + { + SWTextEncoding * argp; + if (SWIG_ConvertPtr(ST(4),(void **) &argp, SWIGTYPE_p_SWTextEncoding,0) < 0) { + SWIG_croak("Type error in argument 5 of new_RawText. Expected _p_SWTextEncoding"); + } + arg5 = *argp; + } + } + if (items > 5) { + { + SWTextDirection * argp; + if (SWIG_ConvertPtr(ST(5),(void **) &argp, SWIGTYPE_p_SWTextDirection,0) < 0) { + SWIG_croak("Type error in argument 6 of new_RawText. Expected _p_SWTextDirection"); + } + arg6 = *argp; + } + } + if (items > 6) { + { + SWTextMarkup * argp; + if (SWIG_ConvertPtr(ST(6),(void **) &argp, SWIGTYPE_p_SWTextMarkup,0) < 0) { + SWIG_croak("Type error in argument 7 of new_RawText. Expected _p_SWTextMarkup"); + } + arg7 = *argp; + } + } + if (items > 7) { + if (!SvOK((SV*) ST(7))) arg8 = 0; + else arg8 = (char *) SvPV(ST(7), PL_na); + } + result = (RawText *)new RawText((char const *)arg1,(char const *)arg2,(char const *)arg3,arg4,arg5,arg6,arg7,(char const *)arg8); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_RawText,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_RawText_createModule) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 ; + char result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: RawText_createModule(path);"); + } + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + result = (char)RawText::createModule((char const *)arg1); + + ST(argvi) = sv_newmortal(); + sv_setpvn((SV*)ST(argvi++), &result, 1); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_delete_RawText) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + RawText *arg1 = (RawText *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: delete_RawText(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_RawText,0) < 0) { + SWIG_croak("Type error in argument 1 of delete_RawText. Expected _p_RawText"); + } + } + delete arg1; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_zText) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + int arg4 = (int) CHAPTERBLOCKS ; + SWCompress *arg5 = (SWCompress *) 0 ; + SWDisplay *arg6 = (SWDisplay *) 0 ; + SWTextEncoding arg7 = (SWTextEncoding) ENC_UNKNOWN ; + SWTextDirection arg8 = (SWTextDirection) DIRECTION_LTR ; + SWTextMarkup arg9 = (SWTextMarkup) FMT_UNKNOWN ; + char *arg10 = (char *) 0 ; + zText *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 10)) { + SWIG_croak("Usage: new_zText(ipath,iname,idesc,blockType,icomp,idisp,encoding,dir,markup,ilang);"); + } + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + if (items > 1) { + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + } + if (items > 2) { + if (!SvOK((SV*) ST(2))) arg3 = 0; + else arg3 = (char *) SvPV(ST(2), PL_na); + } + if (items > 3) { + arg4 = (int) SvIV(ST(3)); + } + if (items > 4) { + { + if (SWIG_ConvertPtr(ST(4), (void **) &arg5, SWIGTYPE_p_SWCompress,0) < 0) { + SWIG_croak("Type error in argument 5 of new_zText. Expected _p_SWCompress"); + } + } + } + if (items > 5) { + { + if (SWIG_ConvertPtr(ST(5), (void **) &arg6, SWIGTYPE_p_SWDisplay,0) < 0) { + SWIG_croak("Type error in argument 6 of new_zText. Expected _p_SWDisplay"); + } + } + } + if (items > 6) { + { + SWTextEncoding * argp; + if (SWIG_ConvertPtr(ST(6),(void **) &argp, SWIGTYPE_p_SWTextEncoding,0) < 0) { + SWIG_croak("Type error in argument 7 of new_zText. Expected _p_SWTextEncoding"); + } + arg7 = *argp; + } + } + if (items > 7) { + { + SWTextDirection * argp; + if (SWIG_ConvertPtr(ST(7),(void **) &argp, SWIGTYPE_p_SWTextDirection,0) < 0) { + SWIG_croak("Type error in argument 8 of new_zText. Expected _p_SWTextDirection"); + } + arg8 = *argp; + } + } + if (items > 8) { + { + SWTextMarkup * argp; + if (SWIG_ConvertPtr(ST(8),(void **) &argp, SWIGTYPE_p_SWTextMarkup,0) < 0) { + SWIG_croak("Type error in argument 9 of new_zText. Expected _p_SWTextMarkup"); + } + arg9 = *argp; + } + } + if (items > 9) { + if (!SvOK((SV*) ST(9))) arg10 = 0; + else arg10 = (char *) SvPV(ST(9), PL_na); + } + result = (zText *)new zText((char const *)arg1,(char const *)arg2,(char const *)arg3,arg4,arg5,arg6,arg7,arg8,arg9,(char const *)arg10); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_zText,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_delete_zText) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + zText *arg1 = (zText *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: delete_zText(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_zText,0) < 0) { + SWIG_croak("Type error in argument 1 of delete_zText. Expected _p_zText"); + } + } + delete arg1; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_zText_createModule) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 ; + int arg2 ; + char result; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: zText_createModule(path,blockBound);"); + } + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + arg2 = (int) SvIV(ST(1)); + result = (char)zText::createModule((char const *)arg1,arg2); + + ST(argvi) = sv_newmortal(); + sv_setpvn((SV*)ST(argvi++), &result, 1); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_RawCom) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + SWDisplay *arg4 = (SWDisplay *) 0 ; + SWTextEncoding arg5 = (SWTextEncoding) ENC_UNKNOWN ; + SWTextDirection arg6 = (SWTextDirection) DIRECTION_LTR ; + SWTextMarkup arg7 = (SWTextMarkup) FMT_UNKNOWN ; + char *arg8 = (char *) 0 ; + RawCom *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 8)) { + SWIG_croak("Usage: new_RawCom(ipath,iname,idesc,idisp,encoding,dir,markup,ilang);"); + } + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + if (items > 1) { + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + } + if (items > 2) { + if (!SvOK((SV*) ST(2))) arg3 = 0; + else arg3 = (char *) SvPV(ST(2), PL_na); + } + if (items > 3) { + { + if (SWIG_ConvertPtr(ST(3), (void **) &arg4, SWIGTYPE_p_SWDisplay,0) < 0) { + SWIG_croak("Type error in argument 4 of new_RawCom. Expected _p_SWDisplay"); + } + } + } + if (items > 4) { + { + SWTextEncoding * argp; + if (SWIG_ConvertPtr(ST(4),(void **) &argp, SWIGTYPE_p_SWTextEncoding,0) < 0) { + SWIG_croak("Type error in argument 5 of new_RawCom. Expected _p_SWTextEncoding"); + } + arg5 = *argp; + } + } + if (items > 5) { + { + SWTextDirection * argp; + if (SWIG_ConvertPtr(ST(5),(void **) &argp, SWIGTYPE_p_SWTextDirection,0) < 0) { + SWIG_croak("Type error in argument 6 of new_RawCom. Expected _p_SWTextDirection"); + } + arg6 = *argp; + } + } + if (items > 6) { + { + SWTextMarkup * argp; + if (SWIG_ConvertPtr(ST(6),(void **) &argp, SWIGTYPE_p_SWTextMarkup,0) < 0) { + SWIG_croak("Type error in argument 7 of new_RawCom. Expected _p_SWTextMarkup"); + } + arg7 = *argp; + } + } + if (items > 7) { + if (!SvOK((SV*) ST(7))) arg8 = 0; + else arg8 = (char *) SvPV(ST(7), PL_na); + } + result = (RawCom *)new RawCom((char const *)arg1,(char const *)arg2,(char const *)arg3,arg4,arg5,arg6,arg7,(char const *)arg8); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_RawCom,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_delete_RawCom) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + RawCom *arg1 = (RawCom *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: delete_RawCom(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_RawCom,0) < 0) { + SWIG_croak("Type error in argument 1 of delete_RawCom. Expected _p_RawCom"); + } + } + delete arg1; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_RawCom_createModule) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 ; + char result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: RawCom_createModule(path);"); + } + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + result = (char)RawCom::createModule((char const *)arg1); + + ST(argvi) = sv_newmortal(); + sv_setpvn((SV*)ST(argvi++), &result, 1); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_zCom) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + int arg4 = (int) CHAPTERBLOCKS ; + SWCompress *arg5 = (SWCompress *) 0 ; + SWDisplay *arg6 = (SWDisplay *) 0 ; + SWTextEncoding arg7 = (SWTextEncoding) ENC_UNKNOWN ; + SWTextDirection arg8 = (SWTextDirection) DIRECTION_LTR ; + SWTextMarkup arg9 = (SWTextMarkup) FMT_UNKNOWN ; + char *arg10 = (char *) 0 ; + zCom *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 10)) { + SWIG_croak("Usage: new_zCom(ipath,iname,idesc,blockType,icomp,idisp,encoding,dir,markup,ilang);"); + } + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + if (items > 1) { + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + } + if (items > 2) { + if (!SvOK((SV*) ST(2))) arg3 = 0; + else arg3 = (char *) SvPV(ST(2), PL_na); + } + if (items > 3) { + arg4 = (int) SvIV(ST(3)); + } + if (items > 4) { + { + if (SWIG_ConvertPtr(ST(4), (void **) &arg5, SWIGTYPE_p_SWCompress,0) < 0) { + SWIG_croak("Type error in argument 5 of new_zCom. Expected _p_SWCompress"); + } + } + } + if (items > 5) { + { + if (SWIG_ConvertPtr(ST(5), (void **) &arg6, SWIGTYPE_p_SWDisplay,0) < 0) { + SWIG_croak("Type error in argument 6 of new_zCom. Expected _p_SWDisplay"); + } + } + } + if (items > 6) { + { + SWTextEncoding * argp; + if (SWIG_ConvertPtr(ST(6),(void **) &argp, SWIGTYPE_p_SWTextEncoding,0) < 0) { + SWIG_croak("Type error in argument 7 of new_zCom. Expected _p_SWTextEncoding"); + } + arg7 = *argp; + } + } + if (items > 7) { + { + SWTextDirection * argp; + if (SWIG_ConvertPtr(ST(7),(void **) &argp, SWIGTYPE_p_SWTextDirection,0) < 0) { + SWIG_croak("Type error in argument 8 of new_zCom. Expected _p_SWTextDirection"); + } + arg8 = *argp; + } + } + if (items > 8) { + { + SWTextMarkup * argp; + if (SWIG_ConvertPtr(ST(8),(void **) &argp, SWIGTYPE_p_SWTextMarkup,0) < 0) { + SWIG_croak("Type error in argument 9 of new_zCom. Expected _p_SWTextMarkup"); + } + arg9 = *argp; + } + } + if (items > 9) { + if (!SvOK((SV*) ST(9))) arg10 = 0; + else arg10 = (char *) SvPV(ST(9), PL_na); + } + result = (zCom *)new zCom((char const *)arg1,(char const *)arg2,(char const *)arg3,arg4,arg5,arg6,arg7,arg8,arg9,(char const *)arg10); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_zCom,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_delete_zCom) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + zCom *arg1 = (zCom *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: delete_zCom(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_zCom,0) < 0) { + SWIG_croak("Type error in argument 1 of delete_zCom. Expected _p_zCom"); + } + } + delete arg1; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_zCom_createModule) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 ; + int arg2 ; + char result; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: zCom_createModule(path,blockBound);"); + } + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + arg2 = (int) SvIV(ST(1)); + result = (char)zCom::createModule((char const *)arg1,arg2); + + ST(argvi) = sv_newmortal(); + sv_setpvn((SV*)ST(argvi++), &result, 1); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_RawGenBook) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + SWDisplay *arg4 = (SWDisplay *) 0 ; + SWTextEncoding arg5 = (SWTextEncoding) ENC_UNKNOWN ; + SWTextDirection arg6 = (SWTextDirection) DIRECTION_LTR ; + SWTextMarkup arg7 = (SWTextMarkup) FMT_UNKNOWN ; + char *arg8 = (char *) 0 ; + RawGenBook *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 8)) { + SWIG_croak("Usage: new_RawGenBook(ipath,iname,idesc,idisp,encoding,dir,markup,ilang);"); + } + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + if (items > 1) { + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + } + if (items > 2) { + if (!SvOK((SV*) ST(2))) arg3 = 0; + else arg3 = (char *) SvPV(ST(2), PL_na); + } + if (items > 3) { + { + if (SWIG_ConvertPtr(ST(3), (void **) &arg4, SWIGTYPE_p_SWDisplay,0) < 0) { + SWIG_croak("Type error in argument 4 of new_RawGenBook. Expected _p_SWDisplay"); + } + } + } + if (items > 4) { + { + SWTextEncoding * argp; + if (SWIG_ConvertPtr(ST(4),(void **) &argp, SWIGTYPE_p_SWTextEncoding,0) < 0) { + SWIG_croak("Type error in argument 5 of new_RawGenBook. Expected _p_SWTextEncoding"); + } + arg5 = *argp; + } + } + if (items > 5) { + { + SWTextDirection * argp; + if (SWIG_ConvertPtr(ST(5),(void **) &argp, SWIGTYPE_p_SWTextDirection,0) < 0) { + SWIG_croak("Type error in argument 6 of new_RawGenBook. Expected _p_SWTextDirection"); + } + arg6 = *argp; + } + } + if (items > 6) { + { + SWTextMarkup * argp; + if (SWIG_ConvertPtr(ST(6),(void **) &argp, SWIGTYPE_p_SWTextMarkup,0) < 0) { + SWIG_croak("Type error in argument 7 of new_RawGenBook. Expected _p_SWTextMarkup"); + } + arg7 = *argp; + } + } + if (items > 7) { + if (!SvOK((SV*) ST(7))) arg8 = 0; + else arg8 = (char *) SvPV(ST(7), PL_na); + } + result = (RawGenBook *)new RawGenBook((char const *)arg1,(char const *)arg2,(char const *)arg3,arg4,arg5,arg6,arg7,(char const *)arg8); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_RawGenBook,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_delete_RawGenBook) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + RawGenBook *arg1 = (RawGenBook *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: delete_RawGenBook(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_RawGenBook,0) < 0) { + SWIG_croak("Type error in argument 1 of delete_RawGenBook. Expected _p_RawGenBook"); + } + } + delete arg1; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_RawGenBook_createModule) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 ; + char result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: RawGenBook_createModule(ipath);"); + } + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + result = (char)RawGenBook::createModule((char const *)arg1); + + ST(argvi) = sv_newmortal(); + sv_setpvn((SV*)ST(argvi++), &result, 1); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_RawGenBook_getTreeKey) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + RawGenBook *arg1 = (RawGenBook *) 0 ; + TreeKeyIdx *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: RawGenBook_getTreeKey(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_RawGenBook,0) < 0) { + SWIG_croak("Type error in argument 1 of RawGenBook_getTreeKey. Expected _p_RawGenBook"); + } + } + result = (TreeKeyIdx *)RawGenBook_getTreeKey(arg1); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_TreeKeyIdx,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_SWLD) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 = (char *) 0 ; + char *arg2 = (char *) 0 ; + SWDisplay *arg3 = (SWDisplay *) 0 ; + SWTextEncoding arg4 = (SWTextEncoding) ENC_UNKNOWN ; + SWTextDirection arg5 = (SWTextDirection) DIRECTION_LTR ; + SWTextMarkup arg6 = (SWTextMarkup) FMT_UNKNOWN ; + char *arg7 = (char *) 0 ; + SWLD *result; + int argvi = 0; + dXSARGS; + + if ((items < 0) || (items > 7)) { + SWIG_croak("Usage: new_SWLD(imodname,imoddesc,idisp,encoding,dir,markup,ilang);"); + } + if (items > 0) { + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + } + if (items > 1) { + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + } + if (items > 2) { + { + if (SWIG_ConvertPtr(ST(2), (void **) &arg3, SWIGTYPE_p_SWDisplay,0) < 0) { + SWIG_croak("Type error in argument 3 of new_SWLD. Expected _p_SWDisplay"); + } + } + } + if (items > 3) { + { + SWTextEncoding * argp; + if (SWIG_ConvertPtr(ST(3),(void **) &argp, SWIGTYPE_p_SWTextEncoding,0) < 0) { + SWIG_croak("Type error in argument 4 of new_SWLD. Expected _p_SWTextEncoding"); + } + arg4 = *argp; + } + } + if (items > 4) { + { + SWTextDirection * argp; + if (SWIG_ConvertPtr(ST(4),(void **) &argp, SWIGTYPE_p_SWTextDirection,0) < 0) { + SWIG_croak("Type error in argument 5 of new_SWLD. Expected _p_SWTextDirection"); + } + arg5 = *argp; + } + } + if (items > 5) { + { + SWTextMarkup * argp; + if (SWIG_ConvertPtr(ST(5),(void **) &argp, SWIGTYPE_p_SWTextMarkup,0) < 0) { + SWIG_croak("Type error in argument 6 of new_SWLD. Expected _p_SWTextMarkup"); + } + arg6 = *argp; + } + } + if (items > 6) { + if (!SvOK((SV*) ST(6))) arg7 = 0; + else arg7 = (char *) SvPV(ST(6), PL_na); + } + result = (SWLD *)new SWLD((char const *)arg1,(char const *)arg2,arg3,arg4,arg5,arg6,(char const *)arg7); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_SWLD,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_delete_SWLD) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWLD *arg1 = (SWLD *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: delete_SWLD(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWLD,0) < 0) { + SWIG_croak("Type error in argument 1 of delete_SWLD. Expected _p_SWLD"); + } + } + delete arg1; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_RawLD) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + SWDisplay *arg4 = (SWDisplay *) 0 ; + SWTextEncoding arg5 = (SWTextEncoding) ENC_UNKNOWN ; + SWTextDirection arg6 = (SWTextDirection) DIRECTION_LTR ; + SWTextMarkup arg7 = (SWTextMarkup) FMT_UNKNOWN ; + char *arg8 = (char *) 0 ; + RawLD *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 8)) { + SWIG_croak("Usage: new_RawLD(ipath,iname,idesc,idisp,encoding,dir,markup,ilang);"); + } + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + if (items > 1) { + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + } + if (items > 2) { + if (!SvOK((SV*) ST(2))) arg3 = 0; + else arg3 = (char *) SvPV(ST(2), PL_na); + } + if (items > 3) { + { + if (SWIG_ConvertPtr(ST(3), (void **) &arg4, SWIGTYPE_p_SWDisplay,0) < 0) { + SWIG_croak("Type error in argument 4 of new_RawLD. Expected _p_SWDisplay"); + } + } + } + if (items > 4) { + { + SWTextEncoding * argp; + if (SWIG_ConvertPtr(ST(4),(void **) &argp, SWIGTYPE_p_SWTextEncoding,0) < 0) { + SWIG_croak("Type error in argument 5 of new_RawLD. Expected _p_SWTextEncoding"); + } + arg5 = *argp; + } + } + if (items > 5) { + { + SWTextDirection * argp; + if (SWIG_ConvertPtr(ST(5),(void **) &argp, SWIGTYPE_p_SWTextDirection,0) < 0) { + SWIG_croak("Type error in argument 6 of new_RawLD. Expected _p_SWTextDirection"); + } + arg6 = *argp; + } + } + if (items > 6) { + { + SWTextMarkup * argp; + if (SWIG_ConvertPtr(ST(6),(void **) &argp, SWIGTYPE_p_SWTextMarkup,0) < 0) { + SWIG_croak("Type error in argument 7 of new_RawLD. Expected _p_SWTextMarkup"); + } + arg7 = *argp; + } + } + if (items > 7) { + if (!SvOK((SV*) ST(7))) arg8 = 0; + else arg8 = (char *) SvPV(ST(7), PL_na); + } + result = (RawLD *)new RawLD((char const *)arg1,(char const *)arg2,(char const *)arg3,arg4,arg5,arg6,arg7,(char const *)arg8); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_RawLD,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_delete_RawLD) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + RawLD *arg1 = (RawLD *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: delete_RawLD(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_RawLD,0) < 0) { + SWIG_croak("Type error in argument 1 of delete_RawLD. Expected _p_RawLD"); + } + } + delete arg1; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_RawLD_createModule) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 ; + char result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: RawLD_createModule(path);"); + } + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + result = (char)RawLD::createModule((char const *)arg1); + + ST(argvi) = sv_newmortal(); + sv_setpvn((SV*)ST(argvi++), &result, 1); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_RawLD4) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + SWDisplay *arg4 = (SWDisplay *) 0 ; + SWTextEncoding arg5 = (SWTextEncoding) ENC_UNKNOWN ; + SWTextDirection arg6 = (SWTextDirection) DIRECTION_LTR ; + SWTextMarkup arg7 = (SWTextMarkup) FMT_UNKNOWN ; + char *arg8 = (char *) 0 ; + RawLD4 *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 8)) { + SWIG_croak("Usage: new_RawLD4(ipath,iname,idesc,idisp,encoding,dir,markup,ilang);"); + } + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + if (items > 1) { + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + } + if (items > 2) { + if (!SvOK((SV*) ST(2))) arg3 = 0; + else arg3 = (char *) SvPV(ST(2), PL_na); + } + if (items > 3) { + { + if (SWIG_ConvertPtr(ST(3), (void **) &arg4, SWIGTYPE_p_SWDisplay,0) < 0) { + SWIG_croak("Type error in argument 4 of new_RawLD4. Expected _p_SWDisplay"); + } + } + } + if (items > 4) { + { + SWTextEncoding * argp; + if (SWIG_ConvertPtr(ST(4),(void **) &argp, SWIGTYPE_p_SWTextEncoding,0) < 0) { + SWIG_croak("Type error in argument 5 of new_RawLD4. Expected _p_SWTextEncoding"); + } + arg5 = *argp; + } + } + if (items > 5) { + { + SWTextDirection * argp; + if (SWIG_ConvertPtr(ST(5),(void **) &argp, SWIGTYPE_p_SWTextDirection,0) < 0) { + SWIG_croak("Type error in argument 6 of new_RawLD4. Expected _p_SWTextDirection"); + } + arg6 = *argp; + } + } + if (items > 6) { + { + SWTextMarkup * argp; + if (SWIG_ConvertPtr(ST(6),(void **) &argp, SWIGTYPE_p_SWTextMarkup,0) < 0) { + SWIG_croak("Type error in argument 7 of new_RawLD4. Expected _p_SWTextMarkup"); + } + arg7 = *argp; + } + } + if (items > 7) { + if (!SvOK((SV*) ST(7))) arg8 = 0; + else arg8 = (char *) SvPV(ST(7), PL_na); + } + result = (RawLD4 *)new RawLD4((char const *)arg1,(char const *)arg2,(char const *)arg3,arg4,arg5,arg6,arg7,(char const *)arg8); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_RawLD4,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_delete_RawLD4) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + RawLD4 *arg1 = (RawLD4 *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: delete_RawLD4(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_RawLD4,0) < 0) { + SWIG_croak("Type error in argument 1 of delete_RawLD4. Expected _p_RawLD4"); + } + } + delete arg1; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_RawLD4_createModule) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 ; + char result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: RawLD4_createModule(path);"); + } + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + result = (char)RawLD4::createModule((char const *)arg1); + + ST(argvi) = sv_newmortal(); + sv_setpvn((SV*)ST(argvi++), &result, 1); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_zLD) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 ; + char *arg2 = (char *) 0 ; + char *arg3 = (char *) 0 ; + long arg4 = (long) 200 ; + SWCompress *arg5 = (SWCompress *) 0 ; + SWDisplay *arg6 = (SWDisplay *) 0 ; + SWTextEncoding arg7 = (SWTextEncoding) ENC_UNKNOWN ; + SWTextDirection arg8 = (SWTextDirection) DIRECTION_LTR ; + SWTextMarkup arg9 = (SWTextMarkup) FMT_UNKNOWN ; + char *arg10 = (char *) 0 ; + zLD *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 10)) { + SWIG_croak("Usage: new_zLD(ipath,iname,idesc,blockCount,icomp,idisp,encoding,dir,markup,ilang);"); + } + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + if (items > 1) { + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + } + if (items > 2) { + if (!SvOK((SV*) ST(2))) arg3 = 0; + else arg3 = (char *) SvPV(ST(2), PL_na); + } + if (items > 3) { + arg4 = (long) SvIV(ST(3)); + } + if (items > 4) { + { + if (SWIG_ConvertPtr(ST(4), (void **) &arg5, SWIGTYPE_p_SWCompress,0) < 0) { + SWIG_croak("Type error in argument 5 of new_zLD. Expected _p_SWCompress"); + } + } + } + if (items > 5) { + { + if (SWIG_ConvertPtr(ST(5), (void **) &arg6, SWIGTYPE_p_SWDisplay,0) < 0) { + SWIG_croak("Type error in argument 6 of new_zLD. Expected _p_SWDisplay"); + } + } + } + if (items > 6) { + { + SWTextEncoding * argp; + if (SWIG_ConvertPtr(ST(6),(void **) &argp, SWIGTYPE_p_SWTextEncoding,0) < 0) { + SWIG_croak("Type error in argument 7 of new_zLD. Expected _p_SWTextEncoding"); + } + arg7 = *argp; + } + } + if (items > 7) { + { + SWTextDirection * argp; + if (SWIG_ConvertPtr(ST(7),(void **) &argp, SWIGTYPE_p_SWTextDirection,0) < 0) { + SWIG_croak("Type error in argument 8 of new_zLD. Expected _p_SWTextDirection"); + } + arg8 = *argp; + } + } + if (items > 8) { + { + SWTextMarkup * argp; + if (SWIG_ConvertPtr(ST(8),(void **) &argp, SWIGTYPE_p_SWTextMarkup,0) < 0) { + SWIG_croak("Type error in argument 9 of new_zLD. Expected _p_SWTextMarkup"); + } + arg9 = *argp; + } + } + if (items > 9) { + if (!SvOK((SV*) ST(9))) arg10 = 0; + else arg10 = (char *) SvPV(ST(9), PL_na); + } + result = (zLD *)new zLD((char const *)arg1,(char const *)arg2,(char const *)arg3,arg4,arg5,arg6,arg7,arg8,arg9,(char const *)arg10); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_zLD,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_delete_zLD) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + zLD *arg1 = (zLD *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: delete_zLD(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_zLD,0) < 0) { + SWIG_croak("Type error in argument 1 of delete_zLD. Expected _p_zLD"); + } + } + delete arg1; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_zLD_createModule) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 ; + char result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: zLD_createModule(path);"); + } + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + result = (char)zLD::createModule((char const *)arg1); + + ST(argvi) = sv_newmortal(); + sv_setpvn((SV*)ST(argvi++), &result, 1); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_SWCompress) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWCompress *result; + int argvi = 0; + dXSARGS; + + if ((items < 0) || (items > 0)) { + SWIG_croak("Usage: new_SWCompress();"); + } + result = (SWCompress *)new SWCompress(); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_SWCompress,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_delete_SWCompress) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWCompress *arg1 = (SWCompress *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: delete_SWCompress(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWCompress,0) < 0) { + SWIG_croak("Type error in argument 1 of delete_SWCompress. Expected _p_SWCompress"); + } + } + delete arg1; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWCompress_Buf) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWCompress *arg1 = (SWCompress *) 0 ; + char *arg2 = (char *) 0 ; + unsigned long *arg3 = (unsigned long *) 0 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 3)) { + SWIG_croak("Usage: SWCompress_Buf(self,buf,len);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWCompress,0) < 0) { + SWIG_croak("Type error in argument 1 of SWCompress_Buf. Expected _p_SWCompress"); + } + } + if (items > 1) { + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + } + if (items > 2) { + { + if (SWIG_ConvertPtr(ST(2), (void **) &arg3, SWIGTYPE_p_unsigned_long,0) < 0) { + SWIG_croak("Type error in argument 3 of SWCompress_Buf. Expected _p_unsigned_long"); + } + } + } + result = (char *)(arg1)->Buf((char const *)arg2,arg3); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWCompress_zBuf) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWCompress *arg1 = (SWCompress *) 0 ; + unsigned long *arg2 = (unsigned long *) 0 ; + char *arg3 = (char *) 0 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 3)) { + SWIG_croak("Usage: SWCompress_zBuf(self,len,buf);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWCompress,0) < 0) { + SWIG_croak("Type error in argument 1 of SWCompress_zBuf. Expected _p_SWCompress"); + } + } + { + if (SWIG_ConvertPtr(ST(1), (void **) &arg2, SWIGTYPE_p_unsigned_long,0) < 0) { + SWIG_croak("Type error in argument 2 of SWCompress_zBuf. Expected _p_unsigned_long"); + } + } + if (items > 2) { + if (!SvOK((SV*) ST(2))) arg3 = 0; + else arg3 = (char *) SvPV(ST(2), PL_na); + } + result = (char *)(arg1)->zBuf(arg2,arg3); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWCompress_GetChars) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWCompress *arg1 = (SWCompress *) 0 ; + char *arg2 ; + unsigned long arg3 ; + unsigned long result; + int argvi = 0; + dXSARGS; + + if ((items < 3) || (items > 3)) { + SWIG_croak("Usage: SWCompress_GetChars(self,buf,len);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWCompress,0) < 0) { + SWIG_croak("Type error in argument 1 of SWCompress_GetChars. Expected _p_SWCompress"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + arg3 = (unsigned long) SvUV(ST(2)); + result = (unsigned long)(arg1)->GetChars(arg2,arg3); + + ST(argvi) = sv_newmortal(); + sv_setuv(ST(argvi++), (UV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWCompress_SendChars) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWCompress *arg1 = (SWCompress *) 0 ; + char *arg2 ; + unsigned long arg3 ; + unsigned long result; + int argvi = 0; + dXSARGS; + + if ((items < 3) || (items > 3)) { + SWIG_croak("Usage: SWCompress_SendChars(self,buf,len);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWCompress,0) < 0) { + SWIG_croak("Type error in argument 1 of SWCompress_SendChars. Expected _p_SWCompress"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + arg3 = (unsigned long) SvUV(ST(2)); + result = (unsigned long)(arg1)->SendChars(arg2,arg3); + + ST(argvi) = sv_newmortal(); + sv_setuv(ST(argvi++), (UV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWCompress_Encode) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWCompress *arg1 = (SWCompress *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWCompress_Encode(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWCompress,0) < 0) { + SWIG_croak("Type error in argument 1 of SWCompress_Encode. Expected _p_SWCompress"); + } + } + (arg1)->Encode(); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWCompress_Decode) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWCompress *arg1 = (SWCompress *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWCompress_Decode(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWCompress,0) < 0) { + SWIG_croak("Type error in argument 1 of SWCompress_Decode. Expected _p_SWCompress"); + } + } + (arg1)->Decode(); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_LZSSCompress) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + LZSSCompress *result; + int argvi = 0; + dXSARGS; + + if ((items < 0) || (items > 0)) { + SWIG_croak("Usage: new_LZSSCompress();"); + } + result = (LZSSCompress *)new LZSSCompress(); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_LZSSCompress,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_delete_LZSSCompress) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + LZSSCompress *arg1 = (LZSSCompress *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: delete_LZSSCompress(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_LZSSCompress,0) < 0) { + SWIG_croak("Type error in argument 1 of delete_LZSSCompress. Expected _p_LZSSCompress"); + } + } + delete arg1; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_LZSSCompress_Encode) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + LZSSCompress *arg1 = (LZSSCompress *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: LZSSCompress_Encode(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_LZSSCompress,0) < 0) { + SWIG_croak("Type error in argument 1 of LZSSCompress_Encode. Expected _p_LZSSCompress"); + } + } + (arg1)->Encode(); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_LZSSCompress_Decode) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + LZSSCompress *arg1 = (LZSSCompress *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: LZSSCompress_Decode(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_LZSSCompress,0) < 0) { + SWIG_croak("Type error in argument 1 of LZSSCompress_Decode. Expected _p_LZSSCompress"); + } + } + (arg1)->Decode(); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_ZipCompress) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + ZipCompress *result; + int argvi = 0; + dXSARGS; + + if ((items < 0) || (items > 0)) { + SWIG_croak("Usage: new_ZipCompress();"); + } + result = (ZipCompress *)new ZipCompress(); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_ZipCompress,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_delete_ZipCompress) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + ZipCompress *arg1 = (ZipCompress *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: delete_ZipCompress(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_ZipCompress,0) < 0) { + SWIG_croak("Type error in argument 1 of delete_ZipCompress. Expected _p_ZipCompress"); + } + } + delete arg1; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_ZipCompress_Encode) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + ZipCompress *arg1 = (ZipCompress *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: ZipCompress_Encode(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_ZipCompress,0) < 0) { + SWIG_croak("Type error in argument 1 of ZipCompress_Encode. Expected _p_ZipCompress"); + } + } + (arg1)->Encode(); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_ZipCompress_Decode) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + ZipCompress *arg1 = (ZipCompress *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: ZipCompress_Decode(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_ZipCompress,0) < 0) { + SWIG_croak("Type error in argument 1 of ZipCompress_Decode. Expected _p_ZipCompress"); + } + } + (arg1)->Decode(); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_SWBuf__SWIG_0) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char *arg1 = (char *) 0 ; + SWBuf *result; + int argvi = 0; + dXSARGS; + + if ((items < 0) || (items > 1)) { + SWIG_croak("Usage: new_SWBuf(initVal);"); + } + if (items > 0) { + if (!SvOK((SV*) ST(0))) arg1 = 0; + else arg1 = (char *) SvPV(ST(0), PL_na); + } + result = (SWBuf *)new SWBuf((char const *)arg1); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_SWBuf,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_SWBuf__SWIG_1) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + char arg1 ; + SWBuf *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: new_SWBuf(initVal);"); + } + arg1 = (char) *SvPV(ST(0),PL_na); + result = (SWBuf *)new SWBuf(arg1); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_SWBuf,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_SWBuf__SWIG_2) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWBuf *arg1 = 0 ; + SWBuf *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: new_SWBuf(other);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWBuf,0) < 0) { + SWIG_croak("Type error in argument 1 of new_SWBuf. Expected _p_SWBuf"); + } + } + result = (SWBuf *)new SWBuf((SWBuf const &)*arg1); + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_SWBuf,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_new_SWBuf) { + dXSARGS; + + if ((items >= 0) && (items <= 1)) { + int _v; + if (items <= 0) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_new_SWBuf__SWIG_0); return; + } + { + _v = SvPOK(ST(0)) ? 1 : 0; + } + if (_v) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_new_SWBuf__SWIG_0); return; + } + } + if (items == 1) { + int _v; + { + void *tmp; + if (SWIG_ConvertPtr(ST(0), (void **) &tmp, SWIGTYPE_p_SWBuf, 0) == -1) { + _v = 0; + }else { + _v = 1; + } + } + if (_v) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_new_SWBuf__SWIG_2); return; + } + } + if (items == 1) { + int _v; + { + _v = SvPOK(ST(0)) ? 1 : 0; + } + if (_v) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_new_SWBuf__SWIG_1); return; + } + } + + croak("No matching function for overloaded 'new_SWBuf'"); + XSRETURN(0); +} + + +XS(_wrap_delete_SWBuf) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWBuf *arg1 = (SWBuf *) 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: delete_SWBuf(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWBuf,0) < 0) { + SWIG_croak("Type error in argument 1 of delete_SWBuf. Expected _p_SWBuf"); + } + } + delete arg1; + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWBuf_setFillByte) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWBuf *arg1 = (SWBuf *) 0 ; + char arg2 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWBuf_setFillByte(self,ch);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWBuf,0) < 0) { + SWIG_croak("Type error in argument 1 of SWBuf_setFillByte. Expected _p_SWBuf"); + } + } + arg2 = (char) *SvPV(ST(1),PL_na); + (arg1)->setFillByte(arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWBuf_getFillByte) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWBuf *arg1 = (SWBuf *) 0 ; + char result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWBuf_getFillByte(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWBuf,0) < 0) { + SWIG_croak("Type error in argument 1 of SWBuf_getFillByte. Expected _p_SWBuf"); + } + } + result = (char)(arg1)->getFillByte(); + + ST(argvi) = sv_newmortal(); + sv_setpvn((SV*)ST(argvi++), &result, 1); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWBuf_c_str) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWBuf *arg1 = (SWBuf *) 0 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWBuf_c_str(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWBuf,0) < 0) { + SWIG_croak("Type error in argument 1 of SWBuf_c_str. Expected _p_SWBuf"); + } + } + result = (char *)((SWBuf const *)arg1)->c_str(); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWBuf_charAt) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWBuf *arg1 = (SWBuf *) 0 ; + unsigned int arg2 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWBuf_charAt(self,pos);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWBuf,0) < 0) { + SWIG_croak("Type error in argument 1 of SWBuf_charAt. Expected _p_SWBuf"); + } + } + arg2 = (unsigned int) SvUV(ST(1)); + { + char &_result_ref = (arg1)->charAt(arg2); + result = (char *) &_result_ref; + } + + ST(argvi) = sv_newmortal(); + SWIG_MakePtr(ST(argvi++), (void *) result, SWIGTYPE_p_char,0); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWBuf_size) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWBuf *arg1 = (SWBuf *) 0 ; + unsigned int result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWBuf_size(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWBuf,0) < 0) { + SWIG_croak("Type error in argument 1 of SWBuf_size. Expected _p_SWBuf"); + } + } + result = (unsigned int)((SWBuf const *)arg1)->size(); + + ST(argvi) = sv_newmortal(); + sv_setuv(ST(argvi++), (UV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWBuf_length) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWBuf *arg1 = (SWBuf *) 0 ; + unsigned int result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWBuf_length(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWBuf,0) < 0) { + SWIG_croak("Type error in argument 1 of SWBuf_length. Expected _p_SWBuf"); + } + } + result = (unsigned int)((SWBuf const *)arg1)->length(); + + ST(argvi) = sv_newmortal(); + sv_setuv(ST(argvi++), (UV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWBuf_set__SWIG_0) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWBuf *arg1 = (SWBuf *) 0 ; + char *arg2 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWBuf_set(self,newVal);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWBuf,0) < 0) { + SWIG_croak("Type error in argument 1 of SWBuf_set. Expected _p_SWBuf"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + (arg1)->set((char const *)arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWBuf_set__SWIG_1) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWBuf *arg1 = (SWBuf *) 0 ; + SWBuf *arg2 = 0 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWBuf_set(self,newVal);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWBuf,0) < 0) { + SWIG_croak("Type error in argument 1 of SWBuf_set. Expected _p_SWBuf"); + } + } + { + if (SWIG_ConvertPtr(ST(1), (void **) &arg2, SWIGTYPE_p_SWBuf,0) < 0) { + SWIG_croak("Type error in argument 2 of SWBuf_set. Expected _p_SWBuf"); + } + } + (arg1)->set((SWBuf const &)*arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWBuf_set) { + dXSARGS; + + if (items == 2) { + int _v; + { + void *tmp; + if (SWIG_ConvertPtr(ST(0), (void **) &tmp, SWIGTYPE_p_SWBuf, 0) == -1) { + _v = 0; + }else { + _v = 1; + } + } + if (_v) { + { + void *tmp; + if (SWIG_ConvertPtr(ST(1), (void **) &tmp, SWIGTYPE_p_SWBuf, 0) == -1) { + _v = 0; + }else { + _v = 1; + } + } + if (_v) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_SWBuf_set__SWIG_1); return; + } + } + } + if (items == 2) { + int _v; + { + void *tmp; + if (SWIG_ConvertPtr(ST(0), (void **) &tmp, SWIGTYPE_p_SWBuf, 0) == -1) { + _v = 0; + }else { + _v = 1; + } + } + if (_v) { + { + _v = SvPOK(ST(1)) ? 1 : 0; + } + if (_v) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_SWBuf_set__SWIG_0); return; + } + } + } + + croak("No matching function for overloaded 'SWBuf_set'"); + XSRETURN(0); +} + + +XS(_wrap_SWBuf_setSize) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWBuf *arg1 = (SWBuf *) 0 ; + unsigned int arg2 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWBuf_setSize(self,len);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWBuf,0) < 0) { + SWIG_croak("Type error in argument 1 of SWBuf_setSize. Expected _p_SWBuf"); + } + } + arg2 = (unsigned int) SvUV(ST(1)); + (arg1)->setSize(arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWBuf_append__SWIG_0) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWBuf *arg1 = (SWBuf *) 0 ; + char *arg2 ; + int arg3 = (int) -1 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 3)) { + SWIG_croak("Usage: SWBuf_append(self,str,max);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWBuf,0) < 0) { + SWIG_croak("Type error in argument 1 of SWBuf_append. Expected _p_SWBuf"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + if (items > 2) { + arg3 = (int) SvIV(ST(2)); + } + (arg1)->append((char const *)arg2,arg3); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWBuf_append__SWIG_1) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWBuf *arg1 = (SWBuf *) 0 ; + SWBuf *arg2 = 0 ; + int arg3 = (int) -1 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 3)) { + SWIG_croak("Usage: SWBuf_append(self,str,max);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWBuf,0) < 0) { + SWIG_croak("Type error in argument 1 of SWBuf_append. Expected _p_SWBuf"); + } + } + { + if (SWIG_ConvertPtr(ST(1), (void **) &arg2, SWIGTYPE_p_SWBuf,0) < 0) { + SWIG_croak("Type error in argument 2 of SWBuf_append. Expected _p_SWBuf"); + } + } + if (items > 2) { + arg3 = (int) SvIV(ST(2)); + } + (arg1)->append((SWBuf const &)*arg2,arg3); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWBuf_append__SWIG_2) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWBuf *arg1 = (SWBuf *) 0 ; + char arg2 ; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWBuf_append(self,ch);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWBuf,0) < 0) { + SWIG_croak("Type error in argument 1 of SWBuf_append. Expected _p_SWBuf"); + } + } + arg2 = (char) *SvPV(ST(1),PL_na); + (arg1)->append(arg2); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWBuf_append) { + dXSARGS; + + if ((items >= 2) && (items <= 3)) { + int _v; + { + void *tmp; + if (SWIG_ConvertPtr(ST(0), (void **) &tmp, SWIGTYPE_p_SWBuf, 0) == -1) { + _v = 0; + }else { + _v = 1; + } + } + if (_v) { + { + void *tmp; + if (SWIG_ConvertPtr(ST(1), (void **) &tmp, SWIGTYPE_p_SWBuf, 0) == -1) { + _v = 0; + }else { + _v = 1; + } + } + if (_v) { + if (items <= 2) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_SWBuf_append__SWIG_1); return; + } + { + _v = SvIOK(ST(2)) ? 1 : 0; + } + if (_v) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_SWBuf_append__SWIG_1); return; + } + } + } + } + if (items == 2) { + int _v; + { + void *tmp; + if (SWIG_ConvertPtr(ST(0), (void **) &tmp, SWIGTYPE_p_SWBuf, 0) == -1) { + _v = 0; + }else { + _v = 1; + } + } + if (_v) { + { + _v = SvPOK(ST(1)) ? 1 : 0; + } + if (_v) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_SWBuf_append__SWIG_2); return; + } + } + } + if ((items >= 2) && (items <= 3)) { + int _v; + { + void *tmp; + if (SWIG_ConvertPtr(ST(0), (void **) &tmp, SWIGTYPE_p_SWBuf, 0) == -1) { + _v = 0; + }else { + _v = 1; + } + } + if (_v) { + { + _v = SvPOK(ST(1)) ? 1 : 0; + } + if (_v) { + if (items <= 2) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_SWBuf_append__SWIG_0); return; + } + { + _v = SvIOK(ST(2)) ? 1 : 0; + } + if (_v) { + (*PL_markstack_ptr++);SWIG_CALLXS(_wrap_SWBuf_append__SWIG_0); return; + } + } + } + } + + croak("No matching function for overloaded 'SWBuf_append'"); + XSRETURN(0); +} + + +XS(_wrap_SWBuf_appendFormatted) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWBuf *arg1 = (SWBuf *) 0 ; + char *arg2 ; + void *arg3 = 0 ; + int argvi = 0; + dXSARGS; + + if (items < 2) { + SWIG_croak("Usage: SWBuf_appendFormatted(self,format,...);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWBuf,0) < 0) { + SWIG_croak("Type error in argument 1 of SWBuf_appendFormatted. Expected _p_SWBuf"); + } + } + if (!SvOK((SV*) ST(1))) arg2 = 0; + else arg2 = (char *) SvPV(ST(1), PL_na); + (arg1)->appendFormatted((char const *)arg2,arg3); + + + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWBuf_getRawData) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWBuf *arg1 = (SWBuf *) 0 ; + char *result; + int argvi = 0; + dXSARGS; + + if ((items < 1) || (items > 1)) { + SWIG_croak("Usage: SWBuf_getRawData(self);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWBuf,0) < 0) { + SWIG_croak("Type error in argument 1 of SWBuf_getRawData. Expected _p_SWBuf"); + } + } + result = (char *)(arg1)->getRawData(); + + ST(argvi) = sv_newmortal(); + if (result) { + sv_setpv((SV*)ST(argvi++), (char *) result); + }else { + sv_setsv((SV*)ST(argvi++), &PL_sv_undef); + } + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + +XS(_wrap_SWBuf_compare) { + char _swigmsg[SWIG_MAX_ERRMSG] = ""; + const char *_swigerr = _swigmsg; + { + SWBuf *arg1 = (SWBuf *) 0 ; + SWBuf *arg2 = 0 ; + int result; + int argvi = 0; + dXSARGS; + + if ((items < 2) || (items > 2)) { + SWIG_croak("Usage: SWBuf_compare(self,other);"); + } + { + if (SWIG_ConvertPtr(ST(0), (void **) &arg1, SWIGTYPE_p_SWBuf,0) < 0) { + SWIG_croak("Type error in argument 1 of SWBuf_compare. Expected _p_SWBuf"); + } + } + { + if (SWIG_ConvertPtr(ST(1), (void **) &arg2, SWIGTYPE_p_SWBuf,0) < 0) { + SWIG_croak("Type error in argument 2 of SWBuf_compare. Expected _p_SWBuf"); + } + } + result = (int)((SWBuf const *)arg1)->compare((SWBuf const &)*arg2); + + ST(argvi) = sv_newmortal(); + sv_setiv(ST(argvi++), (IV) result); + XSRETURN(argvi); + fail: + (void) _swigerr; + } + croak(_swigerr); +} + + + +/* -------- TYPE CONVERSION AND EQUIVALENCE RULES (BEGIN) -------- */ + +static void *_p_zComTo_p_SWCom(void *x) { + return (void *)((SWCom *) ((zCom *) x)); +} +static void *_p_RawComTo_p_SWCom(void *x) { + return (void *)((SWCom *) ((RawCom *) x)); +} +static void *_p_TreeKeyIdxTo_p_TreeKey(void *x) { + return (void *)((TreeKey *) ((TreeKeyIdx *) x)); +} +static void *_p_RawTextTo_p_SWText(void *x) { + return (void *)((SWText *) ((RawText *) x)); +} +static void *_p_zTextTo_p_SWText(void *x) { + return (void *)((SWText *) ((zText *) x)); +} +static void *_p_ListKeyTo_p_SWKey(void *x) { + return (void *)((SWKey *) ((ListKey *) x)); +} +static void *_p_TreeKeyIdxTo_p_SWKey(void *x) { + return (void *)((SWKey *) (TreeKey *) ((TreeKeyIdx *) x)); +} +static void *_p_VerseKeyTo_p_SWKey(void *x) { + return (void *)((SWKey *) ((VerseKey *) x)); +} +static void *_p_TreeKeyTo_p_SWKey(void *x) { + return (void *)((SWKey *) ((TreeKey *) x)); +} +static void *_p_LZSSCompressTo_p_SWCompress(void *x) { + return (void *)((SWCompress *) ((LZSSCompress *) x)); +} +static void *_p_ZipCompressTo_p_SWCompress(void *x) { + return (void *)((SWCompress *) ((ZipCompress *) x)); +} +static void *_p_SWComTo_p_SWModule(void *x) { + return (void *)((SWModule *) ((SWCom *) x)); +} +static void *_p_zLDTo_p_SWModule(void *x) { + return (void *)((SWModule *) (SWLD *) ((zLD *) x)); +} +static void *_p_SWTextTo_p_SWModule(void *x) { + return (void *)((SWModule *) ((SWText *) x)); +} +static void *_p_SWGenBookTo_p_SWModule(void *x) { + return (void *)((SWModule *) ((SWGenBook *) x)); +} +static void *_p_RawGenBookTo_p_SWModule(void *x) { + return (void *)((SWModule *) (SWGenBook *) ((RawGenBook *) x)); +} +static void *_p_RawTextTo_p_SWModule(void *x) { + return (void *)((SWModule *) (SWText *) ((RawText *) x)); +} +static void *_p_zComTo_p_SWModule(void *x) { + return (void *)((SWModule *) (SWCom *) ((zCom *) x)); +} +static void *_p_RawLD4To_p_SWModule(void *x) { + return (void *)((SWModule *) (SWLD *) ((RawLD4 *) x)); +} +static void *_p_zTextTo_p_SWModule(void *x) { + return (void *)((SWModule *) (SWText *) ((zText *) x)); +} +static void *_p_RawComTo_p_SWModule(void *x) { + return (void *)((SWModule *) (SWCom *) ((RawCom *) x)); +} +static void *_p_SWLDTo_p_SWModule(void *x) { + return (void *)((SWModule *) ((SWLD *) x)); +} +static void *_p_RawLDTo_p_SWModule(void *x) { + return (void *)((SWModule *) (SWLD *) ((RawLD *) x)); +} +static void *_p_RawGenBookTo_p_SWGenBook(void *x) { + return (void *)((SWGenBook *) ((RawGenBook *) x)); +} +static void *_p_zLDTo_p_SWLD(void *x) { + return (void *)((SWLD *) ((zLD *) x)); +} +static void *_p_RawLD4To_p_SWLD(void *x) { + return (void *)((SWLD *) ((RawLD4 *) x)); +} +static void *_p_RawLDTo_p_SWLD(void *x) { + return (void *)((SWLD *) ((RawLD *) x)); +} +static swig_type_info _swigt__p_SWLocale[] = {{"_p_SWLocale", 0, "SWLocale *", 0},{"_p_SWLocale"},{0}}; +static swig_type_info _swigt__p_SWMgr[] = {{"Sword::SWMgr", 0, "SWMgr *", 0},{"Sword::SWMgr"},{0}}; +static swig_type_info _swigt__p_SWCom[] = {{"Sword::SWCom", 0, "SWCom *", 0},{"Sword::zCom", _p_zComTo_p_SWCom},{"Sword::SWCom"},{"Sword::RawCom", _p_RawComTo_p_SWCom},{0}}; +static swig_type_info _swigt__p_RawLD4[] = {{"Sword::RawLD4", 0, "RawLD4 *", 0},{"Sword::RawLD4"},{0}}; +static swig_type_info _swigt__p_ListKey[] = {{"Sword::ListKey", 0, "ListKey *", 0},{"Sword::ListKey"},{0}}; +static swig_type_info _swigt__p_SWKey[] = {{"Sword::SWKey", 0, "SWKey *", 0},{"Sword::SWKey"},{"Sword::ListKey", _p_ListKeyTo_p_SWKey},{"Sword::TreeKeyIdx", _p_TreeKeyIdxTo_p_SWKey},{"Sword::VerseKey", _p_VerseKeyTo_p_SWKey},{"Sword::TreeKey", _p_TreeKeyTo_p_SWKey},{0}}; +static swig_type_info _swigt__p_ConfigEntMap[] = {{"_p_ConfigEntMap", 0, "ConfigEntMap *", 0},{"_p_ConfigEntMap"},{0}}; +static swig_type_info _swigt__p_p_char[] = {{"_p_p_char", 0, "char **", 0},{"_p_p_char"},{0}}; +static swig_type_info _swigt__p_RawLD[] = {{"Sword::RawLD", 0, "RawLD *", 0},{"Sword::RawLD"},{0}}; +static swig_type_info _swigt__p_char[] = {{"_p_char", 0, "char *", 0},{"_p_char"},{0}}; +static swig_type_info _swigt__p_TreeKey[] = {{"Sword::TreeKey", 0, "TreeKey *", 0},{"Sword::TreeKeyIdx", _p_TreeKeyIdxTo_p_TreeKey},{"Sword::TreeKey"},{0}}; +static swig_type_info _swigt__p_StringList[] = {{"_p_StringList", 0, "StringList *", 0},{"_p_StringList"},{0}}; +static swig_type_info _swigt__p_bool[] = {{"_p_bool", 0, "bool *", 0},{"_p_bool"},{0}}; +static swig_type_info _swigt__p_SWFilterMgr[] = {{"Sword::SWFilterMgr", 0, "SWFilterMgr *", 0},{"Sword::SWFilterMgr"},{0}}; +static swig_type_info _swigt__p_SWLD[] = {{"Sword::SWLD", 0, "SWLD *", 0},{"Sword::zLD", _p_zLDTo_p_SWLD},{"Sword::SWLD"},{"Sword::RawLD4", _p_RawLD4To_p_SWLD},{"Sword::RawLD", _p_RawLDTo_p_SWLD},{0}}; +static swig_type_info _swigt__p_SWTextDirection[] = {{"_p_SWTextDirection", 0, "SWTextDirection *", 0},{"_p_SWTextDirection"},{0}}; +static swig_type_info _swigt__p_RawText[] = {{"Sword::RawText", 0, "RawText *", 0},{"Sword::RawText"},{0}}; +static swig_type_info _swigt__p_f_char_p_void__void[] = {{"_p_f_char_p_void__void", 0, "void (*)(char,void *)", 0},{"_p_f_char_p_void__void"},{0}}; +static swig_type_info _swigt__p_VerseKey[] = {{"Sword::VerseKey", 0, "VerseKey *", 0},{"Sword::VerseKey"},{0}}; +static swig_type_info _swigt__p_SWBuf[] = {{"Sword::SWBuf", 0, "SWBuf *", 0},{"Sword::SWBuf"},{0}}; +static swig_type_info _swigt__p_ModMap[] = {{"_p_ModMap", 0, "ModMap *", 0},{"_p_ModMap"},{0}}; +static swig_type_info _swigt__p_zCom[] = {{"Sword::zCom", 0, "zCom *", 0},{"Sword::zCom"},{0}}; +static swig_type_info _swigt__p_SectionMap[] = {{"_p_SectionMap", 0, "SectionMap *", 0},{"_p_SectionMap"},{0}}; +static swig_type_info _swigt__p_SWDisplay[] = {{"_p_SWDisplay", 0, "SWDisplay *", 0},{"_p_SWDisplay"},{0}}; +static swig_type_info _swigt__p_AttributeTypeList[] = {{"_p_AttributeTypeList", 0, "AttributeTypeList *", 0},{"_p_AttributeTypeList"},{0}}; +static swig_type_info _swigt__p_SWText[] = {{"Sword::SWText", 0, "SWText *", 0},{"Sword::SWText"},{"Sword::RawText", _p_RawTextTo_p_SWText},{"Sword::zText", _p_zTextTo_p_SWText},{0}}; +static swig_type_info _swigt__p_std__listTSWBuf_t[] = {{"_p_std__listTSWBuf_t", 0, "std::list *", 0},{"_p_std__listTSWBuf_t"},{0}}; +static swig_type_info _swigt__p_TreeKeyIdx[] = {{"Sword::TreeKeyIdx", 0, "TreeKeyIdx *", 0},{"Sword::TreeKeyIdx"},{0}}; +static swig_type_info _swigt__p_SWCompress[] = {{"Sword::SWCompress", 0, "SWCompress *", 0},{"Sword::SWCompress"},{"Sword::LZSSCompress", _p_LZSSCompressTo_p_SWCompress},{"Sword::ZipCompress", _p_ZipCompressTo_p_SWCompress},{0}}; +static swig_type_info _swigt__p_LZSSCompress[] = {{"Sword::LZSSCompress", 0, "LZSSCompress *", 0},{"Sword::LZSSCompress"},{0}}; +static swig_type_info _swigt__p_ZipCompress[] = {{"Sword::ZipCompress", 0, "ZipCompress *", 0},{"Sword::ZipCompress"},{0}}; +static swig_type_info _swigt__p_SW_POSITION[] = {{"Sword::SW_POSITION", 0, "SW_POSITION *", 0},{"Sword::SW_POSITION"},{0}}; +static swig_type_info _swigt__p_SWModule[] = {{"Sword::SWModule", 0, "SWModule *", 0},{"Sword::SWModule"},{"Sword::SWGenBook", _p_SWGenBookTo_p_SWModule},{"Sword::RawGenBook", _p_RawGenBookTo_p_SWModule},{"Sword::SWText", _p_SWTextTo_p_SWModule},{"Sword::RawText", _p_RawTextTo_p_SWModule},{"Sword::zLD", _p_zLDTo_p_SWModule},{"Sword::zCom", _p_zComTo_p_SWModule},{"Sword::zText", _p_zTextTo_p_SWModule},{"Sword::RawLD4", _p_RawLD4To_p_SWModule},{"Sword::SWLD", _p_SWLDTo_p_SWModule},{"Sword::RawLD", _p_RawLDTo_p_SWModule},{"Sword::SWCom", _p_SWComTo_p_SWModule},{"Sword::RawCom", _p_RawComTo_p_SWModule},{0}}; +static swig_type_info _swigt__p_zLD[] = {{"Sword::zLD", 0, "zLD *", 0},{"Sword::zLD"},{0}}; +static swig_type_info _swigt__p_SWGenBook[] = {{"Sword::SWGenBook", 0, "SWGenBook *", 0},{"Sword::SWGenBook"},{"Sword::RawGenBook", _p_RawGenBookTo_p_SWGenBook},{0}}; +static swig_type_info _swigt__p_RawCom[] = {{"Sword::RawCom", 0, "RawCom *", 0},{"Sword::RawCom"},{0}}; +static swig_type_info _swigt__p_RawGenBook[] = {{"Sword::RawGenBook", 0, "RawGenBook *", 0},{"Sword::RawGenBook"},{0}}; +static swig_type_info _swigt__p_SWConfig[] = {{"Sword::SWConfig", 0, "SWConfig *", 0},{"Sword::SWConfig"},{0}}; +static swig_type_info _swigt__p_LocaleMgr[] = {{"Sword::LocaleMgr", 0, "LocaleMgr *", 0},{"Sword::LocaleMgr"},{0}}; +static swig_type_info _swigt__p_int[] = {{"_p_int", 0, "int *", 0},{"_p_int"},{0}}; +static swig_type_info _swigt__p_SWTextMarkup[] = {{"_p_SWTextMarkup", 0, "SWTextMarkup *", 0},{"_p_SWTextMarkup"},{0}}; +static swig_type_info _swigt__p_zText[] = {{"Sword::zText", 0, "zText *", 0},{"Sword::zText"},{0}}; +static swig_type_info _swigt__p_SWTextEncoding[] = {{"_p_SWTextEncoding", 0, "SWTextEncoding *", 0},{"_p_SWTextEncoding"},{0}}; +static swig_type_info _swigt__p_unsigned_long[] = {{"_p_unsigned_long", 0, "unsigned long *", 0},{"_p_unsigned_long"},{0}}; + +static swig_type_info *swig_types_initial[] = { +_swigt__p_SWLocale, +_swigt__p_SWMgr, +_swigt__p_SWCom, +_swigt__p_RawLD4, +_swigt__p_ListKey, +_swigt__p_SWKey, +_swigt__p_ConfigEntMap, +_swigt__p_p_char, +_swigt__p_RawLD, +_swigt__p_char, +_swigt__p_TreeKey, +_swigt__p_StringList, +_swigt__p_bool, +_swigt__p_SWFilterMgr, +_swigt__p_SWLD, +_swigt__p_SWTextDirection, +_swigt__p_RawText, +_swigt__p_f_char_p_void__void, +_swigt__p_VerseKey, +_swigt__p_SWBuf, +_swigt__p_ModMap, +_swigt__p_zCom, +_swigt__p_SectionMap, +_swigt__p_SWDisplay, +_swigt__p_AttributeTypeList, +_swigt__p_SWText, +_swigt__p_std__listTSWBuf_t, +_swigt__p_TreeKeyIdx, +_swigt__p_SWCompress, +_swigt__p_LZSSCompress, +_swigt__p_ZipCompress, +_swigt__p_SW_POSITION, +_swigt__p_SWModule, +_swigt__p_zLD, +_swigt__p_SWGenBook, +_swigt__p_RawCom, +_swigt__p_RawGenBook, +_swigt__p_SWConfig, +_swigt__p_LocaleMgr, +_swigt__p_int, +_swigt__p_SWTextMarkup, +_swigt__p_zText, +_swigt__p_SWTextEncoding, +_swigt__p_unsigned_long, +0 +}; + + +/* -------- TYPE CONVERSION AND EQUIVALENCE RULES (END) -------- */ + +static swig_constant_info swig_constants[] = { +{0} +}; +#ifdef __cplusplus +} +#endif +static swig_variable_info swig_variables[] = { +{0} +}; +static swig_command_info swig_commands[] = { +{"Swordc::SWConfig_filename_set", _wrap_SWConfig_filename_set}, +{"Swordc::SWConfig_filename_get", _wrap_SWConfig_filename_get}, +{"Swordc::SWConfig_Sections_set", _wrap_SWConfig_Sections_set}, +{"Swordc::SWConfig_Sections_get", _wrap_SWConfig_Sections_get}, +{"Swordc::new_SWConfig", _wrap_new_SWConfig}, +{"Swordc::delete_SWConfig", _wrap_delete_SWConfig}, +{"Swordc::SWConfig_Load", _wrap_SWConfig_Load}, +{"Swordc::SWConfig_Save", _wrap_SWConfig_Save}, +{"Swordc::SWConfig_set", _wrap_SWConfig_set}, +{"Swordc::SWConfig_get", _wrap_SWConfig_get}, +{"Swordc::SWMgr_findConfig", _wrap_SWMgr_findConfig}, +{"Swordc::SWMgr_config_set", _wrap_SWMgr_config_set}, +{"Swordc::SWMgr_config_get", _wrap_SWMgr_config_get}, +{"Swordc::SWMgr_sysconfig_set", _wrap_SWMgr_sysconfig_set}, +{"Swordc::SWMgr_sysconfig_get", _wrap_SWMgr_sysconfig_get}, +{"Swordc::SWMgr_Modules_set", _wrap_SWMgr_Modules_set}, +{"Swordc::SWMgr_Modules_get", _wrap_SWMgr_Modules_get}, +{"Swordc::SWMgr_prefixPath_set", _wrap_SWMgr_prefixPath_set}, +{"Swordc::SWMgr_prefixPath_get", _wrap_SWMgr_prefixPath_get}, +{"Swordc::SWMgr_configPath_set", _wrap_SWMgr_configPath_set}, +{"Swordc::SWMgr_configPath_get", _wrap_SWMgr_configPath_get}, +{"Swordc::new_SWMgr", _wrap_new_SWMgr}, +{"Swordc::delete_SWMgr", _wrap_delete_SWMgr}, +{"Swordc::SWMgr_Load", _wrap_SWMgr_Load}, +{"Swordc::SWMgr_setGlobalOption", _wrap_SWMgr_setGlobalOption}, +{"Swordc::SWMgr_getGlobalOption", _wrap_SWMgr_getGlobalOption}, +{"Swordc::SWMgr_getGlobalOptionTip", _wrap_SWMgr_getGlobalOptionTip}, +{"Swordc::SWMgr_getGlobalOptions", _wrap_SWMgr_getGlobalOptions}, +{"Swordc::SWMgr_getGlobalOptionValues", _wrap_SWMgr_getGlobalOptionValues}, +{"Swordc::SWMgr_setCipherKey", _wrap_SWMgr_setCipherKey}, +{"Swordc::SWMgr_getModule", _wrap_SWMgr_getModule}, +{"Swordc::SWMgr_InstallScan", _wrap_SWMgr_InstallScan}, +{"Swordc::SWMgr_moduleCount", _wrap_SWMgr_moduleCount}, +{"Swordc::SWMgr_getModuleAt", _wrap_SWMgr_getModuleAt}, +{"Swordc::SWModule_terminateSearch_set", _wrap_SWModule_terminateSearch_set}, +{"Swordc::SWModule_terminateSearch_get", _wrap_SWModule_terminateSearch_get}, +{"Swordc::new_SWModule", _wrap_new_SWModule}, +{"Swordc::SWModule_Error", _wrap_SWModule_Error}, +{"Swordc::SWModule_isUnicode", _wrap_SWModule_isUnicode}, +{"Swordc::SWModule_getConfig", _wrap_SWModule_getConfig}, +{"Swordc::SWModule_getConfigEntry", _wrap_SWModule_getConfigEntry}, +{"Swordc::SWModule_SetKey", _wrap_SWModule_SetKey}, +{"Swordc::SWModule_Key", _wrap_SWModule_Key}, +{"Swordc::SWModule_CreateKey", _wrap_SWModule_CreateKey}, +{"Swordc::SWModule_KeyText", _wrap_SWModule_KeyText}, +{"Swordc::SWModule_Display", _wrap_SWModule_Display}, +{"Swordc::SWModule_nullPercent", _wrap_SWModule_nullPercent}, +{"Swordc::SWModule_Search", _wrap_SWModule_Search}, +{"Swordc::SWModule_createSearchFramework", _wrap_SWModule_createSearchFramework}, +{"Swordc::SWModule_hasSearchFramework", _wrap_SWModule_hasSearchFramework}, +{"Swordc::SWModule_isSearchOptimallySupported", _wrap_SWModule_isSearchOptimallySupported}, +{"Swordc::SWModule_next", _wrap_SWModule_next}, +{"Swordc::SWModule_prev", _wrap_SWModule_prev}, +{"Swordc::SWModule_inc", _wrap_SWModule_inc}, +{"Swordc::SWModule_dec", _wrap_SWModule_dec}, +{"Swordc::SWModule_setPosition", _wrap_SWModule_setPosition}, +{"Swordc::SWModule_top", _wrap_SWModule_top}, +{"Swordc::SWModule_bottom", _wrap_SWModule_bottom}, +{"Swordc::SWModule_text", _wrap_SWModule_text}, +{"Swordc::SWModule_StripText", _wrap_SWModule_StripText}, +{"Swordc::SWModule_getRawEntry", _wrap_SWModule_getRawEntry}, +{"Swordc::SWModule_setSkipConsecutiveLinks", _wrap_SWModule_setSkipConsecutiveLinks}, +{"Swordc::SWModule_getSkipConsecutiveLinks", _wrap_SWModule_getSkipConsecutiveLinks}, +{"Swordc::SWModule_getEntryAttributes", _wrap_SWModule_getEntryAttributes}, +{"Swordc::SWModule_processEntryAttributes", _wrap_SWModule_processEntryAttributes}, +{"Swordc::SWModule_isProcessEntryAttributes", _wrap_SWModule_isProcessEntryAttributes}, +{"Swordc::SWModule_Name", _wrap_SWModule_Name}, +{"Swordc::SWModule_Description", _wrap_SWModule_Description}, +{"Swordc::SWModule_Type", _wrap_SWModule_Type}, +{"Swordc::SWModule_Direction", _wrap_SWModule_Direction}, +{"Swordc::SWModule_Encoding", _wrap_SWModule_Encoding}, +{"Swordc::SWModule_Markup", _wrap_SWModule_Markup}, +{"Swordc::SWModule_Lang", _wrap_SWModule_Lang}, +{"Swordc::SWModule_isWritable", _wrap_SWModule_isWritable}, +{"Swordc::SWModule_createModule", _wrap_SWModule_createModule}, +{"Swordc::SWModule_setEntry", _wrap_SWModule_setEntry}, +{"Swordc::SWModule_deleteEntry", _wrap_SWModule_deleteEntry}, +{"Swordc::SWModule_write", _wrap_SWModule_write}, +{"Swordc::SWModule_writeLink", _wrap_SWModule_writeLink}, +{"Swordc::delete_SWModule", _wrap_delete_SWModule}, +{"Swordc::new_SW_POSITION", _wrap_new_SW_POSITION}, +{"Swordc::delete_SW_POSITION", _wrap_delete_SW_POSITION}, +{"Swordc::new_SWKey", _wrap_new_SWKey}, +{"Swordc::SWKey_clone", _wrap_SWKey_clone}, +{"Swordc::delete_SWKey", _wrap_delete_SWKey}, +{"Swordc::SWKey_Persist", _wrap_SWKey_Persist}, +{"Swordc::SWKey_setPersist", _wrap_SWKey_setPersist}, +{"Swordc::SWKey_Error", _wrap_SWKey_Error}, +{"Swordc::SWKey_setText", _wrap_SWKey_setText}, +{"Swordc::SWKey_getText", _wrap_SWKey_getText}, +{"Swordc::SWKey_getShortText", _wrap_SWKey_getShortText}, +{"Swordc::SWKey_compare", _wrap_SWKey_compare}, +{"Swordc::SWKey_equals", _wrap_SWKey_equals}, +{"Swordc::SWKey_decrement", _wrap_SWKey_decrement}, +{"Swordc::SWKey_increment", _wrap_SWKey_increment}, +{"Swordc::SWKey_Traversable", _wrap_SWKey_Traversable}, +{"Swordc::SWKey_Index", _wrap_SWKey_Index}, +{"Swordc::SWKey_next", _wrap_SWKey_next}, +{"Swordc::SWKey_prev", _wrap_SWKey_prev}, +{"Swordc::SWKey_setKey", _wrap_SWKey_setKey}, +{"Swordc::SWKey_toVerseKey", _wrap_SWKey_toVerseKey}, +{"Swordc::new_VerseKey", _wrap_new_VerseKey}, +{"Swordc::delete_VerseKey", _wrap_delete_VerseKey}, +{"Swordc::VerseKey_clone", _wrap_VerseKey_clone}, +{"Swordc::VerseKey_LowerBound", _wrap_VerseKey_LowerBound}, +{"Swordc::VerseKey_UpperBound", _wrap_VerseKey_UpperBound}, +{"Swordc::VerseKey_ClearBounds", _wrap_VerseKey_ClearBounds}, +{"Swordc::VerseKey_ParseVerseList", _wrap_VerseKey_ParseVerseList}, +{"Swordc::VerseKey_setText", _wrap_VerseKey_setText}, +{"Swordc::VerseKey_getText", _wrap_VerseKey_getText}, +{"Swordc::VerseKey_getRangeText", _wrap_VerseKey_getRangeText}, +{"Swordc::VerseKey_getShortText", _wrap_VerseKey_getShortText}, +{"Swordc::VerseKey_Traversable", _wrap_VerseKey_Traversable}, +{"Swordc::VerseKey_decrement", _wrap_VerseKey_decrement}, +{"Swordc::VerseKey_increment", _wrap_VerseKey_increment}, +{"Swordc::VerseKey_getBookName", _wrap_VerseKey_getBookName}, +{"Swordc::VerseKey_getBookAbbrev", _wrap_VerseKey_getBookAbbrev}, +{"Swordc::VerseKey_Testament", _wrap_VerseKey_Testament}, +{"Swordc::VerseKey_Book", _wrap_VerseKey_Book}, +{"Swordc::VerseKey_Chapter", _wrap_VerseKey_Chapter}, +{"Swordc::VerseKey_Verse", _wrap_VerseKey_Verse}, +{"Swordc::VerseKey_Normalize", _wrap_VerseKey_Normalize}, +{"Swordc::VerseKey_AutoNormalize", _wrap_VerseKey_AutoNormalize}, +{"Swordc::VerseKey_Headings", _wrap_VerseKey_Headings}, +{"Swordc::VerseKey_getOSISRef", _wrap_VerseKey_getOSISRef}, +{"Swordc::VerseKey_compare", _wrap_VerseKey_compare}, +{"Swordc::VerseKey__compare", _wrap_VerseKey__compare}, +{"Swordc::VerseKey_setLocale", _wrap_VerseKey_setLocale}, +{"Swordc::VerseKey_getLocale", _wrap_VerseKey_getLocale}, +{"Swordc::VerseKey_bookCount", _wrap_VerseKey_bookCount}, +{"Swordc::VerseKey_bookName", _wrap_VerseKey_bookName}, +{"Swordc::VerseKey_chapterCount", _wrap_VerseKey_chapterCount}, +{"Swordc::VerseKey_verseCount", _wrap_VerseKey_verseCount}, +{"Swordc::new_ListKey", _wrap_new_ListKey}, +{"Swordc::delete_ListKey", _wrap_delete_ListKey}, +{"Swordc::ListKey_clone", _wrap_ListKey_clone}, +{"Swordc::ListKey_ClearList", _wrap_ListKey_ClearList}, +{"Swordc::ListKey_Count", _wrap_ListKey_Count}, +{"Swordc::ListKey_Remove", _wrap_ListKey_Remove}, +{"Swordc::ListKey_SetToElement", _wrap_ListKey_SetToElement}, +{"Swordc::ListKey_GetElement", _wrap_ListKey_GetElement}, +{"Swordc::ListKey_add", _wrap_ListKey_add}, +{"Swordc::ListKey_copyFrom", _wrap_ListKey_copyFrom}, +{"Swordc::ListKey_setPosition", _wrap_ListKey_setPosition}, +{"Swordc::ListKey_decrement", _wrap_ListKey_decrement}, +{"Swordc::ListKey_increment", _wrap_ListKey_increment}, +{"Swordc::ListKey_Traversable", _wrap_ListKey_Traversable}, +{"Swordc::ListKey_Index", _wrap_ListKey_Index}, +{"Swordc::TreeKey_getLocalName", _wrap_TreeKey_getLocalName}, +{"Swordc::TreeKey_setLocalName", _wrap_TreeKey_setLocalName}, +{"Swordc::TreeKey_getUserData", _wrap_TreeKey_getUserData}, +{"Swordc::TreeKey_setUserData", _wrap_TreeKey_setUserData}, +{"Swordc::TreeKey_getFullName", _wrap_TreeKey_getFullName}, +{"Swordc::TreeKey_root", _wrap_TreeKey_root}, +{"Swordc::TreeKey_parent", _wrap_TreeKey_parent}, +{"Swordc::TreeKey_firstChild", _wrap_TreeKey_firstChild}, +{"Swordc::TreeKey_nextSibling", _wrap_TreeKey_nextSibling}, +{"Swordc::TreeKey_previousSibling", _wrap_TreeKey_previousSibling}, +{"Swordc::TreeKey_hasChildren", _wrap_TreeKey_hasChildren}, +{"Swordc::TreeKey_append", _wrap_TreeKey_append}, +{"Swordc::TreeKey_appendChild", _wrap_TreeKey_appendChild}, +{"Swordc::TreeKey_insertBefore", _wrap_TreeKey_insertBefore}, +{"Swordc::TreeKey_remove", _wrap_TreeKey_remove}, +{"Swordc::TreeKey_setOffset", _wrap_TreeKey_setOffset}, +{"Swordc::TreeKey_getOffset", _wrap_TreeKey_getOffset}, +{"Swordc::TreeKey_setPosition", _wrap_TreeKey_setPosition}, +{"Swordc::TreeKey_Traversable", _wrap_TreeKey_Traversable}, +{"Swordc::TreeKey_Index", _wrap_TreeKey_Index}, +{"Swordc::delete_TreeKeyIdx", _wrap_delete_TreeKeyIdx}, +{"Swordc::TreeKeyIdx_save", _wrap_TreeKeyIdx_save}, +{"Swordc::TreeKeyIdx_copyFrom", _wrap_TreeKeyIdx_copyFrom}, +{"Swordc::TreeKeyIdx__compare", _wrap_TreeKeyIdx__compare}, +{"Swordc::TreeKeyIdx_create", _wrap_TreeKeyIdx_create}, +{"Swordc::new_LocaleMgr", _wrap_new_LocaleMgr}, +{"Swordc::delete_LocaleMgr", _wrap_delete_LocaleMgr}, +{"Swordc::LocaleMgr_getLocale", _wrap_LocaleMgr_getLocale}, +{"Swordc::LocaleMgr_getAvailableLocales", _wrap_LocaleMgr_getAvailableLocales}, +{"Swordc::LocaleMgr_getDefaultLocaleName", _wrap_LocaleMgr_getDefaultLocaleName}, +{"Swordc::LocaleMgr_setDefaultLocaleName", _wrap_LocaleMgr_setDefaultLocaleName}, +{"Swordc::LocaleMgr_getSystemLocaleMgr", _wrap_LocaleMgr_getSystemLocaleMgr}, +{"Swordc::new_SWText", _wrap_new_SWText}, +{"Swordc::delete_SWText", _wrap_delete_SWText}, +{"Swordc::new_RawText", _wrap_new_RawText}, +{"Swordc::RawText_createModule", _wrap_RawText_createModule}, +{"Swordc::delete_RawText", _wrap_delete_RawText}, +{"Swordc::new_zText", _wrap_new_zText}, +{"Swordc::delete_zText", _wrap_delete_zText}, +{"Swordc::zText_createModule", _wrap_zText_createModule}, +{"Swordc::new_RawCom", _wrap_new_RawCom}, +{"Swordc::delete_RawCom", _wrap_delete_RawCom}, +{"Swordc::RawCom_createModule", _wrap_RawCom_createModule}, +{"Swordc::new_zCom", _wrap_new_zCom}, +{"Swordc::delete_zCom", _wrap_delete_zCom}, +{"Swordc::zCom_createModule", _wrap_zCom_createModule}, +{"Swordc::new_RawGenBook", _wrap_new_RawGenBook}, +{"Swordc::delete_RawGenBook", _wrap_delete_RawGenBook}, +{"Swordc::RawGenBook_createModule", _wrap_RawGenBook_createModule}, +{"Swordc::RawGenBook_getTreeKey", _wrap_RawGenBook_getTreeKey}, +{"Swordc::new_SWLD", _wrap_new_SWLD}, +{"Swordc::delete_SWLD", _wrap_delete_SWLD}, +{"Swordc::new_RawLD", _wrap_new_RawLD}, +{"Swordc::delete_RawLD", _wrap_delete_RawLD}, +{"Swordc::RawLD_createModule", _wrap_RawLD_createModule}, +{"Swordc::new_RawLD4", _wrap_new_RawLD4}, +{"Swordc::delete_RawLD4", _wrap_delete_RawLD4}, +{"Swordc::RawLD4_createModule", _wrap_RawLD4_createModule}, +{"Swordc::new_zLD", _wrap_new_zLD}, +{"Swordc::delete_zLD", _wrap_delete_zLD}, +{"Swordc::zLD_createModule", _wrap_zLD_createModule}, +{"Swordc::new_SWCompress", _wrap_new_SWCompress}, +{"Swordc::delete_SWCompress", _wrap_delete_SWCompress}, +{"Swordc::SWCompress_Buf", _wrap_SWCompress_Buf}, +{"Swordc::SWCompress_zBuf", _wrap_SWCompress_zBuf}, +{"Swordc::SWCompress_GetChars", _wrap_SWCompress_GetChars}, +{"Swordc::SWCompress_SendChars", _wrap_SWCompress_SendChars}, +{"Swordc::SWCompress_Encode", _wrap_SWCompress_Encode}, +{"Swordc::SWCompress_Decode", _wrap_SWCompress_Decode}, +{"Swordc::new_LZSSCompress", _wrap_new_LZSSCompress}, +{"Swordc::delete_LZSSCompress", _wrap_delete_LZSSCompress}, +{"Swordc::LZSSCompress_Encode", _wrap_LZSSCompress_Encode}, +{"Swordc::LZSSCompress_Decode", _wrap_LZSSCompress_Decode}, +{"Swordc::new_ZipCompress", _wrap_new_ZipCompress}, +{"Swordc::delete_ZipCompress", _wrap_delete_ZipCompress}, +{"Swordc::ZipCompress_Encode", _wrap_ZipCompress_Encode}, +{"Swordc::ZipCompress_Decode", _wrap_ZipCompress_Decode}, +{"Swordc::new_SWBuf", _wrap_new_SWBuf}, +{"Swordc::delete_SWBuf", _wrap_delete_SWBuf}, +{"Swordc::SWBuf_setFillByte", _wrap_SWBuf_setFillByte}, +{"Swordc::SWBuf_getFillByte", _wrap_SWBuf_getFillByte}, +{"Swordc::SWBuf_c_str", _wrap_SWBuf_c_str}, +{"Swordc::SWBuf_charAt", _wrap_SWBuf_charAt}, +{"Swordc::SWBuf_size", _wrap_SWBuf_size}, +{"Swordc::SWBuf_length", _wrap_SWBuf_length}, +{"Swordc::SWBuf_set", _wrap_SWBuf_set}, +{"Swordc::SWBuf_setSize", _wrap_SWBuf_setSize}, +{"Swordc::SWBuf_append", _wrap_SWBuf_append}, +{"Swordc::SWBuf_appendFormatted", _wrap_SWBuf_appendFormatted}, +{"Swordc::SWBuf_getRawData", _wrap_SWBuf_getRawData}, +{"Swordc::SWBuf_compare", _wrap_SWBuf_compare}, +{0,0} +}; + +#ifdef __cplusplus +extern "C" +#endif + +XS(SWIG_init) { + dXSARGS; + int i; + static int _init = 0; + if (!_init) { + for (i = 0; swig_types_initial[i]; i++) { + swig_types[i] = SWIG_TypeRegister(swig_types_initial[i]); + } + _init = 1; + } + + /* Install commands */ + for (i = 0; swig_commands[i].name; i++) { + newXS((char*) swig_commands[i].name,swig_commands[i].wrapper, (char*)__FILE__); + } + + /* Install variables */ + for (i = 0; swig_variables[i].name; i++) { + SV *sv; + sv = perl_get_sv((char*) swig_variables[i].name, TRUE | 0x2); + if (swig_variables[i].type) { + SWIG_MakePtr(sv,(void *)1, *swig_variables[i].type,0); + }else { + sv_setiv(sv,(IV) 0); + } + swig_create_magic(sv, (char *) swig_variables[i].name, swig_variables[i].set, swig_variables[i].get); + } + + /* Install constant */ + for (i = 0; swig_constants[i].type; i++) { + SV *sv; + sv = perl_get_sv((char*)swig_constants[i].name, TRUE | 0x2); + switch(swig_constants[i].type) { + case SWIG_INT: + sv_setiv(sv, (IV) swig_constants[i].lvalue); + break; + case SWIG_FLOAT: + sv_setnv(sv, (double) swig_constants[i].dvalue); + break; + case SWIG_STRING: + sv_setpv(sv, (char *) swig_constants[i].pvalue); + break; + case SWIG_POINTER: + SWIG_MakePtr(sv, swig_constants[i].pvalue, *(swig_constants[i].ptype),0); + break; + case SWIG_BINARY: + /* obj = SWIG_NewPackedObj(swig_constants[i].pvalue, swig_constants[i].lvalue, *(swig_constants[i].ptype)); */ + break; + default: + break; + } + SvREADONLY_on(sv); + } + + SWIG_TypeClientData(SWIGTYPE_p_SWConfig, (void*) "Sword::SWConfig"); + SWIG_TypeClientData(SWIGTYPE_p_SWMgr, (void*) "Sword::SWMgr"); + SWIG_TypeClientData(SWIGTYPE_p_SWModule, (void*) "Sword::SWModule"); + SWIG_TypeClientData(SWIGTYPE_p_SW_POSITION, (void*) "Sword::SW_POSITION"); + SWIG_TypeClientData(SWIGTYPE_p_SWKey, (void*) "Sword::SWKey"); + SWIG_TypeClientData(SWIGTYPE_p_VerseKey, (void*) "Sword::VerseKey"); + SWIG_TypeClientData(SWIGTYPE_p_ListKey, (void*) "Sword::ListKey"); + SWIG_TypeClientData(SWIGTYPE_p_TreeKey, (void*) "Sword::TreeKey"); + SWIG_TypeClientData(SWIGTYPE_p_TreeKeyIdx, (void*) "Sword::TreeKeyIdx"); + SWIG_TypeClientData(SWIGTYPE_p_LocaleMgr, (void*) "Sword::LocaleMgr"); + SWIG_TypeClientData(SWIGTYPE_p_SWFilterMgr, (void*) "Sword::SWFilterMgr"); + SWIG_TypeClientData(SWIGTYPE_p_SWText, (void*) "Sword::SWText"); + SWIG_TypeClientData(SWIGTYPE_p_RawText, (void*) "Sword::RawText"); + SWIG_TypeClientData(SWIGTYPE_p_zText, (void*) "Sword::zText"); + SWIG_TypeClientData(SWIGTYPE_p_SWCom, (void*) "Sword::SWCom"); + SWIG_TypeClientData(SWIGTYPE_p_RawCom, (void*) "Sword::RawCom"); + SWIG_TypeClientData(SWIGTYPE_p_zCom, (void*) "Sword::zCom"); + SWIG_TypeClientData(SWIGTYPE_p_SWGenBook, (void*) "Sword::SWGenBook"); + SWIG_TypeClientData(SWIGTYPE_p_RawGenBook, (void*) "Sword::RawGenBook"); + SWIG_TypeClientData(SWIGTYPE_p_SWLD, (void*) "Sword::SWLD"); + SWIG_TypeClientData(SWIGTYPE_p_RawLD, (void*) "Sword::RawLD"); + SWIG_TypeClientData(SWIGTYPE_p_RawLD4, (void*) "Sword::RawLD4"); + SWIG_TypeClientData(SWIGTYPE_p_zLD, (void*) "Sword::zLD"); + SWIG_TypeClientData(SWIGTYPE_p_SWCompress, (void*) "Sword::SWCompress"); + SWIG_TypeClientData(SWIGTYPE_p_LZSSCompress, (void*) "Sword::LZSSCompress"); + SWIG_TypeClientData(SWIGTYPE_p_ZipCompress, (void*) "Sword::ZipCompress"); + SWIG_TypeClientData(SWIGTYPE_p_SWBuf, (void*) "Sword::SWBuf"); + ST(0) = &PL_sv_yes; + XSRETURN(1); +} + diff --git a/bindings/swig/perl/Sword.pm b/bindings/swig/perl/Sword.pm new file mode 100644 index 0000000..1b76a95 --- /dev/null +++ b/bindings/swig/perl/Sword.pm @@ -0,0 +1,1426 @@ +# This file was automatically generated by SWIG +package Sword; +require Exporter; +require DynaLoader; +@ISA = qw(Exporter DynaLoader); +package Swordc; +bootstrap Sword; +package Sword; +@EXPORT = qw( ); + +# ---------- BASE METHODS ------------- + +package Sword; + +sub TIEHASH { + my ($classname,$obj) = @_; + return bless $obj, $classname; +} + +sub CLEAR { } + +sub FIRSTKEY { } + +sub NEXTKEY { } + +sub this { + my $ptr = shift; + return tied(%$ptr); +} + + +# ------- FUNCTION WRAPPERS -------- + +package Sword; + + +############# Class : Sword::SWConfig ############## + +package Sword::SWConfig; +@ISA = qw( Sword ); +%OWNER = (); +%BLESSEDMEMBERS = ( + filename => 'Sword::SWBuf', +); + +%ITERATORS = (); +*swig_filename_get = *Swordc::SWConfig_filename_get; +*swig_filename_set = *Swordc::SWConfig_filename_set; +*swig_Sections_get = *Swordc::SWConfig_Sections_get; +*swig_Sections_set = *Swordc::SWConfig_Sections_set; +sub new { + my $pkg = shift; + my @args = @_; + my $self = Swordc::new_SWConfig(@args); + return undef if (!defined($self)); + $OWNER{$self} = 1; + my %retval; + tie %retval, "Sword::SWConfig", $self; + return bless \%retval, $pkg; +} + +sub DESTROY { + return unless $_[0]->isa('HASH'); + my $self = tied(%{$_[0]}); + return unless defined $self; + delete $ITERATORS{$self}; + if (exists $OWNER{$self}) { + Swordc::delete_SWConfig($self); + delete $OWNER{$self}; + } +} + +*Load = *Swordc::SWConfig_Load; +*Save = *Swordc::SWConfig_Save; +*set = *Swordc::SWConfig_set; +*get = *Swordc::SWConfig_get; +sub DISOWN { + my $self = shift; + my $ptr = tied(%$self); + delete $OWNER{$ptr}; + }; + +sub ACQUIRE { + my $self = shift; + my $ptr = tied(%$self); + $OWNER{$ptr} = 1; + }; + +sub FETCH { + my ($self,$field) = @_; + my $member_func = "swig_${field}_get"; + my $val = $self->$member_func(); + if (exists $BLESSEDMEMBERS{$field}) { + return undef if (!defined($val)); + my %retval; + tie %retval,$BLESSEDMEMBERS{$field},$val; + return bless \%retval, $BLESSEDMEMBERS{$field}; + } + return $val; +} + +sub STORE { + my ($self,$field,$newval) = @_; + my $member_func = "swig_${field}_set"; + if (exists $BLESSEDMEMBERS{$field}) { + $self->$member_func(tied(%{$newval})); + } else { + $self->$member_func($newval); + } +} + + +############# Class : Sword::SWMgr ############## + +package Sword::SWMgr; +@ISA = qw( Sword ); +%OWNER = (); +%BLESSEDMEMBERS = ( + config => 'Sword::SWConfig', + sysconfig => 'Sword::SWConfig', +); + +%ITERATORS = (); +*findConfig = *Swordc::SWMgr_findConfig; +*swig_config_get = *Swordc::SWMgr_config_get; +*swig_config_set = *Swordc::SWMgr_config_set; +*swig_sysconfig_get = *Swordc::SWMgr_sysconfig_get; +*swig_sysconfig_set = *Swordc::SWMgr_sysconfig_set; +*swig_Modules_get = *Swordc::SWMgr_Modules_get; +*swig_Modules_set = *Swordc::SWMgr_Modules_set; +*swig_prefixPath_get = *Swordc::SWMgr_prefixPath_get; +*swig_prefixPath_set = *Swordc::SWMgr_prefixPath_set; +*swig_configPath_get = *Swordc::SWMgr_configPath_get; +*swig_configPath_set = *Swordc::SWMgr_configPath_set; +sub new { + my $pkg = shift; + my @args = @_; + my $self = Swordc::new_SWMgr(@args); + return undef if (!defined($self)); + $OWNER{$self} = 1; + my %retval; + tie %retval, "Sword::SWMgr", $self; + return bless \%retval, $pkg; +} + +sub DESTROY { + return unless $_[0]->isa('HASH'); + my $self = tied(%{$_[0]}); + return unless defined $self; + delete $ITERATORS{$self}; + if (exists $OWNER{$self}) { + Swordc::delete_SWMgr($self); + delete $OWNER{$self}; + } +} + +*Load = *Swordc::SWMgr_Load; +*setGlobalOption = *Swordc::SWMgr_setGlobalOption; +*getGlobalOption = *Swordc::SWMgr_getGlobalOption; +*getGlobalOptionTip = *Swordc::SWMgr_getGlobalOptionTip; +*getGlobalOptions = *Swordc::SWMgr_getGlobalOptions; +*getGlobalOptionValues = *Swordc::SWMgr_getGlobalOptionValues; +*setCipherKey = *Swordc::SWMgr_setCipherKey; +sub getModule { + my @args = @_; + my $result = Swordc::SWMgr_getModule(@args); + return undef if (!defined($result)); + my %resulthash; + tie %resulthash, ref($result), $result; + return bless \%resulthash, ref($result); +} +*InstallScan = *Swordc::SWMgr_InstallScan; +*moduleCount = *Swordc::SWMgr_moduleCount; +sub getModuleAt { + my @args = @_; + my $result = Swordc::SWMgr_getModuleAt(@args); + return undef if (!defined($result)); + my %resulthash; + tie %resulthash, ref($result), $result; + return bless \%resulthash, ref($result); +} +sub DISOWN { + my $self = shift; + my $ptr = tied(%$self); + delete $OWNER{$ptr}; + }; + +sub ACQUIRE { + my $self = shift; + my $ptr = tied(%$self); + $OWNER{$ptr} = 1; + }; + +sub FETCH { + my ($self,$field) = @_; + my $member_func = "swig_${field}_get"; + my $val = $self->$member_func(); + if (exists $BLESSEDMEMBERS{$field}) { + return undef if (!defined($val)); + my %retval; + tie %retval,$BLESSEDMEMBERS{$field},$val; + return bless \%retval, $BLESSEDMEMBERS{$field}; + } + return $val; +} + +sub STORE { + my ($self,$field,$newval) = @_; + my $member_func = "swig_${field}_set"; + if (exists $BLESSEDMEMBERS{$field}) { + $self->$member_func(tied(%{$newval})); + } else { + $self->$member_func($newval); + } +} + + +############# Class : Sword::SWModule ############## + +package Sword::SWModule; +@ISA = qw( Sword ); +%OWNER = (); +%BLESSEDMEMBERS = ( +); + +%ITERATORS = (); +*swig_terminateSearch_get = *Swordc::SWModule_terminateSearch_get; +*swig_terminateSearch_set = *Swordc::SWModule_terminateSearch_set; +sub new { + my $pkg = shift; + my @args = @_; + my $self = Swordc::new_SWModule(@args); + return undef if (!defined($self)); + $OWNER{$self} = 1; + my %retval; + tie %retval, "Sword::SWModule", $self; + return bless \%retval, $pkg; +} + +*Error = *Swordc::SWModule_Error; +*isUnicode = *Swordc::SWModule_isUnicode; +*getConfig = *Swordc::SWModule_getConfig; +*getConfigEntry = *Swordc::SWModule_getConfigEntry; +*SetKey = *Swordc::SWModule_SetKey; +sub Key { + my @args = @_; + my $result = Swordc::SWModule_Key(@args); + return undef if (!defined($result)); + my %resulthash; + tie %resulthash, ref($result), $result; + return bless \%resulthash, ref($result); +} +sub CreateKey { + my @args = @_; + my $result = Swordc::SWModule_CreateKey(@args); + return undef if (!defined($result)); + my %resulthash; + tie %resulthash, ref($result), $result; + return bless \%resulthash, ref($result); +} +*KeyText = *Swordc::SWModule_KeyText; +*Display = *Swordc::SWModule_Display; +*nullPercent = *Swordc::SWModule_nullPercent; +sub Search { + my @args = @_; + my $result = Swordc::SWModule_Search(@args); + return undef if (!defined($result)); + my %resulthash; + tie %resulthash, ref($result), $result; + return bless \%resulthash, ref($result); +} +*createSearchFramework = *Swordc::SWModule_createSearchFramework; +*hasSearchFramework = *Swordc::SWModule_hasSearchFramework; +*isSearchOptimallySupported = *Swordc::SWModule_isSearchOptimallySupported; +*next = *Swordc::SWModule_next; +*prev = *Swordc::SWModule_prev; +*inc = *Swordc::SWModule_inc; +*dec = *Swordc::SWModule_dec; +*setPosition = *Swordc::SWModule_setPosition; +*top = *Swordc::SWModule_top; +*bottom = *Swordc::SWModule_bottom; +*text = *Swordc::SWModule_text; +*StripText = *Swordc::SWModule_StripText; +*getRawEntry = *Swordc::SWModule_getRawEntry; +*setSkipConsecutiveLinks = *Swordc::SWModule_setSkipConsecutiveLinks; +*getSkipConsecutiveLinks = *Swordc::SWModule_getSkipConsecutiveLinks; +*getEntryAttributes = *Swordc::SWModule_getEntryAttributes; +*processEntryAttributes = *Swordc::SWModule_processEntryAttributes; +*isProcessEntryAttributes = *Swordc::SWModule_isProcessEntryAttributes; +*Name = *Swordc::SWModule_Name; +*Description = *Swordc::SWModule_Description; +*Type = *Swordc::SWModule_Type; +*Direction = *Swordc::SWModule_Direction; +*Encoding = *Swordc::SWModule_Encoding; +*Markup = *Swordc::SWModule_Markup; +*Lang = *Swordc::SWModule_Lang; +*isWritable = *Swordc::SWModule_isWritable; +*createModule = *Swordc::SWModule_createModule; +*setEntry = *Swordc::SWModule_setEntry; +*deleteEntry = *Swordc::SWModule_deleteEntry; +*write = *Swordc::SWModule_write; +*writeLink = *Swordc::SWModule_writeLink; +sub DESTROY { + return unless $_[0]->isa('HASH'); + my $self = tied(%{$_[0]}); + return unless defined $self; + delete $ITERATORS{$self}; + if (exists $OWNER{$self}) { + Swordc::delete_SWModule($self); + delete $OWNER{$self}; + } +} + +sub DISOWN { + my $self = shift; + my $ptr = tied(%$self); + delete $OWNER{$ptr}; + }; + +sub ACQUIRE { + my $self = shift; + my $ptr = tied(%$self); + $OWNER{$ptr} = 1; + }; + +sub FETCH { + my ($self,$field) = @_; + my $member_func = "swig_${field}_get"; + my $val = $self->$member_func(); + if (exists $BLESSEDMEMBERS{$field}) { + return undef if (!defined($val)); + my %retval; + tie %retval,$BLESSEDMEMBERS{$field},$val; + return bless \%retval, $BLESSEDMEMBERS{$field}; + } + return $val; +} + +sub STORE { + my ($self,$field,$newval) = @_; + my $member_func = "swig_${field}_set"; + if (exists $BLESSEDMEMBERS{$field}) { + $self->$member_func(tied(%{$newval})); + } else { + $self->$member_func($newval); + } +} + + +############# Class : Sword::SW_POSITION ############## + +package Sword::SW_POSITION; +@ISA = qw( Sword ); +%OWNER = (); +%ITERATORS = (); +sub new { + my $pkg = shift; + my @args = @_; + my $self = Swordc::new_SW_POSITION(@args); + return undef if (!defined($self)); + $OWNER{$self} = 1; + my %retval; + tie %retval, "Sword::SW_POSITION", $self; + return bless \%retval, $pkg; +} + +sub DESTROY { + return unless $_[0]->isa('HASH'); + my $self = tied(%{$_[0]}); + return unless defined $self; + delete $ITERATORS{$self}; + if (exists $OWNER{$self}) { + Swordc::delete_SW_POSITION($self); + delete $OWNER{$self}; + } +} + +sub DISOWN { + my $self = shift; + my $ptr = tied(%$self); + delete $OWNER{$ptr}; + }; + +sub ACQUIRE { + my $self = shift; + my $ptr = tied(%$self); + $OWNER{$ptr} = 1; + }; + + +############# Class : Sword::SWKey ############## + +package Sword::SWKey; +@ISA = qw( Sword ); +%OWNER = (); +%ITERATORS = (); +sub new { + my $pkg = shift; + my @args = @_; + my $self = Swordc::new_SWKey(@args); + return undef if (!defined($self)); + $OWNER{$self} = 1; + my %retval; + tie %retval, "Sword::SWKey", $self; + return bless \%retval, $pkg; +} + +sub clone { + my @args = @_; + my $result = Swordc::SWKey_clone(@args); + return undef if (!defined($result)); + my %resulthash; + tie %resulthash, ref($result), $result; + return bless \%resulthash, ref($result); +} +sub DESTROY { + return unless $_[0]->isa('HASH'); + my $self = tied(%{$_[0]}); + return unless defined $self; + delete $ITERATORS{$self}; + if (exists $OWNER{$self}) { + Swordc::delete_SWKey($self); + delete $OWNER{$self}; + } +} + +*Persist = *Swordc::SWKey_Persist; +*setPersist = *Swordc::SWKey_setPersist; +*Error = *Swordc::SWKey_Error; +*setText = *Swordc::SWKey_setText; +*getText = *Swordc::SWKey_getText; +*getShortText = *Swordc::SWKey_getShortText; +*compare = *Swordc::SWKey_compare; +*equals = *Swordc::SWKey_equals; +*decrement = *Swordc::SWKey_decrement; +*increment = *Swordc::SWKey_increment; +*Traversable = *Swordc::SWKey_Traversable; +*Index = *Swordc::SWKey_Index; +*next = *Swordc::SWKey_next; +*prev = *Swordc::SWKey_prev; +*setKey = *Swordc::SWKey_setKey; +sub toVerseKey { + my @args = @_; + my $result = Swordc::SWKey_toVerseKey(@args); + return undef if (!defined($result)); + my %resulthash; + tie %resulthash, ref($result), $result; + return bless \%resulthash, ref($result); +} +sub DISOWN { + my $self = shift; + my $ptr = tied(%$self); + delete $OWNER{$ptr}; + }; + +sub ACQUIRE { + my $self = shift; + my $ptr = tied(%$self); + $OWNER{$ptr} = 1; + }; + + +############# Class : Sword::VerseKey ############## + +package Sword::VerseKey; +@ISA = qw( Sword Sword::SWKey ); +%OWNER = (); +%ITERATORS = (); +sub new { + my $pkg = shift; + my @args = @_; + my $self = Swordc::new_VerseKey(@args); + return undef if (!defined($self)); + $OWNER{$self} = 1; + my %retval; + tie %retval, "Sword::VerseKey", $self; + return bless \%retval, $pkg; +} + +sub DESTROY { + return unless $_[0]->isa('HASH'); + my $self = tied(%{$_[0]}); + return unless defined $self; + delete $ITERATORS{$self}; + if (exists $OWNER{$self}) { + Swordc::delete_VerseKey($self); + delete $OWNER{$self}; + } +} + +sub clone { + my @args = @_; + my $result = Swordc::VerseKey_clone(@args); + return undef if (!defined($result)); + my %resulthash; + tie %resulthash, ref($result), $result; + return bless \%resulthash, ref($result); +} +sub LowerBound { + my @args = @_; + my $result = Swordc::VerseKey_LowerBound(@args); + return undef if (!defined($result)); + my %resulthash; + tie %resulthash, ref($result), $result; + return bless \%resulthash, ref($result); +} +sub UpperBound { + my @args = @_; + my $result = Swordc::VerseKey_UpperBound(@args); + return undef if (!defined($result)); + my %resulthash; + tie %resulthash, ref($result), $result; + return bless \%resulthash, ref($result); +} +*ClearBounds = *Swordc::VerseKey_ClearBounds; +sub ParseVerseList { + my @args = @_; + my $result = Swordc::VerseKey_ParseVerseList(@args); + return undef if (!defined($result)); + $Sword::ListKey::OWNER{$result} = 1; + my %resulthash; + tie %resulthash, ref($result), $result; + return bless \%resulthash, ref($result); +} +*setText = *Swordc::VerseKey_setText; +*getText = *Swordc::VerseKey_getText; +*getRangeText = *Swordc::VerseKey_getRangeText; +*getShortText = *Swordc::VerseKey_getShortText; +*Traversable = *Swordc::VerseKey_Traversable; +*decrement = *Swordc::VerseKey_decrement; +*increment = *Swordc::VerseKey_increment; +*getBookName = *Swordc::VerseKey_getBookName; +*getBookAbbrev = *Swordc::VerseKey_getBookAbbrev; +*Testament = *Swordc::VerseKey_Testament; +*Book = *Swordc::VerseKey_Book; +*Chapter = *Swordc::VerseKey_Chapter; +*Verse = *Swordc::VerseKey_Verse; +*Normalize = *Swordc::VerseKey_Normalize; +*AutoNormalize = *Swordc::VerseKey_AutoNormalize; +*Headings = *Swordc::VerseKey_Headings; +*getOSISRef = *Swordc::VerseKey_getOSISRef; +*compare = *Swordc::VerseKey_compare; +*_compare = *Swordc::VerseKey__compare; +*setLocale = *Swordc::VerseKey_setLocale; +*getLocale = *Swordc::VerseKey_getLocale; +*bookCount = *Swordc::VerseKey_bookCount; +*bookName = *Swordc::VerseKey_bookName; +*chapterCount = *Swordc::VerseKey_chapterCount; +*verseCount = *Swordc::VerseKey_verseCount; +sub DISOWN { + my $self = shift; + my $ptr = tied(%$self); + delete $OWNER{$ptr}; + }; + +sub ACQUIRE { + my $self = shift; + my $ptr = tied(%$self); + $OWNER{$ptr} = 1; + }; + + +############# Class : Sword::ListKey ############## + +package Sword::ListKey; +@ISA = qw( Sword Sword::SWKey ); +%OWNER = (); +%ITERATORS = (); +sub new { + my $pkg = shift; + my @args = @_; + my $self = Swordc::new_ListKey(@args); + return undef if (!defined($self)); + $OWNER{$self} = 1; + my %retval; + tie %retval, "Sword::ListKey", $self; + return bless \%retval, $pkg; +} + +sub DESTROY { + return unless $_[0]->isa('HASH'); + my $self = tied(%{$_[0]}); + return unless defined $self; + delete $ITERATORS{$self}; + if (exists $OWNER{$self}) { + Swordc::delete_ListKey($self); + delete $OWNER{$self}; + } +} + +sub clone { + my @args = @_; + my $result = Swordc::ListKey_clone(@args); + return undef if (!defined($result)); + my %resulthash; + tie %resulthash, ref($result), $result; + return bless \%resulthash, ref($result); +} +*ClearList = *Swordc::ListKey_ClearList; +*Count = *Swordc::ListKey_Count; +*Remove = *Swordc::ListKey_Remove; +*SetToElement = *Swordc::ListKey_SetToElement; +sub GetElement { + my @args = @_; + my $result = Swordc::ListKey_GetElement(@args); + return undef if (!defined($result)); + my %resulthash; + tie %resulthash, ref($result), $result; + return bless \%resulthash, ref($result); +} +*add = *Swordc::ListKey_add; +*copyFrom = *Swordc::ListKey_copyFrom; +*setPosition = *Swordc::ListKey_setPosition; +*decrement = *Swordc::ListKey_decrement; +*increment = *Swordc::ListKey_increment; +*Traversable = *Swordc::ListKey_Traversable; +*Index = *Swordc::ListKey_Index; +sub DISOWN { + my $self = shift; + my $ptr = tied(%$self); + delete $OWNER{$ptr}; + }; + +sub ACQUIRE { + my $self = shift; + my $ptr = tied(%$self); + $OWNER{$ptr} = 1; + }; + + +############# Class : Sword::TreeKey ############## + +package Sword::TreeKey; +@ISA = qw( Sword Sword::SWKey ); +%OWNER = (); +*getLocalName = *Swordc::TreeKey_getLocalName; +*setLocalName = *Swordc::TreeKey_setLocalName; +*getUserData = *Swordc::TreeKey_getUserData; +*setUserData = *Swordc::TreeKey_setUserData; +*getFullName = *Swordc::TreeKey_getFullName; +*root = *Swordc::TreeKey_root; +*parent = *Swordc::TreeKey_parent; +*firstChild = *Swordc::TreeKey_firstChild; +*nextSibling = *Swordc::TreeKey_nextSibling; +*previousSibling = *Swordc::TreeKey_previousSibling; +*hasChildren = *Swordc::TreeKey_hasChildren; +*append = *Swordc::TreeKey_append; +*appendChild = *Swordc::TreeKey_appendChild; +*insertBefore = *Swordc::TreeKey_insertBefore; +*remove = *Swordc::TreeKey_remove; +*setOffset = *Swordc::TreeKey_setOffset; +*getOffset = *Swordc::TreeKey_getOffset; +*setPosition = *Swordc::TreeKey_setPosition; +*Traversable = *Swordc::TreeKey_Traversable; +*Index = *Swordc::TreeKey_Index; +sub DISOWN { + my $self = shift; + my $ptr = tied(%$self); + delete $OWNER{$ptr}; + }; + +sub ACQUIRE { + my $self = shift; + my $ptr = tied(%$self); + $OWNER{$ptr} = 1; + }; + + +############# Class : Sword::TreeKeyIdx ############## + +package Sword::TreeKeyIdx; +@ISA = qw( Sword Sword::TreeKey ); +%OWNER = (); +%ITERATORS = (); +sub DESTROY { + return unless $_[0]->isa('HASH'); + my $self = tied(%{$_[0]}); + return unless defined $self; + delete $ITERATORS{$self}; + if (exists $OWNER{$self}) { + Swordc::delete_TreeKeyIdx($self); + delete $OWNER{$self}; + } +} + +*save = *Swordc::TreeKeyIdx_save; +*copyFrom = *Swordc::TreeKeyIdx_copyFrom; +*_compare = *Swordc::TreeKeyIdx__compare; +*create = *Swordc::TreeKeyIdx_create; +sub DISOWN { + my $self = shift; + my $ptr = tied(%$self); + delete $OWNER{$ptr}; + }; + +sub ACQUIRE { + my $self = shift; + my $ptr = tied(%$self); + $OWNER{$ptr} = 1; + }; + + +############# Class : Sword::LocaleMgr ############## + +package Sword::LocaleMgr; +@ISA = qw( Sword ); +%OWNER = (); +%ITERATORS = (); +sub new { + my $pkg = shift; + my @args = @_; + my $self = Swordc::new_LocaleMgr(@args); + return undef if (!defined($self)); + $OWNER{$self} = 1; + my %retval; + tie %retval, "Sword::LocaleMgr", $self; + return bless \%retval, $pkg; +} + +sub DESTROY { + return unless $_[0]->isa('HASH'); + my $self = tied(%{$_[0]}); + return unless defined $self; + delete $ITERATORS{$self}; + if (exists $OWNER{$self}) { + Swordc::delete_LocaleMgr($self); + delete $OWNER{$self}; + } +} + +*getLocale = *Swordc::LocaleMgr_getLocale; +*getAvailableLocales = *Swordc::LocaleMgr_getAvailableLocales; +*getDefaultLocaleName = *Swordc::LocaleMgr_getDefaultLocaleName; +*setDefaultLocaleName = *Swordc::LocaleMgr_setDefaultLocaleName; +sub getSystemLocaleMgr { + my @args = @_; + my $result = Swordc::LocaleMgr_getSystemLocaleMgr(@args); + return undef if (!defined($result)); + my %resulthash; + tie %resulthash, ref($result), $result; + return bless \%resulthash, ref($result); +} +sub DISOWN { + my $self = shift; + my $ptr = tied(%$self); + delete $OWNER{$ptr}; + }; + +sub ACQUIRE { + my $self = shift; + my $ptr = tied(%$self); + $OWNER{$ptr} = 1; + }; + + +############# Class : Sword::SWFilterMgr ############## + +package Sword::SWFilterMgr; +@ISA = qw( Sword ); +%OWNER = (); +sub DISOWN { + my $self = shift; + my $ptr = tied(%$self); + delete $OWNER{$ptr}; + }; + +sub ACQUIRE { + my $self = shift; + my $ptr = tied(%$self); + $OWNER{$ptr} = 1; + }; + + +############# Class : Sword::SWText ############## + +package Sword::SWText; +@ISA = qw( Sword Sword::SWModule ); +%OWNER = (); +%ITERATORS = (); +sub new { + my $pkg = shift; + my @args = @_; + my $self = Swordc::new_SWText(@args); + return undef if (!defined($self)); + $OWNER{$self} = 1; + my %retval; + tie %retval, "Sword::SWText", $self; + return bless \%retval, $pkg; +} + +sub DESTROY { + return unless $_[0]->isa('HASH'); + my $self = tied(%{$_[0]}); + return unless defined $self; + delete $ITERATORS{$self}; + if (exists $OWNER{$self}) { + Swordc::delete_SWText($self); + delete $OWNER{$self}; + } +} + +sub DISOWN { + my $self = shift; + my $ptr = tied(%$self); + delete $OWNER{$ptr}; + }; + +sub ACQUIRE { + my $self = shift; + my $ptr = tied(%$self); + $OWNER{$ptr} = 1; + }; + + +############# Class : Sword::RawText ############## + +package Sword::RawText; +@ISA = qw( Sword Sword::SWText ); +%OWNER = (); +%ITERATORS = (); +sub new { + my $pkg = shift; + my @args = @_; + my $self = Swordc::new_RawText(@args); + return undef if (!defined($self)); + $OWNER{$self} = 1; + my %retval; + tie %retval, "Sword::RawText", $self; + return bless \%retval, $pkg; +} + +*createModule = *Swordc::RawText_createModule; +sub DESTROY { + return unless $_[0]->isa('HASH'); + my $self = tied(%{$_[0]}); + return unless defined $self; + delete $ITERATORS{$self}; + if (exists $OWNER{$self}) { + Swordc::delete_RawText($self); + delete $OWNER{$self}; + } +} + +sub DISOWN { + my $self = shift; + my $ptr = tied(%$self); + delete $OWNER{$ptr}; + }; + +sub ACQUIRE { + my $self = shift; + my $ptr = tied(%$self); + $OWNER{$ptr} = 1; + }; + + +############# Class : Sword::zText ############## + +package Sword::zText; +@ISA = qw( Sword Sword::SWText ); +%OWNER = (); +%ITERATORS = (); +sub new { + my $pkg = shift; + my @args = @_; + my $self = Swordc::new_zText(@args); + return undef if (!defined($self)); + $OWNER{$self} = 1; + my %retval; + tie %retval, "Sword::zText", $self; + return bless \%retval, $pkg; +} + +sub DESTROY { + return unless $_[0]->isa('HASH'); + my $self = tied(%{$_[0]}); + return unless defined $self; + delete $ITERATORS{$self}; + if (exists $OWNER{$self}) { + Swordc::delete_zText($self); + delete $OWNER{$self}; + } +} + +*createModule = *Swordc::zText_createModule; +sub DISOWN { + my $self = shift; + my $ptr = tied(%$self); + delete $OWNER{$ptr}; + }; + +sub ACQUIRE { + my $self = shift; + my $ptr = tied(%$self); + $OWNER{$ptr} = 1; + }; + + +############# Class : Sword::SWCom ############## + +package Sword::SWCom; +@ISA = qw( Sword Sword::SWModule ); +%OWNER = (); +sub DISOWN { + my $self = shift; + my $ptr = tied(%$self); + delete $OWNER{$ptr}; + }; + +sub ACQUIRE { + my $self = shift; + my $ptr = tied(%$self); + $OWNER{$ptr} = 1; + }; + + +############# Class : Sword::RawCom ############## + +package Sword::RawCom; +@ISA = qw( Sword Sword::SWCom ); +%OWNER = (); +%ITERATORS = (); +sub new { + my $pkg = shift; + my @args = @_; + my $self = Swordc::new_RawCom(@args); + return undef if (!defined($self)); + $OWNER{$self} = 1; + my %retval; + tie %retval, "Sword::RawCom", $self; + return bless \%retval, $pkg; +} + +sub DESTROY { + return unless $_[0]->isa('HASH'); + my $self = tied(%{$_[0]}); + return unless defined $self; + delete $ITERATORS{$self}; + if (exists $OWNER{$self}) { + Swordc::delete_RawCom($self); + delete $OWNER{$self}; + } +} + +*createModule = *Swordc::RawCom_createModule; +sub DISOWN { + my $self = shift; + my $ptr = tied(%$self); + delete $OWNER{$ptr}; + }; + +sub ACQUIRE { + my $self = shift; + my $ptr = tied(%$self); + $OWNER{$ptr} = 1; + }; + + +############# Class : Sword::zCom ############## + +package Sword::zCom; +@ISA = qw( Sword Sword::SWCom ); +%OWNER = (); +%ITERATORS = (); +sub new { + my $pkg = shift; + my @args = @_; + my $self = Swordc::new_zCom(@args); + return undef if (!defined($self)); + $OWNER{$self} = 1; + my %retval; + tie %retval, "Sword::zCom", $self; + return bless \%retval, $pkg; +} + +sub DESTROY { + return unless $_[0]->isa('HASH'); + my $self = tied(%{$_[0]}); + return unless defined $self; + delete $ITERATORS{$self}; + if (exists $OWNER{$self}) { + Swordc::delete_zCom($self); + delete $OWNER{$self}; + } +} + +*createModule = *Swordc::zCom_createModule; +sub DISOWN { + my $self = shift; + my $ptr = tied(%$self); + delete $OWNER{$ptr}; + }; + +sub ACQUIRE { + my $self = shift; + my $ptr = tied(%$self); + $OWNER{$ptr} = 1; + }; + + +############# Class : Sword::SWGenBook ############## + +package Sword::SWGenBook; +@ISA = qw( Sword Sword::SWModule ); +%OWNER = (); +sub DISOWN { + my $self = shift; + my $ptr = tied(%$self); + delete $OWNER{$ptr}; + }; + +sub ACQUIRE { + my $self = shift; + my $ptr = tied(%$self); + $OWNER{$ptr} = 1; + }; + + +############# Class : Sword::RawGenBook ############## + +package Sword::RawGenBook; +@ISA = qw( Sword Sword::SWGenBook ); +%OWNER = (); +%ITERATORS = (); +sub new { + my $pkg = shift; + my @args = @_; + my $self = Swordc::new_RawGenBook(@args); + return undef if (!defined($self)); + $OWNER{$self} = 1; + my %retval; + tie %retval, "Sword::RawGenBook", $self; + return bless \%retval, $pkg; +} + +sub DESTROY { + return unless $_[0]->isa('HASH'); + my $self = tied(%{$_[0]}); + return unless defined $self; + delete $ITERATORS{$self}; + if (exists $OWNER{$self}) { + Swordc::delete_RawGenBook($self); + delete $OWNER{$self}; + } +} + +*createModule = *Swordc::RawGenBook_createModule; +sub getTreeKey { + my @args = @_; + my $result = Swordc::RawGenBook_getTreeKey(@args); + return undef if (!defined($result)); + my %resulthash; + tie %resulthash, ref($result), $result; + return bless \%resulthash, ref($result); +} +sub DISOWN { + my $self = shift; + my $ptr = tied(%$self); + delete $OWNER{$ptr}; + }; + +sub ACQUIRE { + my $self = shift; + my $ptr = tied(%$self); + $OWNER{$ptr} = 1; + }; + + +############# Class : Sword::SWLD ############## + +package Sword::SWLD; +@ISA = qw( Sword Sword::SWModule ); +%OWNER = (); +%ITERATORS = (); +sub new { + my $pkg = shift; + my @args = @_; + my $self = Swordc::new_SWLD(@args); + return undef if (!defined($self)); + $OWNER{$self} = 1; + my %retval; + tie %retval, "Sword::SWLD", $self; + return bless \%retval, $pkg; +} + +sub DESTROY { + return unless $_[0]->isa('HASH'); + my $self = tied(%{$_[0]}); + return unless defined $self; + delete $ITERATORS{$self}; + if (exists $OWNER{$self}) { + Swordc::delete_SWLD($self); + delete $OWNER{$self}; + } +} + +sub DISOWN { + my $self = shift; + my $ptr = tied(%$self); + delete $OWNER{$ptr}; + }; + +sub ACQUIRE { + my $self = shift; + my $ptr = tied(%$self); + $OWNER{$ptr} = 1; + }; + + +############# Class : Sword::RawLD ############## + +package Sword::RawLD; +@ISA = qw( Sword Sword::SWLD ); +%OWNER = (); +%ITERATORS = (); +sub new { + my $pkg = shift; + my @args = @_; + my $self = Swordc::new_RawLD(@args); + return undef if (!defined($self)); + $OWNER{$self} = 1; + my %retval; + tie %retval, "Sword::RawLD", $self; + return bless \%retval, $pkg; +} + +sub DESTROY { + return unless $_[0]->isa('HASH'); + my $self = tied(%{$_[0]}); + return unless defined $self; + delete $ITERATORS{$self}; + if (exists $OWNER{$self}) { + Swordc::delete_RawLD($self); + delete $OWNER{$self}; + } +} + +*createModule = *Swordc::RawLD_createModule; +sub DISOWN { + my $self = shift; + my $ptr = tied(%$self); + delete $OWNER{$ptr}; + }; + +sub ACQUIRE { + my $self = shift; + my $ptr = tied(%$self); + $OWNER{$ptr} = 1; + }; + + +############# Class : Sword::RawLD4 ############## + +package Sword::RawLD4; +@ISA = qw( Sword Sword::SWLD ); +%OWNER = (); +%ITERATORS = (); +sub new { + my $pkg = shift; + my @args = @_; + my $self = Swordc::new_RawLD4(@args); + return undef if (!defined($self)); + $OWNER{$self} = 1; + my %retval; + tie %retval, "Sword::RawLD4", $self; + return bless \%retval, $pkg; +} + +sub DESTROY { + return unless $_[0]->isa('HASH'); + my $self = tied(%{$_[0]}); + return unless defined $self; + delete $ITERATORS{$self}; + if (exists $OWNER{$self}) { + Swordc::delete_RawLD4($self); + delete $OWNER{$self}; + } +} + +*createModule = *Swordc::RawLD4_createModule; +sub DISOWN { + my $self = shift; + my $ptr = tied(%$self); + delete $OWNER{$ptr}; + }; + +sub ACQUIRE { + my $self = shift; + my $ptr = tied(%$self); + $OWNER{$ptr} = 1; + }; + + +############# Class : Sword::zLD ############## + +package Sword::zLD; +@ISA = qw( Sword Sword::SWLD ); +%OWNER = (); +%ITERATORS = (); +sub new { + my $pkg = shift; + my @args = @_; + my $self = Swordc::new_zLD(@args); + return undef if (!defined($self)); + $OWNER{$self} = 1; + my %retval; + tie %retval, "Sword::zLD", $self; + return bless \%retval, $pkg; +} + +sub DESTROY { + return unless $_[0]->isa('HASH'); + my $self = tied(%{$_[0]}); + return unless defined $self; + delete $ITERATORS{$self}; + if (exists $OWNER{$self}) { + Swordc::delete_zLD($self); + delete $OWNER{$self}; + } +} + +*createModule = *Swordc::zLD_createModule; +sub DISOWN { + my $self = shift; + my $ptr = tied(%$self); + delete $OWNER{$ptr}; + }; + +sub ACQUIRE { + my $self = shift; + my $ptr = tied(%$self); + $OWNER{$ptr} = 1; + }; + + +############# Class : Sword::SWCompress ############## + +package Sword::SWCompress; +@ISA = qw( Sword ); +%OWNER = (); +%ITERATORS = (); +sub new { + my $pkg = shift; + my @args = @_; + my $self = Swordc::new_SWCompress(@args); + return undef if (!defined($self)); + $OWNER{$self} = 1; + my %retval; + tie %retval, "Sword::SWCompress", $self; + return bless \%retval, $pkg; +} + +sub DESTROY { + return unless $_[0]->isa('HASH'); + my $self = tied(%{$_[0]}); + return unless defined $self; + delete $ITERATORS{$self}; + if (exists $OWNER{$self}) { + Swordc::delete_SWCompress($self); + delete $OWNER{$self}; + } +} + +*Buf = *Swordc::SWCompress_Buf; +*zBuf = *Swordc::SWCompress_zBuf; +*GetChars = *Swordc::SWCompress_GetChars; +*SendChars = *Swordc::SWCompress_SendChars; +*Encode = *Swordc::SWCompress_Encode; +*Decode = *Swordc::SWCompress_Decode; +sub DISOWN { + my $self = shift; + my $ptr = tied(%$self); + delete $OWNER{$ptr}; + }; + +sub ACQUIRE { + my $self = shift; + my $ptr = tied(%$self); + $OWNER{$ptr} = 1; + }; + + +############# Class : Sword::LZSSCompress ############## + +package Sword::LZSSCompress; +@ISA = qw( Sword Sword::SWCompress ); +%OWNER = (); +%ITERATORS = (); +sub new { + my $pkg = shift; + my @args = @_; + my $self = Swordc::new_LZSSCompress(@args); + return undef if (!defined($self)); + $OWNER{$self} = 1; + my %retval; + tie %retval, "Sword::LZSSCompress", $self; + return bless \%retval, $pkg; +} + +sub DESTROY { + return unless $_[0]->isa('HASH'); + my $self = tied(%{$_[0]}); + return unless defined $self; + delete $ITERATORS{$self}; + if (exists $OWNER{$self}) { + Swordc::delete_LZSSCompress($self); + delete $OWNER{$self}; + } +} + +*Encode = *Swordc::LZSSCompress_Encode; +*Decode = *Swordc::LZSSCompress_Decode; +sub DISOWN { + my $self = shift; + my $ptr = tied(%$self); + delete $OWNER{$ptr}; + }; + +sub ACQUIRE { + my $self = shift; + my $ptr = tied(%$self); + $OWNER{$ptr} = 1; + }; + + +############# Class : Sword::ZipCompress ############## + +package Sword::ZipCompress; +@ISA = qw( Sword Sword::SWCompress ); +%OWNER = (); +%ITERATORS = (); +sub new { + my $pkg = shift; + my @args = @_; + my $self = Swordc::new_ZipCompress(@args); + return undef if (!defined($self)); + $OWNER{$self} = 1; + my %retval; + tie %retval, "Sword::ZipCompress", $self; + return bless \%retval, $pkg; +} + +sub DESTROY { + return unless $_[0]->isa('HASH'); + my $self = tied(%{$_[0]}); + return unless defined $self; + delete $ITERATORS{$self}; + if (exists $OWNER{$self}) { + Swordc::delete_ZipCompress($self); + delete $OWNER{$self}; + } +} + +*Encode = *Swordc::ZipCompress_Encode; +*Decode = *Swordc::ZipCompress_Decode; +sub DISOWN { + my $self = shift; + my $ptr = tied(%$self); + delete $OWNER{$ptr}; + }; + +sub ACQUIRE { + my $self = shift; + my $ptr = tied(%$self); + $OWNER{$ptr} = 1; + }; + + +############# Class : Sword::SWBuf ############## + +package Sword::SWBuf; +@ISA = qw( Sword ); +%OWNER = (); +%ITERATORS = (); +sub new { + my $pkg = shift; + my @args = @_; + my $self = Swordc::new_SWBuf(@args); + return undef if (!defined($self)); + $OWNER{$self} = 1; + my %retval; + tie %retval, "Sword::SWBuf", $self; + return bless \%retval, $pkg; +} + +sub DESTROY { + return unless $_[0]->isa('HASH'); + my $self = tied(%{$_[0]}); + return unless defined $self; + delete $ITERATORS{$self}; + if (exists $OWNER{$self}) { + Swordc::delete_SWBuf($self); + delete $OWNER{$self}; + } +} + +*setFillByte = *Swordc::SWBuf_setFillByte; +*getFillByte = *Swordc::SWBuf_getFillByte; +*c_str = *Swordc::SWBuf_c_str; +*charAt = *Swordc::SWBuf_charAt; +*size = *Swordc::SWBuf_size; +*length = *Swordc::SWBuf_length; +*set = *Swordc::SWBuf_set; +*setSize = *Swordc::SWBuf_setSize; +*append = *Swordc::SWBuf_append; +*appendFormatted = *Swordc::SWBuf_appendFormatted; +*getRawData = *Swordc::SWBuf_getRawData; +*compare = *Swordc::SWBuf_compare; +sub DISOWN { + my $self = shift; + my $ptr = tied(%$self); + delete $OWNER{$ptr}; + }; + +sub ACQUIRE { + my $self = shift; + my $ptr = tied(%$self); + $OWNER{$ptr} = 1; + }; + + +# ------- VARIABLE STUBS -------- + +package Sword; + +1; diff --git a/bindings/swig/perl/test.pl b/bindings/swig/perl/test.pl new file mode 100644 index 0000000..b93986f --- /dev/null +++ b/bindings/swig/perl/test.pl @@ -0,0 +1,17 @@ +# Before `make install' is performed this script should be runnable with +# `make test'. After `make install' it should work as `perl test.pl' + +######################### + +# change 'tests => 1' to 'tests => last_test_to_print'; + +use Test; +BEGIN { plan tests => 1 }; +use Sword; +ok(1); # If we made it this far, we're ok. + +######################### + +# Insert your test code below, the Test module is use()ed here so read +# its man page ( perldoc Test ) for help writing this test script. + diff --git a/bindings/swig/php/Sword.cpp b/bindings/swig/php/Sword.cpp new file mode 100644 index 0000000..0d98a47 --- /dev/null +++ b/bindings/swig/php/Sword.cpp @@ -0,0 +1,10396 @@ +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 1.3.15u-20021007-2154 + * + * This file is not intended to be easily readable and contains a number of + * coding conventions designed to improve portability and efficiency. Do not make + * changes to this file unless you know what you are doing--modify the SWIG + * interface file instead. + * ----------------------------------------------------------------------------- */ + + +#ifdef __cplusplus +template class SwigValueWrapper { + T *tt; +public: + inline SwigValueWrapper() : tt(0) { } + inline ~SwigValueWrapper() { if (tt) delete tt; } + inline SwigValueWrapper& operator=(const T& t) { tt = new T(t); return *this; } + inline operator T&() const { return *tt; } + inline T *operator&() { return tt; } +}; +#endif + +/*********************************************************************** + * common.swg + * + * This file contains generic SWIG runtime support for pointer + * type checking as well as a few commonly used macros to control + * external linkage. + * + * Author : David Beazley (beazley@cs.uchicago.edu) + * + * Copyright (c) 1999-2000, The University of Chicago + * + * This file may be freely redistributed without license or fee provided + * this copyright message remains intact. + ************************************************************************/ + +#include + +#if defined(_WIN32) || defined(__WIN32__) +# if defined(_MSC_VER) +# if defined(STATIC_LINKED) +# define SWIGEXPORT(a) a +# define SWIGIMPORT(a) extern a +# else +# define SWIGEXPORT(a) __declspec(dllexport) a +# define SWIGIMPORT(a) extern a +# endif +# else +# if defined(__BORLANDC__) +# define SWIGEXPORT(a) a _export +# define SWIGIMPORT(a) a _export +# else +# define SWIGEXPORT(a) a +# define SWIGIMPORT(a) a +# endif +# endif +#else +# define SWIGEXPORT(a) a +# define SWIGIMPORT(a) a +#endif + +#ifdef SWIG_GLOBAL +#define SWIGRUNTIME(a) SWIGEXPORT(a) +#else +#define SWIGRUNTIME(a) static a +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +typedef void *(*swig_converter_func)(void *); +typedef struct swig_type_info *(*swig_dycast_func)(void **); + +typedef struct swig_type_info { + const char *name; + swig_converter_func converter; + const char *str; + void *clientdata; + swig_dycast_func dcast; + struct swig_type_info *next; + struct swig_type_info *prev; +} swig_type_info; + +#ifdef SWIG_NOINCLUDE + +SWIGIMPORT(swig_type_info *) SWIG_TypeRegister(swig_type_info *); +SWIGIMPORT(swig_type_info *) SWIG_TypeCheck(char *c, swig_type_info *); +SWIGIMPORT(void *) SWIG_TypeCast(swig_type_info *, void *); +SWIGIMPORT(swig_type_info *) SWIG_TypeDynamicCast(swig_type_info *, void **); +SWIGIMPORT(swig_type_info *) SWIG_TypeQuery(const char *); +SWIGIMPORT(void) SWIG_TypeClientData(swig_type_info *, void *); + +#else + +static swig_type_info *swig_type_list = 0; + +/* Register a type mapping with the type-checking */ +SWIGRUNTIME(swig_type_info *) +SWIG_TypeRegister(swig_type_info *ti) +{ + swig_type_info *tc, *head, *ret, *next; + /* Check to see if this type has already been registered */ + tc = swig_type_list; + while (tc) { + if (strcmp(tc->name, ti->name) == 0) { + /* Already exists in the table. Just add additional types to the list */ + if (tc->clientdata) ti->clientdata = tc->clientdata; + head = tc; + next = tc->next; + goto l1; + } + tc = tc->prev; + } + head = ti; + next = 0; + + /* Place in list */ + ti->prev = swig_type_list; + swig_type_list = ti; + + /* Build linked lists */ + l1: + ret = head; + tc = ti + 1; + /* Patch up the rest of the links */ + while (tc->name) { + head->next = tc; + tc->prev = head; + head = tc; + tc++; + } + head->next = next; + return ret; +} + +/* Check the typename */ +SWIGRUNTIME(swig_type_info *) +SWIG_TypeCheck(char *c, swig_type_info *ty) +{ + swig_type_info *s; + if (!ty) return 0; /* Void pointer */ + s = ty->next; /* First element always just a name */ + do { + if (strcmp(s->name,c) == 0) { + if (s == ty->next) return s; + /* Move s to the top of the linked list */ + s->prev->next = s->next; + if (s->next) { + s->next->prev = s->prev; + } + /* Insert s as second element in the list */ + s->next = ty->next; + if (ty->next) ty->next->prev = s; + ty->next = s; + return s; + } + s = s->next; + } while (s && (s != ty->next)); + return 0; +} + +/* Cast a pointer up an inheritance hierarchy */ +SWIGRUNTIME(void *) +SWIG_TypeCast(swig_type_info *ty, void *ptr) +{ + if ((!ty) || (!ty->converter)) return ptr; + return (*ty->converter)(ptr); +} + +/* Dynamic pointer casting. Down an inheritance hierarchy */ +SWIGRUNTIME(swig_type_info *) +SWIG_TypeDynamicCast(swig_type_info *ty, void **ptr) +{ + swig_type_info *lastty = ty; + if (!ty || !ty->dcast) return ty; + while (ty && (ty->dcast)) { + ty = (*ty->dcast)(ptr); + if (ty) lastty = ty; + } + return lastty; +} + +/* Search for a swig_type_info structure */ +SWIGRUNTIME(swig_type_info *) +SWIG_TypeQuery(const char *name) { + swig_type_info *ty = swig_type_list; + while (ty) { + if (ty->str && (strcmp(name,ty->str) == 0)) return ty; + if (ty->name && (strcmp(name,ty->name) == 0)) return ty; + ty = ty->prev; + } + return 0; +} + +/* Set the clientdata field for a type */ +SWIGRUNTIME(void) +SWIG_TypeClientData(swig_type_info *ti, void *clientdata) { + swig_type_info *tc, *equiv; + if (ti->clientdata) return; + ti->clientdata = clientdata; + equiv = ti->next; + while (equiv) { + if (!equiv->converter) { + tc = swig_type_list; + while (tc) { + if ((strcmp(tc->name, equiv->name) == 0)) + SWIG_TypeClientData(tc,clientdata); + tc = tc->prev; + } + } + equiv = equiv->next; + } +} +#endif + +#ifdef __cplusplus +} + +#endif + +/* + * php4.swg + * + * PHP4 runtime library + * + */ + +#ifdef __cplusplus +extern "C" { +#endif +#include "zend.h" +#include "zend_API.h" +#include "php.h" + +// These TSRMLS_ stuff should already be defined now, but with older php under +// redhat are not... +#ifndef TSRMLS_D +#define TSRMLS_D +#endif +#ifndef TSRMLS_DC +#define TSRMLS_DC +#endif +#ifndef TSRMLS_C +#define TSRMLS_C +#endif +#ifndef TSRMLS_CC +#define TSRMLS_CC +#endif + +#ifdef __cplusplus +} +#endif + +// used to wrap returned objects in so we know whether they are newobject +// and need freeing, or not +typedef struct _swig_object_wrapper { + void * ptr; + int newobject; +} swig_object_wrapper; + +// local scope self_constructors are set to 1 inside function wrappers +// which are also class constructors, so that the php4.swg output typemaps +// know whether or not to wrap returned objects in this_ptr or a new object +int self_constructor=0; + +// empty zend destructor for types without one +static ZEND_RSRC_DTOR_FUNC(SWIG_landfill) {}; + +// This one makes old swig style string pointers but the php module doesn't +// use these any more. This is just left here for old times sake and may go +SWIGRUNTIME(void) +SWIG_MakePtr(char *c, void *ptr, swig_type_info *ty) { + static char hex[17] = "0123456789abcdef"; + unsigned long p, s; + char data[32], *r; + + r = data; + p = (unsigned long) ptr; + if (p > 0) { + while (p > 0) { + s = p & 0xf; + *(r++) = hex[s]; + p = p >> 4; + } + *r = '_'; + while (r >= data) { + *(c++) = *(r--); + } + strcpy (c, ty->name); + } else { + strcpy (c, "NULL"); + } +} + +SWIGRUNTIME(void) +SWIG_SetPointerChar(char **c, void *ptr, swig_type_info *type) { + char data[512]; + + SWIG_MakePtr(data, ptr, type); + *c = estrdup(data); +} + +#define SWIG_SetPointerZval(a,b,c,d) SWIG_ZTS_SetPointerZval(a,b,c,d, SWIG_module_entry TSRMLS_CC) + +SWIGRUNTIME(void) +SWIG_ZTS_SetPointerZval(zval *z, void *ptr, swig_type_info *type, int newobject, zend_module_entry* module_entry TSRMLS_DC) { + swig_object_wrapper *value=NULL; + // No need to call SWIG_MakePtr here! + if (type->clientdata) { + if (! (*(int *)(type->clientdata))) zend_error(E_ERROR, "Type: %s failed to register with zend",type->name); + value=(swig_object_wrapper *)emalloc(sizeof(swig_object_wrapper)); + value->ptr=ptr; + value->newobject=newobject; + ZEND_REGISTER_RESOURCE(z, value, *(int *)(type->clientdata)); + return; + } else { // have to deal with old fashioned string pointer? + // but this should not get this far + zend_error(E_ERROR, "Type: %s not registered with zend",type->name); + } +} + +// This old-style routine converts an old string-pointer c into a real pointer +// ptr calling making appropriate casting functions according to ty +// We don't use this any more +SWIGRUNTIME(int) +_SWIG_ConvertPtr(char *c, void **ptr, swig_type_info *ty) { + register int d; + unsigned long p; + swig_type_info *tc; + + if(c == NULL) { + *ptr = 0; + return 0; + } + + p = 0; + if (*c != '_') { + *ptr = (void *) 0; + if (strcmp(c,"NULL") == 0) { + return 0; + } else { + goto type_error; + } + } + + c++; + /* Extract hex value from pointer */ + while ((d = *c)) { + if ((d >= '0') && (d <= '9')) + p = (p << 4) + (d - '0'); + else if ((d >= 'a') && (d <= 'f')) + p = (p << 4) + (d - ('a'-10)); + else + break; + c++; + } + *ptr = (void *) p; + + if(ty) { + tc = SWIG_TypeCheck(c,ty); + if(!tc) goto type_error; + *ptr = SWIG_TypeCast(tc, (void*)p); + } + return 0; + +type_error: + + return -1; +} + +// This is a new pointer conversion routine +// Taking the native pointer p (which would have been converted from the old +// string pointer) and it's php type id, and it's type name (which also would +// have come from the old string pointer) it converts it to ptr calling +// appropriate casting functions according to ty +// Sadly PHP has no API to find a type name from a type id, only from an instance +// of a resource of the type id, so we have to pass type_name as well. +// The two functions which might call this are: +// SWIG_ZTS_ConvertResourcePtr which gets the type name from the resource +// and the registered zend destructors for which we have one per type each +// with the type name hard wired in. +SWIGRUNTIME(int) +SWIG_ZTS_ConvertResourceData(void * p, int type, const char *type_name, void **ptr, swig_type_info *ty TSRMLS_DC) { + swig_type_info *tc; + + if (ty) { + if (! type_name) { + // can't convert p to ptr type ty if we don't know what type p is + return -1; + } else { + // convert and cast p from type_name to ptr as ty + // Need to sort out const-ness, can SWIG_TypeCast really not take a const? + tc = SWIG_TypeCheck((char *)type_name,ty); + if (!tc) return -1; + *ptr = SWIG_TypeCast(tc, (void*)p); + } + } else { + // They don't care about the target type, so just pass on the pointer! + *ptr = (void *) p; + } + return 0; +} + +// This function fills ptr with a pointer of type ty by extracting the pointer +// and type info from the resource in z. z must be a resource +// It uses SWIG_ZTS_ConvertResourceData to do the real work. +SWIGRUNTIME(int) +SWIG_ZTS_ConvertResourcePtr(zval *z, void **ptr, swig_type_info *ty TSRMLS_DC) { + swig_object_wrapper *value; + void *p; + int type; + char *type_name; + + value = (swig_object_wrapper *) zend_list_find(z->value.lval,&type); + p = value->ptr; + if (type==-1) return -1; + + type_name=zend_rsrc_list_get_rsrc_type(z->value.lval); + + return SWIG_ZTS_ConvertResourceData(p,type,type_name,ptr,ty TSRMLS_CC); +} + +// But in fact SWIG_ConvertPtr is the native interface for getting typed +// pointer values out of zvals. We need the TSRMLS_ macros for when we +// make PHP type calls later as we handle php resources +#define SWIG_ConvertPtr(a,b,c) SWIG_ZTS_ConvertPtr(a,b,c TSRMLS_CC) + +// We allow passing of a STRING or RESOURCE pointing to the object +// or an OBJECT whose _cPtr is a string or resource pointing to the object +// STRING pointers are very depracated +SWIGRUNTIME(int) +SWIG_ZTS_ConvertPtr(zval *z, void **ptr, swig_type_info *ty TSRMLS_DC) { + char *c; + zval *val; + + if(z == NULL) { + *ptr = 0; + return 0; + } + + if (z->type==IS_OBJECT) { + zval ** _cPtr; + if (zend_hash_find(HASH_OF(z),"_cPtr",sizeof("_cPtr"),(void**)&_cPtr)==SUCCESS) { + // Don't co-erce to string if it isn't + if ((*_cPtr)->type==IS_STRING) c = Z_STRVAL_PP(_cPtr); + else if ((*_cPtr)->type==IS_RESOURCE) { + return SWIG_ZTS_ConvertResourcePtr(*_cPtr,ptr,ty TSRMLS_CC); + } else goto type_error; // _cPtr was not string or resource property + } else goto type_error; // can't find property _cPtr + } else if (z->type==IS_RESOURCE) { + return SWIG_ZTS_ConvertResourcePtr(z,ptr,ty TSRMLS_CC); + } else if (z->type==IS_STRING) { + c = Z_STRVAL_P(z); + return _SWIG_ConvertPtr(c,ptr,ty); + } else goto type_error; + +type_error: + + return -1; +} + + +/* -------- TYPES TABLE (BEGIN) -------- */ + +#define SWIGTYPE_p_SWLocale swig_types[0] +#define SWIGTYPE_p_SWMgr swig_types[1] +#define SWIGTYPE_p_SWCom swig_types[2] +#define SWIGTYPE_p_RawLD4 swig_types[3] +#define SWIGTYPE_p_ListKey swig_types[4] +#define SWIGTYPE_p_SWKey swig_types[5] +#define SWIGTYPE_p_ConfigEntMap swig_types[6] +#define SWIGTYPE_p_p_char swig_types[7] +#define SWIGTYPE_p_RawLD swig_types[8] +#define SWIGTYPE_p_TreeKey swig_types[9] +#define SWIGTYPE_p_bool swig_types[10] +#define SWIGTYPE_p_void swig_types[11] +#define SWIGTYPE_p_SWFilterMgr swig_types[12] +#define SWIGTYPE_p_SWLD swig_types[13] +#define SWIGTYPE_p_SWTextDirection swig_types[14] +#define SWIGTYPE_p_RawText swig_types[15] +#define SWIGTYPE_p_f_char_p_void__void swig_types[16] +#define SWIGTYPE_p_VerseKey swig_types[17] +#define SWIGTYPE_p_ModMap swig_types[18] +#define SWIGTYPE_p_string swig_types[19] +#define SWIGTYPE_p_SectionMap swig_types[20] +#define SWIGTYPE_p_SWDisplay swig_types[21] +#define SWIGTYPE_p_AttributeTypeList swig_types[22] +#define SWIGTYPE_p_SWText swig_types[23] +#define SWIGTYPE_p_SWCompress swig_types[24] +#define SWIGTYPE_p_LZSSCompress swig_types[25] +#define SWIGTYPE_p_ZipCompress swig_types[26] +#define SWIGTYPE_p_SW_POSITION swig_types[27] +#define SWIGTYPE_p_SWModule swig_types[28] +#define SWIGTYPE_p_zLD swig_types[29] +#define SWIGTYPE_p_SWGenBook swig_types[30] +#define SWIGTYPE_p_RawGenBook swig_types[31] +#define SWIGTYPE_p_SWConfig swig_types[32] +#define SWIGTYPE_p_LocaleMgr swig_types[33] +#define SWIGTYPE_p_int swig_types[34] +#define SWIGTYPE_p_SWTextMarkup swig_types[35] +#define SWIGTYPE_p_OptionsList swig_types[36] +#define SWIGTYPE_p_listTstring_t swig_types[37] +#define SWIGTYPE_p_zText swig_types[38] +#define SWIGTYPE_p_SWTextEncoding swig_types[39] +#define SWIGTYPE_p_unsigned_long swig_types[40] +static swig_type_info *swig_types[42]; + +/* -------- TYPES TABLE (END) -------- */ + +/* header section */ +/* + +----------------------------------------------------------------------+ + | PHP version 4.0 | + +----------------------------------------------------------------------+ + | Copyright (c) 1997, 1998, 1999, 2000, 2001 The PHP Group | + +----------------------------------------------------------------------+ + | This source file is subject to version 2.02 of the PHP license, | + | that is bundled with this package in the file LICENSE, and is | + | available at through the world-wide-web at | + | http://www.php.net/license/2_02.txt. | + | If you did not receive a copy of the PHP license and are unable to | + | obtain it through the world-wide-web, please send a note to | + | license@php.net so we can mail you a copy immediately. | + +----------------------------------------------------------------------+ + | Authors: | + | | + +----------------------------------------------------------------------+ + */ +#define SWIG_init initSword + +#define SWIG_name "Sword" +#ifdef HAVE_CONFIG_H +#include "config.h" +#endif + +#ifdef __cplusplus +extern "C" { +#endif +#include "php.h" +#include "php_ini.h" +#include "ext/standard/info.h" +#include "php_Sword.h" +#ifdef __cplusplus +} +#endif + + +#undef bool +#undef assert +#undef LOCAL +#undef list + + + #include + #include + #include + #include + #include + + #include "swconfig.h" +using namespace sword; + + +#define SWIG_MemoryError 1 +#define SWIG_IOError 2 +#define SWIG_RuntimeError 3 +#define SWIG_IndexError 4 +#define SWIG_TypeError 5 +#define SWIG_DivisionByZero 6 +#define SWIG_OverflowError 7 +#define SWIG_SyntaxError 8 +#define SWIG_ValueError 9 +#define SWIG_SystemError 10 +#define SWIG_UnknownError 99 + + +// We should make use of "code" if we can +#define SWIG_exception(code, msg) { zend_error(E_ERROR, msg); } + + +#include + + +#include +#include +#include + +void SWConfig_set(SWConfig *self,char const *group,char const *entry,char const *value){ + self->Sections[group][entry] = value; + } +char const *SWConfig_get(SWConfig *self,char const *group,char const *entry){ + return self->Sections[group][entry].c_str(); + } +static int _wrap_propset_SWConfig(zend_property_reference *property_reference, pval *value); +static int _propset_SWConfig(zend_property_reference *property_reference, pval *value); +static pval _wrap_propget_SWConfig(zend_property_reference *property_reference); +static int _propget_SWConfig(zend_property_reference *property_reference, pval *value); + +#include + +SWModule *SWMgr_module(SWMgr *self,char const *modulename){ + return self->Modules[modulename]; + } +static int _wrap_propset_SWMgr(zend_property_reference *property_reference, pval *value); +static int _propset_SWMgr(zend_property_reference *property_reference, pval *value); +static pval _wrap_propget_SWMgr(zend_property_reference *property_reference); +static int _propget_SWMgr(zend_property_reference *property_reference, pval *value); + + #include "swmodule.h" + +bool const SWModule_next(SWModule *self){ + (*self)++; + return !self->Error(); + } +bool const SWModule_prev(SWModule *self){ + (*self)--; + return !self->Error(); + } +bool const SWModule_inc(SWModule *self,int const howFar){ + (*self)+=howFar; + return !self->Error(); + } +bool const SWModule_dec(SWModule *self,int const howFar){ + (*self)-=howFar; + return !self->Error(); + } +void SWModule_setPosition(SWModule *self,SW_POSITION pos){ + (*self) = pos; + } +void SWModule_top(SWModule *self){ + (*self) = TOP; + } +void SWModule_bottom(SWModule *self){ + (*self) = BOTTOM; + } +char const *SWModule_text(SWModule *self){ + return (const char*)*self; + } +char const *SWModule_StripText(SWModule *self){ + return self->StripText(); + } +void SWModule_write(SWModule *self,char const *text){ + (*self)<Persist(persists); + } +void SWKey_next(SWKey *self){ + (*self)++; + } +void SWKey_prev(SWKey *self){ + (*self)++; + } +void SWKey_setKey(SWKey *self,SWKey const *key){ + self->copyFrom(*key); + } +static int _wrap_propset_SWKey(zend_property_reference *property_reference, pval *value); +static int _propset_SWKey(zend_property_reference *property_reference, pval *value); +static pval _wrap_propget_SWKey(zend_property_reference *property_reference); +static int _propget_SWKey(zend_property_reference *property_reference, pval *value); + + #include "versekey.h" + +static int _wrap_propset_VerseKey(zend_property_reference *property_reference, pval *value); +static int _propset_VerseKey(zend_property_reference *property_reference, pval *value); +static pval _wrap_propget_VerseKey(zend_property_reference *property_reference); +static int _propget_VerseKey(zend_property_reference *property_reference, pval *value); + +#include "listkey.h" + +unsigned char ListKey_SetToElement(ListKey *self,int element){ + return self->SetToElement(element, SW_POSITION(((char)1))); + } +static int _wrap_propset_ListKey(zend_property_reference *property_reference, pval *value); +static int _propset_ListKey(zend_property_reference *property_reference, pval *value); +static pval _wrap_propget_ListKey(zend_property_reference *property_reference); +static int _propget_ListKey(zend_property_reference *property_reference, pval *value); + +#include "treekey.h" + +static int _wrap_propset_TreeKey(zend_property_reference *property_reference, pval *value); +static int _propset_TreeKey(zend_property_reference *property_reference, pval *value); +static pval _wrap_propget_TreeKey(zend_property_reference *property_reference); +static int _propget_TreeKey(zend_property_reference *property_reference, pval *value); + +#include "treekeyidx.h" + +static int _wrap_propset_TreeKeyIdx(zend_property_reference *property_reference, pval *value); +static int _propset_TreeKeyIdx(zend_property_reference *property_reference, pval *value); +static pval _wrap_propget_TreeKeyIdx(zend_property_reference *property_reference); +static int _propget_TreeKeyIdx(zend_property_reference *property_reference, pval *value); + +#include + +LocaleMgr *const LocaleMgr_systemLocaleMgr(LocaleMgr *self){ + return &(LocaleMgr::systemLocaleMgr); + } +static int _wrap_propset_LocaleMgr(zend_property_reference *property_reference, pval *value); +static int _propset_LocaleMgr(zend_property_reference *property_reference, pval *value); +static pval _wrap_propget_LocaleMgr(zend_property_reference *property_reference); +static int _propget_LocaleMgr(zend_property_reference *property_reference, pval *value); + +#include + +static int _wrap_propset_SWFilterMgr(zend_property_reference *property_reference, pval *value); +static int _propset_SWFilterMgr(zend_property_reference *property_reference, pval *value); +static pval _wrap_propget_SWFilterMgr(zend_property_reference *property_reference); +static int _propget_SWFilterMgr(zend_property_reference *property_reference, pval *value); + + #include "swtext.h" + +static int _wrap_propset_SWText(zend_property_reference *property_reference, pval *value); +static int _propset_SWText(zend_property_reference *property_reference, pval *value); +static pval _wrap_propget_SWText(zend_property_reference *property_reference); +static int _propget_SWText(zend_property_reference *property_reference, pval *value); + + #include "rawtext.h" + +static int _wrap_propset_RawText(zend_property_reference *property_reference, pval *value); +static int _propset_RawText(zend_property_reference *property_reference, pval *value); +static pval _wrap_propget_RawText(zend_property_reference *property_reference); +static int _propget_RawText(zend_property_reference *property_reference, pval *value); + + #include "ztext.h" + +static int _wrap_propset_zText(zend_property_reference *property_reference, pval *value); +static int _propset_zText(zend_property_reference *property_reference, pval *value); +static pval _wrap_propget_zText(zend_property_reference *property_reference); +static int _propget_zText(zend_property_reference *property_reference, pval *value); + + #include "swcom.h" + +static int _wrap_propset_SWCom(zend_property_reference *property_reference, pval *value); +static int _propset_SWCom(zend_property_reference *property_reference, pval *value); +static pval _wrap_propget_SWCom(zend_property_reference *property_reference); +static int _propget_SWCom(zend_property_reference *property_reference, pval *value); + + #include "rawcom.h" + +static int _wrap_propset_RawCom(zend_property_reference *property_reference, pval *value); +static int _propset_RawCom(zend_property_reference *property_reference, pval *value); +static pval _wrap_propget_RawCom(zend_property_reference *property_reference); +static int _propget_RawCom(zend_property_reference *property_reference, pval *value); + + #include "zcom.h" + +static int _wrap_propset_zCom(zend_property_reference *property_reference, pval *value); +static int _propset_zCom(zend_property_reference *property_reference, pval *value); +static pval _wrap_propget_zCom(zend_property_reference *property_reference); +static int _propget_zCom(zend_property_reference *property_reference, pval *value); + + #include "swgenbook.h" + +static int _wrap_propset_SWGenBook(zend_property_reference *property_reference, pval *value); +static int _propset_SWGenBook(zend_property_reference *property_reference, pval *value); +static pval _wrap_propget_SWGenBook(zend_property_reference *property_reference); +static int _propget_SWGenBook(zend_property_reference *property_reference, pval *value); + + #include "rawgenbook.h" + +static int _wrap_propset_RawGenBook(zend_property_reference *property_reference, pval *value); +static int _propset_RawGenBook(zend_property_reference *property_reference, pval *value); +static pval _wrap_propget_RawGenBook(zend_property_reference *property_reference); +static int _propget_RawGenBook(zend_property_reference *property_reference, pval *value); + + #include "swld.h" + +static int _wrap_propset_SWLD(zend_property_reference *property_reference, pval *value); +static int _propset_SWLD(zend_property_reference *property_reference, pval *value); +static pval _wrap_propget_SWLD(zend_property_reference *property_reference); +static int _propget_SWLD(zend_property_reference *property_reference, pval *value); + + #include "rawld.h" + +static int _wrap_propset_RawLD(zend_property_reference *property_reference, pval *value); +static int _propset_RawLD(zend_property_reference *property_reference, pval *value); +static pval _wrap_propget_RawLD(zend_property_reference *property_reference); +static int _propget_RawLD(zend_property_reference *property_reference, pval *value); + + #include "rawld4.h" + +static int _wrap_propset_RawLD4(zend_property_reference *property_reference, pval *value); +static int _propset_RawLD4(zend_property_reference *property_reference, pval *value); +static pval _wrap_propget_RawLD4(zend_property_reference *property_reference); +static int _propget_RawLD4(zend_property_reference *property_reference, pval *value); + + #include "zld.h" + +static int _wrap_propset_zLD(zend_property_reference *property_reference, pval *value); +static int _propset_zLD(zend_property_reference *property_reference, pval *value); +static pval _wrap_propget_zLD(zend_property_reference *property_reference); +static int _propget_zLD(zend_property_reference *property_reference, pval *value); + + #include + +static int _wrap_propset_SWCompress(zend_property_reference *property_reference, pval *value); +static int _propset_SWCompress(zend_property_reference *property_reference, pval *value); +static pval _wrap_propget_SWCompress(zend_property_reference *property_reference); +static int _propget_SWCompress(zend_property_reference *property_reference, pval *value); + + #include + +static int _wrap_propset_LZSSCompress(zend_property_reference *property_reference, pval *value); +static int _propset_LZSSCompress(zend_property_reference *property_reference, pval *value); +static pval _wrap_propget_LZSSCompress(zend_property_reference *property_reference); +static int _propget_LZSSCompress(zend_property_reference *property_reference, pval *value); + + #include + +static int _wrap_propset_ZipCompress(zend_property_reference *property_reference, pval *value); +static int _propset_ZipCompress(zend_property_reference *property_reference, pval *value); +static pval _wrap_propget_ZipCompress(zend_property_reference *property_reference); +static int _propget_ZipCompress(zend_property_reference *property_reference, pval *value); +/* class entry subsection */ +// Function entries for SWConfig +static zend_function_entry SWConfig_functions[] = { + ZEND_NAMED_FE(swconfig, + _wrap_new_SWConfig, NULL) + ZEND_NAMED_FE(load, + _wrap_SWConfig_Load, NULL) + ZEND_NAMED_FE(save, + _wrap_SWConfig_Save, NULL) + ZEND_NAMED_FE(set, + _wrap_SWConfig_set, NULL) + ZEND_NAMED_FE(get, + _wrap_SWConfig_get, NULL) + { NULL, NULL, NULL} +}; +// Function entries for SWMgr +static zend_function_entry SWMgr_functions[] = { + ZEND_NAMED_FE(findconfig, + _wrap_SWMgr_findConfig, NULL) + ZEND_NAMED_FE(swmgr, + _wrap_new_SWMgr, NULL) + ZEND_NAMED_FE(load, + _wrap_SWMgr_Load, NULL) + ZEND_NAMED_FE(setglobaloption, + _wrap_SWMgr_setGlobalOption, NULL) + ZEND_NAMED_FE(getglobaloption, + _wrap_SWMgr_getGlobalOption, NULL) + ZEND_NAMED_FE(getglobaloptiontip, + _wrap_SWMgr_getGlobalOptionTip, NULL) + ZEND_NAMED_FE(getglobaloptions, + _wrap_SWMgr_getGlobalOptions, NULL) + ZEND_NAMED_FE(getglobaloptionvalues, + _wrap_SWMgr_getGlobalOptionValues, NULL) + ZEND_NAMED_FE(setcipherkey, + _wrap_SWMgr_setCipherKey, NULL) + ZEND_NAMED_FE(module, + _wrap_SWMgr_module, NULL) + { NULL, NULL, NULL} +}; +// Function entries for SWModule +static zend_function_entry SWModule_functions[] = { + ZEND_NAMED_FE(swmodule, + _wrap_new_SWModule, NULL) + ZEND_NAMED_FE(error, + _wrap_SWModule_Error, NULL) + ZEND_NAMED_FE(isunicode, + _wrap_SWModule_isUnicode, NULL) + ZEND_NAMED_FE(getconfig, + _wrap_SWModule_getConfig, NULL) + ZEND_NAMED_FE(getconfigentry, + _wrap_SWModule_getConfigEntry, NULL) + ZEND_NAMED_FE(setkey, + _wrap_SWModule_SetKey, NULL) + ZEND_NAMED_FE(key, + _wrap_SWModule_Key, NULL) + ZEND_NAMED_FE(createkey, + _wrap_SWModule_CreateKey, NULL) + ZEND_NAMED_FE(keytext, + _wrap_SWModule_KeyText, NULL) + ZEND_NAMED_FE(display, + _wrap_SWModule_Display, NULL) + ZEND_NAMED_FE(nullpercent, + _wrap_SWModule_nullPercent, NULL) + ZEND_NAMED_FE(search, + _wrap_SWModule_Search, NULL) + ZEND_NAMED_FE(createsearchframework, + _wrap_SWModule_createSearchFramework, NULL) + ZEND_NAMED_FE(hassearchframework, + _wrap_SWModule_hasSearchFramework, NULL) + ZEND_NAMED_FE(issearchoptimallysupported, + _wrap_SWModule_isSearchOptimallySupported, NULL) + ZEND_NAMED_FE(next, + _wrap_SWModule_next, NULL) + ZEND_NAMED_FE(prev, + _wrap_SWModule_prev, NULL) + ZEND_NAMED_FE(inc, + _wrap_SWModule_inc, NULL) + ZEND_NAMED_FE(dec, + _wrap_SWModule_dec, NULL) + ZEND_NAMED_FE(setposition, + _wrap_SWModule_setPosition, NULL) + ZEND_NAMED_FE(top, + _wrap_SWModule_top, NULL) + ZEND_NAMED_FE(bottom, + _wrap_SWModule_bottom, NULL) + ZEND_NAMED_FE(text, + _wrap_SWModule_text, NULL) + ZEND_NAMED_FE(striptext, + _wrap_SWModule_StripText, NULL) + ZEND_NAMED_FE(getrawentry, + _wrap_SWModule_getRawEntry, NULL) + ZEND_NAMED_FE(setskipconsecutivelinks, + _wrap_SWModule_setSkipConsecutiveLinks, NULL) + ZEND_NAMED_FE(getskipconsecutivelinks, + _wrap_SWModule_getSkipConsecutiveLinks, NULL) + ZEND_NAMED_FE(getentryattributes, + _wrap_SWModule_getEntryAttributes, NULL) + ZEND_NAMED_FE(processentryattributes, + _wrap_SWModule_processEntryAttributes, NULL) + ZEND_NAMED_FE(isprocessentryattributes, + _wrap_SWModule_isProcessEntryAttributes, NULL) + ZEND_NAMED_FE(name, + _wrap_SWModule_Name, NULL) + ZEND_NAMED_FE(description, + _wrap_SWModule_Description, NULL) + ZEND_NAMED_FE(type, + _wrap_SWModule_Type, NULL) + ZEND_NAMED_FE(direction, + _wrap_SWModule_Direction, NULL) + ZEND_NAMED_FE(encoding, + _wrap_SWModule_Encoding, NULL) + ZEND_NAMED_FE(markup, + _wrap_SWModule_Markup, NULL) + ZEND_NAMED_FE(lang, + _wrap_SWModule_Lang, NULL) + ZEND_NAMED_FE(iswritable, + _wrap_SWModule_isWritable, NULL) + ZEND_NAMED_FE(createmodule, + _wrap_SWModule_createModule, NULL) + ZEND_NAMED_FE(setentry, + _wrap_SWModule_setEntry, NULL) + ZEND_NAMED_FE(deleteentry, + _wrap_SWModule_deleteEntry, NULL) + ZEND_NAMED_FE(write, + _wrap_SWModule_write, NULL) + ZEND_NAMED_FE(writelink, + _wrap_SWModule_writeLink, NULL) + { NULL, NULL, NULL} +}; +// Function entries for SW_POSITION +static zend_function_entry SW_POSITION_functions[] = { + ZEND_NAMED_FE(sw_position, + _wrap_new_SW_POSITION, NULL) + { NULL, NULL, NULL} +}; +// Function entries for SWKey +static zend_function_entry SWKey_functions[] = { + ZEND_NAMED_FE(swkey, + _wrap_new_SWKey, NULL) + ZEND_NAMED_FE(clone, + _wrap_SWKey_clone, NULL) + ZEND_NAMED_FE(persist, + _wrap_SWKey_Persist, NULL) + ZEND_NAMED_FE(setpersist, + _wrap_SWKey_setPersist, NULL) + ZEND_NAMED_FE(error, + _wrap_SWKey_Error, NULL) + ZEND_NAMED_FE(settext, + _wrap_SWKey_setText, NULL) + ZEND_NAMED_FE(gettext, + _wrap_SWKey_getText, NULL) + ZEND_NAMED_FE(getshorttext, + _wrap_SWKey_getShortText, NULL) + ZEND_NAMED_FE(compare, + _wrap_SWKey_compare, NULL) + ZEND_NAMED_FE(equals, + _wrap_SWKey_equals, NULL) + ZEND_NAMED_FE(decrement, + _wrap_SWKey_decrement, NULL) + ZEND_NAMED_FE(increment, + _wrap_SWKey_increment, NULL) + ZEND_NAMED_FE(traversable, + _wrap_SWKey_Traversable, NULL) + ZEND_NAMED_FE(index, + _wrap_SWKey_Index, NULL) + ZEND_NAMED_FE(next, + _wrap_SWKey_next, NULL) + ZEND_NAMED_FE(prev, + _wrap_SWKey_prev, NULL) + ZEND_NAMED_FE(setkey, + _wrap_SWKey_setKey, NULL) + { NULL, NULL, NULL} +}; +// Function entries for VerseKey +static zend_function_entry VerseKey_functions[] = { + ZEND_NAMED_FE(versekey, + _wrap_new_VerseKey, NULL) + ZEND_NAMED_FE(clone, + _wrap_VerseKey_clone, NULL) + ZEND_NAMED_FE(lowerbound, + _wrap_VerseKey_LowerBound, NULL) + ZEND_NAMED_FE(upperbound, + _wrap_VerseKey_UpperBound, NULL) + ZEND_NAMED_FE(clearbounds, + _wrap_VerseKey_ClearBounds, NULL) + ZEND_NAMED_FE(decrement, + _wrap_VerseKey_decrement, NULL) + ZEND_NAMED_FE(increment, + _wrap_VerseKey_increment, NULL) + ZEND_NAMED_FE(traversable, + _wrap_VerseKey_Traversable, NULL) + ZEND_NAMED_FE(getbookname, + _wrap_VerseKey_getBookName, NULL) + ZEND_NAMED_FE(getbookabbrev, + _wrap_VerseKey_getBookAbbrev, NULL) + ZEND_NAMED_FE(testament, + _wrap_VerseKey_Testament, NULL) + ZEND_NAMED_FE(book, + _wrap_VerseKey_Book, NULL) + ZEND_NAMED_FE(chapter, + _wrap_VerseKey_Chapter, NULL) + ZEND_NAMED_FE(verse, + _wrap_VerseKey_Verse, NULL) + ZEND_NAMED_FE(normalize, + _wrap_VerseKey_Normalize, NULL) + ZEND_NAMED_FE(autonormalize, + _wrap_VerseKey_AutoNormalize, NULL) + ZEND_NAMED_FE(headings, + _wrap_VerseKey_Headings, NULL) + ZEND_NAMED_FE(getosisref, + _wrap_VerseKey_getOSISRef, NULL) + ZEND_NAMED_FE(compare, + _wrap_VerseKey_compare, NULL) + ZEND_NAMED_FE(_compare, + _wrap_VerseKey__compare, NULL) + ZEND_NAMED_FE(setlocale, + _wrap_VerseKey_setLocale, NULL) + ZEND_NAMED_FE(getlocale, + _wrap_VerseKey_getLocale, NULL) + { NULL, NULL, NULL} +}; +// Function entries for ListKey +static zend_function_entry ListKey_functions[] = { + ZEND_NAMED_FE(listkey, + _wrap_new_ListKey, NULL) + ZEND_NAMED_FE(clone, + _wrap_ListKey_clone, NULL) + ZEND_NAMED_FE(clearlist, + _wrap_ListKey_ClearList, NULL) + ZEND_NAMED_FE(count, + _wrap_ListKey_Count, NULL) + ZEND_NAMED_FE(remove, + _wrap_ListKey_Remove, NULL) + ZEND_NAMED_FE(settoelement, + _wrap_ListKey_SetToElement, NULL) + ZEND_NAMED_FE(getelement, + _wrap_ListKey_GetElement, NULL) + ZEND_NAMED_FE(add, + _wrap_ListKey_add, NULL) + ZEND_NAMED_FE(copyfrom, + _wrap_ListKey_copyFrom, NULL) + ZEND_NAMED_FE(setposition, + _wrap_ListKey_setPosition, NULL) + ZEND_NAMED_FE(decrement, + _wrap_ListKey_decrement, NULL) + ZEND_NAMED_FE(increment, + _wrap_ListKey_increment, NULL) + ZEND_NAMED_FE(traversable, + _wrap_ListKey_Traversable, NULL) + ZEND_NAMED_FE(index, + _wrap_ListKey_Index, NULL) + { NULL, NULL, NULL} +}; +// Function entries for TreeKey +static zend_function_entry TreeKey_functions[] = { + ZEND_NAMED_FE(getlocalname, + _wrap_TreeKey_getLocalName, NULL) + ZEND_NAMED_FE(setlocalname, + _wrap_TreeKey_setLocalName, NULL) + ZEND_NAMED_FE(getuserdata, + _wrap_TreeKey_getUserData, NULL) + ZEND_NAMED_FE(setuserdata, + _wrap_TreeKey_setUserData, NULL) + ZEND_NAMED_FE(getfullname, + _wrap_TreeKey_getFullName, NULL) + ZEND_NAMED_FE(root, + _wrap_TreeKey_root, NULL) + ZEND_NAMED_FE(parent, + _wrap_TreeKey_parent, NULL) + ZEND_NAMED_FE(firstchild, + _wrap_TreeKey_firstChild, NULL) + ZEND_NAMED_FE(nextsibling, + _wrap_TreeKey_nextSibling, NULL) + ZEND_NAMED_FE(previoussibling, + _wrap_TreeKey_previousSibling, NULL) + ZEND_NAMED_FE(haschildren, + _wrap_TreeKey_hasChildren, NULL) + ZEND_NAMED_FE(append, + _wrap_TreeKey_append, NULL) + ZEND_NAMED_FE(appendchild, + _wrap_TreeKey_appendChild, NULL) + ZEND_NAMED_FE(insertbefore, + _wrap_TreeKey_insertBefore, NULL) + ZEND_NAMED_FE(remove, + _wrap_TreeKey_remove, NULL) + ZEND_NAMED_FE(setoffset, + _wrap_TreeKey_setOffset, NULL) + ZEND_NAMED_FE(getoffset, + _wrap_TreeKey_getOffset, NULL) + ZEND_NAMED_FE(setposition, + _wrap_TreeKey_setPosition, NULL) + ZEND_NAMED_FE(traversable, + _wrap_TreeKey_Traversable, NULL) + ZEND_NAMED_FE(index, + _wrap_TreeKey_Index, NULL) + ZEND_NAMED_FE(treekey, + _wrap_new_TreeKey, NULL) + { NULL, NULL, NULL} +}; +// Function entries for TreeKeyIdx +static zend_function_entry TreeKeyIdx_functions[] = { + ZEND_NAMED_FE(treekeyidx, + _wrap_new_TreeKeyIdx, NULL) + { NULL, NULL, NULL} +}; +// Function entries for LocaleMgr +static zend_function_entry LocaleMgr_functions[] = { + ZEND_NAMED_FE(localemgr, + _wrap_new_LocaleMgr, NULL) + ZEND_NAMED_FE(getlocale, + _wrap_LocaleMgr_getLocale, NULL) + ZEND_NAMED_FE(getavailablelocales, + _wrap_LocaleMgr_getAvailableLocales, NULL) + ZEND_NAMED_FE(getdefaultlocalename, + _wrap_LocaleMgr_getDefaultLocaleName, NULL) + ZEND_NAMED_FE(setdefaultlocalename, + _wrap_LocaleMgr_setDefaultLocaleName, NULL) + ZEND_NAMED_FE(systemlocalemgr, + _wrap_LocaleMgr_systemLocaleMgr, NULL) + { NULL, NULL, NULL} +}; +// Function entries for SWFilterMgr +static zend_function_entry SWFilterMgr_functions[] = { + ZEND_NAMED_FE(swfiltermgr, + _wrap_new_SWFilterMgr, NULL) + { NULL, NULL, NULL} +}; +// Function entries for SWText +static zend_function_entry SWText_functions[] = { + ZEND_NAMED_FE(swtext, + _wrap_new_SWText, NULL) + { NULL, NULL, NULL} +}; +// Function entries for RawText +static zend_function_entry RawText_functions[] = { + ZEND_NAMED_FE(rawtext, + _wrap_new_RawText, NULL) + ZEND_NAMED_FE(createmodule, + _wrap_RawText_createModule, NULL) + { NULL, NULL, NULL} +}; +// Function entries for zText +static zend_function_entry zText_functions[] = { + ZEND_NAMED_FE(ztext, + _wrap_new_zText, NULL) + ZEND_NAMED_FE(createmodule, + _wrap_zText_createModule, NULL) + { NULL, NULL, NULL} +}; +// Function entries for SWCom +static zend_function_entry SWCom_functions[] = { + ZEND_NAMED_FE(swcom, + _wrap_new_SWCom, NULL) + { NULL, NULL, NULL} +}; +// Function entries for RawCom +static zend_function_entry RawCom_functions[] = { + ZEND_NAMED_FE(rawcom, + _wrap_new_RawCom, NULL) + { NULL, NULL, NULL} +}; +// Function entries for zCom +static zend_function_entry zCom_functions[] = { + ZEND_NAMED_FE(zcom, + _wrap_new_zCom, NULL) + { NULL, NULL, NULL} +}; +// Function entries for SWGenBook +static zend_function_entry SWGenBook_functions[] = { + ZEND_NAMED_FE(swgenbook, + _wrap_new_SWGenBook, NULL) + { NULL, NULL, NULL} +}; +// Function entries for RawGenBook +static zend_function_entry RawGenBook_functions[] = { + ZEND_NAMED_FE(rawgenbook, + _wrap_new_RawGenBook, NULL) + ZEND_NAMED_FE(createmodule, + _wrap_RawGenBook_createModule, NULL) + { NULL, NULL, NULL} +}; +// Function entries for SWLD +static zend_function_entry SWLD_functions[] = { + ZEND_NAMED_FE(swld, + _wrap_new_SWLD, NULL) + { NULL, NULL, NULL} +}; +// Function entries for RawLD +static zend_function_entry RawLD_functions[] = { + ZEND_NAMED_FE(rawld, + _wrap_new_RawLD, NULL) + ZEND_NAMED_FE(createmodule, + _wrap_RawLD_createModule, NULL) + { NULL, NULL, NULL} +}; +// Function entries for RawLD4 +static zend_function_entry RawLD4_functions[] = { + ZEND_NAMED_FE(rawld4, + _wrap_new_RawLD4, NULL) + ZEND_NAMED_FE(createmodule, + _wrap_RawLD4_createModule, NULL) + { NULL, NULL, NULL} +}; +// Function entries for zLD +static zend_function_entry zLD_functions[] = { + ZEND_NAMED_FE(zld, + _wrap_new_zLD, NULL) + ZEND_NAMED_FE(createmodule, + _wrap_zLD_createModule, NULL) + { NULL, NULL, NULL} +}; +// Function entries for SWCompress +static zend_function_entry SWCompress_functions[] = { + ZEND_NAMED_FE(swcompress, + _wrap_new_SWCompress, NULL) + ZEND_NAMED_FE(buf, + _wrap_SWCompress_Buf, NULL) + ZEND_NAMED_FE(zbuf, + _wrap_SWCompress_zBuf, NULL) + ZEND_NAMED_FE(getchars, + _wrap_SWCompress_GetChars, NULL) + ZEND_NAMED_FE(sendchars, + _wrap_SWCompress_SendChars, NULL) + ZEND_NAMED_FE(encode, + _wrap_SWCompress_Encode, NULL) + ZEND_NAMED_FE(decode, + _wrap_SWCompress_Decode, NULL) + { NULL, NULL, NULL} +}; +// Function entries for LZSSCompress +static zend_function_entry LZSSCompress_functions[] = { + ZEND_NAMED_FE(lzsscompress, + _wrap_new_LZSSCompress, NULL) + ZEND_NAMED_FE(encode, + _wrap_LZSSCompress_Encode, NULL) + ZEND_NAMED_FE(decode, + _wrap_LZSSCompress_Decode, NULL) + { NULL, NULL, NULL} +}; +// Function entries for ZipCompress +static zend_function_entry ZipCompress_functions[] = { + ZEND_NAMED_FE(zipcompress, + _wrap_new_ZipCompress, NULL) + ZEND_NAMED_FE(encode, + _wrap_ZipCompress_Encode, NULL) + ZEND_NAMED_FE(decode, + _wrap_ZipCompress_Decode, NULL) + { NULL, NULL, NULL} +}; + + +/* entry subsection */ +/* Every non-class user visible function must have an entry here */ +function_entry Sword_functions[] = { + {NULL, NULL, NULL} +}; + +zend_module_entry Sword_module_entry = { +#if ZEND_MODULE_API_NO > 20010900 + STANDARD_MODULE_HEADER, +#endif + "Sword", + Sword_functions, + PHP_MINIT(Sword), + PHP_MSHUTDOWN(Sword), + PHP_RINIT(Sword), + PHP_RSHUTDOWN(Sword), + PHP_MINFO(Sword), +#if ZEND_MODULE_API_NO > 20010900 + NO_VERSION_YET, +#endif + STANDARD_MODULE_PROPERTIES +}; +zend_module_entry* SWIG_module_entry = &Sword_module_entry; + + +/* -------- TYPE CONVERSION AND EQUIVALENCE RULES (BEGIN) -------- */ + +static void *_p_zComTo_p_SWCom(void *x) { + return (void *)((SWCom *) ((zCom *) x)); +} +static void *_p_RawComTo_p_SWCom(void *x) { + return (void *)((SWCom *) ((RawCom *) x)); +} +static void *_p_TreeKeyIdxTo_p_TreeKey(void *x) { + return (void *)((TreeKey *) ((TreeKeyIdx *) x)); +} +static void *_p_RawTextTo_p_SWText(void *x) { + return (void *)((SWText *) ((RawText *) x)); +} +static void *_p_zTextTo_p_SWText(void *x) { + return (void *)((SWText *) ((zText *) x)); +} +static void *_p_ListKeyTo_p_SWKey(void *x) { + return (void *)((SWKey *) ((ListKey *) x)); +} +static void *_p_TreeKeyIdxTo_p_SWKey(void *x) { + return (void *)((SWKey *) (TreeKey *) ((TreeKeyIdx *) x)); +} +static void *_p_VerseKeyTo_p_SWKey(void *x) { + return (void *)((SWKey *) ((VerseKey *) x)); +} +static void *_p_TreeKeyTo_p_SWKey(void *x) { + return (void *)((SWKey *) ((TreeKey *) x)); +} +static void *_p_LZSSCompressTo_p_SWCompress(void *x) { + return (void *)((SWCompress *) ((LZSSCompress *) x)); +} +static void *_p_ZipCompressTo_p_SWCompress(void *x) { + return (void *)((SWCompress *) ((ZipCompress *) x)); +} +static void *_p_SWComTo_p_SWModule(void *x) { + return (void *)((SWModule *) ((SWCom *) x)); +} +static void *_p_zLDTo_p_SWModule(void *x) { + return (void *)((SWModule *) (SWLD *) ((zLD *) x)); +} +static void *_p_SWTextTo_p_SWModule(void *x) { + return (void *)((SWModule *) ((SWText *) x)); +} +static void *_p_SWGenBookTo_p_SWModule(void *x) { + return (void *)((SWModule *) ((SWGenBook *) x)); +} +static void *_p_RawGenBookTo_p_SWModule(void *x) { + return (void *)((SWModule *) (SWGenBook *) ((RawGenBook *) x)); +} +static void *_p_RawTextTo_p_SWModule(void *x) { + return (void *)((SWModule *) (SWText *) ((RawText *) x)); +} +static void *_p_zComTo_p_SWModule(void *x) { + return (void *)((SWModule *) (SWCom *) ((zCom *) x)); +} +static void *_p_RawLD4To_p_SWModule(void *x) { + return (void *)((SWModule *) (SWLD *) ((RawLD4 *) x)); +} +static void *_p_zTextTo_p_SWModule(void *x) { + return (void *)((SWModule *) (SWText *) ((zText *) x)); +} +static void *_p_RawComTo_p_SWModule(void *x) { + return (void *)((SWModule *) (SWCom *) ((RawCom *) x)); +} +static void *_p_SWLDTo_p_SWModule(void *x) { + return (void *)((SWModule *) ((SWLD *) x)); +} +static void *_p_RawLDTo_p_SWModule(void *x) { + return (void *)((SWModule *) (SWLD *) ((RawLD *) x)); +} +static void *_p_RawGenBookTo_p_SWGenBook(void *x) { + return (void *)((SWGenBook *) ((RawGenBook *) x)); +} +static void *_p_zLDTo_p_SWLD(void *x) { + return (void *)((SWLD *) ((zLD *) x)); +} +static void *_p_RawLD4To_p_SWLD(void *x) { + return (void *)((SWLD *) ((RawLD4 *) x)); +} +static void *_p_RawLDTo_p_SWLD(void *x) { + return (void *)((SWLD *) ((RawLD *) x)); +} +static swig_type_info _swigt__p_SWLocale[] = {{"_p_SWLocale", 0, "SWLocale *", 0},{"_p_SWLocale"},{0}}; +static swig_type_info _swigt__p_SWMgr[] = {{"_p_SWMgr", 0, "SWMgr *", 0},{"_p_SWMgr"},{0}}; +static swig_type_info _swigt__p_SWCom[] = {{"_p_SWCom", 0, "SWCom *", 0},{"_p_zCom", _p_zComTo_p_SWCom},{"_p_SWCom"},{"_p_RawCom", _p_RawComTo_p_SWCom},{0}}; +static swig_type_info _swigt__p_RawLD4[] = {{"_p_RawLD4", 0, "RawLD4 *", 0},{"_p_RawLD4"},{0}}; +static swig_type_info _swigt__p_ListKey[] = {{"_p_ListKey", 0, "ListKey *", 0},{"_p_ListKey"},{0}}; +static swig_type_info _swigt__p_SWKey[] = {{"_p_SWKey", 0, "SWKey *", 0},{"_p_SWKey"},{"_p_ListKey", _p_ListKeyTo_p_SWKey},{"_p_TreeKeyIdx", _p_TreeKeyIdxTo_p_SWKey},{"_p_VerseKey", _p_VerseKeyTo_p_SWKey},{"_p_TreeKey", _p_TreeKeyTo_p_SWKey},{0}}; +static swig_type_info _swigt__p_ConfigEntMap[] = {{"_p_ConfigEntMap", 0, "ConfigEntMap const &", 0},{"_p_ConfigEntMap"},{0}}; +static swig_type_info _swigt__p_p_char[] = {{"_p_p_char", 0, "char **", 0},{"_p_p_char"},{0}}; +static swig_type_info _swigt__p_RawLD[] = {{"_p_RawLD", 0, "RawLD *", 0},{"_p_RawLD"},{0}}; +static swig_type_info _swigt__p_TreeKey[] = {{"_p_TreeKey", 0, "TreeKey *", 0},{"_p_TreeKeyIdx", _p_TreeKeyIdxTo_p_TreeKey},{"_p_TreeKey"},{0}}; +static swig_type_info _swigt__p_bool[] = {{"_p_bool", 0, "bool *", 0},{"_p_bool"},{0}}; +static swig_type_info _swigt__p_void[] = {{"_p_void", 0, "void *", 0},{"_p_void"},{0}}; +static swig_type_info _swigt__p_SWFilterMgr[] = {{"_p_SWFilterMgr", 0, "SWFilterMgr *", 0},{"_p_SWFilterMgr"},{0}}; +static swig_type_info _swigt__p_SWLD[] = {{"_p_SWLD", 0, "SWLD *", 0},{"_p_zLD", _p_zLDTo_p_SWLD},{"_p_SWLD"},{"_p_RawLD4", _p_RawLD4To_p_SWLD},{"_p_RawLD", _p_RawLDTo_p_SWLD},{0}}; +static swig_type_info _swigt__p_SWTextDirection[] = {{"_p_SWTextDirection", 0, "SWTextDirection *", 0},{"_p_SWTextDirection"},{0}}; +static swig_type_info _swigt__p_RawText[] = {{"_p_RawText", 0, "RawText *", 0},{"_p_RawText"},{0}}; +static swig_type_info _swigt__p_f_char_p_void__void[] = {{"_p_f_char_p_void__void", 0, "void (*)(char,void *)", 0},{"_p_f_char_p_void__void"},{0}}; +static swig_type_info _swigt__p_VerseKey[] = {{"_p_VerseKey", 0, "VerseKey *", 0},{"_p_VerseKey"},{0}}; +static swig_type_info _swigt__p_ModMap[] = {{"_p_ModMap", 0, "ModMap *", 0},{"_p_ModMap"},{0}}; +static swig_type_info _swigt__p_string[] = {{"_p_string", 0, "string *", 0},{"_p_string"},{0}}; +static swig_type_info _swigt__p_SectionMap[] = {{"_p_SectionMap", 0, "SectionMap *", 0},{"_p_SectionMap"},{0}}; +static swig_type_info _swigt__p_SWDisplay[] = {{"_p_SWDisplay", 0, "SWDisplay *", 0},{"_p_SWDisplay"},{0}}; +static swig_type_info _swigt__p_AttributeTypeList[] = {{"_p_AttributeTypeList", 0, "AttributeTypeList *", 0},{"_p_AttributeTypeList"},{0}}; +static swig_type_info _swigt__p_SWText[] = {{"_p_SWText", 0, "SWText *", 0},{"_p_SWText"},{"_p_RawText", _p_RawTextTo_p_SWText},{"_p_zText", _p_zTextTo_p_SWText},{0}}; +static swig_type_info _swigt__p_SWCompress[] = {{"_p_SWCompress", 0, "SWCompress *", 0},{"_p_SWCompress"},{"_p_LZSSCompress", _p_LZSSCompressTo_p_SWCompress},{"_p_ZipCompress", _p_ZipCompressTo_p_SWCompress},{0}}; +static swig_type_info _swigt__p_LZSSCompress[] = {{"_p_LZSSCompress", 0, "LZSSCompress *", 0},{"_p_LZSSCompress"},{0}}; +static swig_type_info _swigt__p_ZipCompress[] = {{"_p_ZipCompress", 0, "ZipCompress *", 0},{"_p_ZipCompress"},{0}}; +static swig_type_info _swigt__p_SW_POSITION[] = {{"_p_SW_POSITION", 0, "SW_POSITION *", 0},{"_p_SW_POSITION"},{0}}; +static swig_type_info _swigt__p_SWModule[] = {{"_p_SWModule", 0, "SWModule *", 0},{"_p_SWModule"},{"_p_SWGenBook", _p_SWGenBookTo_p_SWModule},{"_p_RawGenBook", _p_RawGenBookTo_p_SWModule},{"_p_SWText", _p_SWTextTo_p_SWModule},{"_p_RawText", _p_RawTextTo_p_SWModule},{"_p_zLD", _p_zLDTo_p_SWModule},{"_p_zCom", _p_zComTo_p_SWModule},{"_p_zText", _p_zTextTo_p_SWModule},{"_p_RawLD4", _p_RawLD4To_p_SWModule},{"_p_SWLD", _p_SWLDTo_p_SWModule},{"_p_RawLD", _p_RawLDTo_p_SWModule},{"_p_SWCom", _p_SWComTo_p_SWModule},{"_p_RawCom", _p_RawComTo_p_SWModule},{0}}; +static swig_type_info _swigt__p_zLD[] = {{"_p_zLD", 0, "zLD *", 0},{"_p_zLD"},{0}}; +static swig_type_info _swigt__p_SWGenBook[] = {{"_p_SWGenBook", 0, "SWGenBook *", 0},{"_p_SWGenBook"},{"_p_RawGenBook", _p_RawGenBookTo_p_SWGenBook},{0}}; +static swig_type_info _swigt__p_RawGenBook[] = {{"_p_RawGenBook", 0, "RawGenBook *", 0},{"_p_RawGenBook"},{0}}; +static swig_type_info _swigt__p_SWConfig[] = {{"_p_SWConfig", 0, "SWConfig *", 0},{"_p_SWConfig"},{0}}; +static swig_type_info _swigt__p_LocaleMgr[] = {{"_p_LocaleMgr", 0, "LocaleMgr *", 0},{"_p_LocaleMgr"},{0}}; +static swig_type_info _swigt__p_int[] = {{"_p_int", 0, "int *", 0},{"_p_int"},{0}}; +static swig_type_info _swigt__p_SWTextMarkup[] = {{"_p_SWTextMarkup", 0, "SWTextMarkup *", 0},{"_p_SWTextMarkup"},{0}}; +static swig_type_info _swigt__p_OptionsList[] = {{"_p_OptionsList", 0, "OptionsList *", 0},{"_p_listTstring_t"},{"_p_OptionsList"},{0}}; +static swig_type_info _swigt__p_listTstring_t[] = {{"_p_listTstring_t", 0, "list *", 0},{"_p_listTstring_t"},{"_p_OptionsList"},{0}}; +static swig_type_info _swigt__p_zText[] = {{"_p_zText", 0, "zText *", 0},{"_p_zText"},{0}}; +static swig_type_info _swigt__p_SWTextEncoding[] = {{"_p_SWTextEncoding", 0, "SWTextEncoding *", 0},{"_p_SWTextEncoding"},{0}}; +static swig_type_info _swigt__p_unsigned_long[] = {{"_p_unsigned_long", 0, "unsigned long *", 0},{"_p_unsigned_long"},{0}}; + +static swig_type_info *swig_types_initial[] = { +_swigt__p_SWLocale, +_swigt__p_SWMgr, +_swigt__p_SWCom, +_swigt__p_RawLD4, +_swigt__p_ListKey, +_swigt__p_SWKey, +_swigt__p_ConfigEntMap, +_swigt__p_p_char, +_swigt__p_RawLD, +_swigt__p_TreeKey, +_swigt__p_bool, +_swigt__p_void, +_swigt__p_SWFilterMgr, +_swigt__p_SWLD, +_swigt__p_SWTextDirection, +_swigt__p_RawText, +_swigt__p_f_char_p_void__void, +_swigt__p_VerseKey, +_swigt__p_ModMap, +_swigt__p_string, +_swigt__p_SectionMap, +_swigt__p_SWDisplay, +_swigt__p_AttributeTypeList, +_swigt__p_SWText, +_swigt__p_SWCompress, +_swigt__p_LZSSCompress, +_swigt__p_ZipCompress, +_swigt__p_SW_POSITION, +_swigt__p_SWModule, +_swigt__p_zLD, +_swigt__p_SWGenBook, +_swigt__p_RawGenBook, +_swigt__p_SWConfig, +_swigt__p_LocaleMgr, +_swigt__p_int, +_swigt__p_SWTextMarkup, +_swigt__p_OptionsList, +_swigt__p_listTstring_t, +_swigt__p_zText, +_swigt__p_SWTextEncoding, +_swigt__p_unsigned_long, +0 +}; + + +/* -------- TYPE CONVERSION AND EQUIVALENCE RULES (END) -------- */ + +/* vdecl subsection */ +static zend_class_entry ce_swig_SWConfig; +static zend_class_entry* ptr_ce_swig_SWConfig=NULL; +static zend_class_entry ce_swig_SWMgr; +static zend_class_entry* ptr_ce_swig_SWMgr=NULL; +static zend_class_entry ce_swig_SWModule; +static zend_class_entry* ptr_ce_swig_SWModule=NULL; +static zend_class_entry ce_swig_SW_POSITION; +static zend_class_entry* ptr_ce_swig_SW_POSITION=NULL; +static zend_class_entry ce_swig_SWKey; +static zend_class_entry* ptr_ce_swig_SWKey=NULL; +static zend_class_entry ce_swig_VerseKey; +static zend_class_entry* ptr_ce_swig_VerseKey=NULL; +static zend_class_entry ce_swig_ListKey; +static zend_class_entry* ptr_ce_swig_ListKey=NULL; +static zend_class_entry ce_swig_TreeKey; +static zend_class_entry* ptr_ce_swig_TreeKey=NULL; +static zend_class_entry ce_swig_TreeKeyIdx; +static zend_class_entry* ptr_ce_swig_TreeKeyIdx=NULL; +static zend_class_entry ce_swig_LocaleMgr; +static zend_class_entry* ptr_ce_swig_LocaleMgr=NULL; +static zend_class_entry ce_swig_SWFilterMgr; +static zend_class_entry* ptr_ce_swig_SWFilterMgr=NULL; +static zend_class_entry ce_swig_SWText; +static zend_class_entry* ptr_ce_swig_SWText=NULL; +static zend_class_entry ce_swig_RawText; +static zend_class_entry* ptr_ce_swig_RawText=NULL; +static zend_class_entry ce_swig_zText; +static zend_class_entry* ptr_ce_swig_zText=NULL; +static zend_class_entry ce_swig_SWCom; +static zend_class_entry* ptr_ce_swig_SWCom=NULL; +static zend_class_entry ce_swig_RawCom; +static zend_class_entry* ptr_ce_swig_RawCom=NULL; +static zend_class_entry ce_swig_zCom; +static zend_class_entry* ptr_ce_swig_zCom=NULL; +static zend_class_entry ce_swig_SWGenBook; +static zend_class_entry* ptr_ce_swig_SWGenBook=NULL; +static zend_class_entry ce_swig_RawGenBook; +static zend_class_entry* ptr_ce_swig_RawGenBook=NULL; +static zend_class_entry ce_swig_SWLD; +static zend_class_entry* ptr_ce_swig_SWLD=NULL; +static zend_class_entry ce_swig_RawLD; +static zend_class_entry* ptr_ce_swig_RawLD=NULL; +static zend_class_entry ce_swig_RawLD4; +static zend_class_entry* ptr_ce_swig_RawLD4=NULL; +static zend_class_entry ce_swig_zLD; +static zend_class_entry* ptr_ce_swig_zLD=NULL; +static zend_class_entry ce_swig_SWCompress; +static zend_class_entry* ptr_ce_swig_SWCompress=NULL; +static zend_class_entry ce_swig_LZSSCompress; +static zend_class_entry* ptr_ce_swig_LZSSCompress=NULL; +static zend_class_entry ce_swig_ZipCompress; +static zend_class_entry* ptr_ce_swig_ZipCompress=NULL; +static int le_swig__p_SWLocale=0; // handle for +static int le_swig__p_SWMgr=0; // handle for SWMgr +static int le_swig__p_SWCom=0; // handle for SWCom +static int le_swig__p_RawLD4=0; // handle for RawLD4 +static int le_swig__p_ListKey=0; // handle for ListKey +static int le_swig__p_SWKey=0; // handle for SWKey +static int le_swig__p_ConfigEntMap=0; // handle for SWKey +static int le_swig__p_p_char=0; // handle for SWKey +static int le_swig__p_RawLD=0; // handle for RawLD +static int le_swig__p_TreeKey=0; // handle for TreeKey +static int le_swig__p_bool=0; // handle for TreeKey +static int le_swig__p_void=0; // handle for TreeKey +static int le_swig__p_SWFilterMgr=0; // handle for SWFilterMgr +static int le_swig__p_SWLD=0; // handle for SWLD +static int le_swig__p_SWTextDirection=0; // handle for SWLD +static int le_swig__p_RawText=0; // handle for RawText +static int le_swig__p_f_char_p_void__void=0; // handle for RawText +static int le_swig__p_VerseKey=0; // handle for VerseKey +static int le_swig__p_ModMap=0; // handle for VerseKey +static int le_swig__p_string=0; // handle for VerseKey +static int le_swig__p_SectionMap=0; // handle for VerseKey +static int le_swig__p_SWDisplay=0; // handle for VerseKey +static int le_swig__p_AttributeTypeList=0; // handle for VerseKey +static int le_swig__p_SWText=0; // handle for SWText +static int le_swig__p_SWCompress=0; // handle for SWCompress +static int le_swig__p_LZSSCompress=0; // handle for LZSSCompress +static int le_swig__p_ZipCompress=0; // handle for ZipCompress +static int le_swig__p_SW_POSITION=0; // handle for SW_POSITION +static int le_swig__p_SWModule=0; // handle for SWModule +static int le_swig__p_zLD=0; // handle for zLD +static int le_swig__p_SWGenBook=0; // handle for SWGenBook +static int le_swig__p_RawGenBook=0; // handle for RawGenBook +static int le_swig__p_SWConfig=0; // handle for SWConfig +static int le_swig__p_LocaleMgr=0; // handle for LocaleMgr +static int le_swig__p_int=0; // handle for LocaleMgr +static int le_swig__p_SWTextMarkup=0; // handle for LocaleMgr +static int le_swig__p_OptionsList=0; // handle for LocaleMgr +static int le_swig__p_listTstring_t=0; // handle for LocaleMgr +static int le_swig__p_zText=0; // handle for zText +static int le_swig__p_SWTextEncoding=0; // handle for zText +static int le_swig__p_unsigned_long=0; // handle for zText +/* end vdecl subsection */ +/* wrapper section */ +static int _wrap_SWConfig_filename_set(zend_property_reference *property_reference, pval *value) { + SWConfig *arg1 ; + string arg2 ; + zval **args[3]; + int argbase=0 ; + + + if(SWIG_ConvertPtr(*&(property_reference->object), (void **) &arg1, SWIGTYPE_p_SWConfig) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWConfig_filename_set. Expected %s", 1-argbase, SWIGTYPE_p_SWConfig->name); + } + + { + string * argp; + if(SWIG_ConvertPtr(*&value, (void **) &argp, SWIGTYPE_p_string) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWConfig_filename_set. Expected %s", 2-argbase, SWIGTYPE_p_string->name); + } + arg2 = *argp; + } + if (arg1) (arg1)->filename = arg2; + + + return SUCCESS; +} + + +static pval _wrap_SWConfig_filename_get(zend_property_reference *property_reference) { + SWConfig *arg1 ; + string result; + zval **args[2]; + int argbase=0 ; + zval _return_value; + zval *return_value=&_return_value; + + + if(SWIG_ConvertPtr(*&(property_reference->object), (void **) &arg1, SWIGTYPE_p_SWConfig) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWConfig_filename_get. Expected %s", 1-argbase, SWIGTYPE_p_SWConfig->name); + } + + result = ((arg1)->filename); + + { + string * resultobj = new string((string &) result); + SWIG_SetPointerZval(return_value, (void *)resultobj, SWIGTYPE_p_string, 0); + } + return _return_value; +} + + +static int _wrap_SWConfig_Sections_set(zend_property_reference *property_reference, pval *value) { + SWConfig *arg1 ; + SectionMap arg2 ; + zval **args[3]; + int argbase=0 ; + + + if(SWIG_ConvertPtr(*&(property_reference->object), (void **) &arg1, SWIGTYPE_p_SWConfig) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWConfig_Sections_set. Expected %s", 1-argbase, SWIGTYPE_p_SWConfig->name); + } + + { + SectionMap * argp; + if(SWIG_ConvertPtr(*&value, (void **) &argp, SWIGTYPE_p_SectionMap) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWConfig_Sections_set. Expected %s", 2-argbase, SWIGTYPE_p_SectionMap->name); + } + arg2 = *argp; + } + if (arg1) (arg1)->Sections = arg2; + + + return SUCCESS; +} + + +static pval _wrap_SWConfig_Sections_get(zend_property_reference *property_reference) { + SWConfig *arg1 ; + SectionMap result; + zval **args[2]; + int argbase=0 ; + zval _return_value; + zval *return_value=&_return_value; + + + if(SWIG_ConvertPtr(*&(property_reference->object), (void **) &arg1, SWIGTYPE_p_SWConfig) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWConfig_Sections_get. Expected %s", 1-argbase, SWIGTYPE_p_SWConfig->name); + } + + result = ((arg1)->Sections); + + { + SectionMap * resultobj = new SectionMap((SectionMap &) result); + SWIG_SetPointerZval(return_value, (void *)resultobj, SWIGTYPE_p_SectionMap, 0); + } + return _return_value; +} + + +ZEND_NAMED_FUNCTION(_wrap_new_SWConfig) { + char *arg1 ; + SWConfig *result; + zval **args[2]; + int argbase=0 ; + + // NATIVE Constructor + int self_constructor=1; + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + convert_to_string_ex(((0ptr ; + void *ptr=value->ptr ; + int newobject=value->newobject ; + SWConfig *arg1 ; + + efree(value); + if (! newobject) return; // can't delete it! + SWIG_ZTS_ConvertResourceData(ptr,rsrc->type,type_name,(void **) &arg1,SWIGTYPE_p_SWConfig TSRMLS_CC); + if (! arg1) zend_error(E_ERROR, "SWConfig resource already free'd"); + delete arg1; + +} + + +ZEND_NAMED_FUNCTION(_wrap_delete_SWConfig) { + SWConfig *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + //if ((*args[0])->type==IS_RESOURCE) { + // // Get zend list destructor to free it + // zend_list_delete(Z_LVAL_PP(args[0])); + //} else { + delete arg1; + + //} + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWConfig_Load) { + SWConfig *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + (arg1)->Load(); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWConfig_Save) { + SWConfig *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + (arg1)->Save(); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWConfig_set) { + SWConfig *arg1 ; + char *arg2 ; + char *arg3 ; + char *arg4 ; + zval **args[5]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 4) || (zend_get_parameters_array_ex(4-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + + convert_to_string_ex(args[2-argbase]); + arg3 = (char *) Z_STRVAL_PP(args[2-argbase]); + + + convert_to_string_ex(args[3-argbase]); + arg4 = (char *) Z_STRVAL_PP(args[3-argbase]); + + SWConfig_set(arg1,(char const *)arg2,(char const *)arg3,(char const *)arg4); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWConfig_get) { + SWConfig *arg1 ; + char *arg2 ; + char *arg3 ; + char *result; + zval **args[4]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 3) || (zend_get_parameters_array_ex(3-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + + convert_to_string_ex(args[2-argbase]); + arg3 = (char *) Z_STRVAL_PP(args[2-argbase]); + + result = (char *)SWConfig_get(arg1,(char const *)arg2,(char const *)arg3); + + + ZVAL_STRING(return_value,result, 1); + +} + + +// property handler for class SWConfig +static pval _wrap_propget_SWConfig(zend_property_reference *property_reference) { + pval result; + pval **_result; + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + result.type = IS_NULL; + if (_propget_SWConfig(property_reference, &result)==SUCCESS) return result; + //return it ourselves + if (zend_hash_find(Z_OBJPROP_P(property_reference->object),Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),(void**)&_result)==SUCCESS) return **_result; + result.type = IS_NULL; + return result; +} +static int _propget_SWConfig(zend_property_reference *property_reference, pval *value) { + /* get the property name */ + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + char *propname=Z_STRVAL_P(&(property->element)); + if (strcmp(propname,"Sections")==0) { + *value=_wrap_SWConfig_Sections_get(property_reference); + return SUCCESS; + } else if (strcmp(propname,"filename")==0) { + *value=_wrap_SWConfig_filename_get(property_reference); + return SUCCESS; + } else return FAILURE; +} + +static int _wrap_propset_SWConfig(zend_property_reference *property_reference, pval *value) { + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + if (_propset_SWConfig(property_reference, value)==SUCCESS) return SUCCESS; + //set it ourselves as we are actual class + return add_property_zval_ex(property_reference->object,Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),value); +} +static int _propset_SWConfig(zend_property_reference *property_reference, pval *value) { + /* get the property name */ + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + char *propname=Z_STRVAL_P(&(property->element)); + if (strcmp(propname,"filename")==0) { + return _wrap_SWConfig_filename_set(property_reference, value); + } else if (strcmp(propname,"Sections")==0) { + return _wrap_SWConfig_Sections_set(property_reference, value); + } else return FAILURE; +} + +ZEND_NAMED_FUNCTION(_wrap_SWMgr_findConfig) { + SWMgr *arg1 ; + char *arg2 ; + char **arg3 ; + char **arg4 ; + zval **args[5]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 4) || (zend_get_parameters_array_ex(4-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + + if(SWIG_ConvertPtr(*args[2-argbase], (void **) &arg3, SWIGTYPE_p_p_char) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWMgr_findConfig. Expected %s", 3-argbase, SWIGTYPE_p_p_char->name); + } + + + if(SWIG_ConvertPtr(*args[3-argbase], (void **) &arg4, SWIGTYPE_p_p_char) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWMgr_findConfig. Expected %s", 4-argbase, SWIGTYPE_p_p_char->name); + } + + (arg1)->findConfig(arg2,arg3,arg4); + + +} + + +static int _wrap_SWMgr_config_set(zend_property_reference *property_reference, pval *value) { + SWMgr *arg1 ; + SWConfig *arg2 ; + zval **args[3]; + int argbase=0 ; + + + if(SWIG_ConvertPtr(*&(property_reference->object), (void **) &arg1, SWIGTYPE_p_SWMgr) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWMgr_config_set. Expected %s", 1-argbase, SWIGTYPE_p_SWMgr->name); + } + + + if(SWIG_ConvertPtr(*&value, (void **) &arg2, SWIGTYPE_p_SWConfig) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWMgr_config_set. Expected %s", 2-argbase, SWIGTYPE_p_SWConfig->name); + } + + if (arg1) (arg1)->config = arg2; + + + return SUCCESS; +} + + +static pval _wrap_SWMgr_config_get(zend_property_reference *property_reference) { + SWMgr *arg1 ; + SWConfig *result; + zval **args[2]; + int argbase=0 ; + zval _return_value; + zval *return_value=&_return_value; + + + if(SWIG_ConvertPtr(*&(property_reference->object), (void **) &arg1, SWIGTYPE_p_SWMgr) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWMgr_config_get. Expected %s", 1-argbase, SWIGTYPE_p_SWMgr->name); + } + + result = (SWConfig *) ((arg1)->config); + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_SWConfig, 0); + + // Wrap this return value + { + // ALTERNATIVE Constructor, make an object wrapper + zval *obj, *_cPtr; + MAKE_STD_ZVAL(obj); + MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + object_init_ex(obj,ptr_ce_swig_SWConfig); + add_property_zval(obj,"_cPtr",_cPtr); + *return_value=*obj; + } + return _return_value; +} + + +static int _wrap_SWMgr_sysconfig_set(zend_property_reference *property_reference, pval *value) { + SWMgr *arg1 ; + SWConfig *arg2 ; + zval **args[3]; + int argbase=0 ; + + + if(SWIG_ConvertPtr(*&(property_reference->object), (void **) &arg1, SWIGTYPE_p_SWMgr) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWMgr_sysconfig_set. Expected %s", 1-argbase, SWIGTYPE_p_SWMgr->name); + } + + + if(SWIG_ConvertPtr(*&value, (void **) &arg2, SWIGTYPE_p_SWConfig) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWMgr_sysconfig_set. Expected %s", 2-argbase, SWIGTYPE_p_SWConfig->name); + } + + if (arg1) (arg1)->sysconfig = arg2; + + + return SUCCESS; +} + + +static pval _wrap_SWMgr_sysconfig_get(zend_property_reference *property_reference) { + SWMgr *arg1 ; + SWConfig *result; + zval **args[2]; + int argbase=0 ; + zval _return_value; + zval *return_value=&_return_value; + + + if(SWIG_ConvertPtr(*&(property_reference->object), (void **) &arg1, SWIGTYPE_p_SWMgr) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWMgr_sysconfig_get. Expected %s", 1-argbase, SWIGTYPE_p_SWMgr->name); + } + + result = (SWConfig *) ((arg1)->sysconfig); + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_SWConfig, 0); + + // Wrap this return value + { + // ALTERNATIVE Constructor, make an object wrapper + zval *obj, *_cPtr; + MAKE_STD_ZVAL(obj); + MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + object_init_ex(obj,ptr_ce_swig_SWConfig); + add_property_zval(obj,"_cPtr",_cPtr); + *return_value=*obj; + } + return _return_value; +} + + +static int _wrap_SWMgr_Modules_set(zend_property_reference *property_reference, pval *value) { + SWMgr *arg1 ; + ModMap arg2 ; + zval **args[3]; + int argbase=0 ; + + + if(SWIG_ConvertPtr(*&(property_reference->object), (void **) &arg1, SWIGTYPE_p_SWMgr) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWMgr_Modules_set. Expected %s", 1-argbase, SWIGTYPE_p_SWMgr->name); + } + + { + ModMap * argp; + if(SWIG_ConvertPtr(*&value, (void **) &argp, SWIGTYPE_p_ModMap) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWMgr_Modules_set. Expected %s", 2-argbase, SWIGTYPE_p_ModMap->name); + } + arg2 = *argp; + } + if (arg1) (arg1)->Modules = arg2; + + + return SUCCESS; +} + + +static pval _wrap_SWMgr_Modules_get(zend_property_reference *property_reference) { + SWMgr *arg1 ; + ModMap result; + zval **args[2]; + int argbase=0 ; + zval _return_value; + zval *return_value=&_return_value; + + + if(SWIG_ConvertPtr(*&(property_reference->object), (void **) &arg1, SWIGTYPE_p_SWMgr) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWMgr_Modules_get. Expected %s", 1-argbase, SWIGTYPE_p_SWMgr->name); + } + + result = ((arg1)->Modules); + + { + ModMap * resultobj = new ModMap((ModMap &) result); + SWIG_SetPointerZval(return_value, (void *)resultobj, SWIGTYPE_p_ModMap, 0); + } + return _return_value; +} + + +static int _wrap_SWMgr_prefixPath_set(zend_property_reference *property_reference, pval *value) { + SWMgr *arg1 ; + char *arg2 ; + zval **args[3]; + int argbase=0 ; + + + if(SWIG_ConvertPtr(*&(property_reference->object), (void **) &arg1, SWIGTYPE_p_SWMgr) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWMgr_prefixPath_set. Expected %s", 1-argbase, SWIGTYPE_p_SWMgr->name); + } + + + convert_to_string_ex(&value); + arg2 = (char *) Z_STRVAL_PP(&value); + + { + if (arg1->prefixPath) delete [] arg1->prefixPath; + arg1->prefixPath = (char *) (new char[strlen(arg2)+1]); + strcpy((char *) arg1->prefixPath,arg2); + } + + return SUCCESS; +} + + +static pval _wrap_SWMgr_prefixPath_get(zend_property_reference *property_reference) { + SWMgr *arg1 ; + char *result; + zval **args[2]; + int argbase=0 ; + zval _return_value; + zval *return_value=&_return_value; + + + if(SWIG_ConvertPtr(*&(property_reference->object), (void **) &arg1, SWIGTYPE_p_SWMgr) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWMgr_prefixPath_get. Expected %s", 1-argbase, SWIGTYPE_p_SWMgr->name); + } + + result = (char *) ((arg1)->prefixPath); + + + ZVAL_STRING(return_value,result, 1); + + return _return_value; +} + + +static int _wrap_SWMgr_configPath_set(zend_property_reference *property_reference, pval *value) { + SWMgr *arg1 ; + char *arg2 ; + zval **args[3]; + int argbase=0 ; + + + if(SWIG_ConvertPtr(*&(property_reference->object), (void **) &arg1, SWIGTYPE_p_SWMgr) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWMgr_configPath_set. Expected %s", 1-argbase, SWIGTYPE_p_SWMgr->name); + } + + + convert_to_string_ex(&value); + arg2 = (char *) Z_STRVAL_PP(&value); + + { + if (arg1->configPath) delete [] arg1->configPath; + arg1->configPath = (char *) (new char[strlen(arg2)+1]); + strcpy((char *) arg1->configPath,arg2); + } + + return SUCCESS; +} + + +static pval _wrap_SWMgr_configPath_get(zend_property_reference *property_reference) { + SWMgr *arg1 ; + char *result; + zval **args[2]; + int argbase=0 ; + zval _return_value; + zval *return_value=&_return_value; + + + if(SWIG_ConvertPtr(*&(property_reference->object), (void **) &arg1, SWIGTYPE_p_SWMgr) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWMgr_configPath_get. Expected %s", 1-argbase, SWIGTYPE_p_SWMgr->name); + } + + result = (char *) ((arg1)->configPath); + + + ZVAL_STRING(return_value,result, 1); + + return _return_value; +} + + +ZEND_NAMED_FUNCTION(_wrap_new_SWMgr) { + SWConfig *arg1 = 0 ; + SWConfig *arg2 = 0 ; + bool arg3 = true ; + SWFilterMgr *arg4 = 0 ; + SWMgr *result; + zval **args[5]; + int argbase=0 ; + int arg_count; + + // NATIVE Constructor + int self_constructor=1; + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(0-argbase) || arg_count>(4-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + if(arg_count > 0) { + if(SWIG_ConvertPtr(*((0name); + } + + } + if(arg_count > 1) { + if(SWIG_ConvertPtr(*args[1-argbase], (void **) &arg2, SWIGTYPE_p_SWConfig) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_SWMgr. Expected %s", 2-argbase, SWIGTYPE_p_SWConfig->name); + } + + } + if(arg_count > 2) { + convert_to_long_ex(args[2-argbase]); + arg3 = (bool) Z_LVAL_PP(args[2-argbase]); + + } + if(arg_count > 3) { + if(SWIG_ConvertPtr(*args[3-argbase], (void **) &arg4, SWIGTYPE_p_SWFilterMgr) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_SWMgr. Expected %s", 4-argbase, SWIGTYPE_p_SWFilterMgr->name); + } + + } + result = (SWMgr *)new SWMgr(arg1,arg2,arg3,arg4); + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_SWMgr, 1); + + // Wrap this return value + if (this_ptr) { + // NATIVE Constructor, use this_ptr + zval *_cPtr; MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + add_property_zval(this_ptr,"_cPtr",_cPtr); + }else if (! this_ptr) { + // ALTERNATIVE Constructor, make an object wrapper + zval *obj, *_cPtr; + MAKE_STD_ZVAL(obj); + MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + object_init_ex(obj,ptr_ce_swig_SWMgr); + add_property_zval(obj,"_cPtr",_cPtr); + *return_value=*obj; + } +} + + +// This function is designed to be called by the zend list destructors to typecast and do the actual destruction +void __wrap_delete_SWMgr(zend_rsrc_list_entry *rsrc, const char *type_name TSRMLS_DC) { + swig_object_wrapper *value=(swig_object_wrapper *) rsrc->ptr ; + void *ptr=value->ptr ; + int newobject=value->newobject ; + SWMgr *arg1 ; + + efree(value); + if (! newobject) return; // can't delete it! + SWIG_ZTS_ConvertResourceData(ptr,rsrc->type,type_name,(void **) &arg1,SWIGTYPE_p_SWMgr TSRMLS_CC); + if (! arg1) zend_error(E_ERROR, "SWMgr resource already free'd"); + delete arg1; + +} + + +ZEND_NAMED_FUNCTION(_wrap_delete_SWMgr) { + SWMgr *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + //if ((*args[0])->type==IS_RESOURCE) { + // // Get zend list destructor to free it + // zend_list_delete(Z_LVAL_PP(args[0])); + //} else { + delete arg1; + + //} + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWMgr_Load) { + SWMgr *arg1 ; + signed char result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (signed char)(arg1)->Load(); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWMgr_setGlobalOption) { + SWMgr *arg1 ; + char *arg2 ; + char *arg3 ; + zval **args[4]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 3) || (zend_get_parameters_array_ex(3-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + + convert_to_string_ex(args[2-argbase]); + arg3 = (char *) Z_STRVAL_PP(args[2-argbase]); + + (arg1)->setGlobalOption((char const *)arg2,(char const *)arg3); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWMgr_getGlobalOption) { + SWMgr *arg1 ; + char *arg2 ; + char *result; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + result = (char *)(arg1)->getGlobalOption((char const *)arg2); + + + ZVAL_STRING(return_value,result, 1); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWMgr_getGlobalOptionTip) { + SWMgr *arg1 ; + char *arg2 ; + char *result; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + result = (char *)(arg1)->getGlobalOptionTip((char const *)arg2); + + + ZVAL_STRING(return_value,result, 1); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWMgr_getGlobalOptions) { + SWMgr *arg1 ; + OptionsList result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (arg1)->getGlobalOptions(); + + { + OptionsList * resultobj = new OptionsList((OptionsList &) result); + SWIG_SetPointerZval(return_value, (void *)resultobj, SWIGTYPE_p_OptionsList, 0); + } +} + + +ZEND_NAMED_FUNCTION(_wrap_SWMgr_getGlobalOptionValues) { + SWMgr *arg1 ; + char *arg2 ; + OptionsList result; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + result = (arg1)->getGlobalOptionValues((char const *)arg2); + + { + OptionsList * resultobj = new OptionsList((OptionsList &) result); + SWIG_SetPointerZval(return_value, (void *)resultobj, SWIGTYPE_p_OptionsList, 0); + } +} + + +ZEND_NAMED_FUNCTION(_wrap_SWMgr_setCipherKey) { + SWMgr *arg1 ; + char *arg2 ; + char *arg3 ; + signed char result; + zval **args[4]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 3) || (zend_get_parameters_array_ex(3-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + + convert_to_string_ex(args[2-argbase]); + arg3 = (char *) Z_STRVAL_PP(args[2-argbase]); + + result = (signed char)(arg1)->setCipherKey((char const *)arg2,(char const *)arg3); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWMgr_module) { + SWMgr *arg1 ; + char *arg2 ; + SWModule *result; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + result = (SWModule *)SWMgr_module(arg1,(char const *)arg2); + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_SWModule, 0); + + // Wrap this return value + { + // ALTERNATIVE Constructor, make an object wrapper + zval *obj, *_cPtr; + MAKE_STD_ZVAL(obj); + MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + object_init_ex(obj,ptr_ce_swig_SWModule); + add_property_zval(obj,"_cPtr",_cPtr); + *return_value=*obj; + } +} + + +// property handler for class SWMgr +static pval _wrap_propget_SWMgr(zend_property_reference *property_reference) { + pval result; + pval **_result; + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + result.type = IS_NULL; + if (_propget_SWMgr(property_reference, &result)==SUCCESS) return result; + //return it ourselves + if (zend_hash_find(Z_OBJPROP_P(property_reference->object),Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),(void**)&_result)==SUCCESS) return **_result; + result.type = IS_NULL; + return result; +} +static int _propget_SWMgr(zend_property_reference *property_reference, pval *value) { + /* get the property name */ + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + char *propname=Z_STRVAL_P(&(property->element)); + if (strcmp(propname,"prefixPath")==0) { + *value=_wrap_SWMgr_prefixPath_get(property_reference); + return SUCCESS; + } else if (strcmp(propname,"configPath")==0) { + *value=_wrap_SWMgr_configPath_get(property_reference); + return SUCCESS; + } else if (strcmp(propname,"Modules")==0) { + *value=_wrap_SWMgr_Modules_get(property_reference); + return SUCCESS; + } else if (strcmp(propname,"config")==0) { + *value=_wrap_SWMgr_config_get(property_reference); + return SUCCESS; + } else if (strcmp(propname,"sysconfig")==0) { + *value=_wrap_SWMgr_sysconfig_get(property_reference); + return SUCCESS; + } else return FAILURE; +} + +static int _wrap_propset_SWMgr(zend_property_reference *property_reference, pval *value) { + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + if (_propset_SWMgr(property_reference, value)==SUCCESS) return SUCCESS; + //set it ourselves as we are actual class + return add_property_zval_ex(property_reference->object,Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),value); +} +static int _propset_SWMgr(zend_property_reference *property_reference, pval *value) { + /* get the property name */ + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + char *propname=Z_STRVAL_P(&(property->element)); + if (strcmp(propname,"Modules")==0) { + return _wrap_SWMgr_Modules_set(property_reference, value); + } else if (strcmp(propname,"config")==0) { + return _wrap_SWMgr_config_set(property_reference, value); + } else if (strcmp(propname,"sysconfig")==0) { + return _wrap_SWMgr_sysconfig_set(property_reference, value); + } else if (strcmp(propname,"prefixPath")==0) { + return _wrap_SWMgr_prefixPath_set(property_reference, value); + } else if (strcmp(propname,"configPath")==0) { + return _wrap_SWMgr_configPath_set(property_reference, value); + } else return FAILURE; +} + +static int _wrap_SWModule_terminateSearch_set(zend_property_reference *property_reference, pval *value) { + SWModule *arg1 ; + bool arg2 ; + zval **args[3]; + int argbase=0 ; + + + if(SWIG_ConvertPtr(*&(property_reference->object), (void **) &arg1, SWIGTYPE_p_SWModule) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWModule_terminateSearch_set. Expected %s", 1-argbase, SWIGTYPE_p_SWModule->name); + } + + + convert_to_long_ex(&value); + arg2 = (bool) Z_LVAL_PP(&value); + + if (arg1) (arg1)->terminateSearch = arg2; + + + return SUCCESS; +} + + +static pval _wrap_SWModule_terminateSearch_get(zend_property_reference *property_reference) { + SWModule *arg1 ; + bool result; + zval **args[2]; + int argbase=0 ; + zval _return_value; + zval *return_value=&_return_value; + + + if(SWIG_ConvertPtr(*&(property_reference->object), (void **) &arg1, SWIGTYPE_p_SWModule) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWModule_terminateSearch_get. Expected %s", 1-argbase, SWIGTYPE_p_SWModule->name); + } + + result = (bool) ((arg1)->terminateSearch); + + + ZVAL_LONG(return_value,result); + + return _return_value; +} + + +ZEND_NAMED_FUNCTION(_wrap_new_SWModule) { + char *arg1 = 0 ; + char *arg2 = 0 ; + SWDisplay *arg3 = 0 ; + char *arg4 = 0 ; + SWTextEncoding arg5 = ENC_UNKNOWN ; + SWTextDirection arg6 = DIRECTION_LTR ; + SWTextMarkup arg7 = FMT_UNKNOWN ; + char *arg8 = 0 ; + SWModule *result; + zval **args[9]; + int argbase=0 ; + int arg_count; + + // NATIVE Constructor + int self_constructor=1; + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(0-argbase) || arg_count>(8-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + if(arg_count > 0) { + convert_to_string_ex(((0 1) { + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + } + if(arg_count > 2) { + if(SWIG_ConvertPtr(*args[2-argbase], (void **) &arg3, SWIGTYPE_p_SWDisplay) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_SWModule. Expected %s", 3-argbase, SWIGTYPE_p_SWDisplay->name); + } + + } + if(arg_count > 3) { + convert_to_string_ex(args[3-argbase]); + arg4 = (char *) Z_STRVAL_PP(args[3-argbase]); + + } + if(arg_count > 4) { + { + SWTextEncoding * argp; + if(SWIG_ConvertPtr(*args[4-argbase], (void **) &argp, SWIGTYPE_p_SWTextEncoding) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_SWModule. Expected %s", 5-argbase, SWIGTYPE_p_SWTextEncoding->name); + } + arg5 = *argp; + } + } + if(arg_count > 5) { + { + SWTextDirection * argp; + if(SWIG_ConvertPtr(*args[5-argbase], (void **) &argp, SWIGTYPE_p_SWTextDirection) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_SWModule. Expected %s", 6-argbase, SWIGTYPE_p_SWTextDirection->name); + } + arg6 = *argp; + } + } + if(arg_count > 6) { + { + SWTextMarkup * argp; + if(SWIG_ConvertPtr(*args[6-argbase], (void **) &argp, SWIGTYPE_p_SWTextMarkup) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_SWModule. Expected %s", 7-argbase, SWIGTYPE_p_SWTextMarkup->name); + } + arg7 = *argp; + } + } + if(arg_count > 7) { + convert_to_string_ex(args[7-argbase]); + arg8 = (char *) Z_STRVAL_PP(args[7-argbase]); + + } + result = (SWModule *)new SWModule((char const *)arg1,(char const *)arg2,arg3,arg4,arg5,arg6,arg7,(char const *)arg8); + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_SWModule, 1); + + // Wrap this return value + if (this_ptr) { + // NATIVE Constructor, use this_ptr + zval *_cPtr; MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + add_property_zval(this_ptr,"_cPtr",_cPtr); + }else if (! this_ptr) { + // ALTERNATIVE Constructor, make an object wrapper + zval *obj, *_cPtr; + MAKE_STD_ZVAL(obj); + MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + object_init_ex(obj,ptr_ce_swig_SWModule); + add_property_zval(obj,"_cPtr",_cPtr); + *return_value=*obj; + } +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_Error) { + SWModule *arg1 ; + unsigned char result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (unsigned char)(arg1)->Error(); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_isUnicode) { + SWModule *arg1 ; + bool result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (bool)((SWModule const *)arg1)->isUnicode(); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_getConfig) { + SWModule *arg1 ; + ConfigEntMap *result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + { + ConfigEntMap const &_result_ref = ((SWModule const *)arg1)->getConfig(); + result = (ConfigEntMap *) &_result_ref; + } + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_ConfigEntMap, 0); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_getConfigEntry) { + SWModule *arg1 ; + char *arg2 ; + char *result; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + result = (char *)((SWModule const *)arg1)->getConfigEntry((char const *)arg2); + + + ZVAL_STRING(return_value,result, 1); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_SetKey) { + SWModule *arg1 ; + SWKey *arg2 ; + unsigned char result; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + if(SWIG_ConvertPtr(*args[1-argbase], (void **) &arg2, SWIGTYPE_p_SWKey) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWModule_SetKey. Expected %s", 2-argbase, SWIGTYPE_p_SWKey->name); + } + + result = (unsigned char)(arg1)->SetKey((SWKey const *)arg2); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_Key) { + SWModule *arg1 ; + SWKey *result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + { + SWKey &_result_ref = ((SWModule const *)arg1)->Key(); + result = (SWKey *) &_result_ref; + } + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_SWKey, 0); + + // Wrap this return value + { + // ALTERNATIVE Constructor, make an object wrapper + zval *obj, *_cPtr; + MAKE_STD_ZVAL(obj); + MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + object_init_ex(obj,ptr_ce_swig_SWKey); + add_property_zval(obj,"_cPtr",_cPtr); + *return_value=*obj; + } +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_CreateKey) { + SWModule *arg1 ; + SWKey *result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (SWKey *)(arg1)->CreateKey(); + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_SWKey, 0); + + // Wrap this return value + { + // ALTERNATIVE Constructor, make an object wrapper + zval *obj, *_cPtr; + MAKE_STD_ZVAL(obj); + MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + object_init_ex(obj,ptr_ce_swig_SWKey); + add_property_zval(obj,"_cPtr",_cPtr); + *return_value=*obj; + } +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_KeyText) { + SWModule *arg1 ; + char *arg2 = 0 ; + char *result; + zval **args[3]; + int argbase=0 ; + int arg_count; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(1-argbase) || arg_count>(2-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + + if(SWIG_ConvertPtr(*((0name); + } + + if(arg_count > 1) { + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + } + result = (char *)(arg1)->KeyText((char const *)arg2); + + + ZVAL_STRING(return_value,result, 1); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_Display) { + SWModule *arg1 ; + unsigned char result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (unsigned char)(arg1)->Display(); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_nullPercent) { + SWModule *arg1 ; + char arg2 ; + void *arg3 ; + zval **args[4]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 3) || (zend_get_parameters_array_ex(3-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char) *Z_STRVAL_PP(args[1-argbase]); + + + if(SWIG_ConvertPtr(*args[2-argbase], (void **) &arg3, 0) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWModule_nullPercent. Expected %s", 3-argbase, SWIGTYPE_p_void->name); + } + + (arg1)->nullPercent(arg2,arg3); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_Search) { + SWModule *arg1 ; + char *arg2 ; + int arg3 = 0 ; + int arg4 = 0 ; + SWKey *arg5 = 0 ; + bool *arg6 = 0 ; + void (*arg7)(char,void *) = &SWModule::nullPercent ; + void *arg8 = 0 ; + ListKey *result; + bool intr6 ; + int force6 ; + zval **args[9]; + int argbase=0 ; + int arg_count; + zval ** _saved[1] ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(2-argbase) || arg_count>(8-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + if(arg_count > 2) { + convert_to_long_ex(args[2-argbase]); + arg3 = (int) Z_LVAL_PP(args[2-argbase]); + + } + if(arg_count > 3) { + convert_to_long_ex(args[3-argbase]); + arg4 = (int) Z_LVAL_PP(args[3-argbase]); + + } + if(arg_count > 4) { + if(SWIG_ConvertPtr(*args[4-argbase], (void **) &arg5, SWIGTYPE_p_SWKey) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWModule_Search. Expected %s", 5-argbase, SWIGTYPE_p_SWKey->name); + } + + } + if(arg_count > 5) { + if(SWIG_ConvertPtr(*args[5-argbase], (void **) &arg6, SWIGTYPE_p_bool) < 0) { + // So... we didn't get a ref or ptr, but can it be + // reasonably co-erced into what we were + // looking for a ref of or ptr to? + if ((*args[5-argbase])->type==IS_STRING || + (*args[5-argbase])->type==IS_LONG || + (*args[5-argbase])->type==IS_DOUBLE) { + convert_to_long_ex(args[5-argbase]); + intr6 = (bool) (*args[5-argbase])->value.lval; + arg6 = &intr6; + // have to passback arg$arg too + force6=1; + }else { + // wasn't a pre/ref/thing, OR anything like an int thing + force6=0; + zend_error(E_ERROR, "Type error in argument %d of SWModule_Search. Expected %s or at least something looking vaguely like a number hopefully passed by reference", 6-argbase, SWIGTYPE_p_bool->name); + } + }else force6=0; + + } + if(arg_count > 6) { + if(SWIG_ConvertPtr(*args[6-argbase], (void **) &arg7, SWIGTYPE_p_f_char_p_void__void) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWModule_Search. Expected %s", 7-argbase, SWIGTYPE_p_f_char_p_void__void->name); + } + + } + if(arg_count > 7) { + if(SWIG_ConvertPtr(*args[7-argbase], (void **) &arg8, 0) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWModule_Search. Expected %s", 8-argbase, SWIGTYPE_p_void->name); + } + + } + _saved[0] = args[5-argbase]; + { + ListKey &_result_ref = (arg1)->Search((char const *)arg2,arg3,arg4,arg5,arg6,arg7,arg8); + result = (ListKey *) &_result_ref; + } + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_ListKey, 0); + + // Wrap this return value + { + // ALTERNATIVE Constructor, make an object wrapper + zval *obj, *_cPtr; + MAKE_STD_ZVAL(obj); + MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + object_init_ex(obj,ptr_ce_swig_ListKey); + add_property_zval(obj,"_cPtr",_cPtr); + *return_value=*obj; + } + + if (force6) { + // pass back arg6 through params (_saved[0]) if we can + if(! PZVAL_IS_REF(*_saved[0])) { + zend_error(E_WARNING, "Parameter %d of SWModule_Search wasn't passed by reference",6-argbase); + }else { + ZVAL_LONG(*_saved[0],intr6); + } + } + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_createSearchFramework) { + SWModule *arg1 ; + signed char result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (signed char)(arg1)->createSearchFramework(); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_hasSearchFramework) { + SWModule *arg1 ; + bool result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (bool)(arg1)->hasSearchFramework(); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_isSearchOptimallySupported) { + SWModule *arg1 ; + char *arg2 ; + int arg3 ; + int arg4 ; + SWKey *arg5 ; + bool result; + zval **args[6]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 5) || (zend_get_parameters_array_ex(5-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + + convert_to_long_ex(args[2-argbase]); + arg3 = (int) Z_LVAL_PP(args[2-argbase]); + + + convert_to_long_ex(args[3-argbase]); + arg4 = (int) Z_LVAL_PP(args[3-argbase]); + + + if(SWIG_ConvertPtr(*args[4-argbase], (void **) &arg5, SWIGTYPE_p_SWKey) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWModule_isSearchOptimallySupported. Expected %s", 5-argbase, SWIGTYPE_p_SWKey->name); + } + + result = (bool)(arg1)->isSearchOptimallySupported((char const *)arg2,arg3,arg4,arg5); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_next) { + SWModule *arg1 ; + bool result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (bool)SWModule_next(arg1); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_prev) { + SWModule *arg1 ; + bool result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (bool)SWModule_prev(arg1); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_inc) { + SWModule *arg1 ; + int arg2 ; + bool result; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_long_ex(args[1-argbase]); + arg2 = (int) Z_LVAL_PP(args[1-argbase]); + + result = (bool)SWModule_inc(arg1,arg2); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_dec) { + SWModule *arg1 ; + int arg2 ; + bool result; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_long_ex(args[1-argbase]); + arg2 = (int) Z_LVAL_PP(args[1-argbase]); + + result = (bool)SWModule_dec(arg1,arg2); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_setPosition) { + SWModule *arg1 ; + SwigValueWrapper< SW_POSITION > arg2 ; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + { + SW_POSITION * argp; + if(SWIG_ConvertPtr(*args[1-argbase], (void **) &argp, SWIGTYPE_p_SW_POSITION) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWModule_setPosition. Expected %s", 2-argbase, SWIGTYPE_p_SW_POSITION->name); + } + arg2 = *argp; + } + SWModule_setPosition(arg1,arg2); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_top) { + SWModule *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + SWModule_top(arg1); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_bottom) { + SWModule *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + SWModule_bottom(arg1); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_text) { + SWModule *arg1 ; + char *result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (char *)SWModule_text(arg1); + + + ZVAL_STRING(return_value,result, 1); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_StripText) { + SWModule *arg1 ; + char *result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (char *)SWModule_StripText(arg1); + + + ZVAL_STRING(return_value,result, 1); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_getRawEntry) { + SWModule *arg1 ; + char *result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (char *)(arg1)->getRawEntry(); + + + ZVAL_STRING(return_value,result, 1); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_setSkipConsecutiveLinks) { + SWModule *arg1 ; + bool arg2 ; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_long_ex(args[1-argbase]); + arg2 = (bool) Z_LVAL_PP(args[1-argbase]); + + (arg1)->setSkipConsecutiveLinks(arg2); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_getSkipConsecutiveLinks) { + SWModule *arg1 ; + bool result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (bool)(arg1)->getSkipConsecutiveLinks(); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_getEntryAttributes) { + SWModule *arg1 ; + AttributeTypeList *result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + { + AttributeTypeList &_result_ref = ((SWModule const *)arg1)->getEntryAttributes(); + result = (AttributeTypeList *) &_result_ref; + } + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_AttributeTypeList, 0); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_processEntryAttributes) { + SWModule *arg1 ; + bool arg2 ; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_long_ex(args[1-argbase]); + arg2 = (bool) Z_LVAL_PP(args[1-argbase]); + + ((SWModule const *)arg1)->processEntryAttributes(arg2); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_isProcessEntryAttributes) { + SWModule *arg1 ; + bool result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (bool)((SWModule const *)arg1)->isProcessEntryAttributes(); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_Name) { + SWModule *arg1 ; + char *arg2 = 0 ; + char *result; + zval **args[3]; + int argbase=0 ; + int arg_count; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(1-argbase) || arg_count>(2-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + + if(SWIG_ConvertPtr(*((0name); + } + + if(arg_count > 1) { + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + } + result = (char *)(arg1)->Name((char const *)arg2); + + + ZVAL_STRING(return_value,result, 1); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_Description) { + SWModule *arg1 ; + char *arg2 = 0 ; + char *result; + zval **args[3]; + int argbase=0 ; + int arg_count; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(1-argbase) || arg_count>(2-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + + if(SWIG_ConvertPtr(*((0name); + } + + if(arg_count > 1) { + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + } + result = (char *)(arg1)->Description((char const *)arg2); + + + ZVAL_STRING(return_value,result, 1); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_Type) { + SWModule *arg1 ; + char *arg2 = 0 ; + char *result; + zval **args[3]; + int argbase=0 ; + int arg_count; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(1-argbase) || arg_count>(2-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + + if(SWIG_ConvertPtr(*((0name); + } + + if(arg_count > 1) { + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + } + result = (char *)(arg1)->Type((char const *)arg2); + + + ZVAL_STRING(return_value,result, 1); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_Direction) { + SWModule *arg1 ; + signed char arg2 = -1 ; + unsigned char result; + zval **args[3]; + int argbase=0 ; + int arg_count; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(1-argbase) || arg_count>(2-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + + if(SWIG_ConvertPtr(*((0name); + } + + if(arg_count > 1) { + convert_to_long_ex(args[1-argbase]); + arg2 = (signed char) Z_LVAL_PP(args[1-argbase]); + + } + result = (unsigned char)(arg1)->Direction(arg2); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_Encoding) { + SWModule *arg1 ; + signed char arg2 = -1 ; + unsigned char result; + zval **args[3]; + int argbase=0 ; + int arg_count; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(1-argbase) || arg_count>(2-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + + if(SWIG_ConvertPtr(*((0name); + } + + if(arg_count > 1) { + convert_to_long_ex(args[1-argbase]); + arg2 = (signed char) Z_LVAL_PP(args[1-argbase]); + + } + result = (unsigned char)(arg1)->Encoding(arg2); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_Markup) { + SWModule *arg1 ; + signed char arg2 = -1 ; + unsigned char result; + zval **args[3]; + int argbase=0 ; + int arg_count; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(1-argbase) || arg_count>(2-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + + if(SWIG_ConvertPtr(*((0name); + } + + if(arg_count > 1) { + convert_to_long_ex(args[1-argbase]); + arg2 = (signed char) Z_LVAL_PP(args[1-argbase]); + + } + result = (unsigned char)(arg1)->Markup(arg2); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_Lang) { + SWModule *arg1 ; + char *arg2 = 0 ; + char *result; + zval **args[3]; + int argbase=0 ; + int arg_count; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(1-argbase) || arg_count>(2-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + + if(SWIG_ConvertPtr(*((0name); + } + + if(arg_count > 1) { + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + } + result = (char *)(arg1)->Lang((char const *)arg2); + + + ZVAL_STRING(return_value,result, 1); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_isWritable) { + SWModule *arg1 ; + bool result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (bool)(arg1)->isWritable(); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_createModule) { + SWModule *arg1 ; + char *arg2 ; + signed char result; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + result = (signed char)(arg1)->createModule((char const *)arg2); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_setEntry) { + SWModule *arg1 ; + char *arg2 ; + long arg3 ; + zval **args[4]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 3) || (zend_get_parameters_array_ex(3-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + + convert_to_long_ex(args[2-argbase]); + arg3 = (long) Z_LVAL_PP(args[2-argbase]); + + (arg1)->setEntry((char const *)arg2,arg3); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_deleteEntry) { + SWModule *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + (arg1)->deleteEntry(); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_write) { + SWModule *arg1 ; + char *arg2 ; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + SWModule_write(arg1,(char const *)arg2); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWModule_writeLink) { + SWModule *arg1 ; + SWKey *arg2 ; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + if(SWIG_ConvertPtr(*args[1-argbase], (void **) &arg2, SWIGTYPE_p_SWKey) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWModule_writeLink. Expected %s", 2-argbase, SWIGTYPE_p_SWKey->name); + } + + SWModule_writeLink(arg1,(SWKey const *)arg2); + + +} + + +// This function is designed to be called by the zend list destructors to typecast and do the actual destruction +void __wrap_delete_SWModule(zend_rsrc_list_entry *rsrc, const char *type_name TSRMLS_DC) { + swig_object_wrapper *value=(swig_object_wrapper *) rsrc->ptr ; + void *ptr=value->ptr ; + int newobject=value->newobject ; + SWModule *arg1 ; + + efree(value); + if (! newobject) return; // can't delete it! + SWIG_ZTS_ConvertResourceData(ptr,rsrc->type,type_name,(void **) &arg1,SWIGTYPE_p_SWModule TSRMLS_CC); + if (! arg1) zend_error(E_ERROR, "SWModule resource already free'd"); + delete arg1; + +} + + +ZEND_NAMED_FUNCTION(_wrap_delete_SWModule) { + SWModule *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + //if ((*args[0])->type==IS_RESOURCE) { + // // Get zend list destructor to free it + // zend_list_delete(Z_LVAL_PP(args[0])); + //} else { + delete arg1; + + //} + +} + + +// property handler for class SWModule +static pval _wrap_propget_SWModule(zend_property_reference *property_reference) { + pval result; + pval **_result; + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + result.type = IS_NULL; + if (_propget_SWModule(property_reference, &result)==SUCCESS) return result; + //return it ourselves + if (zend_hash_find(Z_OBJPROP_P(property_reference->object),Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),(void**)&_result)==SUCCESS) return **_result; + result.type = IS_NULL; + return result; +} +static int _propget_SWModule(zend_property_reference *property_reference, pval *value) { + /* get the property name */ + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + char *propname=Z_STRVAL_P(&(property->element)); + if (strcmp(propname,"terminateSearch")==0) { + *value=_wrap_SWModule_terminateSearch_get(property_reference); + return SUCCESS; + } else return FAILURE; +} + +static int _wrap_propset_SWModule(zend_property_reference *property_reference, pval *value) { + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + if (_propset_SWModule(property_reference, value)==SUCCESS) return SUCCESS; + //set it ourselves as we are actual class + return add_property_zval_ex(property_reference->object,Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),value); +} +static int _propset_SWModule(zend_property_reference *property_reference, pval *value) { + /* get the property name */ + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + char *propname=Z_STRVAL_P(&(property->element)); + if (strcmp(propname,"terminateSearch")==0) { + return _wrap_SWModule_terminateSearch_set(property_reference, value); + } else return FAILURE; +} + +ZEND_NAMED_FUNCTION(_wrap_new_SW_POSITION) { + char arg1 ; + SW_POSITION *result; + zval **args[2]; + int argbase=0 ; + + // NATIVE Constructor + int self_constructor=1; + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + convert_to_string_ex(((0ptr ; + void *ptr=value->ptr ; + int newobject=value->newobject ; + SW_POSITION *arg1 ; + + efree(value); + if (! newobject) return; // can't delete it! + SWIG_ZTS_ConvertResourceData(ptr,rsrc->type,type_name,(void **) &arg1,SWIGTYPE_p_SW_POSITION TSRMLS_CC); + if (! arg1) zend_error(E_ERROR, "SW_POSITION resource already free'd"); + delete arg1; + +} + + +ZEND_NAMED_FUNCTION(_wrap_delete_SW_POSITION) { + SW_POSITION *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + //if ((*args[0])->type==IS_RESOURCE) { + // // Get zend list destructor to free it + // zend_list_delete(Z_LVAL_PP(args[0])); + //} else { + delete arg1; + + //} + +} + + +// property handler for class SW_POSITION +static pval _wrap_propget_SW_POSITION(zend_property_reference *property_reference) { + pval result; + pval **_result; + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + result.type = IS_NULL; + if (_propget_SW_POSITION(property_reference, &result)==SUCCESS) return result; + //return it ourselves + if (zend_hash_find(Z_OBJPROP_P(property_reference->object),Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),(void**)&_result)==SUCCESS) return **_result; + result.type = IS_NULL; + return result; +} +static int _propget_SW_POSITION(zend_property_reference *property_reference, pval *value) { + /* get the property name */ + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + char *propname=Z_STRVAL_P(&(property->element)); + return FAILURE; +} + +static int _wrap_propset_SW_POSITION(zend_property_reference *property_reference, pval *value) { + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + if (_propset_SW_POSITION(property_reference, value)==SUCCESS) return SUCCESS; + //set it ourselves as we are actual class + return add_property_zval_ex(property_reference->object,Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),value); +} +static int _propset_SW_POSITION(zend_property_reference *property_reference, pval *value) { + /* get the property name */ + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + char *propname=Z_STRVAL_P(&(property->element)); + return FAILURE; +} + +ZEND_NAMED_FUNCTION(_wrap_new_SWKey) { + char *arg1 = 0 ; + SWKey *result; + zval **args[2]; + int argbase=0 ; + int arg_count; + + // NATIVE Constructor + int self_constructor=1; + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(0-argbase) || arg_count>(1-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + if(arg_count > 0) { + convert_to_string_ex(((0type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (SWKey *)((SWKey const *)arg1)->clone(); + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_SWKey, 0); + + // Wrap this return value + { + // ALTERNATIVE Constructor, make an object wrapper + zval *obj, *_cPtr; + MAKE_STD_ZVAL(obj); + MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + object_init_ex(obj,ptr_ce_swig_SWKey); + add_property_zval(obj,"_cPtr",_cPtr); + *return_value=*obj; + } +} + + +ZEND_NAMED_FUNCTION(_wrap_SWKey_Persist) { + SWKey *arg1 ; + unsigned char result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (unsigned char)((SWKey const *)arg1)->Persist(); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWKey_setPersist) { + SWKey *arg1 ; + signed char arg2 ; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_long_ex(args[1-argbase]); + arg2 = (signed char) Z_LVAL_PP(args[1-argbase]); + + SWKey_setPersist(arg1,arg2); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWKey_Error) { + SWKey *arg1 ; + unsigned char result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (unsigned char)(arg1)->Error(); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWKey_setText) { + SWKey *arg1 ; + char *arg2 ; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + (arg1)->setText((char const *)arg2); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWKey_getText) { + SWKey *arg1 ; + char *result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (char *)((SWKey const *)arg1)->getText(); + + + ZVAL_STRING(return_value,result, 1); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWKey_getShortText) { + SWKey *arg1 ; + char *result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (char *)((SWKey const *)arg1)->getShortText(); + + + ZVAL_STRING(return_value,result, 1); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWKey_compare) { + SWKey *arg1 ; + SWKey *arg2 ; + int result; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + if(SWIG_ConvertPtr(*args[1-argbase], (void **) &arg2, SWIGTYPE_p_SWKey) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWKey_compare. Expected %s", 2-argbase, SWIGTYPE_p_SWKey->name); + } + + result = (int)(arg1)->compare((SWKey const &)*arg2); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWKey_equals) { + SWKey *arg1 ; + SWKey *arg2 ; + bool result; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + if(SWIG_ConvertPtr(*args[1-argbase], (void **) &arg2, SWIGTYPE_p_SWKey) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWKey_equals. Expected %s", 2-argbase, SWIGTYPE_p_SWKey->name); + } + + result = (bool)(arg1)->equals((SWKey const &)*arg2); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWKey_decrement) { + SWKey *arg1 ; + int arg2 = 1 ; + zval **args[3]; + int argbase=0 ; + int arg_count; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(1-argbase) || arg_count>(2-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + + if(SWIG_ConvertPtr(*((0name); + } + + if(arg_count > 1) { + convert_to_long_ex(args[1-argbase]); + arg2 = (int) Z_LVAL_PP(args[1-argbase]); + + } + (arg1)->decrement(arg2); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWKey_increment) { + SWKey *arg1 ; + int arg2 = 1 ; + zval **args[3]; + int argbase=0 ; + int arg_count; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(1-argbase) || arg_count>(2-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + + if(SWIG_ConvertPtr(*((0name); + } + + if(arg_count > 1) { + convert_to_long_ex(args[1-argbase]); + arg2 = (int) Z_LVAL_PP(args[1-argbase]); + + } + (arg1)->increment(arg2); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWKey_Traversable) { + SWKey *arg1 ; + unsigned char result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (unsigned char)(arg1)->Traversable(); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWKey_Index) { + SWKey *arg1 ; + long result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (long)((SWKey const *)arg1)->Index(); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWKey_next) { + SWKey *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + SWKey_next(arg1); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWKey_prev) { + SWKey *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + SWKey_prev(arg1); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWKey_setKey) { + SWKey *arg1 ; + SWKey *arg2 ; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + if(SWIG_ConvertPtr(*args[1-argbase], (void **) &arg2, SWIGTYPE_p_SWKey) < 0) { + zend_error(E_ERROR, "Type error in argument %d of SWKey_setKey. Expected %s", 2-argbase, SWIGTYPE_p_SWKey->name); + } + + SWKey_setKey(arg1,(SWKey const *)arg2); + + +} + + +// This function is designed to be called by the zend list destructors to typecast and do the actual destruction +void __wrap_delete_SWKey(zend_rsrc_list_entry *rsrc, const char *type_name TSRMLS_DC) { + swig_object_wrapper *value=(swig_object_wrapper *) rsrc->ptr ; + void *ptr=value->ptr ; + int newobject=value->newobject ; + SWKey *arg1 ; + + efree(value); + if (! newobject) return; // can't delete it! + SWIG_ZTS_ConvertResourceData(ptr,rsrc->type,type_name,(void **) &arg1,SWIGTYPE_p_SWKey TSRMLS_CC); + if (! arg1) zend_error(E_ERROR, "SWKey resource already free'd"); + delete arg1; + +} + + +ZEND_NAMED_FUNCTION(_wrap_delete_SWKey) { + SWKey *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + //if ((*args[0])->type==IS_RESOURCE) { + // // Get zend list destructor to free it + // zend_list_delete(Z_LVAL_PP(args[0])); + //} else { + delete arg1; + + //} + +} + + +// property handler for class SWKey +static pval _wrap_propget_SWKey(zend_property_reference *property_reference) { + pval result; + pval **_result; + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + result.type = IS_NULL; + if (_propget_SWKey(property_reference, &result)==SUCCESS) return result; + //return it ourselves + if (zend_hash_find(Z_OBJPROP_P(property_reference->object),Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),(void**)&_result)==SUCCESS) return **_result; + result.type = IS_NULL; + return result; +} +static int _propget_SWKey(zend_property_reference *property_reference, pval *value) { + /* get the property name */ + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + char *propname=Z_STRVAL_P(&(property->element)); + return FAILURE; +} + +static int _wrap_propset_SWKey(zend_property_reference *property_reference, pval *value) { + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + if (_propset_SWKey(property_reference, value)==SUCCESS) return SUCCESS; + //set it ourselves as we are actual class + return add_property_zval_ex(property_reference->object,Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),value); +} +static int _propset_SWKey(zend_property_reference *property_reference, pval *value) { + /* get the property name */ + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + char *propname=Z_STRVAL_P(&(property->element)); + return FAILURE; +} + +ZEND_NAMED_FUNCTION(_wrap_new_VerseKey) { + char *arg1 = 0 ; + VerseKey *result; + zval **args[2]; + int argbase=0 ; + int arg_count; + + // NATIVE Constructor + int self_constructor=1; + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(0-argbase) || arg_count>(1-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + if(arg_count > 0) { + convert_to_string_ex(((0ptr ; + void *ptr=value->ptr ; + int newobject=value->newobject ; + VerseKey *arg1 ; + + efree(value); + if (! newobject) return; // can't delete it! + SWIG_ZTS_ConvertResourceData(ptr,rsrc->type,type_name,(void **) &arg1,SWIGTYPE_p_VerseKey TSRMLS_CC); + if (! arg1) zend_error(E_ERROR, "VerseKey resource already free'd"); + delete arg1; + +} + + +ZEND_NAMED_FUNCTION(_wrap_delete_VerseKey) { + VerseKey *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + //if ((*args[0])->type==IS_RESOURCE) { + // // Get zend list destructor to free it + // zend_list_delete(Z_LVAL_PP(args[0])); + //} else { + delete arg1; + + //} + +} + + +ZEND_NAMED_FUNCTION(_wrap_VerseKey_clone) { + VerseKey *arg1 ; + SWKey *result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (SWKey *)((VerseKey const *)arg1)->clone(); + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_SWKey, 0); + + // Wrap this return value + { + // ALTERNATIVE Constructor, make an object wrapper + zval *obj, *_cPtr; + MAKE_STD_ZVAL(obj); + MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + object_init_ex(obj,ptr_ce_swig_SWKey); + add_property_zval(obj,"_cPtr",_cPtr); + *return_value=*obj; + } +} + + +ZEND_NAMED_FUNCTION(_wrap_VerseKey_LowerBound) { + VerseKey *arg1 ; + VerseKey *result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + { + VerseKey &_result_ref = ((VerseKey const *)arg1)->LowerBound(); + result = (VerseKey *) &_result_ref; + } + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_VerseKey, 0); + + // Wrap this return value + { + // ALTERNATIVE Constructor, make an object wrapper + zval *obj, *_cPtr; + MAKE_STD_ZVAL(obj); + MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + object_init_ex(obj,ptr_ce_swig_VerseKey); + add_property_zval(obj,"_cPtr",_cPtr); + *return_value=*obj; + } +} + + +ZEND_NAMED_FUNCTION(_wrap_VerseKey_UpperBound) { + VerseKey *arg1 ; + VerseKey *result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + { + VerseKey &_result_ref = ((VerseKey const *)arg1)->UpperBound(); + result = (VerseKey *) &_result_ref; + } + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_VerseKey, 0); + + // Wrap this return value + { + // ALTERNATIVE Constructor, make an object wrapper + zval *obj, *_cPtr; + MAKE_STD_ZVAL(obj); + MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + object_init_ex(obj,ptr_ce_swig_VerseKey); + add_property_zval(obj,"_cPtr",_cPtr); + *return_value=*obj; + } +} + + +ZEND_NAMED_FUNCTION(_wrap_VerseKey_ClearBounds) { + VerseKey *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + (arg1)->ClearBounds(); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_VerseKey_decrement) { + VerseKey *arg1 ; + int arg2 ; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_long_ex(args[1-argbase]); + arg2 = (int) Z_LVAL_PP(args[1-argbase]); + + (arg1)->decrement(arg2); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_VerseKey_increment) { + VerseKey *arg1 ; + int arg2 ; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_long_ex(args[1-argbase]); + arg2 = (int) Z_LVAL_PP(args[1-argbase]); + + (arg1)->increment(arg2); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_VerseKey_Traversable) { + VerseKey *arg1 ; + unsigned char result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (unsigned char)(arg1)->Traversable(); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_VerseKey_getBookName) { + VerseKey *arg1 ; + char *result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (char *)((VerseKey const *)arg1)->getBookName(); + + + ZVAL_STRING(return_value,result, 1); + +} + + +ZEND_NAMED_FUNCTION(_wrap_VerseKey_getBookAbbrev) { + VerseKey *arg1 ; + char *result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (char *)((VerseKey const *)arg1)->getBookAbbrev(); + + + ZVAL_STRING(return_value,result, 1); + +} + + +ZEND_NAMED_FUNCTION(_wrap_VerseKey_Testament) { + VerseKey *arg1 ; + unsigned char result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (unsigned char)((VerseKey const *)arg1)->Testament(); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_VerseKey_Book) { + VerseKey *arg1 ; + unsigned char result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (unsigned char)((VerseKey const *)arg1)->Book(); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_VerseKey_Chapter) { + VerseKey *arg1 ; + int result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (int)((VerseKey const *)arg1)->Chapter(); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_VerseKey_Verse) { + VerseKey *arg1 ; + int result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (int)((VerseKey const *)arg1)->Verse(); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_VerseKey_Normalize) { + VerseKey *arg1 ; + char arg2 = 0 ; + zval **args[3]; + int argbase=0 ; + int arg_count; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(1-argbase) || arg_count>(2-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + + if(SWIG_ConvertPtr(*((0name); + } + + if(arg_count > 1) { + convert_to_string_ex(args[1-argbase]); + arg2 = (char) *Z_STRVAL_PP(args[1-argbase]); + + } + (arg1)->Normalize(arg2); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_VerseKey_AutoNormalize) { + VerseKey *arg1 ; + char arg2 = MAXPOS(char) ; + unsigned char result; + zval **args[3]; + int argbase=0 ; + int arg_count; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(1-argbase) || arg_count>(2-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + + if(SWIG_ConvertPtr(*((0name); + } + + if(arg_count > 1) { + convert_to_string_ex(args[1-argbase]); + arg2 = (char) *Z_STRVAL_PP(args[1-argbase]); + + } + result = (unsigned char)(arg1)->AutoNormalize(arg2); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_VerseKey_Headings) { + VerseKey *arg1 ; + char arg2 = MAXPOS(char) ; + unsigned char result; + zval **args[3]; + int argbase=0 ; + int arg_count; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(1-argbase) || arg_count>(2-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + + if(SWIG_ConvertPtr(*((0name); + } + + if(arg_count > 1) { + convert_to_string_ex(args[1-argbase]); + arg2 = (char) *Z_STRVAL_PP(args[1-argbase]); + + } + result = (unsigned char)(arg1)->Headings(arg2); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_VerseKey_getOSISRef) { + VerseKey *arg1 ; + char *result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (char *)((VerseKey const *)arg1)->getOSISRef(); + + + ZVAL_STRING(return_value,result, 1); + +} + + +ZEND_NAMED_FUNCTION(_wrap_VerseKey_compare) { + VerseKey *arg1 ; + SWKey *arg2 ; + int result; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + if(SWIG_ConvertPtr(*args[1-argbase], (void **) &arg2, SWIGTYPE_p_SWKey) < 0) { + zend_error(E_ERROR, "Type error in argument %d of VerseKey_compare. Expected %s", 2-argbase, SWIGTYPE_p_SWKey->name); + } + + result = (int)(arg1)->compare((SWKey const &)*arg2); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_VerseKey__compare) { + VerseKey *arg1 ; + VerseKey *arg2 ; + int result; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + if(SWIG_ConvertPtr(*args[1-argbase], (void **) &arg2, SWIGTYPE_p_VerseKey) < 0) { + zend_error(E_ERROR, "Type error in argument %d of VerseKey__compare. Expected %s", 2-argbase, SWIGTYPE_p_VerseKey->name); + } + + result = (int)(arg1)->_compare((VerseKey const &)*arg2); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_VerseKey_setLocale) { + VerseKey *arg1 ; + char *arg2 ; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + (arg1)->setLocale((char const *)arg2); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_VerseKey_getLocale) { + VerseKey *arg1 ; + char *result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (char *)((VerseKey const *)arg1)->getLocale(); + + + ZVAL_STRING(return_value,result, 1); + +} + + +// property handler for class VerseKey +static pval _wrap_propget_VerseKey(zend_property_reference *property_reference) { + pval result; + pval **_result; + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + result.type = IS_NULL; + if (_propget_VerseKey(property_reference, &result)==SUCCESS) return result; + //return it ourselves + if (zend_hash_find(Z_OBJPROP_P(property_reference->object),Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),(void**)&_result)==SUCCESS) return **_result; + result.type = IS_NULL; + return result; +} +static int _propget_VerseKey(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass VerseKey + { + // chain to base class + if (_propget_SWKey(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +static int _wrap_propset_VerseKey(zend_property_reference *property_reference, pval *value) { + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + if (_propset_VerseKey(property_reference, value)==SUCCESS) return SUCCESS; + //set it ourselves as we are actual class + return add_property_zval_ex(property_reference->object,Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),value); +} +static int _propset_VerseKey(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass VerseKey + { + // chain to base class + if (_propset_SWKey(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +ZEND_NAMED_FUNCTION(_wrap_new_ListKey) { + char *arg1 = 0 ; + ListKey *result; + zval **args[2]; + int argbase=0 ; + int arg_count; + + // NATIVE Constructor + int self_constructor=1; + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(0-argbase) || arg_count>(1-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + if(arg_count > 0) { + convert_to_string_ex(((0type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (ListKey *)new ListKey((ListKey const &)*arg1); + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_ListKey, 1); + + // Wrap this return value + { + // ALTERNATIVE Constructor, make an object wrapper + zval *obj, *_cPtr; + MAKE_STD_ZVAL(obj); + MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + object_init_ex(obj,ptr_ce_swig_ListKey); + add_property_zval(obj,"_cPtr",_cPtr); + *return_value=*obj; + } +} + + +// This function is designed to be called by the zend list destructors to typecast and do the actual destruction +void __wrap_delete_ListKey(zend_rsrc_list_entry *rsrc, const char *type_name TSRMLS_DC) { + swig_object_wrapper *value=(swig_object_wrapper *) rsrc->ptr ; + void *ptr=value->ptr ; + int newobject=value->newobject ; + ListKey *arg1 ; + + efree(value); + if (! newobject) return; // can't delete it! + SWIG_ZTS_ConvertResourceData(ptr,rsrc->type,type_name,(void **) &arg1,SWIGTYPE_p_ListKey TSRMLS_CC); + if (! arg1) zend_error(E_ERROR, "ListKey resource already free'd"); + delete arg1; + +} + + +ZEND_NAMED_FUNCTION(_wrap_delete_ListKey) { + ListKey *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + //if ((*args[0])->type==IS_RESOURCE) { + // // Get zend list destructor to free it + // zend_list_delete(Z_LVAL_PP(args[0])); + //} else { + delete arg1; + + //} + +} + + +ZEND_NAMED_FUNCTION(_wrap_ListKey_clone) { + ListKey *arg1 ; + SWKey *result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (SWKey *)((ListKey const *)arg1)->clone(); + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_SWKey, 0); + + // Wrap this return value + { + // ALTERNATIVE Constructor, make an object wrapper + zval *obj, *_cPtr; + MAKE_STD_ZVAL(obj); + MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + object_init_ex(obj,ptr_ce_swig_SWKey); + add_property_zval(obj,"_cPtr",_cPtr); + *return_value=*obj; + } +} + + +ZEND_NAMED_FUNCTION(_wrap_ListKey_ClearList) { + ListKey *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + (arg1)->ClearList(); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_ListKey_Count) { + ListKey *arg1 ; + int result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (int)(arg1)->Count(); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_ListKey_Remove) { + ListKey *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + (arg1)->Remove(); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_ListKey_SetToElement) { + ListKey *arg1 ; + int arg2 ; + unsigned char result; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_long_ex(args[1-argbase]); + arg2 = (int) Z_LVAL_PP(args[1-argbase]); + + result = (unsigned char)ListKey_SetToElement(arg1,arg2); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_ListKey_GetElement) { + ListKey *arg1 ; + int arg2 = -1 ; + SWKey *result; + zval **args[3]; + int argbase=0 ; + int arg_count; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(1-argbase) || arg_count>(2-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + + if(SWIG_ConvertPtr(*((0name); + } + + if(arg_count > 1) { + convert_to_long_ex(args[1-argbase]); + arg2 = (int) Z_LVAL_PP(args[1-argbase]); + + } + result = (SWKey *)(arg1)->GetElement(arg2); + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_SWKey, 0); + + // Wrap this return value + { + // ALTERNATIVE Constructor, make an object wrapper + zval *obj, *_cPtr; + MAKE_STD_ZVAL(obj); + MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + object_init_ex(obj,ptr_ce_swig_SWKey); + add_property_zval(obj,"_cPtr",_cPtr); + *return_value=*obj; + } +} + + +ZEND_NAMED_FUNCTION(_wrap_ListKey_add) { + ListKey *arg1 ; + SWKey *arg2 ; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + if(SWIG_ConvertPtr(*args[1-argbase], (void **) &arg2, SWIGTYPE_p_SWKey) < 0) { + zend_error(E_ERROR, "Type error in argument %d of ListKey_add. Expected %s", 2-argbase, SWIGTYPE_p_SWKey->name); + } + + (arg1)->add((SWKey const &)*arg2); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_ListKey_copyFrom) { + ListKey *arg1 ; + ListKey *arg2 ; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + if(SWIG_ConvertPtr(*args[1-argbase], (void **) &arg2, SWIGTYPE_p_ListKey) < 0) { + zend_error(E_ERROR, "Type error in argument %d of ListKey_copyFrom. Expected %s", 2-argbase, SWIGTYPE_p_ListKey->name); + } + + (arg1)->copyFrom((ListKey const &)*arg2); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_ListKey_setPosition) { + ListKey *arg1 ; + SwigValueWrapper< SW_POSITION > arg2 ; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + { + SW_POSITION * argp; + if(SWIG_ConvertPtr(*args[1-argbase], (void **) &argp, SWIGTYPE_p_SW_POSITION) < 0) { + zend_error(E_ERROR, "Type error in argument %d of ListKey_setPosition. Expected %s", 2-argbase, SWIGTYPE_p_SW_POSITION->name); + } + arg2 = *argp; + } + (arg1)->setPosition(arg2); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_ListKey_decrement) { + ListKey *arg1 ; + int arg2 ; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_long_ex(args[1-argbase]); + arg2 = (int) Z_LVAL_PP(args[1-argbase]); + + (arg1)->decrement(arg2); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_ListKey_increment) { + ListKey *arg1 ; + int arg2 ; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_long_ex(args[1-argbase]); + arg2 = (int) Z_LVAL_PP(args[1-argbase]); + + (arg1)->increment(arg2); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_ListKey_Traversable) { + ListKey *arg1 ; + unsigned char result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (unsigned char)(arg1)->Traversable(); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_ListKey_Index) { + ListKey *arg1 ; + long result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (long)((ListKey const *)arg1)->Index(); + + + ZVAL_LONG(return_value,result); + +} + + +// property handler for class ListKey +static pval _wrap_propget_ListKey(zend_property_reference *property_reference) { + pval result; + pval **_result; + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + result.type = IS_NULL; + if (_propget_ListKey(property_reference, &result)==SUCCESS) return result; + //return it ourselves + if (zend_hash_find(Z_OBJPROP_P(property_reference->object),Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),(void**)&_result)==SUCCESS) return **_result; + result.type = IS_NULL; + return result; +} +static int _propget_ListKey(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass ListKey + { + // chain to base class + if (_propget_SWKey(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +static int _wrap_propset_ListKey(zend_property_reference *property_reference, pval *value) { + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + if (_propset_ListKey(property_reference, value)==SUCCESS) return SUCCESS; + //set it ourselves as we are actual class + return add_property_zval_ex(property_reference->object,Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),value); +} +static int _propset_ListKey(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass ListKey + { + // chain to base class + if (_propset_SWKey(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +ZEND_NAMED_FUNCTION(_wrap_TreeKey_getLocalName) { + TreeKey *arg1 ; + char *result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (char *)(arg1)->getLocalName(); + + + ZVAL_STRING(return_value,result, 1); + +} + + +ZEND_NAMED_FUNCTION(_wrap_TreeKey_setLocalName) { + TreeKey *arg1 ; + char *arg2 ; + char *result; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + result = (char *)(arg1)->setLocalName((char const *)arg2); + + + ZVAL_STRING(return_value,result, 1); + +} + + +ZEND_NAMED_FUNCTION(_wrap_TreeKey_getUserData) { + TreeKey *arg1 ; + int *arg2 = 0 ; + char *result; + int intr2 ; + int force2 ; + zval **args[3]; + int argbase=0 ; + int arg_count; + zval ** _saved[1] ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(1-argbase) || arg_count>(2-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + + if(SWIG_ConvertPtr(*((0name); + } + + if(arg_count > 1) { + if(SWIG_ConvertPtr(*args[1-argbase], (void **) &arg2, SWIGTYPE_p_int) < 0) { + // So... we didn't get a ref or ptr, but can it be + // reasonably co-erced into what we were + // looking for a ref of or ptr to? + if ((*args[1-argbase])->type==IS_STRING || + (*args[1-argbase])->type==IS_LONG || + (*args[1-argbase])->type==IS_DOUBLE) { + convert_to_long_ex(args[1-argbase]); + intr2 = (int) (*args[1-argbase])->value.lval; + arg2 = &intr2; + // have to passback arg$arg too + force2=1; + }else { + // wasn't a pre/ref/thing, OR anything like an int thing + force2=0; + zend_error(E_ERROR, "Type error in argument %d of TreeKey_getUserData. Expected %s or at least something looking vaguely like a number hopefully passed by reference", 2-argbase, SWIGTYPE_p_int->name); + } + }else force2=0; + + } + _saved[0] = args[1-argbase]; + result = (char *)(arg1)->getUserData(arg2); + + + ZVAL_STRING(return_value,result, 1); + + + if (force2) { + // pass back arg2 through params (_saved[0]) if we can + if(! PZVAL_IS_REF(*_saved[0])) { + zend_error(E_WARNING, "Parameter %d of TreeKey_getUserData wasn't passed by reference",2-argbase); + }else { + ZVAL_LONG(*_saved[0],intr2); + } + } + +} + + +ZEND_NAMED_FUNCTION(_wrap_TreeKey_setUserData) { + TreeKey *arg1 ; + char *arg2 ; + int arg3 = 0 ; + zval **args[4]; + int argbase=0 ; + int arg_count; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(2-argbase) || arg_count>(3-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + if(arg_count > 2) { + convert_to_long_ex(args[2-argbase]); + arg3 = (int) Z_LVAL_PP(args[2-argbase]); + + } + (arg1)->setUserData((char const *)arg2,arg3); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_TreeKey_getFullName) { + TreeKey *arg1 ; + char *result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (char *)((TreeKey const *)arg1)->getFullName(); + + + ZVAL_STRING(return_value,result, 1); + +} + + +ZEND_NAMED_FUNCTION(_wrap_TreeKey_root) { + TreeKey *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + (arg1)->root(); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_TreeKey_parent) { + TreeKey *arg1 ; + bool result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (bool)(arg1)->parent(); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_TreeKey_firstChild) { + TreeKey *arg1 ; + bool result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (bool)(arg1)->firstChild(); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_TreeKey_nextSibling) { + TreeKey *arg1 ; + bool result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (bool)(arg1)->nextSibling(); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_TreeKey_previousSibling) { + TreeKey *arg1 ; + bool result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (bool)(arg1)->previousSibling(); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_TreeKey_hasChildren) { + TreeKey *arg1 ; + bool result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (bool)(arg1)->hasChildren(); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_TreeKey_append) { + TreeKey *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + (arg1)->append(); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_TreeKey_appendChild) { + TreeKey *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + (arg1)->appendChild(); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_TreeKey_insertBefore) { + TreeKey *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + (arg1)->insertBefore(); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_TreeKey_remove) { + TreeKey *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + (arg1)->remove(); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_TreeKey_setOffset) { + TreeKey *arg1 ; + unsigned long arg2 ; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_long_ex(args[1-argbase]); + arg2 = (unsigned long) Z_LVAL_PP(args[1-argbase]); + + (arg1)->setOffset(arg2); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_TreeKey_getOffset) { + TreeKey *arg1 ; + unsigned long result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (unsigned long)((TreeKey const *)arg1)->getOffset(); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_TreeKey_setPosition) { + TreeKey *arg1 ; + SwigValueWrapper< SW_POSITION > arg2 ; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + { + SW_POSITION * argp; + if(SWIG_ConvertPtr(*args[1-argbase], (void **) &argp, SWIGTYPE_p_SW_POSITION) < 0) { + zend_error(E_ERROR, "Type error in argument %d of TreeKey_setPosition. Expected %s", 2-argbase, SWIGTYPE_p_SW_POSITION->name); + } + arg2 = *argp; + } + (arg1)->setPosition(arg2); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_TreeKey_Traversable) { + TreeKey *arg1 ; + unsigned char result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (unsigned char)(arg1)->Traversable(); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_TreeKey_Index) { + TreeKey *arg1 ; + long result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (long)((TreeKey const *)arg1)->Index(); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_new_TreeKey) { + zend_error(E_ERROR,"Cannot create swig object type: TreeKey as the underlying object is abstract"); +} + + + + + +// property handler for class TreeKey +static pval _wrap_propget_TreeKey(zend_property_reference *property_reference) { + pval result; + pval **_result; + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + result.type = IS_NULL; + if (_propget_TreeKey(property_reference, &result)==SUCCESS) return result; + //return it ourselves + if (zend_hash_find(Z_OBJPROP_P(property_reference->object),Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),(void**)&_result)==SUCCESS) return **_result; + result.type = IS_NULL; + return result; +} +static int _propget_TreeKey(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass TreeKey + { + // chain to base class + if (_propget_SWKey(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +static int _wrap_propset_TreeKey(zend_property_reference *property_reference, pval *value) { + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + if (_propset_TreeKey(property_reference, value)==SUCCESS) return SUCCESS; + //set it ourselves as we are actual class + return add_property_zval_ex(property_reference->object,Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),value); +} +static int _propset_TreeKey(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass TreeKey + { + // chain to base class + if (_propset_SWKey(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +ZEND_NAMED_FUNCTION(_wrap_new_TreeKeyIdx) { + zend_error(E_ERROR,"Cannot create swig object type: TreeKeyIdx as the underlying object is abstract"); +} + + + + + +// property handler for class TreeKeyIdx +static pval _wrap_propget_TreeKeyIdx(zend_property_reference *property_reference) { + pval result; + pval **_result; + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + result.type = IS_NULL; + if (_propget_TreeKeyIdx(property_reference, &result)==SUCCESS) return result; + //return it ourselves + if (zend_hash_find(Z_OBJPROP_P(property_reference->object),Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),(void**)&_result)==SUCCESS) return **_result; + result.type = IS_NULL; + return result; +} +static int _propget_TreeKeyIdx(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass TreeKeyIdx + { + // chain to base class + if (_propget_TreeKey(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +static int _wrap_propset_TreeKeyIdx(zend_property_reference *property_reference, pval *value) { + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + if (_propset_TreeKeyIdx(property_reference, value)==SUCCESS) return SUCCESS; + //set it ourselves as we are actual class + return add_property_zval_ex(property_reference->object,Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),value); +} +static int _propset_TreeKeyIdx(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass TreeKeyIdx + { + // chain to base class + if (_propset_TreeKey(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +ZEND_NAMED_FUNCTION(_wrap_new_LocaleMgr) { + char *arg1 = 0 ; + LocaleMgr *result; + zval **args[2]; + int argbase=0 ; + int arg_count; + + // NATIVE Constructor + int self_constructor=1; + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(0-argbase) || arg_count>(1-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + if(arg_count > 0) { + convert_to_string_ex(((0ptr ; + void *ptr=value->ptr ; + int newobject=value->newobject ; + LocaleMgr *arg1 ; + + efree(value); + if (! newobject) return; // can't delete it! + SWIG_ZTS_ConvertResourceData(ptr,rsrc->type,type_name,(void **) &arg1,SWIGTYPE_p_LocaleMgr TSRMLS_CC); + if (! arg1) zend_error(E_ERROR, "LocaleMgr resource already free'd"); + delete arg1; + +} + + +ZEND_NAMED_FUNCTION(_wrap_delete_LocaleMgr) { + LocaleMgr *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + //if ((*args[0])->type==IS_RESOURCE) { + // // Get zend list destructor to free it + // zend_list_delete(Z_LVAL_PP(args[0])); + //} else { + delete arg1; + + //} + +} + + +ZEND_NAMED_FUNCTION(_wrap_LocaleMgr_getLocale) { + LocaleMgr *arg1 ; + char *arg2 ; + SWLocale *result; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + result = (SWLocale *)(arg1)->getLocale((char const *)arg2); + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_SWLocale, 0); + +} + + +ZEND_NAMED_FUNCTION(_wrap_LocaleMgr_getAvailableLocales) { + LocaleMgr *arg1 ; + list result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (arg1)->getAvailableLocales(); + + { + list * resultobj = new list((list &) result); + SWIG_SetPointerZval(return_value, (void *)resultobj, SWIGTYPE_p_listTstring_t, 0); + } +} + + +ZEND_NAMED_FUNCTION(_wrap_LocaleMgr_getDefaultLocaleName) { + LocaleMgr *arg1 ; + char *result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (char *)(arg1)->getDefaultLocaleName(); + + + ZVAL_STRING(return_value,result, 1); + +} + + +ZEND_NAMED_FUNCTION(_wrap_LocaleMgr_setDefaultLocaleName) { + LocaleMgr *arg1 ; + char *arg2 ; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + (arg1)->setDefaultLocaleName((char const *)arg2); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_LocaleMgr_systemLocaleMgr) { + LocaleMgr *arg1 ; + LocaleMgr *result; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + result = (LocaleMgr *)LocaleMgr_systemLocaleMgr(arg1); + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_LocaleMgr, 0); + + // Wrap this return value + { + // ALTERNATIVE Constructor, make an object wrapper + zval *obj, *_cPtr; + MAKE_STD_ZVAL(obj); + MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + object_init_ex(obj,ptr_ce_swig_LocaleMgr); + add_property_zval(obj,"_cPtr",_cPtr); + *return_value=*obj; + } +} + + +// property handler for class LocaleMgr +static pval _wrap_propget_LocaleMgr(zend_property_reference *property_reference) { + pval result; + pval **_result; + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + result.type = IS_NULL; + if (_propget_LocaleMgr(property_reference, &result)==SUCCESS) return result; + //return it ourselves + if (zend_hash_find(Z_OBJPROP_P(property_reference->object),Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),(void**)&_result)==SUCCESS) return **_result; + result.type = IS_NULL; + return result; +} +static int _propget_LocaleMgr(zend_property_reference *property_reference, pval *value) { + /* get the property name */ + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + char *propname=Z_STRVAL_P(&(property->element)); + return FAILURE; +} + +static int _wrap_propset_LocaleMgr(zend_property_reference *property_reference, pval *value) { + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + if (_propset_LocaleMgr(property_reference, value)==SUCCESS) return SUCCESS; + //set it ourselves as we are actual class + return add_property_zval_ex(property_reference->object,Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),value); +} +static int _propset_LocaleMgr(zend_property_reference *property_reference, pval *value) { + /* get the property name */ + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + char *propname=Z_STRVAL_P(&(property->element)); + return FAILURE; +} + +ZEND_NAMED_FUNCTION(_wrap_new_SWFilterMgr) { + zend_error(E_ERROR,"Cannot create swig object type: SWFilterMgr as the underlying object is abstract"); +} + + + + + +// property handler for class SWFilterMgr +static pval _wrap_propget_SWFilterMgr(zend_property_reference *property_reference) { + pval result; + pval **_result; + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + result.type = IS_NULL; + if (_propget_SWFilterMgr(property_reference, &result)==SUCCESS) return result; + //return it ourselves + if (zend_hash_find(Z_OBJPROP_P(property_reference->object),Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),(void**)&_result)==SUCCESS) return **_result; + result.type = IS_NULL; + return result; +} +static int _propget_SWFilterMgr(zend_property_reference *property_reference, pval *value) { + /* get the property name */ + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + char *propname=Z_STRVAL_P(&(property->element)); + return FAILURE; +} + +static int _wrap_propset_SWFilterMgr(zend_property_reference *property_reference, pval *value) { + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + if (_propset_SWFilterMgr(property_reference, value)==SUCCESS) return SUCCESS; + //set it ourselves as we are actual class + return add_property_zval_ex(property_reference->object,Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),value); +} +static int _propset_SWFilterMgr(zend_property_reference *property_reference, pval *value) { + /* get the property name */ + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + char *propname=Z_STRVAL_P(&(property->element)); + return FAILURE; +} + +ZEND_NAMED_FUNCTION(_wrap_new_SWText) { + char *arg1 = 0 ; + char *arg2 = 0 ; + SWDisplay *arg3 = 0 ; + SWTextEncoding arg4 = ENC_UNKNOWN ; + SWTextDirection arg5 = DIRECTION_LTR ; + SWTextMarkup arg6 = FMT_UNKNOWN ; + char *arg7 = 0 ; + SWText *result; + zval **args[8]; + int argbase=0 ; + int arg_count; + + // NATIVE Constructor + int self_constructor=1; + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(0-argbase) || arg_count>(7-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + if(arg_count > 0) { + convert_to_string_ex(((0 1) { + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + } + if(arg_count > 2) { + if(SWIG_ConvertPtr(*args[2-argbase], (void **) &arg3, SWIGTYPE_p_SWDisplay) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_SWText. Expected %s", 3-argbase, SWIGTYPE_p_SWDisplay->name); + } + + } + if(arg_count > 3) { + { + SWTextEncoding * argp; + if(SWIG_ConvertPtr(*args[3-argbase], (void **) &argp, SWIGTYPE_p_SWTextEncoding) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_SWText. Expected %s", 4-argbase, SWIGTYPE_p_SWTextEncoding->name); + } + arg4 = *argp; + } + } + if(arg_count > 4) { + { + SWTextDirection * argp; + if(SWIG_ConvertPtr(*args[4-argbase], (void **) &argp, SWIGTYPE_p_SWTextDirection) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_SWText. Expected %s", 5-argbase, SWIGTYPE_p_SWTextDirection->name); + } + arg5 = *argp; + } + } + if(arg_count > 5) { + { + SWTextMarkup * argp; + if(SWIG_ConvertPtr(*args[5-argbase], (void **) &argp, SWIGTYPE_p_SWTextMarkup) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_SWText. Expected %s", 6-argbase, SWIGTYPE_p_SWTextMarkup->name); + } + arg6 = *argp; + } + } + if(arg_count > 6) { + convert_to_string_ex(args[6-argbase]); + arg7 = (char *) Z_STRVAL_PP(args[6-argbase]); + + } + result = (SWText *)new SWText((char const *)arg1,(char const *)arg2,arg3,arg4,arg5,arg6,(char const *)arg7); + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_SWText, 1); + + // Wrap this return value + if (this_ptr) { + // NATIVE Constructor, use this_ptr + zval *_cPtr; MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + add_property_zval(this_ptr,"_cPtr",_cPtr); + }else if (! this_ptr) { + // ALTERNATIVE Constructor, make an object wrapper + zval *obj, *_cPtr; + MAKE_STD_ZVAL(obj); + MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + object_init_ex(obj,ptr_ce_swig_SWText); + add_property_zval(obj,"_cPtr",_cPtr); + *return_value=*obj; + } +} + + +// This function is designed to be called by the zend list destructors to typecast and do the actual destruction +void __wrap_delete_SWText(zend_rsrc_list_entry *rsrc, const char *type_name TSRMLS_DC) { + swig_object_wrapper *value=(swig_object_wrapper *) rsrc->ptr ; + void *ptr=value->ptr ; + int newobject=value->newobject ; + SWText *arg1 ; + + efree(value); + if (! newobject) return; // can't delete it! + SWIG_ZTS_ConvertResourceData(ptr,rsrc->type,type_name,(void **) &arg1,SWIGTYPE_p_SWText TSRMLS_CC); + if (! arg1) zend_error(E_ERROR, "SWText resource already free'd"); + delete arg1; + +} + + +ZEND_NAMED_FUNCTION(_wrap_delete_SWText) { + SWText *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + //if ((*args[0])->type==IS_RESOURCE) { + // // Get zend list destructor to free it + // zend_list_delete(Z_LVAL_PP(args[0])); + //} else { + delete arg1; + + //} + +} + + +// property handler for class SWText +static pval _wrap_propget_SWText(zend_property_reference *property_reference) { + pval result; + pval **_result; + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + result.type = IS_NULL; + if (_propget_SWText(property_reference, &result)==SUCCESS) return result; + //return it ourselves + if (zend_hash_find(Z_OBJPROP_P(property_reference->object),Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),(void**)&_result)==SUCCESS) return **_result; + result.type = IS_NULL; + return result; +} +static int _propget_SWText(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass SWText + { + // chain to base class + if (_propget_SWModule(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +static int _wrap_propset_SWText(zend_property_reference *property_reference, pval *value) { + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + if (_propset_SWText(property_reference, value)==SUCCESS) return SUCCESS; + //set it ourselves as we are actual class + return add_property_zval_ex(property_reference->object,Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),value); +} +static int _propset_SWText(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass SWText + { + // chain to base class + if (_propset_SWModule(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +ZEND_NAMED_FUNCTION(_wrap_new_RawText) { + char *arg1 ; + char *arg2 = 0 ; + char *arg3 = 0 ; + SWDisplay *arg4 = 0 ; + SWTextEncoding arg5 = ENC_UNKNOWN ; + SWTextDirection arg6 = DIRECTION_LTR ; + SWTextMarkup arg7 = FMT_UNKNOWN ; + char *arg8 = 0 ; + RawText *result; + zval **args[9]; + int argbase=0 ; + int arg_count; + + // NATIVE Constructor + int self_constructor=1; + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(1-argbase) || arg_count>(8-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + + convert_to_string_ex(((0 1) { + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + } + if(arg_count > 2) { + convert_to_string_ex(args[2-argbase]); + arg3 = (char *) Z_STRVAL_PP(args[2-argbase]); + + } + if(arg_count > 3) { + if(SWIG_ConvertPtr(*args[3-argbase], (void **) &arg4, SWIGTYPE_p_SWDisplay) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_RawText. Expected %s", 4-argbase, SWIGTYPE_p_SWDisplay->name); + } + + } + if(arg_count > 4) { + { + SWTextEncoding * argp; + if(SWIG_ConvertPtr(*args[4-argbase], (void **) &argp, SWIGTYPE_p_SWTextEncoding) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_RawText. Expected %s", 5-argbase, SWIGTYPE_p_SWTextEncoding->name); + } + arg5 = *argp; + } + } + if(arg_count > 5) { + { + SWTextDirection * argp; + if(SWIG_ConvertPtr(*args[5-argbase], (void **) &argp, SWIGTYPE_p_SWTextDirection) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_RawText. Expected %s", 6-argbase, SWIGTYPE_p_SWTextDirection->name); + } + arg6 = *argp; + } + } + if(arg_count > 6) { + { + SWTextMarkup * argp; + if(SWIG_ConvertPtr(*args[6-argbase], (void **) &argp, SWIGTYPE_p_SWTextMarkup) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_RawText. Expected %s", 7-argbase, SWIGTYPE_p_SWTextMarkup->name); + } + arg7 = *argp; + } + } + if(arg_count > 7) { + convert_to_string_ex(args[7-argbase]); + arg8 = (char *) Z_STRVAL_PP(args[7-argbase]); + + } + result = (RawText *)new RawText((char const *)arg1,(char const *)arg2,(char const *)arg3,arg4,arg5,arg6,arg7,(char const *)arg8); + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_RawText, 1); + + // Wrap this return value + if (this_ptr) { + // NATIVE Constructor, use this_ptr + zval *_cPtr; MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + add_property_zval(this_ptr,"_cPtr",_cPtr); + }else if (! this_ptr) { + // ALTERNATIVE Constructor, make an object wrapper + zval *obj, *_cPtr; + MAKE_STD_ZVAL(obj); + MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + object_init_ex(obj,ptr_ce_swig_RawText); + add_property_zval(obj,"_cPtr",_cPtr); + *return_value=*obj; + } +} + + +ZEND_NAMED_FUNCTION(_wrap_RawText_createModule) { + RawText *arg1 ; + char *arg2 ; + unsigned char result; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + result = (unsigned char)(arg1)->createModule((char const *)arg2); + + + ZVAL_LONG(return_value,result); + +} + + +// This function is designed to be called by the zend list destructors to typecast and do the actual destruction +void __wrap_delete_RawText(zend_rsrc_list_entry *rsrc, const char *type_name TSRMLS_DC) { + swig_object_wrapper *value=(swig_object_wrapper *) rsrc->ptr ; + void *ptr=value->ptr ; + int newobject=value->newobject ; + RawText *arg1 ; + + efree(value); + if (! newobject) return; // can't delete it! + SWIG_ZTS_ConvertResourceData(ptr,rsrc->type,type_name,(void **) &arg1,SWIGTYPE_p_RawText TSRMLS_CC); + if (! arg1) zend_error(E_ERROR, "RawText resource already free'd"); + delete arg1; + +} + + +ZEND_NAMED_FUNCTION(_wrap_delete_RawText) { + RawText *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + //if ((*args[0])->type==IS_RESOURCE) { + // // Get zend list destructor to free it + // zend_list_delete(Z_LVAL_PP(args[0])); + //} else { + delete arg1; + + //} + +} + + +// property handler for class RawText +static pval _wrap_propget_RawText(zend_property_reference *property_reference) { + pval result; + pval **_result; + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + result.type = IS_NULL; + if (_propget_RawText(property_reference, &result)==SUCCESS) return result; + //return it ourselves + if (zend_hash_find(Z_OBJPROP_P(property_reference->object),Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),(void**)&_result)==SUCCESS) return **_result; + result.type = IS_NULL; + return result; +} +static int _propget_RawText(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass RawText + { + // chain to base class + if (_propget_SWText(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +static int _wrap_propset_RawText(zend_property_reference *property_reference, pval *value) { + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + if (_propset_RawText(property_reference, value)==SUCCESS) return SUCCESS; + //set it ourselves as we are actual class + return add_property_zval_ex(property_reference->object,Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),value); +} +static int _propset_RawText(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass RawText + { + // chain to base class + if (_propset_SWText(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +ZEND_NAMED_FUNCTION(_wrap_new_zText) { + char *arg1 ; + char *arg2 = 0 ; + char *arg3 = 0 ; + int arg4 = CHAPTERBLOCKS ; + SWCompress *arg5 = 0 ; + SWDisplay *arg6 = 0 ; + SWTextEncoding arg7 = ENC_UNKNOWN ; + SWTextDirection arg8 = DIRECTION_LTR ; + SWTextMarkup arg9 = FMT_UNKNOWN ; + char *arg10 = 0 ; + zText *result; + zval **args[11]; + int argbase=0 ; + int arg_count; + + // NATIVE Constructor + int self_constructor=1; + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(1-argbase) || arg_count>(10-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + + convert_to_string_ex(((0 1) { + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + } + if(arg_count > 2) { + convert_to_string_ex(args[2-argbase]); + arg3 = (char *) Z_STRVAL_PP(args[2-argbase]); + + } + if(arg_count > 3) { + convert_to_long_ex(args[3-argbase]); + arg4 = (int) Z_LVAL_PP(args[3-argbase]); + + } + if(arg_count > 4) { + if(SWIG_ConvertPtr(*args[4-argbase], (void **) &arg5, SWIGTYPE_p_SWCompress) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_zText. Expected %s", 5-argbase, SWIGTYPE_p_SWCompress->name); + } + + } + if(arg_count > 5) { + if(SWIG_ConvertPtr(*args[5-argbase], (void **) &arg6, SWIGTYPE_p_SWDisplay) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_zText. Expected %s", 6-argbase, SWIGTYPE_p_SWDisplay->name); + } + + } + if(arg_count > 6) { + { + SWTextEncoding * argp; + if(SWIG_ConvertPtr(*args[6-argbase], (void **) &argp, SWIGTYPE_p_SWTextEncoding) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_zText. Expected %s", 7-argbase, SWIGTYPE_p_SWTextEncoding->name); + } + arg7 = *argp; + } + } + if(arg_count > 7) { + { + SWTextDirection * argp; + if(SWIG_ConvertPtr(*args[7-argbase], (void **) &argp, SWIGTYPE_p_SWTextDirection) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_zText. Expected %s", 8-argbase, SWIGTYPE_p_SWTextDirection->name); + } + arg8 = *argp; + } + } + if(arg_count > 8) { + { + SWTextMarkup * argp; + if(SWIG_ConvertPtr(*args[8-argbase], (void **) &argp, SWIGTYPE_p_SWTextMarkup) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_zText. Expected %s", 9-argbase, SWIGTYPE_p_SWTextMarkup->name); + } + arg9 = *argp; + } + } + if(arg_count > 9) { + convert_to_string_ex(args[9-argbase]); + arg10 = (char *) Z_STRVAL_PP(args[9-argbase]); + + } + result = (zText *)new zText((char const *)arg1,(char const *)arg2,(char const *)arg3,arg4,arg5,arg6,arg7,arg8,arg9,(char const *)arg10); + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_zText, 1); + + // Wrap this return value + if (this_ptr) { + // NATIVE Constructor, use this_ptr + zval *_cPtr; MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + add_property_zval(this_ptr,"_cPtr",_cPtr); + }else if (! this_ptr) { + // ALTERNATIVE Constructor, make an object wrapper + zval *obj, *_cPtr; + MAKE_STD_ZVAL(obj); + MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + object_init_ex(obj,ptr_ce_swig_zText); + add_property_zval(obj,"_cPtr",_cPtr); + *return_value=*obj; + } +} + + +// This function is designed to be called by the zend list destructors to typecast and do the actual destruction +void __wrap_delete_zText(zend_rsrc_list_entry *rsrc, const char *type_name TSRMLS_DC) { + swig_object_wrapper *value=(swig_object_wrapper *) rsrc->ptr ; + void *ptr=value->ptr ; + int newobject=value->newobject ; + zText *arg1 ; + + efree(value); + if (! newobject) return; // can't delete it! + SWIG_ZTS_ConvertResourceData(ptr,rsrc->type,type_name,(void **) &arg1,SWIGTYPE_p_zText TSRMLS_CC); + if (! arg1) zend_error(E_ERROR, "zText resource already free'd"); + delete arg1; + +} + + +ZEND_NAMED_FUNCTION(_wrap_delete_zText) { + zText *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + //if ((*args[0])->type==IS_RESOURCE) { + // // Get zend list destructor to free it + // zend_list_delete(Z_LVAL_PP(args[0])); + //} else { + delete arg1; + + //} + +} + + +ZEND_NAMED_FUNCTION(_wrap_zText_createModule) { + zText *arg1 ; + char *arg2 ; + int arg3 ; + unsigned char result; + zval **args[4]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 3) || (zend_get_parameters_array_ex(3-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + + convert_to_long_ex(args[2-argbase]); + arg3 = (int) Z_LVAL_PP(args[2-argbase]); + + result = (unsigned char)(arg1)->createModule((char const *)arg2,arg3); + + + ZVAL_LONG(return_value,result); + +} + + +// property handler for class zText +static pval _wrap_propget_zText(zend_property_reference *property_reference) { + pval result; + pval **_result; + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + result.type = IS_NULL; + if (_propget_zText(property_reference, &result)==SUCCESS) return result; + //return it ourselves + if (zend_hash_find(Z_OBJPROP_P(property_reference->object),Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),(void**)&_result)==SUCCESS) return **_result; + result.type = IS_NULL; + return result; +} +static int _propget_zText(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass zText + { + // chain to base class + if (_propget_SWText(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +static int _wrap_propset_zText(zend_property_reference *property_reference, pval *value) { + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + if (_propset_zText(property_reference, value)==SUCCESS) return SUCCESS; + //set it ourselves as we are actual class + return add_property_zval_ex(property_reference->object,Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),value); +} +static int _propset_zText(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass zText + { + // chain to base class + if (_propset_SWText(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +ZEND_NAMED_FUNCTION(_wrap_new_SWCom) { + zend_error(E_ERROR,"Cannot create swig object type: SWCom as the underlying object is abstract"); +} + + + + + +// property handler for class SWCom +static pval _wrap_propget_SWCom(zend_property_reference *property_reference) { + pval result; + pval **_result; + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + result.type = IS_NULL; + if (_propget_SWCom(property_reference, &result)==SUCCESS) return result; + //return it ourselves + if (zend_hash_find(Z_OBJPROP_P(property_reference->object),Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),(void**)&_result)==SUCCESS) return **_result; + result.type = IS_NULL; + return result; +} +static int _propget_SWCom(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass SWCom + { + // chain to base class + if (_propget_SWModule(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +static int _wrap_propset_SWCom(zend_property_reference *property_reference, pval *value) { + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + if (_propset_SWCom(property_reference, value)==SUCCESS) return SUCCESS; + //set it ourselves as we are actual class + return add_property_zval_ex(property_reference->object,Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),value); +} +static int _propset_SWCom(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass SWCom + { + // chain to base class + if (_propset_SWModule(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +ZEND_NAMED_FUNCTION(_wrap_new_RawCom) { + zend_error(E_ERROR,"Cannot create swig object type: RawCom as the underlying object is abstract"); +} + + + + + +// property handler for class RawCom +static pval _wrap_propget_RawCom(zend_property_reference *property_reference) { + pval result; + pval **_result; + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + result.type = IS_NULL; + if (_propget_RawCom(property_reference, &result)==SUCCESS) return result; + //return it ourselves + if (zend_hash_find(Z_OBJPROP_P(property_reference->object),Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),(void**)&_result)==SUCCESS) return **_result; + result.type = IS_NULL; + return result; +} +static int _propget_RawCom(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass RawCom + { + // chain to base class + if (_propget_SWCom(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +static int _wrap_propset_RawCom(zend_property_reference *property_reference, pval *value) { + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + if (_propset_RawCom(property_reference, value)==SUCCESS) return SUCCESS; + //set it ourselves as we are actual class + return add_property_zval_ex(property_reference->object,Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),value); +} +static int _propset_RawCom(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass RawCom + { + // chain to base class + if (_propset_SWCom(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +ZEND_NAMED_FUNCTION(_wrap_new_zCom) { + zend_error(E_ERROR,"Cannot create swig object type: zCom as the underlying object is abstract"); +} + + + + + +// property handler for class zCom +static pval _wrap_propget_zCom(zend_property_reference *property_reference) { + pval result; + pval **_result; + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + result.type = IS_NULL; + if (_propget_zCom(property_reference, &result)==SUCCESS) return result; + //return it ourselves + if (zend_hash_find(Z_OBJPROP_P(property_reference->object),Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),(void**)&_result)==SUCCESS) return **_result; + result.type = IS_NULL; + return result; +} +static int _propget_zCom(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass zCom + { + // chain to base class + if (_propget_SWCom(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +static int _wrap_propset_zCom(zend_property_reference *property_reference, pval *value) { + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + if (_propset_zCom(property_reference, value)==SUCCESS) return SUCCESS; + //set it ourselves as we are actual class + return add_property_zval_ex(property_reference->object,Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),value); +} +static int _propset_zCom(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass zCom + { + // chain to base class + if (_propset_SWCom(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +ZEND_NAMED_FUNCTION(_wrap_new_SWGenBook) { + zend_error(E_ERROR,"Cannot create swig object type: SWGenBook as the underlying object is abstract"); +} + + + + + +// property handler for class SWGenBook +static pval _wrap_propget_SWGenBook(zend_property_reference *property_reference) { + pval result; + pval **_result; + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + result.type = IS_NULL; + if (_propget_SWGenBook(property_reference, &result)==SUCCESS) return result; + //return it ourselves + if (zend_hash_find(Z_OBJPROP_P(property_reference->object),Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),(void**)&_result)==SUCCESS) return **_result; + result.type = IS_NULL; + return result; +} +static int _propget_SWGenBook(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass SWGenBook + { + // chain to base class + if (_propget_SWModule(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +static int _wrap_propset_SWGenBook(zend_property_reference *property_reference, pval *value) { + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + if (_propset_SWGenBook(property_reference, value)==SUCCESS) return SUCCESS; + //set it ourselves as we are actual class + return add_property_zval_ex(property_reference->object,Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),value); +} +static int _propset_SWGenBook(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass SWGenBook + { + // chain to base class + if (_propset_SWModule(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +ZEND_NAMED_FUNCTION(_wrap_new_RawGenBook) { + char *arg1 ; + char *arg2 = 0 ; + char *arg3 = 0 ; + SWDisplay *arg4 = 0 ; + SWTextEncoding arg5 = ENC_UNKNOWN ; + SWTextDirection arg6 = DIRECTION_LTR ; + SWTextMarkup arg7 = FMT_UNKNOWN ; + char *arg8 = 0 ; + RawGenBook *result; + zval **args[9]; + int argbase=0 ; + int arg_count; + + // NATIVE Constructor + int self_constructor=1; + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(1-argbase) || arg_count>(8-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + + convert_to_string_ex(((0 1) { + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + } + if(arg_count > 2) { + convert_to_string_ex(args[2-argbase]); + arg3 = (char *) Z_STRVAL_PP(args[2-argbase]); + + } + if(arg_count > 3) { + if(SWIG_ConvertPtr(*args[3-argbase], (void **) &arg4, SWIGTYPE_p_SWDisplay) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_RawGenBook. Expected %s", 4-argbase, SWIGTYPE_p_SWDisplay->name); + } + + } + if(arg_count > 4) { + { + SWTextEncoding * argp; + if(SWIG_ConvertPtr(*args[4-argbase], (void **) &argp, SWIGTYPE_p_SWTextEncoding) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_RawGenBook. Expected %s", 5-argbase, SWIGTYPE_p_SWTextEncoding->name); + } + arg5 = *argp; + } + } + if(arg_count > 5) { + { + SWTextDirection * argp; + if(SWIG_ConvertPtr(*args[5-argbase], (void **) &argp, SWIGTYPE_p_SWTextDirection) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_RawGenBook. Expected %s", 6-argbase, SWIGTYPE_p_SWTextDirection->name); + } + arg6 = *argp; + } + } + if(arg_count > 6) { + { + SWTextMarkup * argp; + if(SWIG_ConvertPtr(*args[6-argbase], (void **) &argp, SWIGTYPE_p_SWTextMarkup) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_RawGenBook. Expected %s", 7-argbase, SWIGTYPE_p_SWTextMarkup->name); + } + arg7 = *argp; + } + } + if(arg_count > 7) { + convert_to_string_ex(args[7-argbase]); + arg8 = (char *) Z_STRVAL_PP(args[7-argbase]); + + } + result = (RawGenBook *)new RawGenBook((char const *)arg1,(char const *)arg2,(char const *)arg3,arg4,arg5,arg6,arg7,(char const *)arg8); + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_RawGenBook, 1); + + // Wrap this return value + if (this_ptr) { + // NATIVE Constructor, use this_ptr + zval *_cPtr; MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + add_property_zval(this_ptr,"_cPtr",_cPtr); + }else if (! this_ptr) { + // ALTERNATIVE Constructor, make an object wrapper + zval *obj, *_cPtr; + MAKE_STD_ZVAL(obj); + MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + object_init_ex(obj,ptr_ce_swig_RawGenBook); + add_property_zval(obj,"_cPtr",_cPtr); + *return_value=*obj; + } +} + + +// This function is designed to be called by the zend list destructors to typecast and do the actual destruction +void __wrap_delete_RawGenBook(zend_rsrc_list_entry *rsrc, const char *type_name TSRMLS_DC) { + swig_object_wrapper *value=(swig_object_wrapper *) rsrc->ptr ; + void *ptr=value->ptr ; + int newobject=value->newobject ; + RawGenBook *arg1 ; + + efree(value); + if (! newobject) return; // can't delete it! + SWIG_ZTS_ConvertResourceData(ptr,rsrc->type,type_name,(void **) &arg1,SWIGTYPE_p_RawGenBook TSRMLS_CC); + if (! arg1) zend_error(E_ERROR, "RawGenBook resource already free'd"); + delete arg1; + +} + + +ZEND_NAMED_FUNCTION(_wrap_delete_RawGenBook) { + RawGenBook *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + //if ((*args[0])->type==IS_RESOURCE) { + // // Get zend list destructor to free it + // zend_list_delete(Z_LVAL_PP(args[0])); + //} else { + delete arg1; + + //} + +} + + +ZEND_NAMED_FUNCTION(_wrap_RawGenBook_createModule) { + RawGenBook *arg1 ; + char *arg2 ; + unsigned char result; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + result = (unsigned char)(arg1)->createModule((char const *)arg2); + + + ZVAL_LONG(return_value,result); + +} + + +// property handler for class RawGenBook +static pval _wrap_propget_RawGenBook(zend_property_reference *property_reference) { + pval result; + pval **_result; + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + result.type = IS_NULL; + if (_propget_RawGenBook(property_reference, &result)==SUCCESS) return result; + //return it ourselves + if (zend_hash_find(Z_OBJPROP_P(property_reference->object),Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),(void**)&_result)==SUCCESS) return **_result; + result.type = IS_NULL; + return result; +} +static int _propget_RawGenBook(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass RawGenBook + { + // chain to base class + if (_propget_SWGenBook(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +static int _wrap_propset_RawGenBook(zend_property_reference *property_reference, pval *value) { + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + if (_propset_RawGenBook(property_reference, value)==SUCCESS) return SUCCESS; + //set it ourselves as we are actual class + return add_property_zval_ex(property_reference->object,Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),value); +} +static int _propset_RawGenBook(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass RawGenBook + { + // chain to base class + if (_propset_SWGenBook(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +ZEND_NAMED_FUNCTION(_wrap_new_SWLD) { + char *arg1 = 0 ; + char *arg2 = 0 ; + SWDisplay *arg3 = 0 ; + SWTextEncoding arg4 = ENC_UNKNOWN ; + SWTextDirection arg5 = DIRECTION_LTR ; + SWTextMarkup arg6 = FMT_UNKNOWN ; + char *arg7 = 0 ; + SWLD *result; + zval **args[8]; + int argbase=0 ; + int arg_count; + + // NATIVE Constructor + int self_constructor=1; + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(0-argbase) || arg_count>(7-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + if(arg_count > 0) { + convert_to_string_ex(((0 1) { + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + } + if(arg_count > 2) { + if(SWIG_ConvertPtr(*args[2-argbase], (void **) &arg3, SWIGTYPE_p_SWDisplay) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_SWLD. Expected %s", 3-argbase, SWIGTYPE_p_SWDisplay->name); + } + + } + if(arg_count > 3) { + { + SWTextEncoding * argp; + if(SWIG_ConvertPtr(*args[3-argbase], (void **) &argp, SWIGTYPE_p_SWTextEncoding) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_SWLD. Expected %s", 4-argbase, SWIGTYPE_p_SWTextEncoding->name); + } + arg4 = *argp; + } + } + if(arg_count > 4) { + { + SWTextDirection * argp; + if(SWIG_ConvertPtr(*args[4-argbase], (void **) &argp, SWIGTYPE_p_SWTextDirection) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_SWLD. Expected %s", 5-argbase, SWIGTYPE_p_SWTextDirection->name); + } + arg5 = *argp; + } + } + if(arg_count > 5) { + { + SWTextMarkup * argp; + if(SWIG_ConvertPtr(*args[5-argbase], (void **) &argp, SWIGTYPE_p_SWTextMarkup) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_SWLD. Expected %s", 6-argbase, SWIGTYPE_p_SWTextMarkup->name); + } + arg6 = *argp; + } + } + if(arg_count > 6) { + convert_to_string_ex(args[6-argbase]); + arg7 = (char *) Z_STRVAL_PP(args[6-argbase]); + + } + result = (SWLD *)new SWLD((char const *)arg1,(char const *)arg2,arg3,arg4,arg5,arg6,(char const *)arg7); + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_SWLD, 1); + + // Wrap this return value + if (this_ptr) { + // NATIVE Constructor, use this_ptr + zval *_cPtr; MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + add_property_zval(this_ptr,"_cPtr",_cPtr); + }else if (! this_ptr) { + // ALTERNATIVE Constructor, make an object wrapper + zval *obj, *_cPtr; + MAKE_STD_ZVAL(obj); + MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + object_init_ex(obj,ptr_ce_swig_SWLD); + add_property_zval(obj,"_cPtr",_cPtr); + *return_value=*obj; + } +} + + +// This function is designed to be called by the zend list destructors to typecast and do the actual destruction +void __wrap_delete_SWLD(zend_rsrc_list_entry *rsrc, const char *type_name TSRMLS_DC) { + swig_object_wrapper *value=(swig_object_wrapper *) rsrc->ptr ; + void *ptr=value->ptr ; + int newobject=value->newobject ; + SWLD *arg1 ; + + efree(value); + if (! newobject) return; // can't delete it! + SWIG_ZTS_ConvertResourceData(ptr,rsrc->type,type_name,(void **) &arg1,SWIGTYPE_p_SWLD TSRMLS_CC); + if (! arg1) zend_error(E_ERROR, "SWLD resource already free'd"); + delete arg1; + +} + + +ZEND_NAMED_FUNCTION(_wrap_delete_SWLD) { + SWLD *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + //if ((*args[0])->type==IS_RESOURCE) { + // // Get zend list destructor to free it + // zend_list_delete(Z_LVAL_PP(args[0])); + //} else { + delete arg1; + + //} + +} + + +// property handler for class SWLD +static pval _wrap_propget_SWLD(zend_property_reference *property_reference) { + pval result; + pval **_result; + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + result.type = IS_NULL; + if (_propget_SWLD(property_reference, &result)==SUCCESS) return result; + //return it ourselves + if (zend_hash_find(Z_OBJPROP_P(property_reference->object),Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),(void**)&_result)==SUCCESS) return **_result; + result.type = IS_NULL; + return result; +} +static int _propget_SWLD(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass SWLD + { + // chain to base class + if (_propget_SWModule(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +static int _wrap_propset_SWLD(zend_property_reference *property_reference, pval *value) { + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + if (_propset_SWLD(property_reference, value)==SUCCESS) return SUCCESS; + //set it ourselves as we are actual class + return add_property_zval_ex(property_reference->object,Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),value); +} +static int _propset_SWLD(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass SWLD + { + // chain to base class + if (_propset_SWModule(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +ZEND_NAMED_FUNCTION(_wrap_new_RawLD) { + char *arg1 ; + char *arg2 = 0 ; + char *arg3 = 0 ; + SWDisplay *arg4 = 0 ; + SWTextEncoding arg5 = ENC_UNKNOWN ; + SWTextDirection arg6 = DIRECTION_LTR ; + SWTextMarkup arg7 = FMT_UNKNOWN ; + char *arg8 = 0 ; + RawLD *result; + zval **args[9]; + int argbase=0 ; + int arg_count; + + // NATIVE Constructor + int self_constructor=1; + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(1-argbase) || arg_count>(8-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + + convert_to_string_ex(((0 1) { + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + } + if(arg_count > 2) { + convert_to_string_ex(args[2-argbase]); + arg3 = (char *) Z_STRVAL_PP(args[2-argbase]); + + } + if(arg_count > 3) { + if(SWIG_ConvertPtr(*args[3-argbase], (void **) &arg4, SWIGTYPE_p_SWDisplay) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_RawLD. Expected %s", 4-argbase, SWIGTYPE_p_SWDisplay->name); + } + + } + if(arg_count > 4) { + { + SWTextEncoding * argp; + if(SWIG_ConvertPtr(*args[4-argbase], (void **) &argp, SWIGTYPE_p_SWTextEncoding) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_RawLD. Expected %s", 5-argbase, SWIGTYPE_p_SWTextEncoding->name); + } + arg5 = *argp; + } + } + if(arg_count > 5) { + { + SWTextDirection * argp; + if(SWIG_ConvertPtr(*args[5-argbase], (void **) &argp, SWIGTYPE_p_SWTextDirection) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_RawLD. Expected %s", 6-argbase, SWIGTYPE_p_SWTextDirection->name); + } + arg6 = *argp; + } + } + if(arg_count > 6) { + { + SWTextMarkup * argp; + if(SWIG_ConvertPtr(*args[6-argbase], (void **) &argp, SWIGTYPE_p_SWTextMarkup) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_RawLD. Expected %s", 7-argbase, SWIGTYPE_p_SWTextMarkup->name); + } + arg7 = *argp; + } + } + if(arg_count > 7) { + convert_to_string_ex(args[7-argbase]); + arg8 = (char *) Z_STRVAL_PP(args[7-argbase]); + + } + result = (RawLD *)new RawLD((char const *)arg1,(char const *)arg2,(char const *)arg3,arg4,arg5,arg6,arg7,(char const *)arg8); + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_RawLD, 1); + + // Wrap this return value + if (this_ptr) { + // NATIVE Constructor, use this_ptr + zval *_cPtr; MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + add_property_zval(this_ptr,"_cPtr",_cPtr); + }else if (! this_ptr) { + // ALTERNATIVE Constructor, make an object wrapper + zval *obj, *_cPtr; + MAKE_STD_ZVAL(obj); + MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + object_init_ex(obj,ptr_ce_swig_RawLD); + add_property_zval(obj,"_cPtr",_cPtr); + *return_value=*obj; + } +} + + +// This function is designed to be called by the zend list destructors to typecast and do the actual destruction +void __wrap_delete_RawLD(zend_rsrc_list_entry *rsrc, const char *type_name TSRMLS_DC) { + swig_object_wrapper *value=(swig_object_wrapper *) rsrc->ptr ; + void *ptr=value->ptr ; + int newobject=value->newobject ; + RawLD *arg1 ; + + efree(value); + if (! newobject) return; // can't delete it! + SWIG_ZTS_ConvertResourceData(ptr,rsrc->type,type_name,(void **) &arg1,SWIGTYPE_p_RawLD TSRMLS_CC); + if (! arg1) zend_error(E_ERROR, "RawLD resource already free'd"); + delete arg1; + +} + + +ZEND_NAMED_FUNCTION(_wrap_delete_RawLD) { + RawLD *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + //if ((*args[0])->type==IS_RESOURCE) { + // // Get zend list destructor to free it + // zend_list_delete(Z_LVAL_PP(args[0])); + //} else { + delete arg1; + + //} + +} + + +ZEND_NAMED_FUNCTION(_wrap_RawLD_createModule) { + RawLD *arg1 ; + char *arg2 ; + unsigned char result; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + result = (unsigned char)(arg1)->createModule((char const *)arg2); + + + ZVAL_LONG(return_value,result); + +} + + +// property handler for class RawLD +static pval _wrap_propget_RawLD(zend_property_reference *property_reference) { + pval result; + pval **_result; + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + result.type = IS_NULL; + if (_propget_RawLD(property_reference, &result)==SUCCESS) return result; + //return it ourselves + if (zend_hash_find(Z_OBJPROP_P(property_reference->object),Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),(void**)&_result)==SUCCESS) return **_result; + result.type = IS_NULL; + return result; +} +static int _propget_RawLD(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass RawLD + { + // chain to base class + if (_propget_SWLD(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +static int _wrap_propset_RawLD(zend_property_reference *property_reference, pval *value) { + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + if (_propset_RawLD(property_reference, value)==SUCCESS) return SUCCESS; + //set it ourselves as we are actual class + return add_property_zval_ex(property_reference->object,Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),value); +} +static int _propset_RawLD(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass RawLD + { + // chain to base class + if (_propset_SWLD(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +ZEND_NAMED_FUNCTION(_wrap_new_RawLD4) { + char *arg1 ; + char *arg2 = 0 ; + char *arg3 = 0 ; + SWDisplay *arg4 = 0 ; + SWTextEncoding arg5 = ENC_UNKNOWN ; + SWTextDirection arg6 = DIRECTION_LTR ; + SWTextMarkup arg7 = FMT_UNKNOWN ; + char *arg8 = 0 ; + RawLD4 *result; + zval **args[9]; + int argbase=0 ; + int arg_count; + + // NATIVE Constructor + int self_constructor=1; + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(1-argbase) || arg_count>(8-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + + convert_to_string_ex(((0 1) { + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + } + if(arg_count > 2) { + convert_to_string_ex(args[2-argbase]); + arg3 = (char *) Z_STRVAL_PP(args[2-argbase]); + + } + if(arg_count > 3) { + if(SWIG_ConvertPtr(*args[3-argbase], (void **) &arg4, SWIGTYPE_p_SWDisplay) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_RawLD4. Expected %s", 4-argbase, SWIGTYPE_p_SWDisplay->name); + } + + } + if(arg_count > 4) { + { + SWTextEncoding * argp; + if(SWIG_ConvertPtr(*args[4-argbase], (void **) &argp, SWIGTYPE_p_SWTextEncoding) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_RawLD4. Expected %s", 5-argbase, SWIGTYPE_p_SWTextEncoding->name); + } + arg5 = *argp; + } + } + if(arg_count > 5) { + { + SWTextDirection * argp; + if(SWIG_ConvertPtr(*args[5-argbase], (void **) &argp, SWIGTYPE_p_SWTextDirection) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_RawLD4. Expected %s", 6-argbase, SWIGTYPE_p_SWTextDirection->name); + } + arg6 = *argp; + } + } + if(arg_count > 6) { + { + SWTextMarkup * argp; + if(SWIG_ConvertPtr(*args[6-argbase], (void **) &argp, SWIGTYPE_p_SWTextMarkup) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_RawLD4. Expected %s", 7-argbase, SWIGTYPE_p_SWTextMarkup->name); + } + arg7 = *argp; + } + } + if(arg_count > 7) { + convert_to_string_ex(args[7-argbase]); + arg8 = (char *) Z_STRVAL_PP(args[7-argbase]); + + } + result = (RawLD4 *)new RawLD4((char const *)arg1,(char const *)arg2,(char const *)arg3,arg4,arg5,arg6,arg7,(char const *)arg8); + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_RawLD4, 1); + + // Wrap this return value + if (this_ptr) { + // NATIVE Constructor, use this_ptr + zval *_cPtr; MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + add_property_zval(this_ptr,"_cPtr",_cPtr); + }else if (! this_ptr) { + // ALTERNATIVE Constructor, make an object wrapper + zval *obj, *_cPtr; + MAKE_STD_ZVAL(obj); + MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + object_init_ex(obj,ptr_ce_swig_RawLD4); + add_property_zval(obj,"_cPtr",_cPtr); + *return_value=*obj; + } +} + + +// This function is designed to be called by the zend list destructors to typecast and do the actual destruction +void __wrap_delete_RawLD4(zend_rsrc_list_entry *rsrc, const char *type_name TSRMLS_DC) { + swig_object_wrapper *value=(swig_object_wrapper *) rsrc->ptr ; + void *ptr=value->ptr ; + int newobject=value->newobject ; + RawLD4 *arg1 ; + + efree(value); + if (! newobject) return; // can't delete it! + SWIG_ZTS_ConvertResourceData(ptr,rsrc->type,type_name,(void **) &arg1,SWIGTYPE_p_RawLD4 TSRMLS_CC); + if (! arg1) zend_error(E_ERROR, "RawLD4 resource already free'd"); + delete arg1; + +} + + +ZEND_NAMED_FUNCTION(_wrap_delete_RawLD4) { + RawLD4 *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + //if ((*args[0])->type==IS_RESOURCE) { + // // Get zend list destructor to free it + // zend_list_delete(Z_LVAL_PP(args[0])); + //} else { + delete arg1; + + //} + +} + + +ZEND_NAMED_FUNCTION(_wrap_RawLD4_createModule) { + RawLD4 *arg1 ; + char *arg2 ; + unsigned char result; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + result = (unsigned char)(arg1)->createModule((char const *)arg2); + + + ZVAL_LONG(return_value,result); + +} + + +// property handler for class RawLD4 +static pval _wrap_propget_RawLD4(zend_property_reference *property_reference) { + pval result; + pval **_result; + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + result.type = IS_NULL; + if (_propget_RawLD4(property_reference, &result)==SUCCESS) return result; + //return it ourselves + if (zend_hash_find(Z_OBJPROP_P(property_reference->object),Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),(void**)&_result)==SUCCESS) return **_result; + result.type = IS_NULL; + return result; +} +static int _propget_RawLD4(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass RawLD4 + { + // chain to base class + if (_propget_SWLD(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +static int _wrap_propset_RawLD4(zend_property_reference *property_reference, pval *value) { + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + if (_propset_RawLD4(property_reference, value)==SUCCESS) return SUCCESS; + //set it ourselves as we are actual class + return add_property_zval_ex(property_reference->object,Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),value); +} +static int _propset_RawLD4(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass RawLD4 + { + // chain to base class + if (_propset_SWLD(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +ZEND_NAMED_FUNCTION(_wrap_new_zLD) { + char *arg1 ; + char *arg2 = 0 ; + char *arg3 = 0 ; + long arg4 = 200 ; + SWCompress *arg5 = 0 ; + SWDisplay *arg6 = 0 ; + SWTextEncoding arg7 = ENC_UNKNOWN ; + SWTextDirection arg8 = DIRECTION_LTR ; + SWTextMarkup arg9 = FMT_UNKNOWN ; + char *arg10 = 0 ; + zLD *result; + zval **args[11]; + int argbase=0 ; + int arg_count; + + // NATIVE Constructor + int self_constructor=1; + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(1-argbase) || arg_count>(10-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + + convert_to_string_ex(((0 1) { + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + } + if(arg_count > 2) { + convert_to_string_ex(args[2-argbase]); + arg3 = (char *) Z_STRVAL_PP(args[2-argbase]); + + } + if(arg_count > 3) { + convert_to_long_ex(args[3-argbase]); + arg4 = (long) Z_LVAL_PP(args[3-argbase]); + + } + if(arg_count > 4) { + if(SWIG_ConvertPtr(*args[4-argbase], (void **) &arg5, SWIGTYPE_p_SWCompress) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_zLD. Expected %s", 5-argbase, SWIGTYPE_p_SWCompress->name); + } + + } + if(arg_count > 5) { + if(SWIG_ConvertPtr(*args[5-argbase], (void **) &arg6, SWIGTYPE_p_SWDisplay) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_zLD. Expected %s", 6-argbase, SWIGTYPE_p_SWDisplay->name); + } + + } + if(arg_count > 6) { + { + SWTextEncoding * argp; + if(SWIG_ConvertPtr(*args[6-argbase], (void **) &argp, SWIGTYPE_p_SWTextEncoding) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_zLD. Expected %s", 7-argbase, SWIGTYPE_p_SWTextEncoding->name); + } + arg7 = *argp; + } + } + if(arg_count > 7) { + { + SWTextDirection * argp; + if(SWIG_ConvertPtr(*args[7-argbase], (void **) &argp, SWIGTYPE_p_SWTextDirection) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_zLD. Expected %s", 8-argbase, SWIGTYPE_p_SWTextDirection->name); + } + arg8 = *argp; + } + } + if(arg_count > 8) { + { + SWTextMarkup * argp; + if(SWIG_ConvertPtr(*args[8-argbase], (void **) &argp, SWIGTYPE_p_SWTextMarkup) < 0) { + zend_error(E_ERROR, "Type error in argument %d of new_zLD. Expected %s", 9-argbase, SWIGTYPE_p_SWTextMarkup->name); + } + arg9 = *argp; + } + } + if(arg_count > 9) { + convert_to_string_ex(args[9-argbase]); + arg10 = (char *) Z_STRVAL_PP(args[9-argbase]); + + } + result = (zLD *)new zLD((char const *)arg1,(char const *)arg2,(char const *)arg3,arg4,arg5,arg6,arg7,arg8,arg9,(char const *)arg10); + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_zLD, 1); + + // Wrap this return value + if (this_ptr) { + // NATIVE Constructor, use this_ptr + zval *_cPtr; MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + add_property_zval(this_ptr,"_cPtr",_cPtr); + }else if (! this_ptr) { + // ALTERNATIVE Constructor, make an object wrapper + zval *obj, *_cPtr; + MAKE_STD_ZVAL(obj); + MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + object_init_ex(obj,ptr_ce_swig_zLD); + add_property_zval(obj,"_cPtr",_cPtr); + *return_value=*obj; + } +} + + +// This function is designed to be called by the zend list destructors to typecast and do the actual destruction +void __wrap_delete_zLD(zend_rsrc_list_entry *rsrc, const char *type_name TSRMLS_DC) { + swig_object_wrapper *value=(swig_object_wrapper *) rsrc->ptr ; + void *ptr=value->ptr ; + int newobject=value->newobject ; + zLD *arg1 ; + + efree(value); + if (! newobject) return; // can't delete it! + SWIG_ZTS_ConvertResourceData(ptr,rsrc->type,type_name,(void **) &arg1,SWIGTYPE_p_zLD TSRMLS_CC); + if (! arg1) zend_error(E_ERROR, "zLD resource already free'd"); + delete arg1; + +} + + +ZEND_NAMED_FUNCTION(_wrap_delete_zLD) { + zLD *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + //if ((*args[0])->type==IS_RESOURCE) { + // // Get zend list destructor to free it + // zend_list_delete(Z_LVAL_PP(args[0])); + //} else { + delete arg1; + + //} + +} + + +ZEND_NAMED_FUNCTION(_wrap_zLD_createModule) { + zLD *arg1 ; + char *arg2 ; + unsigned char result; + zval **args[3]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 2) || (zend_get_parameters_array_ex(2-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + result = (unsigned char)(arg1)->createModule((char const *)arg2); + + + ZVAL_LONG(return_value,result); + +} + + +// property handler for class zLD +static pval _wrap_propget_zLD(zend_property_reference *property_reference) { + pval result; + pval **_result; + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + result.type = IS_NULL; + if (_propget_zLD(property_reference, &result)==SUCCESS) return result; + //return it ourselves + if (zend_hash_find(Z_OBJPROP_P(property_reference->object),Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),(void**)&_result)==SUCCESS) return **_result; + result.type = IS_NULL; + return result; +} +static int _propget_zLD(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass zLD + { + // chain to base class + if (_propget_SWLD(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +static int _wrap_propset_zLD(zend_property_reference *property_reference, pval *value) { + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + if (_propset_zLD(property_reference, value)==SUCCESS) return SUCCESS; + //set it ourselves as we are actual class + return add_property_zval_ex(property_reference->object,Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),value); +} +static int _propset_zLD(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass zLD + { + // chain to base class + if (_propset_SWLD(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +ZEND_NAMED_FUNCTION(_wrap_new_SWCompress) { + SWCompress *result; + zval **args[1]; + int argbase=0 ; + + // NATIVE Constructor + int self_constructor=1; + if(((ZEND_NUM_ARGS() + argbase )!= 0) || (zend_get_parameters_array_ex(0-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + result = (SWCompress *)new SWCompress(); + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_SWCompress, 1); + + // Wrap this return value + if (this_ptr) { + // NATIVE Constructor, use this_ptr + zval *_cPtr; MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + add_property_zval(this_ptr,"_cPtr",_cPtr); + }else if (! this_ptr) { + // ALTERNATIVE Constructor, make an object wrapper + zval *obj, *_cPtr; + MAKE_STD_ZVAL(obj); + MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + object_init_ex(obj,ptr_ce_swig_SWCompress); + add_property_zval(obj,"_cPtr",_cPtr); + *return_value=*obj; + } +} + + +// This function is designed to be called by the zend list destructors to typecast and do the actual destruction +void __wrap_delete_SWCompress(zend_rsrc_list_entry *rsrc, const char *type_name TSRMLS_DC) { + swig_object_wrapper *value=(swig_object_wrapper *) rsrc->ptr ; + void *ptr=value->ptr ; + int newobject=value->newobject ; + SWCompress *arg1 ; + + efree(value); + if (! newobject) return; // can't delete it! + SWIG_ZTS_ConvertResourceData(ptr,rsrc->type,type_name,(void **) &arg1,SWIGTYPE_p_SWCompress TSRMLS_CC); + if (! arg1) zend_error(E_ERROR, "SWCompress resource already free'd"); + delete arg1; + +} + + +ZEND_NAMED_FUNCTION(_wrap_delete_SWCompress) { + SWCompress *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + //if ((*args[0])->type==IS_RESOURCE) { + // // Get zend list destructor to free it + // zend_list_delete(Z_LVAL_PP(args[0])); + //} else { + delete arg1; + + //} + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWCompress_Buf) { + SWCompress *arg1 ; + char *arg2 = 0 ; + unsigned long *arg3 = 0 ; + char *result; + unsigned long intr3 ; + int force3 ; + zval **args[4]; + int argbase=0 ; + int arg_count; + zval ** _saved[1] ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(1-argbase) || arg_count>(3-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + + if(SWIG_ConvertPtr(*((0name); + } + + if(arg_count > 1) { + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + } + if(arg_count > 2) { + if(SWIG_ConvertPtr(*args[2-argbase], (void **) &arg3, SWIGTYPE_p_unsigned_long) < 0) { + // So... we didn't get a ref or ptr, but can it be + // reasonably co-erced into what we were + // looking for a ref of or ptr to? + if ((*args[2-argbase])->type==IS_STRING || + (*args[2-argbase])->type==IS_LONG || + (*args[2-argbase])->type==IS_DOUBLE) { + convert_to_long_ex(args[2-argbase]); + intr3 = (unsigned long) (*args[2-argbase])->value.lval; + arg3 = &intr3; + // have to passback arg$arg too + force3=1; + }else { + // wasn't a pre/ref/thing, OR anything like an int thing + force3=0; + zend_error(E_ERROR, "Type error in argument %d of SWCompress_Buf. Expected %s or at least something looking vaguely like a number hopefully passed by reference", 3-argbase, SWIGTYPE_p_unsigned_long->name); + } + }else force3=0; + + } + _saved[0] = args[2-argbase]; + result = (char *)(arg1)->Buf((char const *)arg2,arg3); + + + ZVAL_STRING(return_value,result, 1); + + + if (force3) { + // pass back arg3 through params (_saved[0]) if we can + if(! PZVAL_IS_REF(*_saved[0])) { + zend_error(E_WARNING, "Parameter %d of SWCompress_Buf wasn't passed by reference",3-argbase); + }else { + ZVAL_LONG(*_saved[0],intr3); + } + } + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWCompress_zBuf) { + SWCompress *arg1 ; + unsigned long *arg2 ; + char *arg3 = 0 ; + char *result; + unsigned long intr2 ; + int force2 ; + zval **args[4]; + int argbase=0 ; + int arg_count; + zval ** _saved[1] ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + arg_count = ZEND_NUM_ARGS(); + if(arg_count<(2-argbase) || arg_count>(3-argbase)) + WRONG_PARAM_COUNT; + + if(zend_get_parameters_array_ex(arg_count-argbase,args)!=SUCCESS) + WRONG_PARAM_COUNT; + + + if(SWIG_ConvertPtr(*((0name); + } + + + if(SWIG_ConvertPtr(*args[1-argbase], (void **) &arg2, SWIGTYPE_p_unsigned_long) < 0) { + // So... we didn't get a ref or ptr, but can it be + // reasonably co-erced into what we were + // looking for a ref of or ptr to? + if ((*args[1-argbase])->type==IS_STRING || + (*args[1-argbase])->type==IS_LONG || + (*args[1-argbase])->type==IS_DOUBLE) { + convert_to_long_ex(args[1-argbase]); + intr2 = (unsigned long) (*args[1-argbase])->value.lval; + arg2 = &intr2; + // have to passback arg$arg too + force2=1; + }else { + // wasn't a pre/ref/thing, OR anything like an int thing + force2=0; + zend_error(E_ERROR, "Type error in argument %d of SWCompress_zBuf. Expected %s or at least something looking vaguely like a number hopefully passed by reference", 2-argbase, SWIGTYPE_p_unsigned_long->name); + } + }else force2=0; + + if(arg_count > 2) { + convert_to_string_ex(args[2-argbase]); + arg3 = (char *) Z_STRVAL_PP(args[2-argbase]); + + } + _saved[0] = args[1-argbase]; + result = (char *)(arg1)->zBuf(arg2,arg3); + + + ZVAL_STRING(return_value,result, 1); + + + if (force2) { + // pass back arg2 through params (_saved[0]) if we can + if(! PZVAL_IS_REF(*_saved[0])) { + zend_error(E_WARNING, "Parameter %d of SWCompress_zBuf wasn't passed by reference",2-argbase); + }else { + ZVAL_LONG(*_saved[0],intr2); + } + } + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWCompress_GetChars) { + SWCompress *arg1 ; + char *arg2 ; + unsigned long arg3 ; + unsigned long result; + zval **args[4]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 3) || (zend_get_parameters_array_ex(3-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + + convert_to_long_ex(args[2-argbase]); + arg3 = (unsigned long) Z_LVAL_PP(args[2-argbase]); + + result = (unsigned long)(arg1)->GetChars(arg2,arg3); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWCompress_SendChars) { + SWCompress *arg1 ; + char *arg2 ; + unsigned long arg3 ; + unsigned long result; + zval **args[4]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 3) || (zend_get_parameters_array_ex(3-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + + convert_to_string_ex(args[1-argbase]); + arg2 = (char *) Z_STRVAL_PP(args[1-argbase]); + + + convert_to_long_ex(args[2-argbase]); + arg3 = (unsigned long) Z_LVAL_PP(args[2-argbase]); + + result = (unsigned long)(arg1)->SendChars(arg2,arg3); + + + ZVAL_LONG(return_value,result); + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWCompress_Encode) { + SWCompress *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + (arg1)->Encode(); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_SWCompress_Decode) { + SWCompress *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + (arg1)->Decode(); + + +} + + +// property handler for class SWCompress +static pval _wrap_propget_SWCompress(zend_property_reference *property_reference) { + pval result; + pval **_result; + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + result.type = IS_NULL; + if (_propget_SWCompress(property_reference, &result)==SUCCESS) return result; + //return it ourselves + if (zend_hash_find(Z_OBJPROP_P(property_reference->object),Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),(void**)&_result)==SUCCESS) return **_result; + result.type = IS_NULL; + return result; +} +static int _propget_SWCompress(zend_property_reference *property_reference, pval *value) { + /* get the property name */ + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + char *propname=Z_STRVAL_P(&(property->element)); + return FAILURE; +} + +static int _wrap_propset_SWCompress(zend_property_reference *property_reference, pval *value) { + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + if (_propset_SWCompress(property_reference, value)==SUCCESS) return SUCCESS; + //set it ourselves as we are actual class + return add_property_zval_ex(property_reference->object,Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),value); +} +static int _propset_SWCompress(zend_property_reference *property_reference, pval *value) { + /* get the property name */ + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + char *propname=Z_STRVAL_P(&(property->element)); + return FAILURE; +} + +ZEND_NAMED_FUNCTION(_wrap_new_LZSSCompress) { + LZSSCompress *result; + zval **args[1]; + int argbase=0 ; + + // NATIVE Constructor + int self_constructor=1; + if(((ZEND_NUM_ARGS() + argbase )!= 0) || (zend_get_parameters_array_ex(0-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + result = (LZSSCompress *)new LZSSCompress(); + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_LZSSCompress, 1); + + // Wrap this return value + if (this_ptr) { + // NATIVE Constructor, use this_ptr + zval *_cPtr; MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + add_property_zval(this_ptr,"_cPtr",_cPtr); + }else if (! this_ptr) { + // ALTERNATIVE Constructor, make an object wrapper + zval *obj, *_cPtr; + MAKE_STD_ZVAL(obj); + MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + object_init_ex(obj,ptr_ce_swig_LZSSCompress); + add_property_zval(obj,"_cPtr",_cPtr); + *return_value=*obj; + } +} + + +// This function is designed to be called by the zend list destructors to typecast and do the actual destruction +void __wrap_delete_LZSSCompress(zend_rsrc_list_entry *rsrc, const char *type_name TSRMLS_DC) { + swig_object_wrapper *value=(swig_object_wrapper *) rsrc->ptr ; + void *ptr=value->ptr ; + int newobject=value->newobject ; + LZSSCompress *arg1 ; + + efree(value); + if (! newobject) return; // can't delete it! + SWIG_ZTS_ConvertResourceData(ptr,rsrc->type,type_name,(void **) &arg1,SWIGTYPE_p_LZSSCompress TSRMLS_CC); + if (! arg1) zend_error(E_ERROR, "LZSSCompress resource already free'd"); + delete arg1; + +} + + +ZEND_NAMED_FUNCTION(_wrap_delete_LZSSCompress) { + LZSSCompress *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + //if ((*args[0])->type==IS_RESOURCE) { + // // Get zend list destructor to free it + // zend_list_delete(Z_LVAL_PP(args[0])); + //} else { + delete arg1; + + //} + +} + + +ZEND_NAMED_FUNCTION(_wrap_LZSSCompress_Encode) { + LZSSCompress *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + (arg1)->Encode(); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_LZSSCompress_Decode) { + LZSSCompress *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + (arg1)->Decode(); + + +} + + +// property handler for class LZSSCompress +static pval _wrap_propget_LZSSCompress(zend_property_reference *property_reference) { + pval result; + pval **_result; + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + result.type = IS_NULL; + if (_propget_LZSSCompress(property_reference, &result)==SUCCESS) return result; + //return it ourselves + if (zend_hash_find(Z_OBJPROP_P(property_reference->object),Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),(void**)&_result)==SUCCESS) return **_result; + result.type = IS_NULL; + return result; +} +static int _propget_LZSSCompress(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass LZSSCompress + { + // chain to base class + if (_propget_SWCompress(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +static int _wrap_propset_LZSSCompress(zend_property_reference *property_reference, pval *value) { + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + if (_propset_LZSSCompress(property_reference, value)==SUCCESS) return SUCCESS; + //set it ourselves as we are actual class + return add_property_zval_ex(property_reference->object,Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),value); +} +static int _propset_LZSSCompress(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass LZSSCompress + { + // chain to base class + if (_propset_SWCompress(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +ZEND_NAMED_FUNCTION(_wrap_new_ZipCompress) { + ZipCompress *result; + zval **args[1]; + int argbase=0 ; + + // NATIVE Constructor + int self_constructor=1; + if(((ZEND_NUM_ARGS() + argbase )!= 0) || (zend_get_parameters_array_ex(0-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + result = (ZipCompress *)new ZipCompress(); + + + SWIG_SetPointerZval(return_value, (void *)result, SWIGTYPE_p_ZipCompress, 1); + + // Wrap this return value + if (this_ptr) { + // NATIVE Constructor, use this_ptr + zval *_cPtr; MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + add_property_zval(this_ptr,"_cPtr",_cPtr); + }else if (! this_ptr) { + // ALTERNATIVE Constructor, make an object wrapper + zval *obj, *_cPtr; + MAKE_STD_ZVAL(obj); + MAKE_STD_ZVAL(_cPtr); + *_cPtr = *return_value; + INIT_ZVAL(*return_value); + object_init_ex(obj,ptr_ce_swig_ZipCompress); + add_property_zval(obj,"_cPtr",_cPtr); + *return_value=*obj; + } +} + + +// This function is designed to be called by the zend list destructors to typecast and do the actual destruction +void __wrap_delete_ZipCompress(zend_rsrc_list_entry *rsrc, const char *type_name TSRMLS_DC) { + swig_object_wrapper *value=(swig_object_wrapper *) rsrc->ptr ; + void *ptr=value->ptr ; + int newobject=value->newobject ; + ZipCompress *arg1 ; + + efree(value); + if (! newobject) return; // can't delete it! + SWIG_ZTS_ConvertResourceData(ptr,rsrc->type,type_name,(void **) &arg1,SWIGTYPE_p_ZipCompress TSRMLS_CC); + if (! arg1) zend_error(E_ERROR, "ZipCompress resource already free'd"); + delete arg1; + +} + + +ZEND_NAMED_FUNCTION(_wrap_delete_ZipCompress) { + ZipCompress *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + //if ((*args[0])->type==IS_RESOURCE) { + // // Get zend list destructor to free it + // zend_list_delete(Z_LVAL_PP(args[0])); + //} else { + delete arg1; + + //} + +} + + +ZEND_NAMED_FUNCTION(_wrap_ZipCompress_Encode) { + ZipCompress *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + (arg1)->Encode(); + + +} + + +ZEND_NAMED_FUNCTION(_wrap_ZipCompress_Decode) { + ZipCompress *arg1 ; + zval **args[2]; + int argbase=0 ; + + if (this_ptr && this_ptr->type==IS_OBJECT) { + // fake this_ptr as first arg (till we can work out how to do it better + argbase++; + } + if(((ZEND_NUM_ARGS() + argbase )!= 1) || (zend_get_parameters_array_ex(1-argbase, args)!= SUCCESS)) { + WRONG_PARAM_COUNT; + } + + + if(SWIG_ConvertPtr(*((0name); + } + + (arg1)->Decode(); + + +} + + +// property handler for class ZipCompress +static pval _wrap_propget_ZipCompress(zend_property_reference *property_reference) { + pval result; + pval **_result; + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + result.type = IS_NULL; + if (_propget_ZipCompress(property_reference, &result)==SUCCESS) return result; + //return it ourselves + if (zend_hash_find(Z_OBJPROP_P(property_reference->object),Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),(void**)&_result)==SUCCESS) return **_result; + result.type = IS_NULL; + return result; +} +static int _propget_ZipCompress(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass ZipCompress + { + // chain to base class + if (_propget_SWCompress(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +static int _wrap_propset_ZipCompress(zend_property_reference *property_reference, pval *value) { + zend_llist_element *element = property_reference->elements_list->head; + zend_overloaded_element *property=(zend_overloaded_element *)element->data; + if (_propset_ZipCompress(property_reference, value)==SUCCESS) return SUCCESS; + //set it ourselves as we are actual class + return add_property_zval_ex(property_reference->object,Z_STRVAL_P(&(property->element)),Z_STRLEN_P(&(property->element)),value); +} +static int _propset_ZipCompress(zend_property_reference *property_reference, pval *value) { + // No extra properties for subclass ZipCompress + { + // chain to base class + if (_propset_SWCompress(property_reference, value)==SUCCESS) return SUCCESS; + } + return FAILURE; +} + +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_SWLocale) { +//bah! No destructor for this simple type!! +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_SWMgr) { +// has destructor: __wrap_delete_SWMgr +__wrap_delete_SWMgr(rsrc, SWIGTYPE_p_SWMgr->name TSRMLS_CC); +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_SWCom) { +//bah! No destructor for this wrapped class!! +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_RawLD4) { +// has destructor: __wrap_delete_RawLD4 +__wrap_delete_RawLD4(rsrc, SWIGTYPE_p_RawLD4->name TSRMLS_CC); +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_ListKey) { +// has destructor: __wrap_delete_ListKey +__wrap_delete_ListKey(rsrc, SWIGTYPE_p_ListKey->name TSRMLS_CC); +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_SWKey) { +// has destructor: __wrap_delete_SWKey +__wrap_delete_SWKey(rsrc, SWIGTYPE_p_SWKey->name TSRMLS_CC); +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_ConfigEntMap) { +//bah! No destructor for this simple type!! +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_p_char) { +//bah! No destructor for this simple type!! +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_RawLD) { +// has destructor: __wrap_delete_RawLD +__wrap_delete_RawLD(rsrc, SWIGTYPE_p_RawLD->name TSRMLS_CC); +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_TreeKey) { +//bah! No destructor for this wrapped class!! +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_bool) { +//bah! No destructor for this simple type!! +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_void) { +//bah! No destructor for this simple type!! +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_SWFilterMgr) { +//bah! No destructor for this wrapped class!! +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_SWLD) { +// has destructor: __wrap_delete_SWLD +__wrap_delete_SWLD(rsrc, SWIGTYPE_p_SWLD->name TSRMLS_CC); +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_SWTextDirection) { +//bah! No destructor for this simple type!! +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_RawText) { +// has destructor: __wrap_delete_RawText +__wrap_delete_RawText(rsrc, SWIGTYPE_p_RawText->name TSRMLS_CC); +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_f_char_p_void__void) { +//bah! No destructor for this simple type!! +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_VerseKey) { +// has destructor: __wrap_delete_VerseKey +__wrap_delete_VerseKey(rsrc, SWIGTYPE_p_VerseKey->name TSRMLS_CC); +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_ModMap) { +//bah! No destructor for this simple type!! +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_string) { +//bah! No destructor for this simple type!! +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_SectionMap) { +//bah! No destructor for this simple type!! +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_SWDisplay) { +//bah! No destructor for this simple type!! +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_AttributeTypeList) { +//bah! No destructor for this simple type!! +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_SWText) { +// has destructor: __wrap_delete_SWText +__wrap_delete_SWText(rsrc, SWIGTYPE_p_SWText->name TSRMLS_CC); +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_SWCompress) { +// has destructor: __wrap_delete_SWCompress +__wrap_delete_SWCompress(rsrc, SWIGTYPE_p_SWCompress->name TSRMLS_CC); +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_LZSSCompress) { +// has destructor: __wrap_delete_LZSSCompress +__wrap_delete_LZSSCompress(rsrc, SWIGTYPE_p_LZSSCompress->name TSRMLS_CC); +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_ZipCompress) { +// has destructor: __wrap_delete_ZipCompress +__wrap_delete_ZipCompress(rsrc, SWIGTYPE_p_ZipCompress->name TSRMLS_CC); +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_SW_POSITION) { +// has destructor: __wrap_delete_SW_POSITION +__wrap_delete_SW_POSITION(rsrc, SWIGTYPE_p_SW_POSITION->name TSRMLS_CC); +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_SWModule) { +// has destructor: __wrap_delete_SWModule +__wrap_delete_SWModule(rsrc, SWIGTYPE_p_SWModule->name TSRMLS_CC); +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_zLD) { +// has destructor: __wrap_delete_zLD +__wrap_delete_zLD(rsrc, SWIGTYPE_p_zLD->name TSRMLS_CC); +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_SWGenBook) { +//bah! No destructor for this wrapped class!! +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_RawGenBook) { +// has destructor: __wrap_delete_RawGenBook +__wrap_delete_RawGenBook(rsrc, SWIGTYPE_p_RawGenBook->name TSRMLS_CC); +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_SWConfig) { +// has destructor: __wrap_delete_SWConfig +__wrap_delete_SWConfig(rsrc, SWIGTYPE_p_SWConfig->name TSRMLS_CC); +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_LocaleMgr) { +// has destructor: __wrap_delete_LocaleMgr +__wrap_delete_LocaleMgr(rsrc, SWIGTYPE_p_LocaleMgr->name TSRMLS_CC); +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_int) { +//bah! No destructor for this simple type!! +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_SWTextMarkup) { +//bah! No destructor for this simple type!! +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_OptionsList) { +//bah! No destructor for this simple type!! +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_listTstring_t) { +//bah! No destructor for this simple type!! +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_zText) { +// has destructor: __wrap_delete_zText +__wrap_delete_zText(rsrc, SWIGTYPE_p_zText->name TSRMLS_CC); +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_SWTextEncoding) { +//bah! No destructor for this simple type!! +} +//NEW Destructor style +static ZEND_RSRC_DTOR_FUNC(_wrap_destroy_p_unsigned_long) { +//bah! No destructor for this simple type!! +} + + + + +/* end wrapper section */ +/* init section */ +#ifdef COMPILE_DL_SWORD +#ifdef __cplusplus +extern "C" { +#endif +ZEND_GET_MODULE(Sword) +#ifdef __cplusplus +} +#endif + +#endif + +PHP_MSHUTDOWN_FUNCTION(Sword) +{ + return SUCCESS; +} +PHP_MINIT_FUNCTION(Sword) +{ + int i; + for (i = 0; swig_types_initial[i]; i++) { + swig_types[i] = SWIG_TypeRegister(swig_types_initial[i]); + } +/* oinit subsection */ +// Define class SWConfig +INIT_OVERLOADED_CLASS_ENTRY(ce_swig_SWConfig,"swconfig",SWConfig_functions,NULL,_wrap_propget_SWConfig,_wrap_propset_SWConfig); +if (! (ptr_ce_swig_SWConfig=zend_register_internal_class_ex(&ce_swig_SWConfig,NULL,NULL))) zend_error(E_ERROR,"Error registering wrapper for class SWConfig"); + +// Define class SWMgr +INIT_OVERLOADED_CLASS_ENTRY(ce_swig_SWMgr,"swmgr",SWMgr_functions,NULL,_wrap_propget_SWMgr,_wrap_propset_SWMgr); +if (! (ptr_ce_swig_SWMgr=zend_register_internal_class_ex(&ce_swig_SWMgr,NULL,NULL))) zend_error(E_ERROR,"Error registering wrapper for class SWMgr"); + +// Define class SWModule +INIT_OVERLOADED_CLASS_ENTRY(ce_swig_SWModule,"swmodule",SWModule_functions,NULL,_wrap_propget_SWModule,_wrap_propset_SWModule); +if (! (ptr_ce_swig_SWModule=zend_register_internal_class_ex(&ce_swig_SWModule,NULL,NULL))) zend_error(E_ERROR,"Error registering wrapper for class SWModule"); + +// Define class SW_POSITION +INIT_OVERLOADED_CLASS_ENTRY(ce_swig_SW_POSITION,"sw_position",SW_POSITION_functions,NULL,_wrap_propget_SW_POSITION,_wrap_propset_SW_POSITION); +if (! (ptr_ce_swig_SW_POSITION=zend_register_internal_class_ex(&ce_swig_SW_POSITION,NULL,NULL))) zend_error(E_ERROR,"Error registering wrapper for class SW_POSITION"); + +// Define class SWKey +INIT_OVERLOADED_CLASS_ENTRY(ce_swig_SWKey,"swkey",SWKey_functions,NULL,_wrap_propget_SWKey,_wrap_propset_SWKey); +if (! (ptr_ce_swig_SWKey=zend_register_internal_class_ex(&ce_swig_SWKey,NULL,NULL))) zend_error(E_ERROR,"Error registering wrapper for class SWKey"); + +// Define class VerseKey +INIT_OVERLOADED_CLASS_ENTRY(ce_swig_VerseKey,"versekey",VerseKey_functions,NULL,_wrap_propget_VerseKey,_wrap_propset_VerseKey); +if (! (ptr_ce_swig_VerseKey=zend_register_internal_class_ex(&ce_swig_VerseKey,&ce_swig_SWKey,NULL))) zend_error(E_ERROR,"Error registering wrapper for class VerseKey"); + +// Define class ListKey +INIT_OVERLOADED_CLASS_ENTRY(ce_swig_ListKey,"listkey",ListKey_functions,NULL,_wrap_propget_ListKey,_wrap_propset_ListKey); +if (! (ptr_ce_swig_ListKey=zend_register_internal_class_ex(&ce_swig_ListKey,&ce_swig_SWKey,NULL))) zend_error(E_ERROR,"Error registering wrapper for class ListKey"); + +// Define class TreeKey +INIT_OVERLOADED_CLASS_ENTRY(ce_swig_TreeKey,"treekey",TreeKey_functions,NULL,_wrap_propget_TreeKey,_wrap_propset_TreeKey); +if (! (ptr_ce_swig_TreeKey=zend_register_internal_class_ex(&ce_swig_TreeKey,&ce_swig_SWKey,NULL))) zend_error(E_ERROR,"Error registering wrapper for class TreeKey"); + +// Define class TreeKeyIdx +INIT_OVERLOADED_CLASS_ENTRY(ce_swig_TreeKeyIdx,"treekeyidx",TreeKeyIdx_functions,NULL,_wrap_propget_TreeKeyIdx,_wrap_propset_TreeKeyIdx); +if (! (ptr_ce_swig_TreeKeyIdx=zend_register_internal_class_ex(&ce_swig_TreeKeyIdx,&ce_swig_TreeKey,NULL))) zend_error(E_ERROR,"Error registering wrapper for class TreeKeyIdx"); + +// Define class LocaleMgr +INIT_OVERLOADED_CLASS_ENTRY(ce_swig_LocaleMgr,"localemgr",LocaleMgr_functions,NULL,_wrap_propget_LocaleMgr,_wrap_propset_LocaleMgr); +if (! (ptr_ce_swig_LocaleMgr=zend_register_internal_class_ex(&ce_swig_LocaleMgr,NULL,NULL))) zend_error(E_ERROR,"Error registering wrapper for class LocaleMgr"); + +// Define class SWFilterMgr +INIT_OVERLOADED_CLASS_ENTRY(ce_swig_SWFilterMgr,"swfiltermgr",SWFilterMgr_functions,NULL,_wrap_propget_SWFilterMgr,_wrap_propset_SWFilterMgr); +if (! (ptr_ce_swig_SWFilterMgr=zend_register_internal_class_ex(&ce_swig_SWFilterMgr,NULL,NULL))) zend_error(E_ERROR,"Error registering wrapper for class SWFilterMgr"); + +// Define class SWText +INIT_OVERLOADED_CLASS_ENTRY(ce_swig_SWText,"swtext",SWText_functions,NULL,_wrap_propget_SWText,_wrap_propset_SWText); +if (! (ptr_ce_swig_SWText=zend_register_internal_class_ex(&ce_swig_SWText,&ce_swig_SWModule,NULL))) zend_error(E_ERROR,"Error registering wrapper for class SWText"); + +// Define class RawText +INIT_OVERLOADED_CLASS_ENTRY(ce_swig_RawText,"rawtext",RawText_functions,NULL,_wrap_propget_RawText,_wrap_propset_RawText); +if (! (ptr_ce_swig_RawText=zend_register_internal_class_ex(&ce_swig_RawText,&ce_swig_SWText,NULL))) zend_error(E_ERROR,"Error registering wrapper for class RawText"); + +// Define class zText +INIT_OVERLOADED_CLASS_ENTRY(ce_swig_zText,"ztext",zText_functions,NULL,_wrap_propget_zText,_wrap_propset_zText); +if (! (ptr_ce_swig_zText=zend_register_internal_class_ex(&ce_swig_zText,&ce_swig_SWText,NULL))) zend_error(E_ERROR,"Error registering wrapper for class zText"); + +// Define class SWCom +INIT_OVERLOADED_CLASS_ENTRY(ce_swig_SWCom,"swcom",SWCom_functions,NULL,_wrap_propget_SWCom,_wrap_propset_SWCom); +if (! (ptr_ce_swig_SWCom=zend_register_internal_class_ex(&ce_swig_SWCom,&ce_swig_SWModule,NULL))) zend_error(E_ERROR,"Error registering wrapper for class SWCom"); + +// Define class RawCom +INIT_OVERLOADED_CLASS_ENTRY(ce_swig_RawCom,"rawcom",RawCom_functions,NULL,_wrap_propget_RawCom,_wrap_propset_RawCom); +if (! (ptr_ce_swig_RawCom=zend_register_internal_class_ex(&ce_swig_RawCom,&ce_swig_SWCom,NULL))) zend_error(E_ERROR,"Error registering wrapper for class RawCom"); + +// Define class zCom +INIT_OVERLOADED_CLASS_ENTRY(ce_swig_zCom,"zcom",zCom_functions,NULL,_wrap_propget_zCom,_wrap_propset_zCom); +if (! (ptr_ce_swig_zCom=zend_register_internal_class_ex(&ce_swig_zCom,&ce_swig_SWCom,NULL))) zend_error(E_ERROR,"Error registering wrapper for class zCom"); + +// Define class SWGenBook +INIT_OVERLOADED_CLASS_ENTRY(ce_swig_SWGenBook,"swgenbook",SWGenBook_functions,NULL,_wrap_propget_SWGenBook,_wrap_propset_SWGenBook); +if (! (ptr_ce_swig_SWGenBook=zend_register_internal_class_ex(&ce_swig_SWGenBook,&ce_swig_SWModule,NULL))) zend_error(E_ERROR,"Error registering wrapper for class SWGenBook"); + +// Define class RawGenBook +INIT_OVERLOADED_CLASS_ENTRY(ce_swig_RawGenBook,"rawgenbook",RawGenBook_functions,NULL,_wrap_propget_RawGenBook,_wrap_propset_RawGenBook); +if (! (ptr_ce_swig_RawGenBook=zend_register_internal_class_ex(&ce_swig_RawGenBook,&ce_swig_SWGenBook,NULL))) zend_error(E_ERROR,"Error registering wrapper for class RawGenBook"); + +// Define class SWLD +INIT_OVERLOADED_CLASS_ENTRY(ce_swig_SWLD,"swld",SWLD_functions,NULL,_wrap_propget_SWLD,_wrap_propset_SWLD); +if (! (ptr_ce_swig_SWLD=zend_register_internal_class_ex(&ce_swig_SWLD,&ce_swig_SWModule,NULL))) zend_error(E_ERROR,"Error registering wrapper for class SWLD"); + +// Define class RawLD +INIT_OVERLOADED_CLASS_ENTRY(ce_swig_RawLD,"rawld",RawLD_functions,NULL,_wrap_propget_RawLD,_wrap_propset_RawLD); +if (! (ptr_ce_swig_RawLD=zend_register_internal_class_ex(&ce_swig_RawLD,&ce_swig_SWLD,NULL))) zend_error(E_ERROR,"Error registering wrapper for class RawLD"); + +// Define class RawLD4 +INIT_OVERLOADED_CLASS_ENTRY(ce_swig_RawLD4,"rawld4",RawLD4_functions,NULL,_wrap_propget_RawLD4,_wrap_propset_RawLD4); +if (! (ptr_ce_swig_RawLD4=zend_register_internal_class_ex(&ce_swig_RawLD4,&ce_swig_SWLD,NULL))) zend_error(E_ERROR,"Error registering wrapper for class RawLD4"); + +// Define class zLD +INIT_OVERLOADED_CLASS_ENTRY(ce_swig_zLD,"zld",zLD_functions,NULL,_wrap_propget_zLD,_wrap_propset_zLD); +if (! (ptr_ce_swig_zLD=zend_register_internal_class_ex(&ce_swig_zLD,&ce_swig_SWLD,NULL))) zend_error(E_ERROR,"Error registering wrapper for class zLD"); + +// Define class SWCompress +INIT_OVERLOADED_CLASS_ENTRY(ce_swig_SWCompress,"swcompress",SWCompress_functions,NULL,_wrap_propget_SWCompress,_wrap_propset_SWCompress); +if (! (ptr_ce_swig_SWCompress=zend_register_internal_class_ex(&ce_swig_SWCompress,NULL,NULL))) zend_error(E_ERROR,"Error registering wrapper for class SWCompress"); + +// Define class LZSSCompress +INIT_OVERLOADED_CLASS_ENTRY(ce_swig_LZSSCompress,"lzsscompress",LZSSCompress_functions,NULL,_wrap_propget_LZSSCompress,_wrap_propset_LZSSCompress); +if (! (ptr_ce_swig_LZSSCompress=zend_register_internal_class_ex(&ce_swig_LZSSCompress,&ce_swig_SWCompress,NULL))) zend_error(E_ERROR,"Error registering wrapper for class LZSSCompress"); + +// Define class ZipCompress +INIT_OVERLOADED_CLASS_ENTRY(ce_swig_ZipCompress,"zipcompress",ZipCompress_functions,NULL,_wrap_propget_ZipCompress,_wrap_propset_ZipCompress); +if (! (ptr_ce_swig_ZipCompress=zend_register_internal_class_ex(&ce_swig_ZipCompress,&ce_swig_SWCompress,NULL))) zend_error(E_ERROR,"Error registering wrapper for class ZipCompress"); + + +// Register resource destructors for pointer types +le_swig__p_SWLocale=zend_register_list_destructors_ex(_wrap_destroy_p_SWLocale,NULL,(char *)(SWIGTYPE_p_SWLocale->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_SWLocale,&le_swig__p_SWLocale); +le_swig__p_SWMgr=zend_register_list_destructors_ex(_wrap_destroy_p_SWMgr,NULL,(char *)(SWIGTYPE_p_SWMgr->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_SWMgr,&le_swig__p_SWMgr); +le_swig__p_SWCom=zend_register_list_destructors_ex(_wrap_destroy_p_SWCom,NULL,(char *)(SWIGTYPE_p_SWCom->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_SWCom,&le_swig__p_SWCom); +le_swig__p_RawLD4=zend_register_list_destructors_ex(_wrap_destroy_p_RawLD4,NULL,(char *)(SWIGTYPE_p_RawLD4->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_RawLD4,&le_swig__p_RawLD4); +le_swig__p_ListKey=zend_register_list_destructors_ex(_wrap_destroy_p_ListKey,NULL,(char *)(SWIGTYPE_p_ListKey->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_ListKey,&le_swig__p_ListKey); +le_swig__p_SWKey=zend_register_list_destructors_ex(_wrap_destroy_p_SWKey,NULL,(char *)(SWIGTYPE_p_SWKey->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_SWKey,&le_swig__p_SWKey); +le_swig__p_ConfigEntMap=zend_register_list_destructors_ex(_wrap_destroy_p_ConfigEntMap,NULL,(char *)(SWIGTYPE_p_ConfigEntMap->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_ConfigEntMap,&le_swig__p_ConfigEntMap); +le_swig__p_p_char=zend_register_list_destructors_ex(_wrap_destroy_p_p_char,NULL,(char *)(SWIGTYPE_p_p_char->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_p_char,&le_swig__p_p_char); +le_swig__p_RawLD=zend_register_list_destructors_ex(_wrap_destroy_p_RawLD,NULL,(char *)(SWIGTYPE_p_RawLD->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_RawLD,&le_swig__p_RawLD); +le_swig__p_TreeKey=zend_register_list_destructors_ex(_wrap_destroy_p_TreeKey,NULL,(char *)(SWIGTYPE_p_TreeKey->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_TreeKey,&le_swig__p_TreeKey); +le_swig__p_bool=zend_register_list_destructors_ex(_wrap_destroy_p_bool,NULL,(char *)(SWIGTYPE_p_bool->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_bool,&le_swig__p_bool); +le_swig__p_void=zend_register_list_destructors_ex(_wrap_destroy_p_void,NULL,(char *)(SWIGTYPE_p_void->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_void,&le_swig__p_void); +le_swig__p_SWFilterMgr=zend_register_list_destructors_ex(_wrap_destroy_p_SWFilterMgr,NULL,(char *)(SWIGTYPE_p_SWFilterMgr->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_SWFilterMgr,&le_swig__p_SWFilterMgr); +le_swig__p_SWLD=zend_register_list_destructors_ex(_wrap_destroy_p_SWLD,NULL,(char *)(SWIGTYPE_p_SWLD->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_SWLD,&le_swig__p_SWLD); +le_swig__p_SWTextDirection=zend_register_list_destructors_ex(_wrap_destroy_p_SWTextDirection,NULL,(char *)(SWIGTYPE_p_SWTextDirection->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_SWTextDirection,&le_swig__p_SWTextDirection); +le_swig__p_RawText=zend_register_list_destructors_ex(_wrap_destroy_p_RawText,NULL,(char *)(SWIGTYPE_p_RawText->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_RawText,&le_swig__p_RawText); +le_swig__p_f_char_p_void__void=zend_register_list_destructors_ex(_wrap_destroy_p_f_char_p_void__void,NULL,(char *)(SWIGTYPE_p_f_char_p_void__void->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_f_char_p_void__void,&le_swig__p_f_char_p_void__void); +le_swig__p_VerseKey=zend_register_list_destructors_ex(_wrap_destroy_p_VerseKey,NULL,(char *)(SWIGTYPE_p_VerseKey->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_VerseKey,&le_swig__p_VerseKey); +le_swig__p_ModMap=zend_register_list_destructors_ex(_wrap_destroy_p_ModMap,NULL,(char *)(SWIGTYPE_p_ModMap->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_ModMap,&le_swig__p_ModMap); +le_swig__p_string=zend_register_list_destructors_ex(_wrap_destroy_p_string,NULL,(char *)(SWIGTYPE_p_string->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_string,&le_swig__p_string); +le_swig__p_SectionMap=zend_register_list_destructors_ex(_wrap_destroy_p_SectionMap,NULL,(char *)(SWIGTYPE_p_SectionMap->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_SectionMap,&le_swig__p_SectionMap); +le_swig__p_SWDisplay=zend_register_list_destructors_ex(_wrap_destroy_p_SWDisplay,NULL,(char *)(SWIGTYPE_p_SWDisplay->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_SWDisplay,&le_swig__p_SWDisplay); +le_swig__p_AttributeTypeList=zend_register_list_destructors_ex(_wrap_destroy_p_AttributeTypeList,NULL,(char *)(SWIGTYPE_p_AttributeTypeList->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_AttributeTypeList,&le_swig__p_AttributeTypeList); +le_swig__p_SWText=zend_register_list_destructors_ex(_wrap_destroy_p_SWText,NULL,(char *)(SWIGTYPE_p_SWText->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_SWText,&le_swig__p_SWText); +le_swig__p_SWCompress=zend_register_list_destructors_ex(_wrap_destroy_p_SWCompress,NULL,(char *)(SWIGTYPE_p_SWCompress->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_SWCompress,&le_swig__p_SWCompress); +le_swig__p_LZSSCompress=zend_register_list_destructors_ex(_wrap_destroy_p_LZSSCompress,NULL,(char *)(SWIGTYPE_p_LZSSCompress->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_LZSSCompress,&le_swig__p_LZSSCompress); +le_swig__p_ZipCompress=zend_register_list_destructors_ex(_wrap_destroy_p_ZipCompress,NULL,(char *)(SWIGTYPE_p_ZipCompress->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_ZipCompress,&le_swig__p_ZipCompress); +le_swig__p_SW_POSITION=zend_register_list_destructors_ex(_wrap_destroy_p_SW_POSITION,NULL,(char *)(SWIGTYPE_p_SW_POSITION->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_SW_POSITION,&le_swig__p_SW_POSITION); +le_swig__p_SWModule=zend_register_list_destructors_ex(_wrap_destroy_p_SWModule,NULL,(char *)(SWIGTYPE_p_SWModule->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_SWModule,&le_swig__p_SWModule); +le_swig__p_zLD=zend_register_list_destructors_ex(_wrap_destroy_p_zLD,NULL,(char *)(SWIGTYPE_p_zLD->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_zLD,&le_swig__p_zLD); +le_swig__p_SWGenBook=zend_register_list_destructors_ex(_wrap_destroy_p_SWGenBook,NULL,(char *)(SWIGTYPE_p_SWGenBook->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_SWGenBook,&le_swig__p_SWGenBook); +le_swig__p_RawGenBook=zend_register_list_destructors_ex(_wrap_destroy_p_RawGenBook,NULL,(char *)(SWIGTYPE_p_RawGenBook->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_RawGenBook,&le_swig__p_RawGenBook); +le_swig__p_SWConfig=zend_register_list_destructors_ex(_wrap_destroy_p_SWConfig,NULL,(char *)(SWIGTYPE_p_SWConfig->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_SWConfig,&le_swig__p_SWConfig); +le_swig__p_LocaleMgr=zend_register_list_destructors_ex(_wrap_destroy_p_LocaleMgr,NULL,(char *)(SWIGTYPE_p_LocaleMgr->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_LocaleMgr,&le_swig__p_LocaleMgr); +le_swig__p_int=zend_register_list_destructors_ex(_wrap_destroy_p_int,NULL,(char *)(SWIGTYPE_p_int->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_int,&le_swig__p_int); +le_swig__p_SWTextMarkup=zend_register_list_destructors_ex(_wrap_destroy_p_SWTextMarkup,NULL,(char *)(SWIGTYPE_p_SWTextMarkup->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_SWTextMarkup,&le_swig__p_SWTextMarkup); +le_swig__p_OptionsList=zend_register_list_destructors_ex(_wrap_destroy_p_OptionsList,NULL,(char *)(SWIGTYPE_p_OptionsList->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_OptionsList,&le_swig__p_OptionsList); +le_swig__p_listTstring_t=zend_register_list_destructors_ex(_wrap_destroy_p_listTstring_t,NULL,(char *)(SWIGTYPE_p_listTstring_t->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_listTstring_t,&le_swig__p_listTstring_t); +le_swig__p_zText=zend_register_list_destructors_ex(_wrap_destroy_p_zText,NULL,(char *)(SWIGTYPE_p_zText->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_zText,&le_swig__p_zText); +le_swig__p_SWTextEncoding=zend_register_list_destructors_ex(_wrap_destroy_p_SWTextEncoding,NULL,(char *)(SWIGTYPE_p_SWTextEncoding->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_SWTextEncoding,&le_swig__p_SWTextEncoding); +le_swig__p_unsigned_long=zend_register_list_destructors_ex(_wrap_destroy_p_unsigned_long,NULL,(char *)(SWIGTYPE_p_unsigned_long->name),module_number); +SWIG_TypeClientData(SWIGTYPE_p_unsigned_long,&le_swig__p_unsigned_long); +CG(active_class_entry) = NULL; +/* end oinit subsection */ + + return SUCCESS; +} +PHP_RINIT_FUNCTION(Sword) +{ +/* cinit subsection */ +/* end cinit subsection */ + +/* vinit subsection */ +/* end vinit subsection */ + + return SUCCESS; +} +PHP_RSHUTDOWN_FUNCTION(Sword) +{ + return SUCCESS; +} +PHP_MINFO_FUNCTION(Sword) +{ +} +/* end init section */ diff --git a/bindings/swig/php/Sword.php b/bindings/swig/php/Sword.php new file mode 100644 index 0000000..c7fdc23 --- /dev/null +++ b/bindings/swig/php/Sword.php @@ -0,0 +1,24 @@ + diff --git a/bindings/swig/php/php_Sword.h b/bindings/swig/php/php_Sword.h new file mode 100644 index 0000000..cf99647 --- /dev/null +++ b/bindings/swig/php/php_Sword.h @@ -0,0 +1,261 @@ +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 1.3.15u-20021007-2154 + * + * This file is not intended to be easily readable and contains a number of + * coding conventions designed to improve portability and efficiency. Do not make + * changes to this file unless you know what you are doing--modify the SWIG + * interface file instead. + * ----------------------------------------------------------------------------- */ + +/* + +----------------------------------------------------------------------+ + | PHP version 4.0 | + +----------------------------------------------------------------------+ + | Copyright (c) 1997, 1998, 1999, 2000, 2001 The PHP Group | + +----------------------------------------------------------------------+ + | This source file is subject to version 2.02 of the PHP license, | + | that is bundled with this package in the file LICENSE, and is | + | available at through the world-wide-web at | + | http://www.php.net/license/2_02.txt. | + | If you did not receive a copy of the PHP license and are unable to | + | obtain it through the world-wide-web, please send a note to | + | license@php.net so we can mail you a copy immediately. | + +----------------------------------------------------------------------+ + | Authors: | + | | + +----------------------------------------------------------------------+ + */ + + +#ifndef PHP_SWORD_H +#define PHP_SWORD_H + +extern zend_module_entry Sword_module_entry; +#define phpext_Sword_ptr &Sword_module_entry + +#ifdef PHP_WIN32 +# define PHP_SWORD_API __declspec(dllexport) +#else +# define PHP_SWORD_API +#endif + +PHP_MINIT_FUNCTION(Sword); +PHP_MSHUTDOWN_FUNCTION(Sword); +PHP_RINIT_FUNCTION(Sword); +PHP_RSHUTDOWN_FUNCTION(Sword); +PHP_MINFO_FUNCTION(Sword); + +ZEND_NAMED_FUNCTION(_wrap_new_SWConfig); +ZEND_NAMED_FUNCTION(_wrap_delete_SWConfig); +ZEND_NAMED_FUNCTION(_wrap_SWConfig_Load); +ZEND_NAMED_FUNCTION(_wrap_SWConfig_Save); +ZEND_NAMED_FUNCTION(_wrap_SWConfig_set); +ZEND_NAMED_FUNCTION(_wrap_SWConfig_get); +ZEND_NAMED_FUNCTION(_wrap_SWMgr_findConfig); +ZEND_NAMED_FUNCTION(_wrap_new_SWMgr); +ZEND_NAMED_FUNCTION(_wrap_delete_SWMgr); +ZEND_NAMED_FUNCTION(_wrap_SWMgr_Load); +ZEND_NAMED_FUNCTION(_wrap_SWMgr_setGlobalOption); +ZEND_NAMED_FUNCTION(_wrap_SWMgr_getGlobalOption); +ZEND_NAMED_FUNCTION(_wrap_SWMgr_getGlobalOptionTip); +ZEND_NAMED_FUNCTION(_wrap_SWMgr_getGlobalOptions); +ZEND_NAMED_FUNCTION(_wrap_SWMgr_getGlobalOptionValues); +ZEND_NAMED_FUNCTION(_wrap_SWMgr_setCipherKey); +ZEND_NAMED_FUNCTION(_wrap_SWMgr_module); +ZEND_NAMED_FUNCTION(_wrap_new_SWModule); +ZEND_NAMED_FUNCTION(_wrap_SWModule_Error); +ZEND_NAMED_FUNCTION(_wrap_SWModule_isUnicode); +ZEND_NAMED_FUNCTION(_wrap_SWModule_getConfig); +ZEND_NAMED_FUNCTION(_wrap_SWModule_getConfigEntry); +ZEND_NAMED_FUNCTION(_wrap_SWModule_SetKey); +ZEND_NAMED_FUNCTION(_wrap_SWModule_Key); +ZEND_NAMED_FUNCTION(_wrap_SWModule_CreateKey); +ZEND_NAMED_FUNCTION(_wrap_SWModule_KeyText); +ZEND_NAMED_FUNCTION(_wrap_SWModule_Display); +ZEND_NAMED_FUNCTION(_wrap_SWModule_nullPercent); +ZEND_NAMED_FUNCTION(_wrap_SWModule_Search); +ZEND_NAMED_FUNCTION(_wrap_SWModule_createSearchFramework); +ZEND_NAMED_FUNCTION(_wrap_SWModule_hasSearchFramework); +ZEND_NAMED_FUNCTION(_wrap_SWModule_isSearchOptimallySupported); +ZEND_NAMED_FUNCTION(_wrap_SWModule_next); +ZEND_NAMED_FUNCTION(_wrap_SWModule_prev); +ZEND_NAMED_FUNCTION(_wrap_SWModule_inc); +ZEND_NAMED_FUNCTION(_wrap_SWModule_dec); +ZEND_NAMED_FUNCTION(_wrap_SWModule_setPosition); +ZEND_NAMED_FUNCTION(_wrap_SWModule_top); +ZEND_NAMED_FUNCTION(_wrap_SWModule_bottom); +ZEND_NAMED_FUNCTION(_wrap_SWModule_text); +ZEND_NAMED_FUNCTION(_wrap_SWModule_StripText); +ZEND_NAMED_FUNCTION(_wrap_SWModule_getRawEntry); +ZEND_NAMED_FUNCTION(_wrap_SWModule_setSkipConsecutiveLinks); +ZEND_NAMED_FUNCTION(_wrap_SWModule_getSkipConsecutiveLinks); +ZEND_NAMED_FUNCTION(_wrap_SWModule_getEntryAttributes); +ZEND_NAMED_FUNCTION(_wrap_SWModule_processEntryAttributes); +ZEND_NAMED_FUNCTION(_wrap_SWModule_isProcessEntryAttributes); +ZEND_NAMED_FUNCTION(_wrap_SWModule_Name); +ZEND_NAMED_FUNCTION(_wrap_SWModule_Description); +ZEND_NAMED_FUNCTION(_wrap_SWModule_Type); +ZEND_NAMED_FUNCTION(_wrap_SWModule_Direction); +ZEND_NAMED_FUNCTION(_wrap_SWModule_Encoding); +ZEND_NAMED_FUNCTION(_wrap_SWModule_Markup); +ZEND_NAMED_FUNCTION(_wrap_SWModule_Lang); +ZEND_NAMED_FUNCTION(_wrap_SWModule_isWritable); +ZEND_NAMED_FUNCTION(_wrap_SWModule_createModule); +ZEND_NAMED_FUNCTION(_wrap_SWModule_setEntry); +ZEND_NAMED_FUNCTION(_wrap_SWModule_deleteEntry); +ZEND_NAMED_FUNCTION(_wrap_SWModule_write); +ZEND_NAMED_FUNCTION(_wrap_SWModule_writeLink); +ZEND_NAMED_FUNCTION(_wrap_delete_SWModule); +ZEND_NAMED_FUNCTION(_wrap_new_SW_POSITION); +ZEND_NAMED_FUNCTION(_wrap_delete_SW_POSITION); +ZEND_NAMED_FUNCTION(_wrap_new_SWKey); +ZEND_NAMED_FUNCTION(_wrap_SWKey_clone); +ZEND_NAMED_FUNCTION(_wrap_SWKey_Persist); +ZEND_NAMED_FUNCTION(_wrap_SWKey_setPersist); +ZEND_NAMED_FUNCTION(_wrap_SWKey_Error); +ZEND_NAMED_FUNCTION(_wrap_SWKey_setText); +ZEND_NAMED_FUNCTION(_wrap_SWKey_getText); +ZEND_NAMED_FUNCTION(_wrap_SWKey_getShortText); +ZEND_NAMED_FUNCTION(_wrap_SWKey_compare); +ZEND_NAMED_FUNCTION(_wrap_SWKey_equals); +ZEND_NAMED_FUNCTION(_wrap_SWKey_decrement); +ZEND_NAMED_FUNCTION(_wrap_SWKey_increment); +ZEND_NAMED_FUNCTION(_wrap_SWKey_Traversable); +ZEND_NAMED_FUNCTION(_wrap_SWKey_Index); +ZEND_NAMED_FUNCTION(_wrap_SWKey_next); +ZEND_NAMED_FUNCTION(_wrap_SWKey_prev); +ZEND_NAMED_FUNCTION(_wrap_SWKey_setKey); +ZEND_NAMED_FUNCTION(_wrap_delete_SWKey); +ZEND_NAMED_FUNCTION(_wrap_new_VerseKey); +ZEND_NAMED_FUNCTION(_wrap_delete_VerseKey); +ZEND_NAMED_FUNCTION(_wrap_VerseKey_clone); +ZEND_NAMED_FUNCTION(_wrap_VerseKey_LowerBound); +ZEND_NAMED_FUNCTION(_wrap_VerseKey_UpperBound); +ZEND_NAMED_FUNCTION(_wrap_VerseKey_ClearBounds); +ZEND_NAMED_FUNCTION(_wrap_VerseKey_decrement); +ZEND_NAMED_FUNCTION(_wrap_VerseKey_increment); +ZEND_NAMED_FUNCTION(_wrap_VerseKey_Traversable); +ZEND_NAMED_FUNCTION(_wrap_VerseKey_getBookName); +ZEND_NAMED_FUNCTION(_wrap_VerseKey_getBookAbbrev); +ZEND_NAMED_FUNCTION(_wrap_VerseKey_Testament); +ZEND_NAMED_FUNCTION(_wrap_VerseKey_Book); +ZEND_NAMED_FUNCTION(_wrap_VerseKey_Chapter); +ZEND_NAMED_FUNCTION(_wrap_VerseKey_Verse); +ZEND_NAMED_FUNCTION(_wrap_VerseKey_Normalize); +ZEND_NAMED_FUNCTION(_wrap_VerseKey_AutoNormalize); +ZEND_NAMED_FUNCTION(_wrap_VerseKey_Headings); +ZEND_NAMED_FUNCTION(_wrap_VerseKey_getOSISRef); +ZEND_NAMED_FUNCTION(_wrap_VerseKey_compare); +ZEND_NAMED_FUNCTION(_wrap_VerseKey__compare); +ZEND_NAMED_FUNCTION(_wrap_VerseKey_setLocale); +ZEND_NAMED_FUNCTION(_wrap_VerseKey_getLocale); +ZEND_NAMED_FUNCTION(_wrap_new_ListKey); +ZEND_NAMED_FUNCTION(_wrap_copy_ListKey); +ZEND_NAMED_FUNCTION(_wrap_delete_ListKey); +ZEND_NAMED_FUNCTION(_wrap_ListKey_clone); +ZEND_NAMED_FUNCTION(_wrap_ListKey_ClearList); +ZEND_NAMED_FUNCTION(_wrap_ListKey_Count); +ZEND_NAMED_FUNCTION(_wrap_ListKey_Remove); +ZEND_NAMED_FUNCTION(_wrap_ListKey_SetToElement); +ZEND_NAMED_FUNCTION(_wrap_ListKey_GetElement); +ZEND_NAMED_FUNCTION(_wrap_ListKey_add); +ZEND_NAMED_FUNCTION(_wrap_ListKey_copyFrom); +ZEND_NAMED_FUNCTION(_wrap_ListKey_setPosition); +ZEND_NAMED_FUNCTION(_wrap_ListKey_decrement); +ZEND_NAMED_FUNCTION(_wrap_ListKey_increment); +ZEND_NAMED_FUNCTION(_wrap_ListKey_Traversable); +ZEND_NAMED_FUNCTION(_wrap_ListKey_Index); +ZEND_NAMED_FUNCTION(_wrap_TreeKey_getLocalName); +ZEND_NAMED_FUNCTION(_wrap_TreeKey_setLocalName); +ZEND_NAMED_FUNCTION(_wrap_TreeKey_getUserData); +ZEND_NAMED_FUNCTION(_wrap_TreeKey_setUserData); +ZEND_NAMED_FUNCTION(_wrap_TreeKey_getFullName); +ZEND_NAMED_FUNCTION(_wrap_TreeKey_root); +ZEND_NAMED_FUNCTION(_wrap_TreeKey_parent); +ZEND_NAMED_FUNCTION(_wrap_TreeKey_firstChild); +ZEND_NAMED_FUNCTION(_wrap_TreeKey_nextSibling); +ZEND_NAMED_FUNCTION(_wrap_TreeKey_previousSibling); +ZEND_NAMED_FUNCTION(_wrap_TreeKey_hasChildren); +ZEND_NAMED_FUNCTION(_wrap_TreeKey_append); +ZEND_NAMED_FUNCTION(_wrap_TreeKey_appendChild); +ZEND_NAMED_FUNCTION(_wrap_TreeKey_insertBefore); +ZEND_NAMED_FUNCTION(_wrap_TreeKey_remove); +ZEND_NAMED_FUNCTION(_wrap_TreeKey_setOffset); +ZEND_NAMED_FUNCTION(_wrap_TreeKey_getOffset); +ZEND_NAMED_FUNCTION(_wrap_TreeKey_setPosition); +ZEND_NAMED_FUNCTION(_wrap_TreeKey_Traversable); +ZEND_NAMED_FUNCTION(_wrap_TreeKey_Index); +ZEND_NAMED_FUNCTION(_wrap_new_TreeKey); +ZEND_NAMED_FUNCTION(_wrap_new_TreeKeyIdx); +ZEND_NAMED_FUNCTION(_wrap_new_LocaleMgr); +ZEND_NAMED_FUNCTION(_wrap_delete_LocaleMgr); +ZEND_NAMED_FUNCTION(_wrap_LocaleMgr_getLocale); +ZEND_NAMED_FUNCTION(_wrap_LocaleMgr_getAvailableLocales); +ZEND_NAMED_FUNCTION(_wrap_LocaleMgr_getDefaultLocaleName); +ZEND_NAMED_FUNCTION(_wrap_LocaleMgr_setDefaultLocaleName); +ZEND_NAMED_FUNCTION(_wrap_LocaleMgr_systemLocaleMgr); +ZEND_NAMED_FUNCTION(_wrap_new_SWFilterMgr); +ZEND_NAMED_FUNCTION(_wrap_new_SWText); +ZEND_NAMED_FUNCTION(_wrap_delete_SWText); +ZEND_NAMED_FUNCTION(_wrap_new_RawText); +ZEND_NAMED_FUNCTION(_wrap_RawText_createModule); +ZEND_NAMED_FUNCTION(_wrap_delete_RawText); +ZEND_NAMED_FUNCTION(_wrap_new_zText); +ZEND_NAMED_FUNCTION(_wrap_delete_zText); +ZEND_NAMED_FUNCTION(_wrap_zText_createModule); +ZEND_NAMED_FUNCTION(_wrap_new_SWCom); +ZEND_NAMED_FUNCTION(_wrap_new_RawCom); +ZEND_NAMED_FUNCTION(_wrap_new_zCom); +ZEND_NAMED_FUNCTION(_wrap_new_SWGenBook); +ZEND_NAMED_FUNCTION(_wrap_new_RawGenBook); +ZEND_NAMED_FUNCTION(_wrap_delete_RawGenBook); +ZEND_NAMED_FUNCTION(_wrap_RawGenBook_createModule); +ZEND_NAMED_FUNCTION(_wrap_new_SWLD); +ZEND_NAMED_FUNCTION(_wrap_delete_SWLD); +ZEND_NAMED_FUNCTION(_wrap_new_RawLD); +ZEND_NAMED_FUNCTION(_wrap_delete_RawLD); +ZEND_NAMED_FUNCTION(_wrap_RawLD_createModule); +ZEND_NAMED_FUNCTION(_wrap_new_RawLD4); +ZEND_NAMED_FUNCTION(_wrap_delete_RawLD4); +ZEND_NAMED_FUNCTION(_wrap_RawLD4_createModule); +ZEND_NAMED_FUNCTION(_wrap_new_zLD); +ZEND_NAMED_FUNCTION(_wrap_delete_zLD); +ZEND_NAMED_FUNCTION(_wrap_zLD_createModule); +ZEND_NAMED_FUNCTION(_wrap_new_SWCompress); +ZEND_NAMED_FUNCTION(_wrap_delete_SWCompress); +ZEND_NAMED_FUNCTION(_wrap_SWCompress_Buf); +ZEND_NAMED_FUNCTION(_wrap_SWCompress_zBuf); +ZEND_NAMED_FUNCTION(_wrap_SWCompress_GetChars); +ZEND_NAMED_FUNCTION(_wrap_SWCompress_SendChars); +ZEND_NAMED_FUNCTION(_wrap_SWCompress_Encode); +ZEND_NAMED_FUNCTION(_wrap_SWCompress_Decode); +ZEND_NAMED_FUNCTION(_wrap_new_LZSSCompress); +ZEND_NAMED_FUNCTION(_wrap_delete_LZSSCompress); +ZEND_NAMED_FUNCTION(_wrap_LZSSCompress_Encode); +ZEND_NAMED_FUNCTION(_wrap_LZSSCompress_Decode); +ZEND_NAMED_FUNCTION(_wrap_new_ZipCompress); +ZEND_NAMED_FUNCTION(_wrap_delete_ZipCompress); +ZEND_NAMED_FUNCTION(_wrap_ZipCompress_Encode); +ZEND_NAMED_FUNCTION(_wrap_ZipCompress_Decode); +/*If you declare any globals in php_Sword.h uncomment this: +ZEND_BEGIN_MODULE_GLOBALS(Sword) +ZEND_END_MODULE_GLOBALS(Sword) +*/ +#ifdef ZTS +#define SWORD_D zend_Sword_globals *Sword_globals +#define SWORD_DC , SWORD_D +#define SWORD_C Sword_globals +#define SWORD_CC , SWORD_C +#define SWORD_SG(v) (Sword_globals->v) +#define SWORD_FETCH() zend_Sword_globals *Sword_globals = ts_resource(Sword_globals_id) +#else +#define SWORD_D +#define SWORD_DC +#define SWORD_C +#define SWORD_CC +#define SWORD_SG(v) (Sword_globals.v) +#define SWORD_FETCH() +#endif + +#endif /* PHP_SWORD_H */ diff --git a/bindings/swig/python/README.txt b/bindings/swig/python/README.txt new file mode 100644 index 0000000..72eb6a1 --- /dev/null +++ b/bindings/swig/python/README.txt @@ -0,0 +1 @@ +welcome to the python binding for sword diff --git a/bindings/swig/python/Sword.cxx b/bindings/swig/python/Sword.cxx new file mode 100644 index 0000000..d738380 --- /dev/null +++ b/bindings/swig/python/Sword.cxx @@ -0,0 +1,5062 @@ +/* ---------------------------------------------------------------------------- + * This file was automatically generated by SWIG (http://www.swig.org). + * Version 1.3.14u-20020903-2331 + * + * This file is not intended to be easily readable and contains a number of + * coding conventions designed to improve portability and efficiency. Do not make + * changes to this file unless you know what you are doing--modify the SWIG + * interface file instead. + * ----------------------------------------------------------------------------- */ + +#define SWIGPYTHON + +#ifdef __cplusplus +template class SwigValueWrapper { + T *tt; +public: + inline SwigValueWrapper() : tt(0) { } + inline ~SwigValueWrapper() { if (tt) delete tt; } + inline SwigValueWrapper& operator=(const T& t) { tt = new T(t); return *this; } + inline operator T&() const { return *tt; } + inline T *operator&() { return tt; } +}; +#endif + + +#include "Python.h" + +/*********************************************************************** + * common.swg + * + * This file contains generic SWIG runtime support for pointer + * type checking as well as a few commonly used macros to control + * external linkage. + * + * Author : David Beazley (beazley@cs.uchicago.edu) + * + * Copyright (c) 1999-2000, The University of Chicago + * + * This file may be freely redistributed without license or fee provided + * this copyright message remains intact. + ************************************************************************/ + +#include + +#if defined(_WIN32) || defined(__WIN32__) +# if defined(_MSC_VER) +# if defined(STATIC_LINKED) +# define SWIGEXPORT(a) a +# define SWIGIMPORT(a) extern a +# else +# define SWIGEXPORT(a) __declspec(dllexport) a +# define SWIGIMPORT(a) extern a +# endif +# else +# if defined(__BORLANDC__) +# define SWIGEXPORT(a) a _export +# define SWIGIMPORT(a) a _export +# else +# define SWIGEXPORT(a) a +# define SWIGIMPORT(a) a +# endif +# endif +#else +# define SWIGEXPORT(a) a +# define SWIGIMPORT(a) a +#endif + +#ifdef SWIG_GLOBAL +#define SWIGRUNTIME(a) SWIGEXPORT(a) +#else +#define SWIGRUNTIME(a) static a +#endif + +#ifdef __cplusplus +extern "C" { +#endif + +typedef void *(*swig_converter_func)(void *); +typedef struct swig_type_info *(*swig_dycast_func)(void **); + +typedef struct swig_type_info { + const char *name; + swig_converter_func converter; + const char *str; + void *clientdata; + swig_dycast_func dcast; + struct swig_type_info *next; + struct swig_type_info *prev; +} swig_type_info; + +#ifdef SWIG_NOINCLUDE + +SWIGIMPORT(swig_type_info *) SWIG_TypeRegister(swig_type_info *); +SWIGIMPORT(swig_type_info *) SWIG_TypeCheck(char *c, swig_type_info *); +SWIGIMPORT(void *) SWIG_TypeCast(swig_type_info *, void *); +SWIGIMPORT(swig_type_info *) SWIG_TypeDynamicCast(swig_type_info *, void **); +SWIGIMPORT(swig_type_info *) SWIG_TypeQuery(const char *); +SWIGIMPORT(void) SWIG_TypeClientData(swig_type_info *, void *); + +#else + +static swig_type_info *swig_type_list = 0; + +/* Register a type mapping with the type-checking */ +SWIGRUNTIME(swig_type_info *) +SWIG_TypeRegister(swig_type_info *ti) +{ + swig_type_info *tc, *head, *ret, *next; + /* Check to see if this type has already been registered */ + tc = swig_type_list; + while (tc) { + if (strcmp(tc->name, ti->name) == 0) { + /* Already exists in the table. Just add additional types to the list */ + if (tc->clientdata) ti->clientdata = tc->clientdata; + head = tc; + next = tc->next; + goto l1; + } + tc = tc->prev; + } + head = ti; + next = 0; + + /* Place in list */ + ti->prev = swig_type_list; + swig_type_list = ti; + + /* Build linked lists */ + l1: + ret = head; + tc = ti + 1; + /* Patch up the rest of the links */ + while (tc->name) { + head->next = tc; + tc->prev = head; + head = tc; + tc++; + } + head->next = next; + return ret; +} + +/* Check the typename */ +SWIGRUNTIME(swig_type_info *) +SWIG_TypeCheck(char *c, swig_type_info *ty) +{ + swig_type_info *s; + if (!ty) return 0; /* Void pointer */ + s = ty->next; /* First element always just a name */ + do { + if (strcmp(s->name,c) == 0) { + if (s == ty->next) return s; + /* Move s to the top of the linked list */ + s->prev->next = s->next; + if (s->next) { + s->next->prev = s->prev; + } + /* Insert s as second element in the list */ + s->next = ty->next; + if (ty->next) ty->next->prev = s; + ty->next = s; + return s; + } + s = s->next; + } while (s && (s != ty->next)); + return 0; +} + +/* Cast a pointer up an inheritance hierarchy */ +SWIGRUNTIME(void *) +SWIG_TypeCast(swig_type_info *ty, void *ptr) +{ + if ((!ty) || (!ty->converter)) return ptr; + return (*ty->converter)(ptr); +} + +/* Dynamic pointer casting. Down an inheritance hierarchy */ +SWIGRUNTIME(swig_type_info *) +SWIG_TypeDynamicCast(swig_type_info *ty, void **ptr) +{ + swig_type_info *lastty = ty; + if (!ty || !ty->dcast) return ty; + while (ty && (ty->dcast)) { + ty = (*ty->dcast)(ptr); + if (ty) lastty = ty; + } + return lastty; +} + +/* Search for a swig_type_info structure */ +SWIGRUNTIME(swig_type_info *) +SWIG_TypeQuery(const char *name) { + swig_type_info *ty = swig_type_list; + while (ty) { + if (ty->str && (strcmp(name,ty->str) == 0)) return ty; + if (ty->name && (strcmp(name,ty->name) == 0)) return ty; + ty = ty->prev; + } + return 0; +} + +/* Set the clientdata field for a type */ +SWIGRUNTIME(void) +SWIG_TypeClientData(swig_type_info *ti, void *clientdata) { + swig_type_info *tc, *equiv; + if (ti->clientdata) return; + ti->clientdata = clientdata; + equiv = ti->next; + while (equiv) { + if (!equiv->converter) { + tc = swig_type_list; + while (tc) { + if ((strcmp(tc->name, equiv->name) == 0)) + SWIG_TypeClientData(tc,clientdata); + tc = tc->prev; + } + } + equiv = equiv->next; + } +} +#endif + +#ifdef __cplusplus +} + +#endif + +/*********************************************************************** + * python.swg + * + * This file contains the runtime support for Python modules + * and includes code for managing global variables and pointer + * type checking. + * + * Author : David Beazley (beazley@cs.uchicago.edu) + ************************************************************************/ + +#include "Python.h" + +#ifdef __cplusplus +extern "C" { +#endif + +#define SWIG_PY_INT 1 +#define SWIG_PY_FLOAT 2 +#define SWIG_PY_STRING 3 +#define SWIG_PY_POINTER 4 +#define SWIG_PY_BINARY 5 + +/* Flags for pointer conversion */ + +#define SWIG_POINTER_EXCEPTION 0x1 +#define SWIG_POINTER_DISOWN 0x2 + +/* Constant information structure */ +typedef struct swig_const_info { + int type; + char *name; + long lvalue; + double dvalue; + void *pvalue; + swig_type_info **ptype; +} swig_const_info; + +#ifdef SWIG_NOINCLUDE + +SWIGEXPORT(PyObject *) SWIG_newvarlink(); +SWIGEXPORT(void) SWIG_addvarlink(PyObject *, char *, PyObject *(*)(void), int (*)(PyObject *)); +SWIGEXPORT(int) SWIG_ConvertPtr(PyObject *, void **, swig_type_info *, int); +SWIGEXPORT(int) SWIG_ConvertPacked(PyObject *, void *, int sz, swig_type_info *, int); +SWIGEXPORT(char *) SWIG_PackData(char *c, void *, int); +SWIGEXPORT(char *) SWIG_UnpackData(char *c, void *, int); +SWIGEXPORT(PyObject *) SWIG_NewPointerObj(void *, swig_type_info *,int own); +SWIGEXPORT(PyObject *) SWIG_NewPackedObj(void *, int sz, swig_type_info *); +SWIGEXPORT(void) SWIG_InstallConstants(PyObject *d, swig_const_info constants[]); +#else + +/* ----------------------------------------------------------------------------- + * global variable support code. + * ----------------------------------------------------------------------------- */ + +typedef struct swig_globalvar { + char *name; /* Name of global variable */ + PyObject *(*get_attr)(void); /* Return the current value */ + int (*set_attr)(PyObject *); /* Set the value */ + struct swig_globalvar *next; +} swig_globalvar; + +typedef struct swig_varlinkobject { + PyObject_HEAD + swig_globalvar *vars; +} swig_varlinkobject; + +static PyObject * +swig_varlink_repr(swig_varlinkobject *v) { + v = v; + return PyString_FromString(""); +} + +static int +swig_varlink_print(swig_varlinkobject *v, FILE *fp, int flags) { + swig_globalvar *var; + flags = flags; + fprintf(fp,"Global variables { "); + for (var = v->vars; var; var=var->next) { + fprintf(fp,"%s", var->name); + if (var->next) fprintf(fp,", "); + } + fprintf(fp," }\n"); + return 0; +} + +static PyObject * +swig_varlink_getattr(swig_varlinkobject *v, char *n) { + swig_globalvar *var = v->vars; + while (var) { + if (strcmp(var->name,n) == 0) { + return (*var->get_attr)(); + } + var = var->next; + } + PyErr_SetString(PyExc_NameError,"Unknown C global variable"); + return NULL; +} + +static int +swig_varlink_setattr(swig_varlinkobject *v, char *n, PyObject *p) { + swig_globalvar *var = v->vars; + while (var) { + if (strcmp(var->name,n) == 0) { + return (*var->set_attr)(p); + } + var = var->next; + } + PyErr_SetString(PyExc_NameError,"Unknown C global variable"); + return 1; +} + +statichere PyTypeObject varlinktype = { + PyObject_HEAD_INIT(0) + 0, + (char *)"swigvarlink", /* Type name */ + sizeof(swig_varlinkobject), /* Basic size */ + 0, /* Itemsize */ + 0, /* Deallocator */ + (printfunc) swig_varlink_print, /* Print */ + (getattrfunc) swig_varlink_getattr, /* get attr */ + (setattrfunc) swig_varlink_setattr, /* Set attr */ + 0, /* tp_compare */ + (reprfunc) swig_varlink_repr, /* tp_repr */ + 0, /* tp_as_number */ + 0, /* tp_as_mapping*/ + 0, /* tp_hash */ +}; + +/* Create a variable linking object for use later */ +SWIGRUNTIME(PyObject *) +SWIG_newvarlink(void) { + swig_varlinkobject *result = 0; + result = PyMem_NEW(swig_varlinkobject,1); + varlinktype.ob_type = &PyType_Type; /* Patch varlinktype into a PyType */ + result->ob_type = &varlinktype; + result->vars = 0; + result->ob_refcnt = 0; + Py_XINCREF((PyObject *) result); + return ((PyObject*) result); +} + +SWIGRUNTIME(void) +SWIG_addvarlink(PyObject *p, char *name, + PyObject *(*get_attr)(void), int (*set_attr)(PyObject *p)) { + swig_varlinkobject *v; + swig_globalvar *gv; + v= (swig_varlinkobject *) p; + gv = (swig_globalvar *) malloc(sizeof(swig_globalvar)); + gv->name = (char *) malloc(strlen(name)+1); + strcpy(gv->name,name); + gv->get_attr = get_attr; + gv->set_attr = set_attr; + gv->next = v->vars; + v->vars = gv; +} + +/* Pack binary data into a string */ +SWIGRUNTIME(char *) +SWIG_PackData(char *c, void *ptr, int sz) { + static char hex[17] = "0123456789abcdef"; + int i; + unsigned char *u = (unsigned char *) ptr; + register unsigned char uu; + for (i = 0; i < sz; i++,u++) { + uu = *u; + *(c++) = hex[(uu & 0xf0) >> 4]; + *(c++) = hex[uu & 0xf]; + } + return c; +} + +/* Unpack binary data from a string */ +SWIGRUNTIME(char *) +SWIG_UnpackData(char *c, void *ptr, int sz) { + register unsigned char uu = 0; + register int d; + unsigned char *u = (unsigned char *) ptr; + int i; + for (i = 0; i < sz; i++, u++) { + d = *(c++); + if ((d >= '0') && (d <= '9')) + uu = ((d - '0') << 4); + else if ((d >= 'a') && (d <= 'f')) + uu = ((d - ('a'-10)) << 4); + d = *(c++); + if ((d >= '0') && (d <= '9')) + uu |= (d - '0'); + else if ((d >= 'a') && (d <= 'f')) + uu |= (d - ('a'-10)); + *u = uu; + } + return c; +} + +/* Convert a pointer value */ +SWIGRUNTIME(int) +SWIG_ConvertPtr(PyObject *obj, void **ptr, swig_type_info *ty, int flags) { + swig_type_info *tc; + char *c; + static PyObject *SWIG_this = 0; + int newref = 0; + PyObject *pyobj = 0; + + if (!obj) return 0; + if (obj == Py_None) { + *ptr = 0; + return 0; + } +#ifdef SWIG_COBJECT_TYPES + if (!(PyCObject_Check(obj))) { + if (!SWIG_this) + SWIG_this = PyString_FromString("this"); + pyobj = obj; + obj = PyObject_GetAttr(obj,SWIG_this); + newref = 1; + if (!obj) goto type_error; + if (!PyCObject_Check(obj)) { + Py_DECREF(obj); + goto type_error; + } + } + *ptr = PyCObject_AsVoidPtr(obj); + c = (char *) PyCObject_GetDesc(obj); + if (newref) Py_DECREF(obj); + goto cobject; +#else + if (!(PyString_Check(obj))) { + if (!SWIG_this) + SWIG_this = PyString_FromString("this"); + pyobj = obj; + obj = PyObject_GetAttr(obj,SWIG_this); + newref = 1; + if (!obj) goto type_error; + if (!PyString_Check(obj)) { + Py_DECREF(obj); + goto type_error; + } + } + c = PyString_AsString(obj); + /* Pointer values must start with leading underscore */ + if (*c != '_') { + *ptr = (void *) 0; + if (strcmp(c,"NULL") == 0) { + if (newref) { Py_DECREF(obj); } + return 0; + } else { + if (newref) { Py_DECREF(obj); } + goto type_error; + } + } + c++; + c = SWIG_UnpackData(c,ptr,sizeof(void *)); + if (newref) { Py_DECREF(obj); } +#endif + +#ifdef SWIG_COBJECT_TYPES +cobject: +#endif + + if (ty) { + tc = SWIG_TypeCheck(c,ty); + if (!tc) goto type_error; + *ptr = SWIG_TypeCast(tc,(void*) *ptr); + } + + if ((pyobj) && (flags & SWIG_POINTER_DISOWN)) { + PyObject *zero = PyInt_FromLong(0); + PyObject_SetAttrString(pyobj,"thisown",zero); + Py_DECREF(zero); + } + return 0; + +type_error: + if (flags & SWIG_POINTER_EXCEPTION) { + if (ty) { + char *temp = (char *) malloc(64+strlen(ty->name)); + sprintf(temp,"Type error. Expected %s", ty->name); + PyErr_SetString(PyExc_TypeError, temp); + free((char *) temp); + } else { + PyErr_SetString(PyExc_TypeError,"Expected a pointer"); + } + } + return -1; +} + +/* Convert a packed value value */ +SWIGRUNTIME(int) +SWIG_ConvertPacked(PyObject *obj, void *ptr, int sz, swig_type_info *ty, int flags) { + swig_type_info *tc; + char *c; + + if ((!obj) || (!PyString_Check(obj))) goto type_error; + c = PyString_AsString(obj); + /* Pointer values must start with leading underscore */ + if (*c != '_') goto type_error; + c++; + c = SWIG_UnpackData(c,ptr,sz); + if (ty) { + tc = SWIG_TypeCheck(c,ty); + if (!tc) goto type_error; + } + return 0; + +type_error: + + if (flags) { + if (ty) { + char *temp = (char *) malloc(64+strlen(ty->name)); + sprintf(temp,"Type error. Expected %s", ty->name); + PyErr_SetString(PyExc_TypeError, temp); + free((char *) temp); + } else { + PyErr_SetString(PyExc_TypeError,"Expected a pointer"); + } + } + return -1; +} + +/* Create a new pointer object */ +SWIGRUNTIME(PyObject *) +SWIG_NewPointerObj(void *ptr, swig_type_info *type, int own) { + PyObject *robj; + if (!ptr) { + Py_INCREF(Py_None); + return Py_None; + } +#ifdef SWIG_COBJECT_TYPES + robj = PyCObject_FromVoidPtrAndDesc((void *) ptr, (char *) type->name, NULL); +#else + { + char result[1024]; + char *r = result; + *(r++) = '_'; + r = SWIG_PackData(r,&ptr,sizeof(void *)); + strcpy(r,type->name); + robj = PyString_FromString(result); + } +#endif + if (!robj || (robj == Py_None)) return robj; + if (type->clientdata) { + PyObject *inst; + PyObject *args = Py_BuildValue((char*)"(O)", robj); + Py_DECREF(robj); + inst = PyObject_CallObject((PyObject *) type->clientdata, args); + Py_DECREF(args); + if (inst) { + if (own) { + PyObject *n = PyInt_FromLong(1); + PyObject_SetAttrString(inst,(char*)"thisown",n); + Py_DECREF(n); + } + robj = inst; + } + } + return robj; +} + +SWIGRUNTIME(PyObject *) +SWIG_NewPackedObj(void *ptr, int sz, swig_type_info *type) { + char result[1024]; + char *r = result; + if ((2*sz + 1 + strlen(type->name)) > 1000) return 0; + *(r++) = '_'; + r = SWIG_PackData(r,ptr,sz); + strcpy(r,type->name); + return PyString_FromString(result); +} + +/* Install Constants */ +SWIGRUNTIME(void) +SWIG_InstallConstants(PyObject *d, swig_const_info constants[]) { + int i; + PyObject *obj; + for (i = 0; constants[i].type; i++) { + switch(constants[i].type) { + case SWIG_PY_INT: + obj = PyInt_FromLong(constants[i].lvalue); + break; + case SWIG_PY_FLOAT: + obj = PyFloat_FromDouble(constants[i].dvalue); + break; + case SWIG_PY_STRING: + obj = PyString_FromString((char *) constants[i].pvalue); + break; + case SWIG_PY_POINTER: + obj = SWIG_NewPointerObj(constants[i].pvalue, *(constants[i]).ptype,0); + break; + case SWIG_PY_BINARY: + obj = SWIG_NewPackedObj(constants[i].pvalue, constants[i].lvalue, *(constants[i].ptype)); + break; + default: + obj = 0; + break; + } + if (obj) { + PyDict_SetItemString(d,constants[i].name,obj); + Py_DECREF(obj); + } + } +} + +#endif + +#ifdef __cplusplus +} +#endif + + + + + + + + +/* -------- TYPES TABLE (BEGIN) -------- */ + +#define SWIGTYPE_p_SWLocale swig_types[0] +#define SWIGTYPE_p_SWMgr swig_types[1] +#define SWIGTYPE_p_SWCom swig_types[2] +#define SWIGTYPE_p_RawLD4 swig_types[3] +#define SWIGTYPE_p_ListKey swig_types[4] +#define SWIGTYPE_p_SWKey swig_types[5] +#define SWIGTYPE_p_ConfigEntMap swig_types[6] +#define SWIGTYPE_p_p_char swig_types[7] +#define SWIGTYPE_p_RawLD swig_types[8] +#define SWIGTYPE_p_TreeKey swig_types[9] +#define SWIGTYPE_p_bool swig_types[10] +#define SWIGTYPE_p_SWFilterMgr swig_types[11] +#define SWIGTYPE_p_SWLD swig_types[12] +#define SWIGTYPE_p_SWTextDirection swig_types[13] +#define SWIGTYPE_p_RawText swig_types[14] +#define SWIGTYPE_p_f_char_p_void__void swig_types[15] +#define SWIGTYPE_p_VerseKey swig_types[16] +#define SWIGTYPE_p_ModMap swig_types[17] +#define SWIGTYPE_p_zCom swig_types[18] +#define SWIGTYPE_p_string swig_types[19] +#define SWIGTYPE_p_SectionMap swig_types[20] +#define SWIGTYPE_p_SWDisplay swig_types[21] +#define SWIGTYPE_p_AttributeTypeList swig_types[22] +#define SWIGTYPE_p_SWText swig_types[23] +#define SWIGTYPE_p_TreeKeyIdx swig_types[24] +#define SWIGTYPE_p_SWCompress swig_types[25] +#define SWIGTYPE_p_LZSSCompress swig_types[26] +#define SWIGTYPE_p_ZipCompress swig_types[27] +#define SWIGTYPE_p_SW_POSITION swig_types[28] +#define SWIGTYPE_p_SWModule swig_types[29] +#define SWIGTYPE_p_zLD swig_types[30] +#define SWIGTYPE_p_SWGenBook swig_types[31] +#define SWIGTYPE_p_RawCom swig_types[32] +#define SWIGTYPE_p_RawGenBook swig_types[33] +#define SWIGTYPE_p_SWConfig swig_types[34] +#define SWIGTYPE_p_LocaleMgr swig_types[35] +#define SWIGTYPE_p_int swig_types[36] +#define SWIGTYPE_p_SWTextMarkup swig_types[37] +#define SWIGTYPE_p_OptionsList swig_types[38] +#define SWIGTYPE_p_listTstring_t swig_types[39] +#define SWIGTYPE_p_zText swig_types[40] +#define SWIGTYPE_p_SWTextEncoding swig_types[41] +#define SWIGTYPE_p_unsigned_long swig_types[42] +static swig_type_info *swig_types[44]; + +/* -------- TYPES TABLE (END) -------- */ + + +/*----------------------------------------------- + @(target):= _Sword.so + ------------------------------------------------*/ +#define SWIG_init init_Sword + +#define SWIG_name "_Sword" + +#undef bool +#undef assert +#undef LOCAL +#undef list + + + #include + #include + #include + #include + #include + + #include "swconfig.h" +using namespace sword; + + +#define SWIG_MemoryError 1 +#define SWIG_IOError 2 +#define SWIG_RuntimeError 3 +#define SWIG_IndexError 4 +#define SWIG_TypeError 5 +#define SWIG_DivisionByZero 6 +#define SWIG_OverflowError 7 +#define SWIG_SyntaxError 8 +#define SWIG_ValueError 9 +#define SWIG_SystemError 10 +#define SWIG_UnknownError 99 + + +static void _SWIG_exception(int code, char *msg) { + switch(code) { + case SWIG_MemoryError: + PyErr_SetString(PyExc_MemoryError,msg); + break; + case SWIG_IOError: + PyErr_SetString(PyExc_IOError,msg); + break; + case SWIG_RuntimeError: + PyErr_SetString(PyExc_RuntimeError,msg); + break; + case SWIG_IndexError: + PyErr_SetString(PyExc_IndexError,msg); + break; + case SWIG_TypeError: + PyErr_SetString(PyExc_TypeError,msg); + break; + case SWIG_DivisionByZero: + PyErr_SetString(PyExc_ZeroDivisionError,msg); + break; + case SWIG_OverflowError: + PyErr_SetString(PyExc_OverflowError,msg); + break; + case SWIG_SyntaxError: + PyErr_SetString(PyExc_SyntaxError,msg); + break; + case SWIG_ValueError: + PyErr_SetString(PyExc_ValueError,msg); + break; + case SWIG_SystemError: + PyErr_SetString(PyExc_SystemError,msg); + break; + default: + PyErr_SetString(PyExc_RuntimeError,msg); + break; + } +} + +#define SWIG_exception(a,b) { _SWIG_exception(a,b); return NULL; } + + +#include + + +#include + +PyObject* SwigInt_FromBool(bool b) { + return PyInt_FromLong(b ? 1L : 0L); +} +double SwigNumber_Check(PyObject* o) { + return PyFloat_Check(o) || PyInt_Check(o); +} +double SwigNumber_AsDouble(PyObject* o) { + return (PyFloat_Check(o) ? PyFloat_AsDouble(o) : double(PyInt_AsLong(o))); +} +PyObject* SwigString_FromString(const std::string& s) { + return PyString_FromString(s.c_str()); +} +std::string SwigString_AsString(PyObject* o) { + return std::string(PyString_AsString(o)); +} + + +#include +#include +#include + +void SWConfig_set(SWConfig *self,char const *group,char const *entry,char const *value){ + self->Sections[group][entry] = value; + } +char const *SWConfig_get(SWConfig *self,char const *group,char const *entry){ + return self->Sections[group][entry].c_str(); + } + +#include + +SWModule *SWMgr_module(SWMgr *self,char const *modulename){ + return self->Modules[modulename]; + } + + #include "swmodule.h" + +bool const SWModule_next(SWModule *self){ + (*self)++; + return !self->Error(); + } +bool const SWModule_prev(SWModule *self){ + (*self)--; + return !self->Error(); + } +bool const SWModule_inc(SWModule *self,int const howFar){ + (*self)+=howFar; + return !self->Error(); + } +bool const SWModule_dec(SWModule *self,int const howFar){ + (*self)-=howFar; + return !self->Error(); + } +void SWModule_setPosition(SWModule *self,SW_POSITION pos){ + (*self) = pos; + } +void SWModule_top(SWModule *self){ + (*self) = TOP; + } +void SWModule_bottom(SWModule *self){ + (*self) = BOTTOM; + } +char const *SWModule_text(SWModule *self){ + return (const char*)*self; + } +char const *SWModule_StripText(SWModule *self){ + return self->StripText(); + } +void SWModule_write(SWModule *self,char const *text){ + (*self)<Persist(persists); + } +void SWKey_next(SWKey *self){ + (*self)++; + } +void SWKey_prev(SWKey *self){ + (*self)++; + } +void SWKey_setKey(SWKey *self,SWKey const *key){ + self->copyFrom(*key); + } + + #include "versekey.h" + + +#include "listkey.h" + +char ListKey_SetToElement(ListKey *self,int element){ + return self->SetToElement(element, SW_POSITION(((char)1))); + } + +#include "treekey.h" + + +#include "treekeyidx.h" + + +#include + +LocaleMgr *const LocaleMgr_systemLocaleMgr(){ + return &(LocaleMgr::systemLocaleMgr); + } + +#include + + + #include "swtext.h" + + + #include "rawtext.h" + + + #include "ztext.h" + + + #include "swcom.h" + + + #include "rawcom.h" + + + #include "zcom.h" + + + #include "swgenbook.h" + + + #include "rawgenbook.h" + + + #include "swld.h" + + + #include "rawld.h" + + + #include "rawld4.h" + + + #include "zld.h" + + + #include + + + #include + + + #include + +#ifdef __cplusplus +extern "C" { +#endif +static PyObject *_wrap_SWConfig_filename_set(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWConfig *arg1 ; + string arg2 ; + string *argp2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"OO:SWConfig_filename_set",&obj0,&obj1)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWConfig,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + if ((SWIG_ConvertPtr(obj1,(void **) &argp2, SWIGTYPE_p_string,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg2 = *argp2; + if (arg1) (arg1)->filename = arg2; + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWConfig_filename_get(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWConfig *arg1 ; + string result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWConfig_filename_get",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWConfig,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = ((arg1)->filename); + + { + string * resultptr; + resultptr = new string((string &) result); + resultobj = SWIG_NewPointerObj((void *) resultptr, SWIGTYPE_p_string, 1); + } + return resultobj; +} + + +static PyObject *_wrap_SWConfig_Sections_set(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWConfig *arg1 ; + SectionMap arg2 ; + SectionMap *argp2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"OO:SWConfig_Sections_set",&obj0,&obj1)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWConfig,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + if ((SWIG_ConvertPtr(obj1,(void **) &argp2, SWIGTYPE_p_SectionMap,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg2 = *argp2; + if (arg1) (arg1)->Sections = arg2; + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWConfig_Sections_get(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWConfig *arg1 ; + SectionMap result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWConfig_Sections_get",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWConfig,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = ((arg1)->Sections); + + { + SectionMap * resultptr; + resultptr = new SectionMap((SectionMap &) result); + resultobj = SWIG_NewPointerObj((void *) resultptr, SWIGTYPE_p_SectionMap, 1); + } + return resultobj; +} + + +static PyObject *_wrap_new_SWConfig(PyObject *self, PyObject *args) { + PyObject *resultobj; + char *arg1 ; + SWConfig *result; + + if(!PyArg_ParseTuple(args,(char *)"s:new_SWConfig",&arg1)) return NULL; + result = (SWConfig *)new SWConfig((char const *)arg1); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_SWConfig, 1); + return resultobj; +} + + +static PyObject *_wrap_delete_SWConfig(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWConfig *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:delete_SWConfig",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWConfig,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + delete arg1; + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWConfig_Load(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWConfig *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWConfig_Load",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWConfig,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->Load(); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWConfig_Save(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWConfig *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWConfig_Save",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWConfig,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->Save(); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWConfig_set(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWConfig *arg1 ; + char *arg2 ; + char *arg3 ; + char *arg4 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Osss:SWConfig_set",&obj0,&arg2,&arg3,&arg4)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWConfig,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + SWConfig_set(arg1,(char const *)arg2,(char const *)arg3,(char const *)arg4); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWConfig_get(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWConfig *arg1 ; + char *arg2 ; + char *arg3 ; + char *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Oss:SWConfig_get",&obj0,&arg2,&arg3)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWConfig,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char *)SWConfig_get(arg1,(char const *)arg2,(char const *)arg3); + + resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)""); + return resultobj; +} + + +static PyObject * SWConfig_swigregister(PyObject *self, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_SWConfig, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyObject *_wrap_SWMgr_findConfig(PyObject *self, PyObject *args) { + PyObject *resultobj; + char *arg1 ; + char **arg2 ; + char **arg3 ; + PyObject * obj1 = 0 ; + PyObject * obj2 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"sOO:SWMgr_findConfig",&arg1,&obj1,&obj2)) return NULL; + if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_p_char,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + if ((SWIG_ConvertPtr(obj2,(void **) &arg3, SWIGTYPE_p_p_char,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + SWMgr::findConfig(arg1,arg2,arg3); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWMgr_config_set(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWMgr *arg1 ; + SWConfig *arg2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"OO:SWMgr_config_set",&obj0,&obj1)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWMgr,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_SWConfig,SWIG_POINTER_EXCEPTION | SWIG_POINTER_DISOWN )) == -1) return NULL; + if (arg1) (arg1)->config = arg2; + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWMgr_config_get(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWMgr *arg1 ; + SWConfig *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWMgr_config_get",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWMgr,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (SWConfig *) ((arg1)->config); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_SWConfig, 0); + return resultobj; +} + + +static PyObject *_wrap_SWMgr_sysconfig_set(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWMgr *arg1 ; + SWConfig *arg2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"OO:SWMgr_sysconfig_set",&obj0,&obj1)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWMgr,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_SWConfig,SWIG_POINTER_EXCEPTION | SWIG_POINTER_DISOWN )) == -1) return NULL; + if (arg1) (arg1)->sysconfig = arg2; + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWMgr_sysconfig_get(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWMgr *arg1 ; + SWConfig *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWMgr_sysconfig_get",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWMgr,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (SWConfig *) ((arg1)->sysconfig); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_SWConfig, 0); + return resultobj; +} + + +static PyObject *_wrap_SWMgr_Modules_set(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWMgr *arg1 ; + ModMap arg2 ; + ModMap *argp2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"OO:SWMgr_Modules_set",&obj0,&obj1)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWMgr,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + if ((SWIG_ConvertPtr(obj1,(void **) &argp2, SWIGTYPE_p_ModMap,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg2 = *argp2; + if (arg1) (arg1)->Modules = arg2; + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWMgr_Modules_get(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWMgr *arg1 ; + ModMap result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWMgr_Modules_get",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWMgr,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = ((arg1)->Modules); + + { + ModMap * resultptr; + resultptr = new ModMap((ModMap &) result); + resultobj = SWIG_NewPointerObj((void *) resultptr, SWIGTYPE_p_ModMap, 1); + } + return resultobj; +} + + +static PyObject *_wrap_SWMgr_prefixPath_set(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWMgr *arg1 ; + char *arg2 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Os:SWMgr_prefixPath_set",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWMgr,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + { + if (arg1->prefixPath) delete [] arg1->prefixPath; + arg1->prefixPath = (char *) (new char[strlen(arg2)+1]); + strcpy((char *) arg1->prefixPath,arg2); + } + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWMgr_prefixPath_get(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWMgr *arg1 ; + char *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWMgr_prefixPath_get",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWMgr,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char *) ((arg1)->prefixPath); + + resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)""); + return resultobj; +} + + +static PyObject *_wrap_SWMgr_configPath_set(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWMgr *arg1 ; + char *arg2 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Os:SWMgr_configPath_set",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWMgr,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + { + if (arg1->configPath) delete [] arg1->configPath; + arg1->configPath = (char *) (new char[strlen(arg2)+1]); + strcpy((char *) arg1->configPath,arg2); + } + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWMgr_configPath_get(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWMgr *arg1 ; + char *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWMgr_configPath_get",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWMgr,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char *) ((arg1)->configPath); + + resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)""); + return resultobj; +} + + +static PyObject *_wrap_new_SWMgr(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWConfig *arg1 = 0 ; + SWConfig *arg2 = 0 ; + bool arg3 = true ; + SWFilterMgr *arg4 = 0 ; + SWMgr *result; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + PyObject * obj2 = 0 ; + PyObject * obj3 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"|OOOO:new_SWMgr",&obj0,&obj1,&obj2,&obj3)) return NULL; + if (obj0) { + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWConfig,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + } + if (obj1) { + if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_SWConfig,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + } + if (obj2) { + arg3 = (bool) PyInt_AsLong(obj2); + if (PyErr_Occurred()) return NULL; + } + if (obj3) { + if ((SWIG_ConvertPtr(obj3,(void **) &arg4, SWIGTYPE_p_SWFilterMgr,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + } + result = (SWMgr *)new SWMgr(arg1,arg2,arg3,arg4); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_SWMgr, 1); + return resultobj; +} + + +static PyObject *_wrap_delete_SWMgr(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWMgr *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:delete_SWMgr",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWMgr,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + delete arg1; + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWMgr_Load(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWMgr *arg1 ; + signed char result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWMgr_Load",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWMgr,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (signed char)(arg1)->Load(); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_SWMgr_setGlobalOption(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWMgr *arg1 ; + char *arg2 ; + char *arg3 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Oss:SWMgr_setGlobalOption",&obj0,&arg2,&arg3)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWMgr,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->setGlobalOption((char const *)arg2,(char const *)arg3); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWMgr_getGlobalOption(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWMgr *arg1 ; + char *arg2 ; + char *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Os:SWMgr_getGlobalOption",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWMgr,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char *)(arg1)->getGlobalOption((char const *)arg2); + + resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)""); + return resultobj; +} + + +static PyObject *_wrap_SWMgr_getGlobalOptionTip(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWMgr *arg1 ; + char *arg2 ; + char *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Os:SWMgr_getGlobalOptionTip",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWMgr,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char *)(arg1)->getGlobalOptionTip((char const *)arg2); + + resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)""); + return resultobj; +} + + +static PyObject *_wrap_SWMgr_getGlobalOptions(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWMgr *arg1 ; + OptionsList result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWMgr_getGlobalOptions",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWMgr,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (arg1)->getGlobalOptions(); + + { + OptionsList * resultptr; + resultptr = new OptionsList((OptionsList &) result); + resultobj = SWIG_NewPointerObj((void *) resultptr, SWIGTYPE_p_OptionsList, 1); + } + return resultobj; +} + + +static PyObject *_wrap_SWMgr_getGlobalOptionValues(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWMgr *arg1 ; + char *arg2 ; + OptionsList result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Os:SWMgr_getGlobalOptionValues",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWMgr,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (arg1)->getGlobalOptionValues((char const *)arg2); + + { + OptionsList * resultptr; + resultptr = new OptionsList((OptionsList &) result); + resultobj = SWIG_NewPointerObj((void *) resultptr, SWIGTYPE_p_OptionsList, 1); + } + return resultobj; +} + + +static PyObject *_wrap_SWMgr_setCipherKey(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWMgr *arg1 ; + char *arg2 ; + char *arg3 ; + signed char result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Oss:SWMgr_setCipherKey",&obj0,&arg2,&arg3)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWMgr,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (signed char)(arg1)->setCipherKey((char const *)arg2,(char const *)arg3); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_SWMgr_module(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWMgr *arg1 ; + char *arg2 ; + SWModule *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Os:SWMgr_module",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWMgr,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (SWModule *)SWMgr_module(arg1,(char const *)arg2); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_SWModule, 0); + return resultobj; +} + + +static PyObject * SWMgr_swigregister(PyObject *self, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_SWMgr, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyObject *_wrap_SWModule_terminateSearch_set(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + bool arg2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"OO:SWModule_terminateSearch_set",&obj0,&obj1)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + arg2 = (bool) PyInt_AsLong(obj1); + if (PyErr_Occurred()) return NULL; + if (arg1) (arg1)->terminateSearch = arg2; + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWModule_terminateSearch_get(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + bool result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWModule_terminateSearch_get",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (bool) ((arg1)->terminateSearch); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_new_SWModule(PyObject *self, PyObject *args) { + PyObject *resultobj; + char *arg1 = 0 ; + char *arg2 = 0 ; + SWDisplay *arg3 = 0 ; + char *arg4 = 0 ; + SWTextEncoding arg5 = ENC_UNKNOWN ; + SWTextDirection arg6 = DIRECTION_LTR ; + SWTextMarkup arg7 = FMT_UNKNOWN ; + char *arg8 = 0 ; + SWModule *result; + SWTextEncoding *argp5 ; + SWTextDirection *argp6 ; + SWTextMarkup *argp7 ; + PyObject * obj2 = 0 ; + PyObject * obj4 = 0 ; + PyObject * obj5 = 0 ; + PyObject * obj6 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"|ssOsOOOs:new_SWModule",&arg1,&arg2,&obj2,&arg4,&obj4,&obj5,&obj6,&arg8)) return NULL; + if (obj2) { + if ((SWIG_ConvertPtr(obj2,(void **) &arg3, SWIGTYPE_p_SWDisplay,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + } + if (obj4) { + if ((SWIG_ConvertPtr(obj4,(void **) &argp5, SWIGTYPE_p_SWTextEncoding,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg5 = *argp5; + } + if (obj5) { + if ((SWIG_ConvertPtr(obj5,(void **) &argp6, SWIGTYPE_p_SWTextDirection,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg6 = *argp6; + } + if (obj6) { + if ((SWIG_ConvertPtr(obj6,(void **) &argp7, SWIGTYPE_p_SWTextMarkup,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg7 = *argp7; + } + result = (SWModule *)new SWModule((char const *)arg1,(char const *)arg2,arg3,arg4,arg5,arg6,arg7,(char const *)arg8); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_SWModule, 1); + return resultobj; +} + + +static PyObject *_wrap_SWModule_Error(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + char result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWModule_Error",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char)(arg1)->Error(); + + resultobj = Py_BuildValue((char*)"c",result); + return resultobj; +} + + +static PyObject *_wrap_SWModule_isUnicode(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + bool result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWModule_isUnicode",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (bool)((SWModule const *)arg1)->isUnicode(); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_SWModule_getConfig(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + ConfigEntMap *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWModule_getConfig",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + ConfigEntMap const &_result_ref = ((SWModule const *)arg1)->getConfig(); + result = (ConfigEntMap *) &_result_ref; + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_ConfigEntMap, 0); + return resultobj; +} + + +static PyObject *_wrap_SWModule_getConfigEntry(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + char *arg2 ; + char *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Os:SWModule_getConfigEntry",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char *)((SWModule const *)arg1)->getConfigEntry((char const *)arg2); + + resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)""); + return resultobj; +} + + +static PyObject *_wrap_SWModule_SetKey(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + SWKey *arg2 ; + char result; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"OO:SWModule_SetKey",&obj0,&obj1)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_SWKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char)(arg1)->SetKey((SWKey const *)arg2); + + resultobj = Py_BuildValue((char*)"c",result); + return resultobj; +} + + +static PyObject *_wrap_SWModule_Key(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + SWKey *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWModule_Key",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + SWKey &_result_ref = ((SWModule const *)arg1)->Key(); + result = (SWKey *) &_result_ref; + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_SWKey, 0); + return resultobj; +} + + +static PyObject *_wrap_SWModule_CreateKey(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + SWKey *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWModule_CreateKey",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (SWKey *)(arg1)->CreateKey(); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_SWKey, 0); + return resultobj; +} + + +static PyObject *_wrap_SWModule_KeyText(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + char *arg2 = 0 ; + char *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O|s:SWModule_KeyText",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char *)(arg1)->KeyText((char const *)arg2); + + resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)""); + return resultobj; +} + + +static PyObject *_wrap_SWModule_Display(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + char result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWModule_Display",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char)(arg1)->Display(); + + resultobj = Py_BuildValue((char*)"c",result); + return resultobj; +} + + +static PyObject *_wrap_SWModule_nullPercent(PyObject *self, PyObject *args) { + PyObject *resultobj; + char arg1 ; + void *arg2 ; + PyObject * obj1 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"cO:SWModule_nullPercent",&arg1,&obj1)) return NULL; + if ((SWIG_ConvertPtr(obj1,(void **) &arg2, 0, SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + SWModule::nullPercent(arg1,arg2); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWModule_Search(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + char *arg2 ; + int arg3 = 0 ; + int arg4 = 0 ; + SWKey *arg5 = 0 ; + bool *arg6 = 0 ; + void (*arg7)(char,void *) = &SWModule::nullPercent ; + void *arg8 = 0 ; + ListKey *result; + PyObject * obj0 = 0 ; + PyObject * obj4 = 0 ; + PyObject * obj5 = 0 ; + PyObject * obj6 = 0 ; + PyObject * obj7 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Os|iiOOOO:SWModule_Search",&obj0,&arg2,&arg3,&arg4,&obj4,&obj5,&obj6,&obj7)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + if (obj4) { + if ((SWIG_ConvertPtr(obj4,(void **) &arg5, SWIGTYPE_p_SWKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + } + if (obj5) { + if ((SWIG_ConvertPtr(obj5,(void **) &arg6, SWIGTYPE_p_bool,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + } + if (obj6) { + if ((SWIG_ConvertPtr(obj6,(void **) &arg7, SWIGTYPE_p_f_char_p_void__void,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + } + if (obj7) { + if ((SWIG_ConvertPtr(obj7,(void **) &arg8, 0, SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + } + ListKey &_result_ref = (arg1)->Search((char const *)arg2,arg3,arg4,arg5,arg6,arg7,arg8); + result = (ListKey *) &_result_ref; + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_ListKey, 0); + return resultobj; +} + + +static PyObject *_wrap_SWModule_createSearchFramework(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + signed char result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWModule_createSearchFramework",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (signed char)(arg1)->createSearchFramework(); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_SWModule_hasSearchFramework(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + bool result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWModule_hasSearchFramework",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (bool)(arg1)->hasSearchFramework(); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_SWModule_isSearchOptimallySupported(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + char *arg2 ; + int arg3 ; + int arg4 ; + SWKey *arg5 ; + bool result; + PyObject * obj0 = 0 ; + PyObject * obj4 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"OsiiO:SWModule_isSearchOptimallySupported",&obj0,&arg2,&arg3,&arg4,&obj4)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + if ((SWIG_ConvertPtr(obj4,(void **) &arg5, SWIGTYPE_p_SWKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (bool)(arg1)->isSearchOptimallySupported((char const *)arg2,arg3,arg4,arg5); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_SWModule_next(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + bool result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWModule_next",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (bool)SWModule_next(arg1); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_SWModule_prev(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + bool result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWModule_prev",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (bool)SWModule_prev(arg1); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_SWModule_inc(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + int arg2 ; + bool result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Oi:SWModule_inc",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (bool)SWModule_inc(arg1,arg2); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_SWModule_dec(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + int arg2 ; + bool result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Oi:SWModule_dec",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (bool)SWModule_dec(arg1,arg2); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_SWModule_setPosition(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + SwigValueWrapper< SW_POSITION > arg2 ; + SW_POSITION *argp2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"OO:SWModule_setPosition",&obj0,&obj1)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + if ((SWIG_ConvertPtr(obj1,(void **) &argp2, SWIGTYPE_p_SW_POSITION,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg2 = *argp2; + SWModule_setPosition(arg1,arg2); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWModule_top(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWModule_top",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + SWModule_top(arg1); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWModule_bottom(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWModule_bottom",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + SWModule_bottom(arg1); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWModule_text(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + char *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWModule_text",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char *)SWModule_text(arg1); + + resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)""); + return resultobj; +} + + +static PyObject *_wrap_SWModule_StripText(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + char *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWModule_StripText",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char *)SWModule_StripText(arg1); + + resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)""); + return resultobj; +} + + +static PyObject *_wrap_SWModule_getRawEntry(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + char *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWModule_getRawEntry",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char *)(arg1)->getRawEntry(); + + resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)""); + return resultobj; +} + + +static PyObject *_wrap_SWModule_setSkipConsecutiveLinks(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + bool arg2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"OO:SWModule_setSkipConsecutiveLinks",&obj0,&obj1)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + arg2 = (bool) PyInt_AsLong(obj1); + if (PyErr_Occurred()) return NULL; + (arg1)->setSkipConsecutiveLinks(arg2); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWModule_getSkipConsecutiveLinks(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + bool result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWModule_getSkipConsecutiveLinks",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (bool)(arg1)->getSkipConsecutiveLinks(); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_SWModule_getEntryAttributes(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + AttributeTypeList *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWModule_getEntryAttributes",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + AttributeTypeList &_result_ref = ((SWModule const *)arg1)->getEntryAttributes(); + result = (AttributeTypeList *) &_result_ref; + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_AttributeTypeList, 0); + return resultobj; +} + + +static PyObject *_wrap_SWModule_processEntryAttributes(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + bool arg2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"OO:SWModule_processEntryAttributes",&obj0,&obj1)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + arg2 = (bool) PyInt_AsLong(obj1); + if (PyErr_Occurred()) return NULL; + ((SWModule const *)arg1)->processEntryAttributes(arg2); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWModule_isProcessEntryAttributes(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + bool result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWModule_isProcessEntryAttributes",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (bool)((SWModule const *)arg1)->isProcessEntryAttributes(); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_SWModule_Name(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + char *arg2 = 0 ; + char *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O|s:SWModule_Name",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char *)(arg1)->Name((char const *)arg2); + + resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)""); + return resultobj; +} + + +static PyObject *_wrap_SWModule_Description(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + char *arg2 = 0 ; + char *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O|s:SWModule_Description",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char *)(arg1)->Description((char const *)arg2); + + resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)""); + return resultobj; +} + + +static PyObject *_wrap_SWModule_Type(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + char *arg2 = 0 ; + char *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O|s:SWModule_Type",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char *)(arg1)->Type((char const *)arg2); + + resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)""); + return resultobj; +} + + +static PyObject *_wrap_SWModule_Direction(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + signed char arg2 = -1 ; + char result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O|b:SWModule_Direction",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char)(arg1)->Direction(arg2); + + resultobj = Py_BuildValue((char*)"c",result); + return resultobj; +} + + +static PyObject *_wrap_SWModule_Encoding(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + signed char arg2 = -1 ; + char result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O|b:SWModule_Encoding",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char)(arg1)->Encoding(arg2); + + resultobj = Py_BuildValue((char*)"c",result); + return resultobj; +} + + +static PyObject *_wrap_SWModule_Markup(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + signed char arg2 = -1 ; + char result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O|b:SWModule_Markup",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char)(arg1)->Markup(arg2); + + resultobj = Py_BuildValue((char*)"c",result); + return resultobj; +} + + +static PyObject *_wrap_SWModule_Lang(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + char *arg2 = 0 ; + char *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O|s:SWModule_Lang",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char *)(arg1)->Lang((char const *)arg2); + + resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)""); + return resultobj; +} + + +static PyObject *_wrap_SWModule_isWritable(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + bool result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWModule_isWritable",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (bool)(arg1)->isWritable(); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_SWModule_createModule(PyObject *self, PyObject *args) { + PyObject *resultobj; + char *arg1 ; + signed char result; + + if(!PyArg_ParseTuple(args,(char *)"s:SWModule_createModule",&arg1)) return NULL; + result = (signed char)SWModule::createModule((char const *)arg1); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_SWModule_setEntry(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + char *arg2 ; + long arg3 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Osl:SWModule_setEntry",&obj0,&arg2,&arg3)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->setEntry((char const *)arg2,arg3); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWModule_deleteEntry(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWModule_deleteEntry",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->deleteEntry(); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWModule_write(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + char *arg2 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Os:SWModule_write",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + SWModule_write(arg1,(char const *)arg2); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWModule_writeLink(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + SWKey *arg2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"OO:SWModule_writeLink",&obj0,&obj1)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_SWKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + SWModule_writeLink(arg1,(SWKey const *)arg2); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_delete_SWModule(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWModule *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:delete_SWModule",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWModule,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + delete arg1; + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject * SWModule_swigregister(PyObject *self, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_SWModule, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyObject *_wrap_new_SW_POSITION(PyObject *self, PyObject *args) { + PyObject *resultobj; + char arg1 ; + SW_POSITION *result; + + if(!PyArg_ParseTuple(args,(char *)"c:new_SW_POSITION",&arg1)) return NULL; + result = (SW_POSITION *)new SW_POSITION(arg1); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_SW_POSITION, 1); + return resultobj; +} + + +static PyObject *_wrap_delete_SW_POSITION(PyObject *self, PyObject *args) { + PyObject *resultobj; + SW_POSITION *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:delete_SW_POSITION",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SW_POSITION,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + delete arg1; + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject * SW_POSITION_swigregister(PyObject *self, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_SW_POSITION, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyObject *_wrap_new_SWKey(PyObject *self, PyObject *args) { + PyObject *resultobj; + char *arg1 = 0 ; + SWKey *result; + + if(!PyArg_ParseTuple(args,(char *)"|s:new_SWKey",&arg1)) return NULL; + result = (SWKey *)new SWKey((char const *)arg1); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_SWKey, 1); + return resultobj; +} + + +static PyObject *_wrap_SWKey_clone(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWKey *arg1 ; + SWKey *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWKey_clone",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (SWKey *)((SWKey const *)arg1)->clone(); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_SWKey, 0); + return resultobj; +} + + +static PyObject *_wrap_SWKey_Persist(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWKey *arg1 ; + char result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWKey_Persist",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char)((SWKey const *)arg1)->Persist(); + + resultobj = Py_BuildValue((char*)"c",result); + return resultobj; +} + + +static PyObject *_wrap_SWKey_setPersist(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWKey *arg1 ; + signed char arg2 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Ob:SWKey_setPersist",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + SWKey_setPersist(arg1,arg2); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWKey_Error(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWKey *arg1 ; + char result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWKey_Error",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char)(arg1)->Error(); + + resultobj = Py_BuildValue((char*)"c",result); + return resultobj; +} + + +static PyObject *_wrap_SWKey_setText(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWKey *arg1 ; + char *arg2 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Os:SWKey_setText",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->setText((char const *)arg2); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWKey_getText(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWKey *arg1 ; + char *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWKey_getText",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char *)((SWKey const *)arg1)->getText(); + + resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)""); + return resultobj; +} + + +static PyObject *_wrap_SWKey_getShortText(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWKey *arg1 ; + char *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWKey_getShortText",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char *)((SWKey const *)arg1)->getShortText(); + + resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)""); + return resultobj; +} + + +static PyObject *_wrap_SWKey_compare(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWKey *arg1 ; + SWKey *arg2 ; + int result; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"OO:SWKey_compare",&obj0,&obj1)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_SWKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (int)(arg1)->compare((SWKey const &)*arg2); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_SWKey_equals(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWKey *arg1 ; + SWKey *arg2 ; + bool result; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"OO:SWKey_equals",&obj0,&obj1)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_SWKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (bool)(arg1)->equals((SWKey const &)*arg2); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_SWKey_decrement(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWKey *arg1 ; + int arg2 = 1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O|i:SWKey_decrement",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->decrement(arg2); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWKey_increment(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWKey *arg1 ; + int arg2 = 1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O|i:SWKey_increment",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->increment(arg2); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWKey_Traversable(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWKey *arg1 ; + char result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWKey_Traversable",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char)(arg1)->Traversable(); + + resultobj = Py_BuildValue((char*)"c",result); + return resultobj; +} + + +static PyObject *_wrap_SWKey_Index(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWKey *arg1 ; + long result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWKey_Index",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (long)((SWKey const *)arg1)->Index(); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_SWKey_next(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWKey *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWKey_next",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + SWKey_next(arg1); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWKey_prev(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWKey *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWKey_prev",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + SWKey_prev(arg1); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWKey_setKey(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWKey *arg1 ; + SWKey *arg2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"OO:SWKey_setKey",&obj0,&obj1)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_SWKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + SWKey_setKey(arg1,(SWKey const *)arg2); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_delete_SWKey(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWKey *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:delete_SWKey",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + delete arg1; + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject * SWKey_swigregister(PyObject *self, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_SWKey, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyObject *_wrap_new_VerseKey(PyObject *self, PyObject *args) { + PyObject *resultobj; + char *arg1 = 0 ; + VerseKey *result; + + if(!PyArg_ParseTuple(args,(char *)"|s:new_VerseKey",&arg1)) return NULL; + result = (VerseKey *)new VerseKey((char const *)arg1); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_VerseKey, 1); + return resultobj; +} + + +static PyObject *_wrap_delete_VerseKey(PyObject *self, PyObject *args) { + PyObject *resultobj; + VerseKey *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:delete_VerseKey",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_VerseKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + delete arg1; + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_VerseKey_clone(PyObject *self, PyObject *args) { + PyObject *resultobj; + VerseKey *arg1 ; + SWKey *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:VerseKey_clone",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_VerseKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (SWKey *)((VerseKey const *)arg1)->clone(); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_SWKey, 0); + return resultobj; +} + + +static PyObject *_wrap_VerseKey_LowerBound(PyObject *self, PyObject *args) { + PyObject *resultobj; + VerseKey *arg1 ; + VerseKey *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:VerseKey_LowerBound",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_VerseKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + VerseKey &_result_ref = ((VerseKey const *)arg1)->LowerBound(); + result = (VerseKey *) &_result_ref; + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_VerseKey, 0); + return resultobj; +} + + +static PyObject *_wrap_VerseKey_UpperBound(PyObject *self, PyObject *args) { + PyObject *resultobj; + VerseKey *arg1 ; + VerseKey *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:VerseKey_UpperBound",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_VerseKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + VerseKey &_result_ref = ((VerseKey const *)arg1)->UpperBound(); + result = (VerseKey *) &_result_ref; + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_VerseKey, 0); + return resultobj; +} + + +static PyObject *_wrap_VerseKey_ClearBounds(PyObject *self, PyObject *args) { + PyObject *resultobj; + VerseKey *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:VerseKey_ClearBounds",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_VerseKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->ClearBounds(); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_VerseKey_decrement(PyObject *self, PyObject *args) { + PyObject *resultobj; + VerseKey *arg1 ; + int arg2 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Oi:VerseKey_decrement",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_VerseKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->decrement(arg2); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_VerseKey_increment(PyObject *self, PyObject *args) { + PyObject *resultobj; + VerseKey *arg1 ; + int arg2 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Oi:VerseKey_increment",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_VerseKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->increment(arg2); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_VerseKey_Traversable(PyObject *self, PyObject *args) { + PyObject *resultobj; + VerseKey *arg1 ; + char result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:VerseKey_Traversable",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_VerseKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char)(arg1)->Traversable(); + + resultobj = Py_BuildValue((char*)"c",result); + return resultobj; +} + + +static PyObject *_wrap_VerseKey_getBookName(PyObject *self, PyObject *args) { + PyObject *resultobj; + VerseKey *arg1 ; + char *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:VerseKey_getBookName",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_VerseKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char *)((VerseKey const *)arg1)->getBookName(); + + resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)""); + return resultobj; +} + + +static PyObject *_wrap_VerseKey_getBookAbbrev(PyObject *self, PyObject *args) { + PyObject *resultobj; + VerseKey *arg1 ; + char *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:VerseKey_getBookAbbrev",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_VerseKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char *)((VerseKey const *)arg1)->getBookAbbrev(); + + resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)""); + return resultobj; +} + + +static PyObject *_wrap_VerseKey_Testament(PyObject *self, PyObject *args) { + PyObject *resultobj; + VerseKey *arg1 ; + char result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:VerseKey_Testament",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_VerseKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char)((VerseKey const *)arg1)->Testament(); + + resultobj = Py_BuildValue((char*)"c",result); + return resultobj; +} + + +static PyObject *_wrap_VerseKey_Book(PyObject *self, PyObject *args) { + PyObject *resultobj; + VerseKey *arg1 ; + char result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:VerseKey_Book",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_VerseKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char)((VerseKey const *)arg1)->Book(); + + resultobj = Py_BuildValue((char*)"c",result); + return resultobj; +} + + +static PyObject *_wrap_VerseKey_Chapter(PyObject *self, PyObject *args) { + PyObject *resultobj; + VerseKey *arg1 ; + int result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:VerseKey_Chapter",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_VerseKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (int)((VerseKey const *)arg1)->Chapter(); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_VerseKey_Verse(PyObject *self, PyObject *args) { + PyObject *resultobj; + VerseKey *arg1 ; + int result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:VerseKey_Verse",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_VerseKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (int)((VerseKey const *)arg1)->Verse(); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_VerseKey_Normalize(PyObject *self, PyObject *args) { + PyObject *resultobj; + VerseKey *arg1 ; + char arg2 = 0 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O|c:VerseKey_Normalize",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_VerseKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->Normalize(arg2); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_VerseKey_AutoNormalize(PyObject *self, PyObject *args) { + PyObject *resultobj; + VerseKey *arg1 ; + char arg2 = MAXPOS(char) ; + char result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O|c:VerseKey_AutoNormalize",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_VerseKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char)(arg1)->AutoNormalize(arg2); + + resultobj = Py_BuildValue((char*)"c",result); + return resultobj; +} + + +static PyObject *_wrap_VerseKey_Headings(PyObject *self, PyObject *args) { + PyObject *resultobj; + VerseKey *arg1 ; + char arg2 = MAXPOS(char) ; + char result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O|c:VerseKey_Headings",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_VerseKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char)(arg1)->Headings(arg2); + + resultobj = Py_BuildValue((char*)"c",result); + return resultobj; +} + + +static PyObject *_wrap_VerseKey_getOSISRef(PyObject *self, PyObject *args) { + PyObject *resultobj; + VerseKey *arg1 ; + char *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:VerseKey_getOSISRef",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_VerseKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char *)((VerseKey const *)arg1)->getOSISRef(); + + resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)""); + return resultobj; +} + + +static PyObject *_wrap_VerseKey_compare(PyObject *self, PyObject *args) { + PyObject *resultobj; + VerseKey *arg1 ; + SWKey *arg2 ; + int result; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"OO:VerseKey_compare",&obj0,&obj1)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_VerseKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_SWKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (int)(arg1)->compare((SWKey const &)*arg2); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_VerseKey__compare(PyObject *self, PyObject *args) { + PyObject *resultobj; + VerseKey *arg1 ; + VerseKey *arg2 ; + int result; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"OO:VerseKey__compare",&obj0,&obj1)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_VerseKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_VerseKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (int)(arg1)->_compare((VerseKey const &)*arg2); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_VerseKey_setLocale(PyObject *self, PyObject *args) { + PyObject *resultobj; + VerseKey *arg1 ; + char *arg2 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Os:VerseKey_setLocale",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_VerseKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->setLocale((char const *)arg2); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_VerseKey_getLocale(PyObject *self, PyObject *args) { + PyObject *resultobj; + VerseKey *arg1 ; + char *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:VerseKey_getLocale",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_VerseKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char *)((VerseKey const *)arg1)->getLocale(); + + resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)""); + return resultobj; +} + + +static PyObject * VerseKey_swigregister(PyObject *self, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_VerseKey, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyObject *_wrap_new_ListKey__SWIG_0(PyObject *self, PyObject *args) { + PyObject *resultobj; + char *arg1 = 0 ; + ListKey *result; + + if(!PyArg_ParseTuple(args,(char *)"|s:new_ListKey",&arg1)) return NULL; + result = (ListKey *)new ListKey((char const *)arg1); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_ListKey, 1); + return resultobj; +} + + +static PyObject *_wrap_new_ListKey__SWIG_1(PyObject *self, PyObject *args) { + PyObject *resultobj; + ListKey *arg1 ; + ListKey *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:new_ListKey",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_ListKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (ListKey *)new ListKey((ListKey const &)*arg1); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_ListKey, 1); + return resultobj; +} + + +static PyObject *_wrap_new_ListKey(PyObject *self, PyObject *args) { + int argc; + PyObject *argv[2]; + int ii; + + argc = PyObject_Length(args); + for (ii = 0; (ii < argc) && (ii < 1); ii++) { + argv[ii] = PyTuple_GetItem(args,ii); + } + if ((argc >= 0) && (argc <= 1)) { + int _m = 1; + int _v = 1; + if (argc > 0) { + { + _v = PyString_Check(argv[0]) ? 1 : 0; + } + _m &= _v; + } + if (_m && _v) { + return _wrap_new_ListKey__SWIG_0(self,args); + } + } + if (argc == 1) { + int _m = 1; + int _v = 1; + { + void *ptr; + if (SWIG_ConvertPtr(argv[0], (void **) &ptr, SWIGTYPE_p_ListKey, 0) == -1) { + _v = 0; + PyErr_Clear(); + }else { + _v = 1; + } + } + _m &= _v; + if (_m && _v) { + return _wrap_new_ListKey__SWIG_1(self,args); + } + } + + PyErr_SetString(PyExc_TypeError,"No matching function for overloaded 'new_ListKey'"); + return NULL; +} + + +static PyObject *_wrap_delete_ListKey(PyObject *self, PyObject *args) { + PyObject *resultobj; + ListKey *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:delete_ListKey",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_ListKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + delete arg1; + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_ListKey_clone(PyObject *self, PyObject *args) { + PyObject *resultobj; + ListKey *arg1 ; + SWKey *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:ListKey_clone",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_ListKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (SWKey *)((ListKey const *)arg1)->clone(); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_SWKey, 0); + return resultobj; +} + + +static PyObject *_wrap_ListKey_ClearList(PyObject *self, PyObject *args) { + PyObject *resultobj; + ListKey *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:ListKey_ClearList",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_ListKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->ClearList(); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_ListKey_Count(PyObject *self, PyObject *args) { + PyObject *resultobj; + ListKey *arg1 ; + int result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:ListKey_Count",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_ListKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (int)(arg1)->Count(); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_ListKey_Remove(PyObject *self, PyObject *args) { + PyObject *resultobj; + ListKey *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:ListKey_Remove",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_ListKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->Remove(); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_ListKey_SetToElement(PyObject *self, PyObject *args) { + PyObject *resultobj; + ListKey *arg1 ; + int arg2 ; + char result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Oi:ListKey_SetToElement",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_ListKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char)ListKey_SetToElement(arg1,arg2); + + resultobj = Py_BuildValue((char*)"c",result); + return resultobj; +} + + +static PyObject *_wrap_ListKey_GetElement(PyObject *self, PyObject *args) { + PyObject *resultobj; + ListKey *arg1 ; + int arg2 = -1 ; + SWKey *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O|i:ListKey_GetElement",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_ListKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (SWKey *)(arg1)->GetElement(arg2); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_SWKey, 0); + return resultobj; +} + + +static PyObject *_wrap_ListKey_add(PyObject *self, PyObject *args) { + PyObject *resultobj; + ListKey *arg1 ; + SWKey *arg2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"OO:ListKey_add",&obj0,&obj1)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_ListKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_SWKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->add((SWKey const &)*arg2); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_ListKey_copyFrom(PyObject *self, PyObject *args) { + PyObject *resultobj; + ListKey *arg1 ; + ListKey *arg2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"OO:ListKey_copyFrom",&obj0,&obj1)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_ListKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_ListKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->copyFrom((ListKey const &)*arg2); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_ListKey_setPosition(PyObject *self, PyObject *args) { + PyObject *resultobj; + ListKey *arg1 ; + SwigValueWrapper< SW_POSITION > arg2 ; + SW_POSITION *argp2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"OO:ListKey_setPosition",&obj0,&obj1)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_ListKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + if ((SWIG_ConvertPtr(obj1,(void **) &argp2, SWIGTYPE_p_SW_POSITION,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg2 = *argp2; + (arg1)->setPosition(arg2); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_ListKey_decrement(PyObject *self, PyObject *args) { + PyObject *resultobj; + ListKey *arg1 ; + int arg2 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Oi:ListKey_decrement",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_ListKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->decrement(arg2); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_ListKey_increment(PyObject *self, PyObject *args) { + PyObject *resultobj; + ListKey *arg1 ; + int arg2 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Oi:ListKey_increment",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_ListKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->increment(arg2); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_ListKey_Traversable(PyObject *self, PyObject *args) { + PyObject *resultobj; + ListKey *arg1 ; + char result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:ListKey_Traversable",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_ListKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char)(arg1)->Traversable(); + + resultobj = Py_BuildValue((char*)"c",result); + return resultobj; +} + + +static PyObject *_wrap_ListKey_Index__SWIG_0(PyObject *self, PyObject *args) { + PyObject *resultobj; + ListKey *arg1 ; + long result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:ListKey_Index",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_ListKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (long)((ListKey const *)arg1)->Index(); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_ListKey_Index__SWIG_1(PyObject *self, PyObject *args) { + PyObject *resultobj; + ListKey *arg1 ; + long arg2 ; + long result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Ol:ListKey_Index",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_ListKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (long)(arg1)->Index(arg2); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_ListKey_Index(PyObject *self, PyObject *args) { + int argc; + PyObject *argv[3]; + int ii; + + argc = PyObject_Length(args); + for (ii = 0; (ii < argc) && (ii < 2); ii++) { + argv[ii] = PyTuple_GetItem(args,ii); + } + if (argc == 1) { + int _m = 1; + int _v = 1; + { + void *ptr; + if (SWIG_ConvertPtr(argv[0], (void **) &ptr, SWIGTYPE_p_ListKey, 0) == -1) { + _v = 0; + PyErr_Clear(); + }else { + _v = 1; + } + } + _m &= _v; + if (_m && _v) { + return _wrap_ListKey_Index__SWIG_0(self,args); + } + } + if (argc == 2) { + int _m = 1; + int _v = 1; + { + void *ptr; + if (SWIG_ConvertPtr(argv[0], (void **) &ptr, SWIGTYPE_p_ListKey, 0) == -1) { + _v = 0; + PyErr_Clear(); + }else { + _v = 1; + } + } + _m &= _v; + { + _v = PyInt_Check(argv[1]) ? 1 : 0; + } + _m &= _v; + if (_m && _v) { + return _wrap_ListKey_Index__SWIG_1(self,args); + } + } + + PyErr_SetString(PyExc_TypeError,"No matching function for overloaded 'ListKey_Index'"); + return NULL; +} + + +static PyObject * ListKey_swigregister(PyObject *self, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_ListKey, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyObject *_wrap_TreeKey_getLocalName(PyObject *self, PyObject *args) { + PyObject *resultobj; + TreeKey *arg1 ; + char *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:TreeKey_getLocalName",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_TreeKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char *)(arg1)->getLocalName(); + + resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)""); + return resultobj; +} + + +static PyObject *_wrap_TreeKey_setLocalName(PyObject *self, PyObject *args) { + PyObject *resultobj; + TreeKey *arg1 ; + char *arg2 ; + char *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Os:TreeKey_setLocalName",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_TreeKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char *)(arg1)->setLocalName((char const *)arg2); + + resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)""); + return resultobj; +} + + +static PyObject *_wrap_TreeKey_getUserData(PyObject *self, PyObject *args) { + PyObject *resultobj; + TreeKey *arg1 ; + int *arg2 = 0 ; + char *result; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O|O:TreeKey_getUserData",&obj0,&obj1)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_TreeKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + if (obj1) { + if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_int,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + } + result = (char *)(arg1)->getUserData(arg2); + + resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)""); + return resultobj; +} + + +static PyObject *_wrap_TreeKey_setUserData(PyObject *self, PyObject *args) { + PyObject *resultobj; + TreeKey *arg1 ; + char *arg2 ; + int arg3 = 0 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Os|i:TreeKey_setUserData",&obj0,&arg2,&arg3)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_TreeKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->setUserData((char const *)arg2,arg3); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_TreeKey_getFullName(PyObject *self, PyObject *args) { + PyObject *resultobj; + TreeKey *arg1 ; + char *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:TreeKey_getFullName",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_TreeKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char *)((TreeKey const *)arg1)->getFullName(); + + resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)""); + return resultobj; +} + + +static PyObject *_wrap_TreeKey_root(PyObject *self, PyObject *args) { + PyObject *resultobj; + TreeKey *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:TreeKey_root",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_TreeKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->root(); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_TreeKey_parent(PyObject *self, PyObject *args) { + PyObject *resultobj; + TreeKey *arg1 ; + bool result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:TreeKey_parent",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_TreeKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (bool)(arg1)->parent(); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_TreeKey_firstChild(PyObject *self, PyObject *args) { + PyObject *resultobj; + TreeKey *arg1 ; + bool result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:TreeKey_firstChild",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_TreeKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (bool)(arg1)->firstChild(); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_TreeKey_nextSibling(PyObject *self, PyObject *args) { + PyObject *resultobj; + TreeKey *arg1 ; + bool result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:TreeKey_nextSibling",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_TreeKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (bool)(arg1)->nextSibling(); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_TreeKey_previousSibling(PyObject *self, PyObject *args) { + PyObject *resultobj; + TreeKey *arg1 ; + bool result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:TreeKey_previousSibling",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_TreeKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (bool)(arg1)->previousSibling(); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_TreeKey_hasChildren(PyObject *self, PyObject *args) { + PyObject *resultobj; + TreeKey *arg1 ; + bool result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:TreeKey_hasChildren",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_TreeKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (bool)(arg1)->hasChildren(); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_TreeKey_append(PyObject *self, PyObject *args) { + PyObject *resultobj; + TreeKey *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:TreeKey_append",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_TreeKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->append(); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_TreeKey_appendChild(PyObject *self, PyObject *args) { + PyObject *resultobj; + TreeKey *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:TreeKey_appendChild",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_TreeKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->appendChild(); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_TreeKey_insertBefore(PyObject *self, PyObject *args) { + PyObject *resultobj; + TreeKey *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:TreeKey_insertBefore",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_TreeKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->insertBefore(); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_TreeKey_remove(PyObject *self, PyObject *args) { + PyObject *resultobj; + TreeKey *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:TreeKey_remove",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_TreeKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->remove(); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_TreeKey_setOffset(PyObject *self, PyObject *args) { + PyObject *resultobj; + TreeKey *arg1 ; + unsigned long arg2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"OO:TreeKey_setOffset",&obj0,&obj1)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_TreeKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + arg2 = (unsigned long) PyInt_AsLong(obj1); + if (PyErr_Occurred()) return NULL; + (arg1)->setOffset(arg2); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_TreeKey_getOffset(PyObject *self, PyObject *args) { + PyObject *resultobj; + TreeKey *arg1 ; + unsigned long result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:TreeKey_getOffset",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_TreeKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (unsigned long)((TreeKey const *)arg1)->getOffset(); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_TreeKey_setPosition(PyObject *self, PyObject *args) { + PyObject *resultobj; + TreeKey *arg1 ; + SwigValueWrapper< SW_POSITION > arg2 ; + SW_POSITION *argp2 ; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"OO:TreeKey_setPosition",&obj0,&obj1)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_TreeKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + if ((SWIG_ConvertPtr(obj1,(void **) &argp2, SWIGTYPE_p_SW_POSITION,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg2 = *argp2; + (arg1)->setPosition(arg2); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_TreeKey_Traversable(PyObject *self, PyObject *args) { + PyObject *resultobj; + TreeKey *arg1 ; + char result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:TreeKey_Traversable",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_TreeKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char)(arg1)->Traversable(); + + resultobj = Py_BuildValue((char*)"c",result); + return resultobj; +} + + +static PyObject *_wrap_TreeKey_Index(PyObject *self, PyObject *args) { + PyObject *resultobj; + TreeKey *arg1 ; + long result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:TreeKey_Index",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_TreeKey,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (long)((TreeKey const *)arg1)->Index(); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject * TreeKey_swigregister(PyObject *self, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_TreeKey, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyObject * TreeKeyIdx_swigregister(PyObject *self, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_TreeKeyIdx, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyObject *_wrap_new_LocaleMgr(PyObject *self, PyObject *args) { + PyObject *resultobj; + char *arg1 = 0 ; + LocaleMgr *result; + + if(!PyArg_ParseTuple(args,(char *)"|s:new_LocaleMgr",&arg1)) return NULL; + result = (LocaleMgr *)new LocaleMgr((char const *)arg1); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_LocaleMgr, 1); + return resultobj; +} + + +static PyObject *_wrap_delete_LocaleMgr(PyObject *self, PyObject *args) { + PyObject *resultobj; + LocaleMgr *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:delete_LocaleMgr",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_LocaleMgr,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + delete arg1; + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_LocaleMgr_getLocale(PyObject *self, PyObject *args) { + PyObject *resultobj; + LocaleMgr *arg1 ; + char *arg2 ; + SWLocale *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Os:LocaleMgr_getLocale",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_LocaleMgr,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (SWLocale *)(arg1)->getLocale((char const *)arg2); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_SWLocale, 0); + return resultobj; +} + + +static PyObject *_wrap_LocaleMgr_getAvailableLocales(PyObject *self, PyObject *args) { + PyObject *resultobj; + LocaleMgr *arg1 ; + list result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:LocaleMgr_getAvailableLocales",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_LocaleMgr,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (arg1)->getAvailableLocales(); + + { + list * resultptr; + resultptr = new list((list &) result); + resultobj = SWIG_NewPointerObj((void *) resultptr, SWIGTYPE_p_listTstring_t, 1); + } + return resultobj; +} + + +static PyObject *_wrap_LocaleMgr_getDefaultLocaleName(PyObject *self, PyObject *args) { + PyObject *resultobj; + LocaleMgr *arg1 ; + char *result; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:LocaleMgr_getDefaultLocaleName",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_LocaleMgr,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char *)(arg1)->getDefaultLocaleName(); + + resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)""); + return resultobj; +} + + +static PyObject *_wrap_LocaleMgr_setDefaultLocaleName(PyObject *self, PyObject *args) { + PyObject *resultobj; + LocaleMgr *arg1 ; + char *arg2 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"Os:LocaleMgr_setDefaultLocaleName",&obj0,&arg2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_LocaleMgr,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->setDefaultLocaleName((char const *)arg2); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_LocaleMgr_systemLocaleMgr(PyObject *self, PyObject *args) { + PyObject *resultobj; + LocaleMgr *result; + + if(!PyArg_ParseTuple(args,(char *)":LocaleMgr_systemLocaleMgr")) return NULL; + result = (LocaleMgr *)LocaleMgr_systemLocaleMgr(); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_LocaleMgr, 0); + return resultobj; +} + + +static PyObject * LocaleMgr_swigregister(PyObject *self, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_LocaleMgr, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyObject * SWFilterMgr_swigregister(PyObject *self, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_SWFilterMgr, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyObject *_wrap_new_SWText(PyObject *self, PyObject *args) { + PyObject *resultobj; + char *arg1 = 0 ; + char *arg2 = 0 ; + SWDisplay *arg3 = 0 ; + SWTextEncoding arg4 = ENC_UNKNOWN ; + SWTextDirection arg5 = DIRECTION_LTR ; + SWTextMarkup arg6 = FMT_UNKNOWN ; + char *arg7 = 0 ; + SWText *result; + SWTextEncoding *argp4 ; + SWTextDirection *argp5 ; + SWTextMarkup *argp6 ; + PyObject * obj2 = 0 ; + PyObject * obj3 = 0 ; + PyObject * obj4 = 0 ; + PyObject * obj5 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"|ssOOOOs:new_SWText",&arg1,&arg2,&obj2,&obj3,&obj4,&obj5,&arg7)) return NULL; + if (obj2) { + if ((SWIG_ConvertPtr(obj2,(void **) &arg3, SWIGTYPE_p_SWDisplay,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + } + if (obj3) { + if ((SWIG_ConvertPtr(obj3,(void **) &argp4, SWIGTYPE_p_SWTextEncoding,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg4 = *argp4; + } + if (obj4) { + if ((SWIG_ConvertPtr(obj4,(void **) &argp5, SWIGTYPE_p_SWTextDirection,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg5 = *argp5; + } + if (obj5) { + if ((SWIG_ConvertPtr(obj5,(void **) &argp6, SWIGTYPE_p_SWTextMarkup,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg6 = *argp6; + } + result = (SWText *)new SWText((char const *)arg1,(char const *)arg2,arg3,arg4,arg5,arg6,(char const *)arg7); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_SWText, 1); + return resultobj; +} + + +static PyObject *_wrap_delete_SWText(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWText *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:delete_SWText",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWText,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + delete arg1; + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject * SWText_swigregister(PyObject *self, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_SWText, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyObject *_wrap_new_RawText(PyObject *self, PyObject *args) { + PyObject *resultobj; + char *arg1 ; + char *arg2 = 0 ; + char *arg3 = 0 ; + SWDisplay *arg4 = 0 ; + SWTextEncoding arg5 = ENC_UNKNOWN ; + SWTextDirection arg6 = DIRECTION_LTR ; + SWTextMarkup arg7 = FMT_UNKNOWN ; + char *arg8 = 0 ; + RawText *result; + SWTextEncoding *argp5 ; + SWTextDirection *argp6 ; + SWTextMarkup *argp7 ; + PyObject * obj3 = 0 ; + PyObject * obj4 = 0 ; + PyObject * obj5 = 0 ; + PyObject * obj6 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"s|ssOOOOs:new_RawText",&arg1,&arg2,&arg3,&obj3,&obj4,&obj5,&obj6,&arg8)) return NULL; + if (obj3) { + if ((SWIG_ConvertPtr(obj3,(void **) &arg4, SWIGTYPE_p_SWDisplay,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + } + if (obj4) { + if ((SWIG_ConvertPtr(obj4,(void **) &argp5, SWIGTYPE_p_SWTextEncoding,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg5 = *argp5; + } + if (obj5) { + if ((SWIG_ConvertPtr(obj5,(void **) &argp6, SWIGTYPE_p_SWTextDirection,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg6 = *argp6; + } + if (obj6) { + if ((SWIG_ConvertPtr(obj6,(void **) &argp7, SWIGTYPE_p_SWTextMarkup,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg7 = *argp7; + } + result = (RawText *)new RawText((char const *)arg1,(char const *)arg2,(char const *)arg3,arg4,arg5,arg6,arg7,(char const *)arg8); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_RawText, 1); + return resultobj; +} + + +static PyObject *_wrap_RawText_createModule(PyObject *self, PyObject *args) { + PyObject *resultobj; + char *arg1 ; + char result; + + if(!PyArg_ParseTuple(args,(char *)"s:RawText_createModule",&arg1)) return NULL; + result = (char)RawText::createModule((char const *)arg1); + + resultobj = Py_BuildValue((char*)"c",result); + return resultobj; +} + + +static PyObject *_wrap_delete_RawText(PyObject *self, PyObject *args) { + PyObject *resultobj; + RawText *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:delete_RawText",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_RawText,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + delete arg1; + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject * RawText_swigregister(PyObject *self, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_RawText, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyObject *_wrap_new_zText(PyObject *self, PyObject *args) { + PyObject *resultobj; + char *arg1 ; + char *arg2 = 0 ; + char *arg3 = 0 ; + int arg4 = CHAPTERBLOCKS ; + SWCompress *arg5 = 0 ; + SWDisplay *arg6 = 0 ; + SWTextEncoding arg7 = ENC_UNKNOWN ; + SWTextDirection arg8 = DIRECTION_LTR ; + SWTextMarkup arg9 = FMT_UNKNOWN ; + char *arg10 = 0 ; + zText *result; + SWTextEncoding *argp7 ; + SWTextDirection *argp8 ; + SWTextMarkup *argp9 ; + PyObject * obj4 = 0 ; + PyObject * obj5 = 0 ; + PyObject * obj6 = 0 ; + PyObject * obj7 = 0 ; + PyObject * obj8 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"s|ssiOOOOOs:new_zText",&arg1,&arg2,&arg3,&arg4,&obj4,&obj5,&obj6,&obj7,&obj8,&arg10)) return NULL; + if (obj4) { + if ((SWIG_ConvertPtr(obj4,(void **) &arg5, SWIGTYPE_p_SWCompress,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + } + if (obj5) { + if ((SWIG_ConvertPtr(obj5,(void **) &arg6, SWIGTYPE_p_SWDisplay,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + } + if (obj6) { + if ((SWIG_ConvertPtr(obj6,(void **) &argp7, SWIGTYPE_p_SWTextEncoding,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg7 = *argp7; + } + if (obj7) { + if ((SWIG_ConvertPtr(obj7,(void **) &argp8, SWIGTYPE_p_SWTextDirection,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg8 = *argp8; + } + if (obj8) { + if ((SWIG_ConvertPtr(obj8,(void **) &argp9, SWIGTYPE_p_SWTextMarkup,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg9 = *argp9; + } + result = (zText *)new zText((char const *)arg1,(char const *)arg2,(char const *)arg3,arg4,arg5,arg6,arg7,arg8,arg9,(char const *)arg10); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_zText, 1); + return resultobj; +} + + +static PyObject *_wrap_delete_zText(PyObject *self, PyObject *args) { + PyObject *resultobj; + zText *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:delete_zText",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_zText,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + delete arg1; + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_zText_createModule(PyObject *self, PyObject *args) { + PyObject *resultobj; + char *arg1 ; + int arg2 ; + char result; + + if(!PyArg_ParseTuple(args,(char *)"si:zText_createModule",&arg1,&arg2)) return NULL; + result = (char)zText::createModule((char const *)arg1,arg2); + + resultobj = Py_BuildValue((char*)"c",result); + return resultobj; +} + + +static PyObject * zText_swigregister(PyObject *self, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_zText, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyObject * SWCom_swigregister(PyObject *self, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_SWCom, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyObject * RawCom_swigregister(PyObject *self, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_RawCom, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyObject * zCom_swigregister(PyObject *self, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_zCom, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyObject * SWGenBook_swigregister(PyObject *self, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_SWGenBook, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyObject *_wrap_new_RawGenBook(PyObject *self, PyObject *args) { + PyObject *resultobj; + char *arg1 ; + char *arg2 = 0 ; + char *arg3 = 0 ; + SWDisplay *arg4 = 0 ; + SWTextEncoding arg5 = ENC_UNKNOWN ; + SWTextDirection arg6 = DIRECTION_LTR ; + SWTextMarkup arg7 = FMT_UNKNOWN ; + char *arg8 = 0 ; + RawGenBook *result; + SWTextEncoding *argp5 ; + SWTextDirection *argp6 ; + SWTextMarkup *argp7 ; + PyObject * obj3 = 0 ; + PyObject * obj4 = 0 ; + PyObject * obj5 = 0 ; + PyObject * obj6 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"s|ssOOOOs:new_RawGenBook",&arg1,&arg2,&arg3,&obj3,&obj4,&obj5,&obj6,&arg8)) return NULL; + if (obj3) { + if ((SWIG_ConvertPtr(obj3,(void **) &arg4, SWIGTYPE_p_SWDisplay,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + } + if (obj4) { + if ((SWIG_ConvertPtr(obj4,(void **) &argp5, SWIGTYPE_p_SWTextEncoding,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg5 = *argp5; + } + if (obj5) { + if ((SWIG_ConvertPtr(obj5,(void **) &argp6, SWIGTYPE_p_SWTextDirection,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg6 = *argp6; + } + if (obj6) { + if ((SWIG_ConvertPtr(obj6,(void **) &argp7, SWIGTYPE_p_SWTextMarkup,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg7 = *argp7; + } + result = (RawGenBook *)new RawGenBook((char const *)arg1,(char const *)arg2,(char const *)arg3,arg4,arg5,arg6,arg7,(char const *)arg8); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_RawGenBook, 1); + return resultobj; +} + + +static PyObject *_wrap_delete_RawGenBook(PyObject *self, PyObject *args) { + PyObject *resultobj; + RawGenBook *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:delete_RawGenBook",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_RawGenBook,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + delete arg1; + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_RawGenBook_createModule(PyObject *self, PyObject *args) { + PyObject *resultobj; + char *arg1 ; + char result; + + if(!PyArg_ParseTuple(args,(char *)"s:RawGenBook_createModule",&arg1)) return NULL; + result = (char)RawGenBook::createModule((char const *)arg1); + + resultobj = Py_BuildValue((char*)"c",result); + return resultobj; +} + + +static PyObject * RawGenBook_swigregister(PyObject *self, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_RawGenBook, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyObject *_wrap_new_SWLD(PyObject *self, PyObject *args) { + PyObject *resultobj; + char *arg1 = 0 ; + char *arg2 = 0 ; + SWDisplay *arg3 = 0 ; + SWTextEncoding arg4 = ENC_UNKNOWN ; + SWTextDirection arg5 = DIRECTION_LTR ; + SWTextMarkup arg6 = FMT_UNKNOWN ; + char *arg7 = 0 ; + SWLD *result; + SWTextEncoding *argp4 ; + SWTextDirection *argp5 ; + SWTextMarkup *argp6 ; + PyObject * obj2 = 0 ; + PyObject * obj3 = 0 ; + PyObject * obj4 = 0 ; + PyObject * obj5 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"|ssOOOOs:new_SWLD",&arg1,&arg2,&obj2,&obj3,&obj4,&obj5,&arg7)) return NULL; + if (obj2) { + if ((SWIG_ConvertPtr(obj2,(void **) &arg3, SWIGTYPE_p_SWDisplay,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + } + if (obj3) { + if ((SWIG_ConvertPtr(obj3,(void **) &argp4, SWIGTYPE_p_SWTextEncoding,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg4 = *argp4; + } + if (obj4) { + if ((SWIG_ConvertPtr(obj4,(void **) &argp5, SWIGTYPE_p_SWTextDirection,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg5 = *argp5; + } + if (obj5) { + if ((SWIG_ConvertPtr(obj5,(void **) &argp6, SWIGTYPE_p_SWTextMarkup,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg6 = *argp6; + } + result = (SWLD *)new SWLD((char const *)arg1,(char const *)arg2,arg3,arg4,arg5,arg6,(char const *)arg7); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_SWLD, 1); + return resultobj; +} + + +static PyObject *_wrap_delete_SWLD(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWLD *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:delete_SWLD",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWLD,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + delete arg1; + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject * SWLD_swigregister(PyObject *self, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_SWLD, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyObject *_wrap_new_RawLD(PyObject *self, PyObject *args) { + PyObject *resultobj; + char *arg1 ; + char *arg2 = 0 ; + char *arg3 = 0 ; + SWDisplay *arg4 = 0 ; + SWTextEncoding arg5 = ENC_UNKNOWN ; + SWTextDirection arg6 = DIRECTION_LTR ; + SWTextMarkup arg7 = FMT_UNKNOWN ; + char *arg8 = 0 ; + RawLD *result; + SWTextEncoding *argp5 ; + SWTextDirection *argp6 ; + SWTextMarkup *argp7 ; + PyObject * obj3 = 0 ; + PyObject * obj4 = 0 ; + PyObject * obj5 = 0 ; + PyObject * obj6 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"s|ssOOOOs:new_RawLD",&arg1,&arg2,&arg3,&obj3,&obj4,&obj5,&obj6,&arg8)) return NULL; + if (obj3) { + if ((SWIG_ConvertPtr(obj3,(void **) &arg4, SWIGTYPE_p_SWDisplay,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + } + if (obj4) { + if ((SWIG_ConvertPtr(obj4,(void **) &argp5, SWIGTYPE_p_SWTextEncoding,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg5 = *argp5; + } + if (obj5) { + if ((SWIG_ConvertPtr(obj5,(void **) &argp6, SWIGTYPE_p_SWTextDirection,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg6 = *argp6; + } + if (obj6) { + if ((SWIG_ConvertPtr(obj6,(void **) &argp7, SWIGTYPE_p_SWTextMarkup,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg7 = *argp7; + } + result = (RawLD *)new RawLD((char const *)arg1,(char const *)arg2,(char const *)arg3,arg4,arg5,arg6,arg7,(char const *)arg8); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_RawLD, 1); + return resultobj; +} + + +static PyObject *_wrap_delete_RawLD(PyObject *self, PyObject *args) { + PyObject *resultobj; + RawLD *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:delete_RawLD",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_RawLD,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + delete arg1; + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_RawLD_createModule(PyObject *self, PyObject *args) { + PyObject *resultobj; + char *arg1 ; + char result; + + if(!PyArg_ParseTuple(args,(char *)"s:RawLD_createModule",&arg1)) return NULL; + result = (char)RawLD::createModule((char const *)arg1); + + resultobj = Py_BuildValue((char*)"c",result); + return resultobj; +} + + +static PyObject * RawLD_swigregister(PyObject *self, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_RawLD, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyObject *_wrap_new_RawLD4(PyObject *self, PyObject *args) { + PyObject *resultobj; + char *arg1 ; + char *arg2 = 0 ; + char *arg3 = 0 ; + SWDisplay *arg4 = 0 ; + SWTextEncoding arg5 = ENC_UNKNOWN ; + SWTextDirection arg6 = DIRECTION_LTR ; + SWTextMarkup arg7 = FMT_UNKNOWN ; + char *arg8 = 0 ; + RawLD4 *result; + SWTextEncoding *argp5 ; + SWTextDirection *argp6 ; + SWTextMarkup *argp7 ; + PyObject * obj3 = 0 ; + PyObject * obj4 = 0 ; + PyObject * obj5 = 0 ; + PyObject * obj6 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"s|ssOOOOs:new_RawLD4",&arg1,&arg2,&arg3,&obj3,&obj4,&obj5,&obj6,&arg8)) return NULL; + if (obj3) { + if ((SWIG_ConvertPtr(obj3,(void **) &arg4, SWIGTYPE_p_SWDisplay,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + } + if (obj4) { + if ((SWIG_ConvertPtr(obj4,(void **) &argp5, SWIGTYPE_p_SWTextEncoding,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg5 = *argp5; + } + if (obj5) { + if ((SWIG_ConvertPtr(obj5,(void **) &argp6, SWIGTYPE_p_SWTextDirection,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg6 = *argp6; + } + if (obj6) { + if ((SWIG_ConvertPtr(obj6,(void **) &argp7, SWIGTYPE_p_SWTextMarkup,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg7 = *argp7; + } + result = (RawLD4 *)new RawLD4((char const *)arg1,(char const *)arg2,(char const *)arg3,arg4,arg5,arg6,arg7,(char const *)arg8); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_RawLD4, 1); + return resultobj; +} + + +static PyObject *_wrap_delete_RawLD4(PyObject *self, PyObject *args) { + PyObject *resultobj; + RawLD4 *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:delete_RawLD4",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_RawLD4,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + delete arg1; + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_RawLD4_createModule(PyObject *self, PyObject *args) { + PyObject *resultobj; + char *arg1 ; + char result; + + if(!PyArg_ParseTuple(args,(char *)"s:RawLD4_createModule",&arg1)) return NULL; + result = (char)RawLD4::createModule((char const *)arg1); + + resultobj = Py_BuildValue((char*)"c",result); + return resultobj; +} + + +static PyObject * RawLD4_swigregister(PyObject *self, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_RawLD4, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyObject *_wrap_new_zLD(PyObject *self, PyObject *args) { + PyObject *resultobj; + char *arg1 ; + char *arg2 = 0 ; + char *arg3 = 0 ; + long arg4 = 200 ; + SWCompress *arg5 = 0 ; + SWDisplay *arg6 = 0 ; + SWTextEncoding arg7 = ENC_UNKNOWN ; + SWTextDirection arg8 = DIRECTION_LTR ; + SWTextMarkup arg9 = FMT_UNKNOWN ; + char *arg10 = 0 ; + zLD *result; + SWTextEncoding *argp7 ; + SWTextDirection *argp8 ; + SWTextMarkup *argp9 ; + PyObject * obj4 = 0 ; + PyObject * obj5 = 0 ; + PyObject * obj6 = 0 ; + PyObject * obj7 = 0 ; + PyObject * obj8 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"s|sslOOOOOs:new_zLD",&arg1,&arg2,&arg3,&arg4,&obj4,&obj5,&obj6,&obj7,&obj8,&arg10)) return NULL; + if (obj4) { + if ((SWIG_ConvertPtr(obj4,(void **) &arg5, SWIGTYPE_p_SWCompress,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + } + if (obj5) { + if ((SWIG_ConvertPtr(obj5,(void **) &arg6, SWIGTYPE_p_SWDisplay,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + } + if (obj6) { + if ((SWIG_ConvertPtr(obj6,(void **) &argp7, SWIGTYPE_p_SWTextEncoding,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg7 = *argp7; + } + if (obj7) { + if ((SWIG_ConvertPtr(obj7,(void **) &argp8, SWIGTYPE_p_SWTextDirection,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg8 = *argp8; + } + if (obj8) { + if ((SWIG_ConvertPtr(obj8,(void **) &argp9, SWIGTYPE_p_SWTextMarkup,SWIG_POINTER_EXCEPTION) == -1)) return NULL; + arg9 = *argp9; + } + result = (zLD *)new zLD((char const *)arg1,(char const *)arg2,(char const *)arg3,arg4,arg5,arg6,arg7,arg8,arg9,(char const *)arg10); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_zLD, 1); + return resultobj; +} + + +static PyObject *_wrap_delete_zLD(PyObject *self, PyObject *args) { + PyObject *resultobj; + zLD *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:delete_zLD",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_zLD,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + delete arg1; + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_zLD_createModule(PyObject *self, PyObject *args) { + PyObject *resultobj; + char *arg1 ; + char result; + + if(!PyArg_ParseTuple(args,(char *)"s:zLD_createModule",&arg1)) return NULL; + result = (char)zLD::createModule((char const *)arg1); + + resultobj = Py_BuildValue((char*)"c",result); + return resultobj; +} + + +static PyObject * zLD_swigregister(PyObject *self, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_zLD, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyObject *_wrap_new_SWCompress(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWCompress *result; + + if(!PyArg_ParseTuple(args,(char *)":new_SWCompress")) return NULL; + result = (SWCompress *)new SWCompress(); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_SWCompress, 1); + return resultobj; +} + + +static PyObject *_wrap_delete_SWCompress(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWCompress *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:delete_SWCompress",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWCompress,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + delete arg1; + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWCompress_Buf(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWCompress *arg1 ; + char *arg2 = 0 ; + unsigned long *arg3 = 0 ; + char *result; + PyObject * obj0 = 0 ; + PyObject * obj2 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O|sO:SWCompress_Buf",&obj0,&arg2,&obj2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWCompress,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + if (obj2) { + if ((SWIG_ConvertPtr(obj2,(void **) &arg3, SWIGTYPE_p_unsigned_long,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + } + result = (char *)(arg1)->Buf((char const *)arg2,arg3); + + resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)""); + return resultobj; +} + + +static PyObject *_wrap_SWCompress_zBuf(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWCompress *arg1 ; + unsigned long *arg2 ; + char *arg3 = 0 ; + char *result; + PyObject * obj0 = 0 ; + PyObject * obj1 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"OO|s:SWCompress_zBuf",&obj0,&obj1,&arg3)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWCompress,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + if ((SWIG_ConvertPtr(obj1,(void **) &arg2, SWIGTYPE_p_unsigned_long,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + result = (char *)(arg1)->zBuf(arg2,arg3); + + resultobj = result ? PyString_FromString(result) : Py_BuildValue((char*)""); + return resultobj; +} + + +static PyObject *_wrap_SWCompress_GetChars(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWCompress *arg1 ; + char *arg2 ; + unsigned long arg3 ; + unsigned long result; + PyObject * obj0 = 0 ; + PyObject * obj2 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"OsO:SWCompress_GetChars",&obj0,&arg2,&obj2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWCompress,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + arg3 = (unsigned long) PyInt_AsLong(obj2); + if (PyErr_Occurred()) return NULL; + result = (unsigned long)(arg1)->GetChars(arg2,arg3); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_SWCompress_SendChars(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWCompress *arg1 ; + char *arg2 ; + unsigned long arg3 ; + unsigned long result; + PyObject * obj0 = 0 ; + PyObject * obj2 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"OsO:SWCompress_SendChars",&obj0,&arg2,&obj2)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWCompress,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + arg3 = (unsigned long) PyInt_AsLong(obj2); + if (PyErr_Occurred()) return NULL; + result = (unsigned long)(arg1)->SendChars(arg2,arg3); + + resultobj = PyInt_FromLong((long)result); + return resultobj; +} + + +static PyObject *_wrap_SWCompress_Encode(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWCompress *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWCompress_Encode",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWCompress,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->Encode(); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_SWCompress_Decode(PyObject *self, PyObject *args) { + PyObject *resultobj; + SWCompress *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:SWCompress_Decode",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_SWCompress,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->Decode(); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject * SWCompress_swigregister(PyObject *self, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_SWCompress, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyObject *_wrap_new_LZSSCompress(PyObject *self, PyObject *args) { + PyObject *resultobj; + LZSSCompress *result; + + if(!PyArg_ParseTuple(args,(char *)":new_LZSSCompress")) return NULL; + result = (LZSSCompress *)new LZSSCompress(); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_LZSSCompress, 1); + return resultobj; +} + + +static PyObject *_wrap_delete_LZSSCompress(PyObject *self, PyObject *args) { + PyObject *resultobj; + LZSSCompress *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:delete_LZSSCompress",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_LZSSCompress,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + delete arg1; + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_LZSSCompress_Encode(PyObject *self, PyObject *args) { + PyObject *resultobj; + LZSSCompress *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:LZSSCompress_Encode",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_LZSSCompress,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->Encode(); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_LZSSCompress_Decode(PyObject *self, PyObject *args) { + PyObject *resultobj; + LZSSCompress *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:LZSSCompress_Decode",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_LZSSCompress,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->Decode(); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject * LZSSCompress_swigregister(PyObject *self, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_LZSSCompress, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyObject *_wrap_new_ZipCompress(PyObject *self, PyObject *args) { + PyObject *resultobj; + ZipCompress *result; + + if(!PyArg_ParseTuple(args,(char *)":new_ZipCompress")) return NULL; + result = (ZipCompress *)new ZipCompress(); + + resultobj = SWIG_NewPointerObj((void *) result, SWIGTYPE_p_ZipCompress, 1); + return resultobj; +} + + +static PyObject *_wrap_delete_ZipCompress(PyObject *self, PyObject *args) { + PyObject *resultobj; + ZipCompress *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:delete_ZipCompress",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_ZipCompress,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + delete arg1; + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_ZipCompress_Encode(PyObject *self, PyObject *args) { + PyObject *resultobj; + ZipCompress *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:ZipCompress_Encode",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_ZipCompress,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->Encode(); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject *_wrap_ZipCompress_Decode(PyObject *self, PyObject *args) { + PyObject *resultobj; + ZipCompress *arg1 ; + PyObject * obj0 = 0 ; + + if(!PyArg_ParseTuple(args,(char *)"O:ZipCompress_Decode",&obj0)) return NULL; + if ((SWIG_ConvertPtr(obj0,(void **) &arg1, SWIGTYPE_p_ZipCompress,SWIG_POINTER_EXCEPTION | 0 )) == -1) return NULL; + (arg1)->Decode(); + + Py_INCREF(Py_None); resultobj = Py_None; + return resultobj; +} + + +static PyObject * ZipCompress_swigregister(PyObject *self, PyObject *args) { + PyObject *obj; + if (!PyArg_ParseTuple(args,(char*)"O", &obj)) return NULL; + SWIG_TypeClientData(SWIGTYPE_p_ZipCompress, obj); + Py_INCREF(obj); + return Py_BuildValue((char *)""); +} +static PyMethodDef SwigMethods[] = { + { (char *)"SWConfig_filename_set", _wrap_SWConfig_filename_set, METH_VARARGS }, + { (char *)"SWConfig_filename_get", _wrap_SWConfig_filename_get, METH_VARARGS }, + { (char *)"SWConfig_Sections_set", _wrap_SWConfig_Sections_set, METH_VARARGS }, + { (char *)"SWConfig_Sections_get", _wrap_SWConfig_Sections_get, METH_VARARGS }, + { (char *)"new_SWConfig", _wrap_new_SWConfig, METH_VARARGS }, + { (char *)"delete_SWConfig", _wrap_delete_SWConfig, METH_VARARGS }, + { (char *)"SWConfig_Load", _wrap_SWConfig_Load, METH_VARARGS }, + { (char *)"SWConfig_Save", _wrap_SWConfig_Save, METH_VARARGS }, + { (char *)"SWConfig_set", _wrap_SWConfig_set, METH_VARARGS }, + { (char *)"SWConfig_get", _wrap_SWConfig_get, METH_VARARGS }, + { (char *)"SWConfig_swigregister", SWConfig_swigregister, METH_VARARGS }, + { (char *)"SWMgr_findConfig", _wrap_SWMgr_findConfig, METH_VARARGS }, + { (char *)"SWMgr_config_set", _wrap_SWMgr_config_set, METH_VARARGS }, + { (char *)"SWMgr_config_get", _wrap_SWMgr_config_get, METH_VARARGS }, + { (char *)"SWMgr_sysconfig_set", _wrap_SWMgr_sysconfig_set, METH_VARARGS }, + { (char *)"SWMgr_sysconfig_get", _wrap_SWMgr_sysconfig_get, METH_VARARGS }, + { (char *)"SWMgr_Modules_set", _wrap_SWMgr_Modules_set, METH_VARARGS }, + { (char *)"SWMgr_Modules_get", _wrap_SWMgr_Modules_get, METH_VARARGS }, + { (char *)"SWMgr_prefixPath_set", _wrap_SWMgr_prefixPath_set, METH_VARARGS }, + { (char *)"SWMgr_prefixPath_get", _wrap_SWMgr_prefixPath_get, METH_VARARGS }, + { (char *)"SWMgr_configPath_set", _wrap_SWMgr_configPath_set, METH_VARARGS }, + { (char *)"SWMgr_configPath_get", _wrap_SWMgr_configPath_get, METH_VARARGS }, + { (char *)"new_SWMgr", _wrap_new_SWMgr, METH_VARARGS }, + { (char *)"delete_SWMgr", _wrap_delete_SWMgr, METH_VARARGS }, + { (char *)"SWMgr_Load", _wrap_SWMgr_Load, METH_VARARGS }, + { (char *)"SWMgr_setGlobalOption", _wrap_SWMgr_setGlobalOption, METH_VARARGS }, + { (char *)"SWMgr_getGlobalOption", _wrap_SWMgr_getGlobalOption, METH_VARARGS }, + { (char *)"SWMgr_getGlobalOptionTip", _wrap_SWMgr_getGlobalOptionTip, METH_VARARGS }, + { (char *)"SWMgr_getGlobalOptions", _wrap_SWMgr_getGlobalOptions, METH_VARARGS }, + { (char *)"SWMgr_getGlobalOptionValues", _wrap_SWMgr_getGlobalOptionValues, METH_VARARGS }, + { (char *)"SWMgr_setCipherKey", _wrap_SWMgr_setCipherKey, METH_VARARGS }, + { (char *)"SWMgr_module", _wrap_SWMgr_module, METH_VARARGS }, + { (char *)"SWMgr_swigregister", SWMgr_swigregister, METH_VARARGS }, + { (char *)"SWModule_terminateSearch_set", _wrap_SWModule_terminateSearch_set, METH_VARARGS }, + { (char *)"SWModule_terminateSearch_get", _wrap_SWModule_terminateSearch_get, METH_VARARGS }, + { (char *)"new_SWModule", _wrap_new_SWModule, METH_VARARGS }, + { (char *)"SWModule_Error", _wrap_SWModule_Error, METH_VARARGS }, + { (char *)"SWModule_isUnicode", _wrap_SWModule_isUnicode, METH_VARARGS }, + { (char *)"SWModule_getConfig", _wrap_SWModule_getConfig, METH_VARARGS }, + { (char *)"SWModule_getConfigEntry", _wrap_SWModule_getConfigEntry, METH_VARARGS }, + { (char *)"SWModule_SetKey", _wrap_SWModule_SetKey, METH_VARARGS }, + { (char *)"SWModule_Key", _wrap_SWModule_Key, METH_VARARGS }, + { (char *)"SWModule_CreateKey", _wrap_SWModule_CreateKey, METH_VARARGS }, + { (char *)"SWModule_KeyText", _wrap_SWModule_KeyText, METH_VARARGS }, + { (char *)"SWModule_Display", _wrap_SWModule_Display, METH_VARARGS }, + { (char *)"SWModule_nullPercent", _wrap_SWModule_nullPercent, METH_VARARGS }, + { (char *)"SWModule_Search", _wrap_SWModule_Search, METH_VARARGS }, + { (char *)"SWModule_createSearchFramework", _wrap_SWModule_createSearchFramework, METH_VARARGS }, + { (char *)"SWModule_hasSearchFramework", _wrap_SWModule_hasSearchFramework, METH_VARARGS }, + { (char *)"SWModule_isSearchOptimallySupported", _wrap_SWModule_isSearchOptimallySupported, METH_VARARGS }, + { (char *)"SWModule_next", _wrap_SWModule_next, METH_VARARGS }, + { (char *)"SWModule_prev", _wrap_SWModule_prev, METH_VARARGS }, + { (char *)"SWModule_inc", _wrap_SWModule_inc, METH_VARARGS }, + { (char *)"SWModule_dec", _wrap_SWModule_dec, METH_VARARGS }, + { (char *)"SWModule_setPosition", _wrap_SWModule_setPosition, METH_VARARGS }, + { (char *)"SWModule_top", _wrap_SWModule_top, METH_VARARGS }, + { (char *)"SWModule_bottom", _wrap_SWModule_bottom, METH_VARARGS }, + { (char *)"SWModule_text", _wrap_SWModule_text, METH_VARARGS }, + { (char *)"SWModule_StripText", _wrap_SWModule_StripText, METH_VARARGS }, + { (char *)"SWModule_getRawEntry", _wrap_SWModule_getRawEntry, METH_VARARGS }, + { (char *)"SWModule_setSkipConsecutiveLinks", _wrap_SWModule_setSkipConsecutiveLinks, METH_VARARGS }, + { (char *)"SWModule_getSkipConsecutiveLinks", _wrap_SWModule_getSkipConsecutiveLinks, METH_VARARGS }, + { (char *)"SWModule_getEntryAttributes", _wrap_SWModule_getEntryAttributes, METH_VARARGS }, + { (char *)"SWModule_processEntryAttributes", _wrap_SWModule_processEntryAttributes, METH_VARARGS }, + { (char *)"SWModule_isProcessEntryAttributes", _wrap_SWModule_isProcessEntryAttributes, METH_VARARGS }, + { (char *)"SWModule_Name", _wrap_SWModule_Name, METH_VARARGS }, + { (char *)"SWModule_Description", _wrap_SWModule_Description, METH_VARARGS }, + { (char *)"SWModule_Type", _wrap_SWModule_Type, METH_VARARGS }, + { (char *)"SWModule_Direction", _wrap_SWModule_Direction, METH_VARARGS }, + { (char *)"SWModule_Encoding", _wrap_SWModule_Encoding, METH_VARARGS }, + { (char *)"SWModule_Markup", _wrap_SWModule_Markup, METH_VARARGS }, + { (char *)"SWModule_Lang", _wrap_SWModule_Lang, METH_VARARGS }, + { (char *)"SWModule_isWritable", _wrap_SWModule_isWritable, METH_VARARGS }, + { (char *)"SWModule_createModule", _wrap_SWModule_createModule, METH_VARARGS }, + { (char *)"SWModule_setEntry", _wrap_SWModule_setEntry, METH_VARARGS }, + { (char *)"SWModule_deleteEntry", _wrap_SWModule_deleteEntry, METH_VARARGS }, + { (char *)"SWModule_write", _wrap_SWModule_write, METH_VARARGS }, + { (char *)"SWModule_writeLink", _wrap_SWModule_writeLink, METH_VARARGS }, + { (char *)"delete_SWModule", _wrap_delete_SWModule, METH_VARARGS }, + { (char *)"SWModule_swigregister", SWModule_swigregister, METH_VARARGS }, + { (char *)"new_SW_POSITION", _wrap_new_SW_POSITION, METH_VARARGS }, + { (char *)"delete_SW_POSITION", _wrap_delete_SW_POSITION, METH_VARARGS }, + { (char *)"SW_POSITION_swigregister", SW_POSITION_swigregister, METH_VARARGS }, + { (char *)"new_SWKey", _wrap_new_SWKey, METH_VARARGS }, + { (char *)"SWKey_clone", _wrap_SWKey_clone, METH_VARARGS }, + { (char *)"SWKey_Persist", _wrap_SWKey_Persist, METH_VARARGS }, + { (char *)"SWKey_setPersist", _wrap_SWKey_setPersist, METH_VARARGS }, + { (char *)"SWKey_Error", _wrap_SWKey_Error, METH_VARARGS }, + { (char *)"SWKey_setText", _wrap_SWKey_setText, METH_VARARGS }, + { (char *)"SWKey_getText", _wrap_SWKey_getText, METH_VARARGS }, + { (char *)"SWKey_getShortText", _wrap_SWKey_getShortText, METH_VARARGS }, + { (char *)"SWKey_compare", _wrap_SWKey_compare, METH_VARARGS }, + { (char *)"SWKey_equals", _wrap_SWKey_equals, METH_VARARGS }, + { (char *)"SWKey_decrement", _wrap_SWKey_decrement, METH_VARARGS }, + { (char *)"SWKey_increment", _wrap_SWKey_increment, METH_VARARGS }, + { (char *)"SWKey_Traversable", _wrap_SWKey_Traversable, METH_VARARGS }, + { (char *)"SWKey_Index", _wrap_SWKey_Index, METH_VARARGS }, + { (char *)"SWKey_next", _wrap_SWKey_next, METH_VARARGS }, + { (char *)"SWKey_prev", _wrap_SWKey_prev, METH_VARARGS }, + { (char *)"SWKey_setKey", _wrap_SWKey_setKey, METH_VARARGS }, + { (char *)"delete_SWKey", _wrap_delete_SWKey, METH_VARARGS }, + { (char *)"SWKey_swigregister", SWKey_swigregister, METH_VARARGS }, + { (char *)"new_VerseKey", _wrap_new_VerseKey, METH_VARARGS }, + { (char *)"delete_VerseKey", _wrap_delete_VerseKey, METH_VARARGS }, + { (char *)"VerseKey_clone", _wrap_VerseKey_clone, METH_VARARGS }, + { (char *)"VerseKey_LowerBound", _wrap_VerseKey_LowerBound, METH_VARARGS }, + { (char *)"VerseKey_UpperBound", _wrap_VerseKey_UpperBound, METH_VARARGS }, + { (char *)"VerseKey_ClearBounds", _wrap_VerseKey_ClearBounds, METH_VARARGS }, + { (char *)"VerseKey_decrement", _wrap_VerseKey_decrement, METH_VARARGS }, + { (char *)"VerseKey_increment", _wrap_VerseKey_increment, METH_VARARGS }, + { (char *)"VerseKey_Traversable", _wrap_VerseKey_Traversable, METH_VARARGS }, + { (char *)"VerseKey_getBookName", _wrap_VerseKey_getBookName, METH_VARARGS }, + { (char *)"VerseKey_getBookAbbrev", _wrap_VerseKey_getBookAbbrev, METH_VARARGS }, + { (char *)"VerseKey_Testament", _wrap_VerseKey_Testament, METH_VARARGS }, + { (char *)"VerseKey_Book", _wrap_VerseKey_Book, METH_VARARGS }, + { (char *)"VerseKey_Chapter", _wrap_VerseKey_Chapter, METH_VARARGS }, + { (char *)"VerseKey_Verse", _wrap_VerseKey_Verse, METH_VARARGS }, + { (char *)"VerseKey_Normalize", _wrap_VerseKey_Normalize, METH_VARARGS }, + { (char *)"VerseKey_AutoNormalize", _wrap_VerseKey_AutoNormalize, METH_VARARGS }, + { (char *)"VerseKey_Headings", _wrap_VerseKey_Headings, METH_VARARGS }, + { (char *)"VerseKey_getOSISRef", _wrap_VerseKey_getOSISRef, METH_VARARGS }, + { (char *)"VerseKey_compare", _wrap_VerseKey_compare, METH_VARARGS }, + { (char *)"VerseKey__compare", _wrap_VerseKey__compare, METH_VARARGS }, + { (char *)"VerseKey_setLocale", _wrap_VerseKey_setLocale, METH_VARARGS }, + { (char *)"VerseKey_getLocale", _wrap_VerseKey_getLocale, METH_VARARGS }, + { (char *)"VerseKey_swigregister", VerseKey_swigregister, METH_VARARGS }, + { (char *)"new_ListKey", _wrap_new_ListKey, METH_VARARGS }, + { (char *)"delete_ListKey", _wrap_delete_ListKey, METH_VARARGS }, + { (char *)"ListKey_clone", _wrap_ListKey_clone, METH_VARARGS }, + { (char *)"ListKey_ClearList", _wrap_ListKey_ClearList, METH_VARARGS }, + { (char *)"ListKey_Count", _wrap_ListKey_Count, METH_VARARGS }, + { (char *)"ListKey_Remove", _wrap_ListKey_Remove, METH_VARARGS }, + { (char *)"ListKey_SetToElement", _wrap_ListKey_SetToElement, METH_VARARGS }, + { (char *)"ListKey_GetElement", _wrap_ListKey_GetElement, METH_VARARGS }, + { (char *)"ListKey_add", _wrap_ListKey_add, METH_VARARGS }, + { (char *)"ListKey_copyFrom", _wrap_ListKey_copyFrom, METH_VARARGS }, + { (char *)"ListKey_setPosition", _wrap_ListKey_setPosition, METH_VARARGS }, + { (char *)"ListKey_decrement", _wrap_ListKey_decrement, METH_VARARGS }, + { (char *)"ListKey_increment", _wrap_ListKey_increment, METH_VARARGS }, + { (char *)"ListKey_Traversable", _wrap_ListKey_Traversable, METH_VARARGS }, + { (char *)"ListKey_Index", _wrap_ListKey_Index, METH_VARARGS }, + { (char *)"ListKey_swigregister", ListKey_swigregister, METH_VARARGS }, + { (char *)"TreeKey_getLocalName", _wrap_TreeKey_getLocalName, METH_VARARGS }, + { (char *)"TreeKey_setLocalName", _wrap_TreeKey_setLocalName, METH_VARARGS }, + { (char *)"TreeKey_getUserData", _wrap_TreeKey_getUserData, METH_VARARGS }, + { (char *)"TreeKey_setUserData", _wrap_TreeKey_setUserData, METH_VARARGS }, + { (char *)"TreeKey_getFullName", _wrap_TreeKey_getFullName, METH_VARARGS }, + { (char *)"TreeKey_root", _wrap_TreeKey_root, METH_VARARGS }, + { (char *)"TreeKey_parent", _wrap_TreeKey_parent, METH_VARARGS }, + { (char *)"TreeKey_firstChild", _wrap_TreeKey_firstChild, METH_VARARGS }, + { (char *)"TreeKey_nextSibling", _wrap_TreeKey_nextSibling, METH_VARARGS }, + { (char *)"TreeKey_previousSibling", _wrap_TreeKey_previousSibling, METH_VARARGS }, + { (char *)"TreeKey_hasChildren", _wrap_TreeKey_hasChildren, METH_VARARGS }, + { (char *)"TreeKey_append", _wrap_TreeKey_append, METH_VARARGS }, + { (char *)"TreeKey_appendChild", _wrap_TreeKey_appendChild, METH_VARARGS }, + { (char *)"TreeKey_insertBefore", _wrap_TreeKey_insertBefore, METH_VARARGS }, + { (char *)"TreeKey_remove", _wrap_TreeKey_remove, METH_VARARGS }, + { (char *)"TreeKey_setOffset", _wrap_TreeKey_setOffset, METH_VARARGS }, + { (char *)"TreeKey_getOffset", _wrap_TreeKey_getOffset, METH_VARARGS }, + { (char *)"TreeKey_setPosition", _wrap_TreeKey_setPosition, METH_VARARGS }, + { (char *)"TreeKey_Traversable", _wrap_TreeKey_Traversable, METH_VARARGS }, + { (char *)"TreeKey_Index", _wrap_TreeKey_Index, METH_VARARGS }, + { (char *)"TreeKey_swigregister", TreeKey_swigregister, METH_VARARGS }, + { (char *)"TreeKeyIdx_swigregister", TreeKeyIdx_swigregister, METH_VARARGS }, + { (char *)"new_LocaleMgr", _wrap_new_LocaleMgr, METH_VARARGS }, + { (char *)"delete_LocaleMgr", _wrap_delete_LocaleMgr, METH_VARARGS }, + { (char *)"LocaleMgr_getLocale", _wrap_LocaleMgr_getLocale, METH_VARARGS }, + { (char *)"LocaleMgr_getAvailableLocales", _wrap_LocaleMgr_getAvailableLocales, METH_VARARGS }, + { (char *)"LocaleMgr_getDefaultLocaleName", _wrap_LocaleMgr_getDefaultLocaleName, METH_VARARGS }, + { (char *)"LocaleMgr_setDefaultLocaleName", _wrap_LocaleMgr_setDefaultLocaleName, METH_VARARGS }, + { (char *)"LocaleMgr_systemLocaleMgr", _wrap_LocaleMgr_systemLocaleMgr, METH_VARARGS }, + { (char *)"LocaleMgr_swigregister", LocaleMgr_swigregister, METH_VARARGS }, + { (char *)"SWFilterMgr_swigregister", SWFilterMgr_swigregister, METH_VARARGS }, + { (char *)"new_SWText", _wrap_new_SWText, METH_VARARGS }, + { (char *)"delete_SWText", _wrap_delete_SWText, METH_VARARGS }, + { (char *)"SWText_swigregister", SWText_swigregister, METH_VARARGS }, + { (char *)"new_RawText", _wrap_new_RawText, METH_VARARGS }, + { (char *)"RawText_createModule", _wrap_RawText_createModule, METH_VARARGS }, + { (char *)"delete_RawText", _wrap_delete_RawText, METH_VARARGS }, + { (char *)"RawText_swigregister", RawText_swigregister, METH_VARARGS }, + { (char *)"new_zText", _wrap_new_zText, METH_VARARGS }, + { (char *)"delete_zText", _wrap_delete_zText, METH_VARARGS }, + { (char *)"zText_createModule", _wrap_zText_createModule, METH_VARARGS }, + { (char *)"zText_swigregister", zText_swigregister, METH_VARARGS }, + { (char *)"SWCom_swigregister", SWCom_swigregister, METH_VARARGS }, + { (char *)"RawCom_swigregister", RawCom_swigregister, METH_VARARGS }, + { (char *)"zCom_swigregister", zCom_swigregister, METH_VARARGS }, + { (char *)"SWGenBook_swigregister", SWGenBook_swigregister, METH_VARARGS }, + { (char *)"new_RawGenBook", _wrap_new_RawGenBook, METH_VARARGS }, + { (char *)"delete_RawGenBook", _wrap_delete_RawGenBook, METH_VARARGS }, + { (char *)"RawGenBook_createModule", _wrap_RawGenBook_createModule, METH_VARARGS }, + { (char *)"RawGenBook_swigregister", RawGenBook_swigregister, METH_VARARGS }, + { (char *)"new_SWLD", _wrap_new_SWLD, METH_VARARGS }, + { (char *)"delete_SWLD", _wrap_delete_SWLD, METH_VARARGS }, + { (char *)"SWLD_swigregister", SWLD_swigregister, METH_VARARGS }, + { (char *)"new_RawLD", _wrap_new_RawLD, METH_VARARGS }, + { (char *)"delete_RawLD", _wrap_delete_RawLD, METH_VARARGS }, + { (char *)"RawLD_createModule", _wrap_RawLD_createModule, METH_VARARGS }, + { (char *)"RawLD_swigregister", RawLD_swigregister, METH_VARARGS }, + { (char *)"new_RawLD4", _wrap_new_RawLD4, METH_VARARGS }, + { (char *)"delete_RawLD4", _wrap_delete_RawLD4, METH_VARARGS }, + { (char *)"RawLD4_createModule", _wrap_RawLD4_createModule, METH_VARARGS }, + { (char *)"RawLD4_swigregister", RawLD4_swigregister, METH_VARARGS }, + { (char *)"new_zLD", _wrap_new_zLD, METH_VARARGS }, + { (char *)"delete_zLD", _wrap_delete_zLD, METH_VARARGS }, + { (char *)"zLD_createModule", _wrap_zLD_createModule, METH_VARARGS }, + { (char *)"zLD_swigregister", zLD_swigregister, METH_VARARGS }, + { (char *)"new_SWCompress", _wrap_new_SWCompress, METH_VARARGS }, + { (char *)"delete_SWCompress", _wrap_delete_SWCompress, METH_VARARGS }, + { (char *)"SWCompress_Buf", _wrap_SWCompress_Buf, METH_VARARGS }, + { (char *)"SWCompress_zBuf", _wrap_SWCompress_zBuf, METH_VARARGS }, + { (char *)"SWCompress_GetChars", _wrap_SWCompress_GetChars, METH_VARARGS }, + { (char *)"SWCompress_SendChars", _wrap_SWCompress_SendChars, METH_VARARGS }, + { (char *)"SWCompress_Encode", _wrap_SWCompress_Encode, METH_VARARGS }, + { (char *)"SWCompress_Decode", _wrap_SWCompress_Decode, METH_VARARGS }, + { (char *)"SWCompress_swigregister", SWCompress_swigregister, METH_VARARGS }, + { (char *)"new_LZSSCompress", _wrap_new_LZSSCompress, METH_VARARGS }, + { (char *)"delete_LZSSCompress", _wrap_delete_LZSSCompress, METH_VARARGS }, + { (char *)"LZSSCompress_Encode", _wrap_LZSSCompress_Encode, METH_VARARGS }, + { (char *)"LZSSCompress_Decode", _wrap_LZSSCompress_Decode, METH_VARARGS }, + { (char *)"LZSSCompress_swigregister", LZSSCompress_swigregister, METH_VARARGS }, + { (char *)"new_ZipCompress", _wrap_new_ZipCompress, METH_VARARGS }, + { (char *)"delete_ZipCompress", _wrap_delete_ZipCompress, METH_VARARGS }, + { (char *)"ZipCompress_Encode", _wrap_ZipCompress_Encode, METH_VARARGS }, + { (char *)"ZipCompress_Decode", _wrap_ZipCompress_Decode, METH_VARARGS }, + { (char *)"ZipCompress_swigregister", ZipCompress_swigregister, METH_VARARGS }, + { NULL, NULL } +}; + + +/* -------- TYPE CONVERSION AND EQUIVALENCE RULES (BEGIN) -------- */ + +static void *_p_zComTo_p_SWCom(void *x) { + return (void *)((SWCom *) ((zCom *) x)); +} +static void *_p_RawComTo_p_SWCom(void *x) { + return (void *)((SWCom *) ((RawCom *) x)); +} +static void *_p_TreeKeyIdxTo_p_TreeKey(void *x) { + return (void *)((TreeKey *) ((TreeKeyIdx *) x)); +} +static void *_p_RawTextTo_p_SWText(void *x) { + return (void *)((SWText *) ((RawText *) x)); +} +static void *_p_zTextTo_p_SWText(void *x) { + return (void *)((SWText *) ((zText *) x)); +} +static void *_p_ListKeyTo_p_SWKey(void *x) { + return (void *)((SWKey *) ((ListKey *) x)); +} +static void *_p_TreeKeyIdxTo_p_SWKey(void *x) { + return (void *)((SWKey *) (TreeKey *) ((TreeKeyIdx *) x)); +} +static void *_p_VerseKeyTo_p_SWKey(void *x) { + return (void *)((SWKey *) ((VerseKey *) x)); +} +static void *_p_TreeKeyTo_p_SWKey(void *x) { + return (void *)((SWKey *) ((TreeKey *) x)); +} +static void *_p_LZSSCompressTo_p_SWCompress(void *x) { + return (void *)((SWCompress *) ((LZSSCompress *) x)); +} +static void *_p_ZipCompressTo_p_SWCompress(void *x) { + return (void *)((SWCompress *) ((ZipCompress *) x)); +} +static void *_p_SWComTo_p_SWModule(void *x) { + return (void *)((SWModule *) ((SWCom *) x)); +} +static void *_p_zLDTo_p_SWModule(void *x) { + return (void *)((SWModule *) (SWLD *) ((zLD *) x)); +} +static void *_p_SWTextTo_p_SWModule(void *x) { + return (void *)((SWModule *) ((SWText *) x)); +} +static void *_p_SWGenBookTo_p_SWModule(void *x) { + return (void *)((SWModule *) ((SWGenBook *) x)); +} +static void *_p_RawGenBookTo_p_SWModule(void *x) { + return (void *)((SWModule *) (SWGenBook *) ((RawGenBook *) x)); +} +static void *_p_RawTextTo_p_SWModule(void *x) { + return (void *)((SWModule *) (SWText *) ((RawText *) x)); +} +static void *_p_zComTo_p_SWModule(void *x) { + return (void *)((SWModule *) (SWCom *) ((zCom *) x)); +} +static void *_p_RawLD4To_p_SWModule(void *x) { + return (void *)((SWModule *) (SWLD *) ((RawLD4 *) x)); +} +static void *_p_zTextTo_p_SWModule(void *x) { + return (void *)((SWModule *) (SWText *) ((zText *) x)); +} +static void *_p_RawComTo_p_SWModule(void *x) { + return (void *)((SWModule *) (SWCom *) ((RawCom *) x)); +} +static void *_p_SWLDTo_p_SWModule(void *x) { + return (void *)((SWModule *) ((SWLD *) x)); +} +static void *_p_RawLDTo_p_SWModule(void *x) { + return (void *)((SWModule *) (SWLD *) ((RawLD *) x)); +} +static void *_p_RawGenBookTo_p_SWGenBook(void *x) { + return (void *)((SWGenBook *) ((RawGenBook *) x)); +} +static void *_p_zLDTo_p_SWLD(void *x) { + return (void *)((SWLD *) ((zLD *) x)); +} +static void *_p_RawLD4To_p_SWLD(void *x) { + return (void *)((SWLD *) ((RawLD4 *) x)); +} +static void *_p_RawLDTo_p_SWLD(void *x) { + return (void *)((SWLD *) ((RawLD *) x)); +} +static swig_type_info _swigt__p_SWLocale[] = {{"_p_SWLocale", 0, "SWLocale *", 0},{"_p_SWLocale"},{0}}; +static swig_type_info _swigt__p_SWMgr[] = {{"_p_SWMgr", 0, "SWMgr *", 0},{"_p_SWMgr"},{0}}; +static swig_type_info _swigt__p_SWCom[] = {{"_p_SWCom", 0, "SWCom *", 0},{"_p_zCom", _p_zComTo_p_SWCom},{"_p_SWCom"},{"_p_RawCom", _p_RawComTo_p_SWCom},{0}}; +static swig_type_info _swigt__p_RawLD4[] = {{"_p_RawLD4", 0, "RawLD4 *", 0},{"_p_RawLD4"},{0}}; +static swig_type_info _swigt__p_ListKey[] = {{"_p_ListKey", 0, "ListKey *", 0},{"_p_ListKey"},{0}}; +static swig_type_info _swigt__p_SWKey[] = {{"_p_SWKey", 0, "SWKey *", 0},{"_p_SWKey"},{"_p_ListKey", _p_ListKeyTo_p_SWKey},{"_p_TreeKeyIdx", _p_TreeKeyIdxTo_p_SWKey},{"_p_VerseKey", _p_VerseKeyTo_p_SWKey},{"_p_TreeKey", _p_TreeKeyTo_p_SWKey},{0}}; +static swig_type_info _swigt__p_ConfigEntMap[] = {{"_p_ConfigEntMap", 0, "ConfigEntMap const &", 0},{"_p_ConfigEntMap"},{0}}; +static swig_type_info _swigt__p_p_char[] = {{"_p_p_char", 0, "char **", 0},{"_p_p_char"},{0}}; +static swig_type_info _swigt__p_RawLD[] = {{"_p_RawLD", 0, "RawLD *", 0},{"_p_RawLD"},{0}}; +static swig_type_info _swigt__p_TreeKey[] = {{"_p_TreeKey", 0, "TreeKey *", 0},{"_p_TreeKeyIdx", _p_TreeKeyIdxTo_p_TreeKey},{"_p_TreeKey"},{0}}; +static swig_type_info _swigt__p_bool[] = {{"_p_bool", 0, "bool *", 0},{"_p_bool"},{0}}; +static swig_type_info _swigt__p_SWFilterMgr[] = {{"_p_SWFilterMgr", 0, "SWFilterMgr *", 0},{"_p_SWFilterMgr"},{0}}; +static swig_type_info _swigt__p_SWLD[] = {{"_p_SWLD", 0, "SWLD *", 0},{"_p_zLD", _p_zLDTo_p_SWLD},{"_p_SWLD"},{"_p_RawLD4", _p_RawLD4To_p_SWLD},{"_p_RawLD", _p_RawLDTo_p_SWLD},{0}}; +static swig_type_info _swigt__p_SWTextDirection[] = {{"_p_SWTextDirection", 0, "SWTextDirection *", 0},{"_p_SWTextDirection"},{0}}; +static swig_type_info _swigt__p_RawText[] = {{"_p_RawText", 0, "RawText *", 0},{"_p_RawText"},{0}}; +static swig_type_info _swigt__p_f_char_p_void__void[] = {{"_p_f_char_p_void__void", 0, "void (*)(char,void *)", 0},{"_p_f_char_p_void__void"},{0}}; +static swig_type_info _swigt__p_VerseKey[] = {{"_p_VerseKey", 0, "VerseKey *", 0},{"_p_VerseKey"},{0}}; +static swig_type_info _swigt__p_ModMap[] = {{"_p_ModMap", 0, "ModMap *", 0},{"_p_ModMap"},{0}}; +static swig_type_info _swigt__p_zCom[] = {{"_p_zCom", 0, "zCom *", 0},{"_p_zCom"},{0}}; +static swig_type_info _swigt__p_string[] = {{"_p_string", 0, "string *", 0},{"_p_string"},{0}}; +static swig_type_info _swigt__p_SectionMap[] = {{"_p_SectionMap", 0, "SectionMap *", 0},{"_p_SectionMap"},{0}}; +static swig_type_info _swigt__p_SWDisplay[] = {{"_p_SWDisplay", 0, "SWDisplay *", 0},{"_p_SWDisplay"},{0}}; +static swig_type_info _swigt__p_AttributeTypeList[] = {{"_p_AttributeTypeList", 0, "AttributeTypeList *", 0},{"_p_AttributeTypeList"},{0}}; +static swig_type_info _swigt__p_SWText[] = {{"_p_SWText", 0, "SWText *", 0},{"_p_SWText"},{"_p_RawText", _p_RawTextTo_p_SWText},{"_p_zText", _p_zTextTo_p_SWText},{0}}; +static swig_type_info _swigt__p_TreeKeyIdx[] = {{"_p_TreeKeyIdx", 0, "TreeKeyIdx *", 0},{"_p_TreeKeyIdx"},{0}}; +static swig_type_info _swigt__p_SWCompress[] = {{"_p_SWCompress", 0, "SWCompress *", 0},{"_p_SWCompress"},{"_p_LZSSCompress", _p_LZSSCompressTo_p_SWCompress},{"_p_ZipCompress", _p_ZipCompressTo_p_SWCompress},{0}}; +static swig_type_info _swigt__p_LZSSCompress[] = {{"_p_LZSSCompress", 0, "LZSSCompress *", 0},{"_p_LZSSCompress"},{0}}; +static swig_type_info _swigt__p_ZipCompress[] = {{"_p_ZipCompress", 0, "ZipCompress *", 0},{"_p_ZipCompress"},{0}}; +static swig_type_info _swigt__p_SW_POSITION[] = {{"_p_SW_POSITION", 0, "SW_POSITION *", 0},{"_p_SW_POSITION"},{0}}; +static swig_type_info _swigt__p_SWModule[] = {{"_p_SWModule", 0, "SWModule *", 0},{"_p_SWModule"},{"_p_SWGenBook", _p_SWGenBookTo_p_SWModule},{"_p_RawGenBook", _p_RawGenBookTo_p_SWModule},{"_p_SWText", _p_SWTextTo_p_SWModule},{"_p_RawText", _p_RawTextTo_p_SWModule},{"_p_zLD", _p_zLDTo_p_SWModule},{"_p_zCom", _p_zComTo_p_SWModule},{"_p_zText", _p_zTextTo_p_SWModule},{"_p_RawLD4", _p_RawLD4To_p_SWModule},{"_p_SWLD", _p_SWLDTo_p_SWModule},{"_p_RawLD", _p_RawLDTo_p_SWModule},{"_p_SWCom", _p_SWComTo_p_SWModule},{"_p_RawCom", _p_RawComTo_p_SWModule},{0}}; +static swig_type_info _swigt__p_zLD[] = {{"_p_zLD", 0, "zLD *", 0},{"_p_zLD"},{0}}; +static swig_type_info _swigt__p_SWGenBook[] = {{"_p_SWGenBook", 0, "SWGenBook *", 0},{"_p_SWGenBook"},{"_p_RawGenBook", _p_RawGenBookTo_p_SWGenBook},{0}}; +static swig_type_info _swigt__p_RawCom[] = {{"_p_RawCom", 0, "RawCom *", 0},{"_p_RawCom"},{0}}; +static swig_type_info _swigt__p_RawGenBook[] = {{"_p_RawGenBook", 0, "RawGenBook *", 0},{"_p_RawGenBook"},{0}}; +static swig_type_info _swigt__p_SWConfig[] = {{"_p_SWConfig", 0, "SWConfig *", 0},{"_p_SWConfig"},{0}}; +static swig_type_info _swigt__p_LocaleMgr[] = {{"_p_LocaleMgr", 0, "LocaleMgr *", 0},{"_p_LocaleMgr"},{0}}; +static swig_type_info _swigt__p_int[] = {{"_p_int", 0, "int *", 0},{"_p_int"},{0}}; +static swig_type_info _swigt__p_SWTextMarkup[] = {{"_p_SWTextMarkup", 0, "SWTextMarkup *", 0},{"_p_SWTextMarkup"},{0}}; +static swig_type_info _swigt__p_OptionsList[] = {{"_p_OptionsList", 0, "OptionsList *", 0},{"_p_listTstring_t"},{"_p_OptionsList"},{0}}; +static swig_type_info _swigt__p_listTstring_t[] = {{"_p_listTstring_t", 0, "list *", 0},{"_p_listTstring_t"},{"_p_OptionsList"},{0}}; +static swig_type_info _swigt__p_zText[] = {{"_p_zText", 0, "zText *", 0},{"_p_zText"},{0}}; +static swig_type_info _swigt__p_SWTextEncoding[] = {{"_p_SWTextEncoding", 0, "SWTextEncoding *", 0},{"_p_SWTextEncoding"},{0}}; +static swig_type_info _swigt__p_unsigned_long[] = {{"_p_unsigned_long", 0, "unsigned long *", 0},{"_p_unsigned_long"},{0}}; + +static swig_type_info *swig_types_initial[] = { +_swigt__p_SWLocale, +_swigt__p_SWMgr, +_swigt__p_SWCom, +_swigt__p_RawLD4, +_swigt__p_ListKey, +_swigt__p_SWKey, +_swigt__p_ConfigEntMap, +_swigt__p_p_char, +_swigt__p_RawLD, +_swigt__p_TreeKey, +_swigt__p_bool, +_swigt__p_SWFilterMgr, +_swigt__p_SWLD, +_swigt__p_SWTextDirection, +_swigt__p_RawText, +_swigt__p_f_char_p_void__void, +_swigt__p_VerseKey, +_swigt__p_ModMap, +_swigt__p_zCom, +_swigt__p_string, +_swigt__p_SectionMap, +_swigt__p_SWDisplay, +_swigt__p_AttributeTypeList, +_swigt__p_SWText, +_swigt__p_TreeKeyIdx, +_swigt__p_SWCompress, +_swigt__p_LZSSCompress, +_swigt__p_ZipCompress, +_swigt__p_SW_POSITION, +_swigt__p_SWModule, +_swigt__p_zLD, +_swigt__p_SWGenBook, +_swigt__p_RawCom, +_swigt__p_RawGenBook, +_swigt__p_SWConfig, +_swigt__p_LocaleMgr, +_swigt__p_int, +_swigt__p_SWTextMarkup, +_swigt__p_OptionsList, +_swigt__p_listTstring_t, +_swigt__p_zText, +_swigt__p_SWTextEncoding, +_swigt__p_unsigned_long, +0 +}; + + +/* -------- TYPE CONVERSION AND EQUIVALENCE RULES (END) -------- */ + +static swig_const_info swig_const_table[] = { +{0}}; + +#ifdef __cplusplus +} +#endif + +#ifdef __cplusplus +extern "C" +#endif +SWIGEXPORT(void) SWIG_init(void) { + static PyObject *SWIG_globals = 0; + static int typeinit = 0; + PyObject *m, *d; + int i; + if (!SWIG_globals) SWIG_globals = SWIG_newvarlink(); + m = Py_InitModule((char *) SWIG_name, SwigMethods); + d = PyModule_GetDict(m); + + if (!typeinit) { + for (i = 0; swig_types_initial[i]; i++) { + swig_types[i] = SWIG_TypeRegister(swig_types_initial[i]); + } + typeinit = 1; + } + SWIG_InstallConstants(d,swig_const_table); + +} + diff --git a/bindings/swig/python/Sword.py b/bindings/swig/python/Sword.py new file mode 100644 index 0000000..c3758b5 --- /dev/null +++ b/bindings/swig/python/Sword.py @@ -0,0 +1,796 @@ +# This file was created automatically by SWIG. +# Don't modify this file, modify the SWIG interface instead. +# This file is compatible with both classic and new-style classes. +import _Sword +def _swig_setattr(self,class_type,name,value): + if (name == "this"): + if isinstance(value, class_type): + self.__dict__[name] = value.this + if hasattr(value,"thisown"): self.__dict__["thisown"] = value.thisown + del value.thisown + return + method = class_type.__swig_setmethods__.get(name,None) + if method: return method(self,value) + self.__dict__[name] = value + +def _swig_getattr(self,class_type,name): + method = class_type.__swig_getmethods__.get(name,None) + if method: return method(self) + raise AttributeError,name + +import types +try: + _object = types.ObjectType + _newclass = 1 +except AttributeError: + class _object : pass + _newclass = 0 + + +class SWConfig(_object): + __swig_setmethods__ = {} + __setattr__ = lambda self, name, value: _swig_setattr(self, SWConfig, name, value) + __swig_getmethods__ = {} + __getattr__ = lambda self, name: _swig_getattr(self, SWConfig, name) + __swig_setmethods__["filename"] = _Sword.SWConfig_filename_set + __swig_getmethods__["filename"] = _Sword.SWConfig_filename_get + if _newclass:filename = property(_Sword.SWConfig_filename_get,_Sword.SWConfig_filename_set) + __swig_setmethods__["Sections"] = _Sword.SWConfig_Sections_set + __swig_getmethods__["Sections"] = _Sword.SWConfig_Sections_get + if _newclass:Sections = property(_Sword.SWConfig_Sections_get,_Sword.SWConfig_Sections_set) + def __init__(self,*args): + self.this = apply(_Sword.new_SWConfig,args) + self.thisown = 1 + def __del__(self, destroy= _Sword.delete_SWConfig): + try: + if self.thisown: destroy(self) + except: pass + def Load(*args): return apply(_Sword.SWConfig_Load,args) + def Save(*args): return apply(_Sword.SWConfig_Save,args) + def set(*args): return apply(_Sword.SWConfig_set,args) + def get(*args): return apply(_Sword.SWConfig_get,args) + def __repr__(self): + return "" % (self.this,) + +class SWConfigPtr(SWConfig): + def __init__(self,this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = SWConfig +_Sword.SWConfig_swigregister(SWConfigPtr) + +class SWMgr(_object): + __swig_setmethods__ = {} + __setattr__ = lambda self, name, value: _swig_setattr(self, SWMgr, name, value) + __swig_getmethods__ = {} + __getattr__ = lambda self, name: _swig_getattr(self, SWMgr, name) + __swig_getmethods__["findConfig"] = lambda x: _Sword.SWMgr_findConfig + if _newclass:findConfig = staticmethod(_Sword.SWMgr_findConfig) + __swig_setmethods__["config"] = _Sword.SWMgr_config_set + __swig_getmethods__["config"] = _Sword.SWMgr_config_get + if _newclass:config = property(_Sword.SWMgr_config_get,_Sword.SWMgr_config_set) + __swig_setmethods__["sysconfig"] = _Sword.SWMgr_sysconfig_set + __swig_getmethods__["sysconfig"] = _Sword.SWMgr_sysconfig_get + if _newclass:sysconfig = property(_Sword.SWMgr_sysconfig_get,_Sword.SWMgr_sysconfig_set) + __swig_setmethods__["Modules"] = _Sword.SWMgr_Modules_set + __swig_getmethods__["Modules"] = _Sword.SWMgr_Modules_get + if _newclass:Modules = property(_Sword.SWMgr_Modules_get,_Sword.SWMgr_Modules_set) + __swig_setmethods__["prefixPath"] = _Sword.SWMgr_prefixPath_set + __swig_getmethods__["prefixPath"] = _Sword.SWMgr_prefixPath_get + if _newclass:prefixPath = property(_Sword.SWMgr_prefixPath_get,_Sword.SWMgr_prefixPath_set) + __swig_setmethods__["configPath"] = _Sword.SWMgr_configPath_set + __swig_getmethods__["configPath"] = _Sword.SWMgr_configPath_get + if _newclass:configPath = property(_Sword.SWMgr_configPath_get,_Sword.SWMgr_configPath_set) + def __init__(self,*args): + self.this = apply(_Sword.new_SWMgr,args) + self.thisown = 1 + def __del__(self, destroy= _Sword.delete_SWMgr): + try: + if self.thisown: destroy(self) + except: pass + def Load(*args): return apply(_Sword.SWMgr_Load,args) + def setGlobalOption(*args): return apply(_Sword.SWMgr_setGlobalOption,args) + def getGlobalOption(*args): return apply(_Sword.SWMgr_getGlobalOption,args) + def getGlobalOptionTip(*args): return apply(_Sword.SWMgr_getGlobalOptionTip,args) + def getGlobalOptions(*args): return apply(_Sword.SWMgr_getGlobalOptions,args) + def getGlobalOptionValues(*args): return apply(_Sword.SWMgr_getGlobalOptionValues,args) + def setCipherKey(*args): return apply(_Sword.SWMgr_setCipherKey,args) + def module(*args): return apply(_Sword.SWMgr_module,args) + def __repr__(self): + return "" % (self.this,) + +class SWMgrPtr(SWMgr): + def __init__(self,this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = SWMgr +_Sword.SWMgr_swigregister(SWMgrPtr) +SWMgr_findConfig = _Sword.SWMgr_findConfig + + +class SWModule(_object): + __swig_setmethods__ = {} + __setattr__ = lambda self, name, value: _swig_setattr(self, SWModule, name, value) + __swig_getmethods__ = {} + __getattr__ = lambda self, name: _swig_getattr(self, SWModule, name) + __swig_setmethods__["terminateSearch"] = _Sword.SWModule_terminateSearch_set + __swig_getmethods__["terminateSearch"] = _Sword.SWModule_terminateSearch_get + if _newclass:terminateSearch = property(_Sword.SWModule_terminateSearch_get,_Sword.SWModule_terminateSearch_set) + def __init__(self,*args): + self.this = apply(_Sword.new_SWModule,args) + self.thisown = 1 + def Error(*args): return apply(_Sword.SWModule_Error,args) + def isUnicode(*args): return apply(_Sword.SWModule_isUnicode,args) + def getConfig(*args): return apply(_Sword.SWModule_getConfig,args) + def getConfigEntry(*args): return apply(_Sword.SWModule_getConfigEntry,args) + def SetKey(*args): return apply(_Sword.SWModule_SetKey,args) + def Key(*args): return apply(_Sword.SWModule_Key,args) + def CreateKey(*args): return apply(_Sword.SWModule_CreateKey,args) + def KeyText(*args): return apply(_Sword.SWModule_KeyText,args) + def Display(*args): return apply(_Sword.SWModule_Display,args) + __swig_getmethods__["nullPercent"] = lambda x: _Sword.SWModule_nullPercent + if _newclass:nullPercent = staticmethod(_Sword.SWModule_nullPercent) + def Search(*args): return apply(_Sword.SWModule_Search,args) + def createSearchFramework(*args): return apply(_Sword.SWModule_createSearchFramework,args) + def hasSearchFramework(*args): return apply(_Sword.SWModule_hasSearchFramework,args) + def isSearchOptimallySupported(*args): return apply(_Sword.SWModule_isSearchOptimallySupported,args) + def next(*args): return apply(_Sword.SWModule_next,args) + def prev(*args): return apply(_Sword.SWModule_prev,args) + def inc(*args): return apply(_Sword.SWModule_inc,args) + def dec(*args): return apply(_Sword.SWModule_dec,args) + def setPosition(*args): return apply(_Sword.SWModule_setPosition,args) + def top(*args): return apply(_Sword.SWModule_top,args) + def bottom(*args): return apply(_Sword.SWModule_bottom,args) + def text(*args): return apply(_Sword.SWModule_text,args) + def StripText(*args): return apply(_Sword.SWModule_StripText,args) + def getRawEntry(*args): return apply(_Sword.SWModule_getRawEntry,args) + def setSkipConsecutiveLinks(*args): return apply(_Sword.SWModule_setSkipConsecutiveLinks,args) + def getSkipConsecutiveLinks(*args): return apply(_Sword.SWModule_getSkipConsecutiveLinks,args) + def getEntryAttributes(*args): return apply(_Sword.SWModule_getEntryAttributes,args) + def processEntryAttributes(*args): return apply(_Sword.SWModule_processEntryAttributes,args) + def isProcessEntryAttributes(*args): return apply(_Sword.SWModule_isProcessEntryAttributes,args) + def Name(*args): return apply(_Sword.SWModule_Name,args) + def Description(*args): return apply(_Sword.SWModule_Description,args) + def Type(*args): return apply(_Sword.SWModule_Type,args) + def Direction(*args): return apply(_Sword.SWModule_Direction,args) + def Encoding(*args): return apply(_Sword.SWModule_Encoding,args) + def Markup(*args): return apply(_Sword.SWModule_Markup,args) + def Lang(*args): return apply(_Sword.SWModule_Lang,args) + def isWritable(*args): return apply(_Sword.SWModule_isWritable,args) + __swig_getmethods__["createModule"] = lambda x: _Sword.SWModule_createModule + if _newclass:createModule = staticmethod(_Sword.SWModule_createModule) + def setEntry(*args): return apply(_Sword.SWModule_setEntry,args) + def deleteEntry(*args): return apply(_Sword.SWModule_deleteEntry,args) + def write(*args): return apply(_Sword.SWModule_write,args) + def writeLink(*args): return apply(_Sword.SWModule_writeLink,args) + def __del__(self, destroy= _Sword.delete_SWModule): + try: + if self.thisown: destroy(self) + except: pass + def __repr__(self): + return "" % (self.this,) + +class SWModulePtr(SWModule): + def __init__(self,this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = SWModule +_Sword.SWModule_swigregister(SWModulePtr) +SWModule_nullPercent = _Sword.SWModule_nullPercent + +SWModule_createModule = _Sword.SWModule_createModule + + +class SW_POSITION(_object): + __swig_setmethods__ = {} + __setattr__ = lambda self, name, value: _swig_setattr(self, SW_POSITION, name, value) + __swig_getmethods__ = {} + __getattr__ = lambda self, name: _swig_getattr(self, SW_POSITION, name) + def __init__(self,*args): + self.this = apply(_Sword.new_SW_POSITION,args) + self.thisown = 1 + def __del__(self, destroy= _Sword.delete_SW_POSITION): + try: + if self.thisown: destroy(self) + except: pass + def __repr__(self): + return "" % (self.this,) + +class SW_POSITIONPtr(SW_POSITION): + def __init__(self,this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = SW_POSITION +_Sword.SW_POSITION_swigregister(SW_POSITIONPtr) + +class SWKey(_object): + __swig_setmethods__ = {} + __setattr__ = lambda self, name, value: _swig_setattr(self, SWKey, name, value) + __swig_getmethods__ = {} + __getattr__ = lambda self, name: _swig_getattr(self, SWKey, name) + def __init__(self,*args): + self.this = apply(_Sword.new_SWKey,args) + self.thisown = 1 + def clone(*args): return apply(_Sword.SWKey_clone,args) + def Persist(*args): return apply(_Sword.SWKey_Persist,args) + def setPersist(*args): return apply(_Sword.SWKey_setPersist,args) + def Error(*args): return apply(_Sword.SWKey_Error,args) + def setText(*args): return apply(_Sword.SWKey_setText,args) + def getText(*args): return apply(_Sword.SWKey_getText,args) + def getShortText(*args): return apply(_Sword.SWKey_getShortText,args) + def compare(*args): return apply(_Sword.SWKey_compare,args) + def equals(*args): return apply(_Sword.SWKey_equals,args) + def decrement(*args): return apply(_Sword.SWKey_decrement,args) + def increment(*args): return apply(_Sword.SWKey_increment,args) + def Traversable(*args): return apply(_Sword.SWKey_Traversable,args) + def Index(*args): return apply(_Sword.SWKey_Index,args) + def next(*args): return apply(_Sword.SWKey_next,args) + def prev(*args): return apply(_Sword.SWKey_prev,args) + def setKey(*args): return apply(_Sword.SWKey_setKey,args) + def __del__(self, destroy= _Sword.delete_SWKey): + try: + if self.thisown: destroy(self) + except: pass + def __repr__(self): + return "" % (self.this,) + +class SWKeyPtr(SWKey): + def __init__(self,this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = SWKey +_Sword.SWKey_swigregister(SWKeyPtr) + +class VerseKey(SWKey): + __swig_setmethods__ = {} + for _s in [SWKey]: __swig_setmethods__.update(_s.__swig_setmethods__) + __setattr__ = lambda self, name, value: _swig_setattr(self, VerseKey, name, value) + __swig_getmethods__ = {} + for _s in [SWKey]: __swig_getmethods__.update(_s.__swig_getmethods__) + __getattr__ = lambda self, name: _swig_getattr(self, VerseKey, name) + def __init__(self,*args): + self.this = apply(_Sword.new_VerseKey,args) + self.thisown = 1 + def __del__(self, destroy= _Sword.delete_VerseKey): + try: + if self.thisown: destroy(self) + except: pass + def clone(*args): return apply(_Sword.VerseKey_clone,args) + def LowerBound(*args): return apply(_Sword.VerseKey_LowerBound,args) + def UpperBound(*args): return apply(_Sword.VerseKey_UpperBound,args) + def ClearBounds(*args): return apply(_Sword.VerseKey_ClearBounds,args) + def decrement(*args): return apply(_Sword.VerseKey_decrement,args) + def increment(*args): return apply(_Sword.VerseKey_increment,args) + def Traversable(*args): return apply(_Sword.VerseKey_Traversable,args) + def getBookName(*args): return apply(_Sword.VerseKey_getBookName,args) + def getBookAbbrev(*args): return apply(_Sword.VerseKey_getBookAbbrev,args) + def Testament(*args): return apply(_Sword.VerseKey_Testament,args) + def Book(*args): return apply(_Sword.VerseKey_Book,args) + def Chapter(*args): return apply(_Sword.VerseKey_Chapter,args) + def Verse(*args): return apply(_Sword.VerseKey_Verse,args) + def Normalize(*args): return apply(_Sword.VerseKey_Normalize,args) + def AutoNormalize(*args): return apply(_Sword.VerseKey_AutoNormalize,args) + def Headings(*args): return apply(_Sword.VerseKey_Headings,args) + def getOSISRef(*args): return apply(_Sword.VerseKey_getOSISRef,args) + def compare(*args): return apply(_Sword.VerseKey_compare,args) + def _compare(*args): return apply(_Sword.VerseKey__compare,args) + def setLocale(*args): return apply(_Sword.VerseKey_setLocale,args) + def getLocale(*args): return apply(_Sword.VerseKey_getLocale,args) + def __repr__(self): + return "" % (self.this,) + +class VerseKeyPtr(VerseKey): + def __init__(self,this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = VerseKey +_Sword.VerseKey_swigregister(VerseKeyPtr) + +class ListKey(SWKey): + __swig_setmethods__ = {} + for _s in [SWKey]: __swig_setmethods__.update(_s.__swig_setmethods__) + __setattr__ = lambda self, name, value: _swig_setattr(self, ListKey, name, value) + __swig_getmethods__ = {} + for _s in [SWKey]: __swig_getmethods__.update(_s.__swig_getmethods__) + __getattr__ = lambda self, name: _swig_getattr(self, ListKey, name) + def __init__(self,*args): + self.this = apply(_Sword.new_ListKey,args) + self.thisown = 1 + def __del__(self, destroy= _Sword.delete_ListKey): + try: + if self.thisown: destroy(self) + except: pass + def clone(*args): return apply(_Sword.ListKey_clone,args) + def ClearList(*args): return apply(_Sword.ListKey_ClearList,args) + def Count(*args): return apply(_Sword.ListKey_Count,args) + def Remove(*args): return apply(_Sword.ListKey_Remove,args) + def SetToElement(*args): return apply(_Sword.ListKey_SetToElement,args) + def GetElement(*args): return apply(_Sword.ListKey_GetElement,args) + def add(*args): return apply(_Sword.ListKey_add,args) + def copyFrom(*args): return apply(_Sword.ListKey_copyFrom,args) + def setPosition(*args): return apply(_Sword.ListKey_setPosition,args) + def decrement(*args): return apply(_Sword.ListKey_decrement,args) + def increment(*args): return apply(_Sword.ListKey_increment,args) + def Traversable(*args): return apply(_Sword.ListKey_Traversable,args) + def Index(*args): return apply(_Sword.ListKey_Index,args) + def __repr__(self): + return "" % (self.this,) + +class ListKeyPtr(ListKey): + def __init__(self,this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = ListKey +_Sword.ListKey_swigregister(ListKeyPtr) + +class TreeKey(SWKey): + __swig_setmethods__ = {} + for _s in [SWKey]: __swig_setmethods__.update(_s.__swig_setmethods__) + __setattr__ = lambda self, name, value: _swig_setattr(self, TreeKey, name, value) + __swig_getmethods__ = {} + for _s in [SWKey]: __swig_getmethods__.update(_s.__swig_getmethods__) + __getattr__ = lambda self, name: _swig_getattr(self, TreeKey, name) + def getLocalName(*args): return apply(_Sword.TreeKey_getLocalName,args) + def setLocalName(*args): return apply(_Sword.TreeKey_setLocalName,args) + def getUserData(*args): return apply(_Sword.TreeKey_getUserData,args) + def setUserData(*args): return apply(_Sword.TreeKey_setUserData,args) + def getFullName(*args): return apply(_Sword.TreeKey_getFullName,args) + def root(*args): return apply(_Sword.TreeKey_root,args) + def parent(*args): return apply(_Sword.TreeKey_parent,args) + def firstChild(*args): return apply(_Sword.TreeKey_firstChild,args) + def nextSibling(*args): return apply(_Sword.TreeKey_nextSibling,args) + def previousSibling(*args): return apply(_Sword.TreeKey_previousSibling,args) + def hasChildren(*args): return apply(_Sword.TreeKey_hasChildren,args) + def append(*args): return apply(_Sword.TreeKey_append,args) + def appendChild(*args): return apply(_Sword.TreeKey_appendChild,args) + def insertBefore(*args): return apply(_Sword.TreeKey_insertBefore,args) + def remove(*args): return apply(_Sword.TreeKey_remove,args) + def setOffset(*args): return apply(_Sword.TreeKey_setOffset,args) + def getOffset(*args): return apply(_Sword.TreeKey_getOffset,args) + def setPosition(*args): return apply(_Sword.TreeKey_setPosition,args) + def Traversable(*args): return apply(_Sword.TreeKey_Traversable,args) + def Index(*args): return apply(_Sword.TreeKey_Index,args) + def __init__(self): raise RuntimeError, "No constructor defined" + def __repr__(self): + return "" % (self.this,) + +class TreeKeyPtr(TreeKey): + def __init__(self,this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = TreeKey +_Sword.TreeKey_swigregister(TreeKeyPtr) + +class TreeKeyIdx(TreeKey): + __swig_setmethods__ = {} + for _s in [TreeKey]: __swig_setmethods__.update(_s.__swig_setmethods__) + __setattr__ = lambda self, name, value: _swig_setattr(self, TreeKeyIdx, name, value) + __swig_getmethods__ = {} + for _s in [TreeKey]: __swig_getmethods__.update(_s.__swig_getmethods__) + __getattr__ = lambda self, name: _swig_getattr(self, TreeKeyIdx, name) + def __init__(self): raise RuntimeError, "No constructor defined" + def __repr__(self): + return "" % (self.this,) + +class TreeKeyIdxPtr(TreeKeyIdx): + def __init__(self,this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = TreeKeyIdx +_Sword.TreeKeyIdx_swigregister(TreeKeyIdxPtr) + +class LocaleMgr(_object): + __swig_setmethods__ = {} + __setattr__ = lambda self, name, value: _swig_setattr(self, LocaleMgr, name, value) + __swig_getmethods__ = {} + __getattr__ = lambda self, name: _swig_getattr(self, LocaleMgr, name) + def __init__(self,*args): + self.this = apply(_Sword.new_LocaleMgr,args) + self.thisown = 1 + def __del__(self, destroy= _Sword.delete_LocaleMgr): + try: + if self.thisown: destroy(self) + except: pass + def getLocale(*args): return apply(_Sword.LocaleMgr_getLocale,args) + def getAvailableLocales(*args): return apply(_Sword.LocaleMgr_getAvailableLocales,args) + def getDefaultLocaleName(*args): return apply(_Sword.LocaleMgr_getDefaultLocaleName,args) + def setDefaultLocaleName(*args): return apply(_Sword.LocaleMgr_setDefaultLocaleName,args) + __swig_getmethods__["systemLocaleMgr"] = lambda x: _Sword.LocaleMgr_systemLocaleMgr + if _newclass:systemLocaleMgr = staticmethod(_Sword.LocaleMgr_systemLocaleMgr) + def __repr__(self): + return "" % (self.this,) + +class LocaleMgrPtr(LocaleMgr): + def __init__(self,this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = LocaleMgr +_Sword.LocaleMgr_swigregister(LocaleMgrPtr) +LocaleMgr_systemLocaleMgr = _Sword.LocaleMgr_systemLocaleMgr + + +class SWFilterMgr(_object): + __swig_setmethods__ = {} + __setattr__ = lambda self, name, value: _swig_setattr(self, SWFilterMgr, name, value) + __swig_getmethods__ = {} + __getattr__ = lambda self, name: _swig_getattr(self, SWFilterMgr, name) + def __init__(self): raise RuntimeError, "No constructor defined" + def __repr__(self): + return "" % (self.this,) + +class SWFilterMgrPtr(SWFilterMgr): + def __init__(self,this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = SWFilterMgr +_Sword.SWFilterMgr_swigregister(SWFilterMgrPtr) + +class SWText(SWModule): + __swig_setmethods__ = {} + for _s in [SWModule]: __swig_setmethods__.update(_s.__swig_setmethods__) + __setattr__ = lambda self, name, value: _swig_setattr(self, SWText, name, value) + __swig_getmethods__ = {} + for _s in [SWModule]: __swig_getmethods__.update(_s.__swig_getmethods__) + __getattr__ = lambda self, name: _swig_getattr(self, SWText, name) + def __init__(self,*args): + self.this = apply(_Sword.new_SWText,args) + self.thisown = 1 + def __del__(self, destroy= _Sword.delete_SWText): + try: + if self.thisown: destroy(self) + except: pass + def __repr__(self): + return "" % (self.this,) + +class SWTextPtr(SWText): + def __init__(self,this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = SWText +_Sword.SWText_swigregister(SWTextPtr) + +class RawText(SWText): + __swig_setmethods__ = {} + for _s in [SWText]: __swig_setmethods__.update(_s.__swig_setmethods__) + __setattr__ = lambda self, name, value: _swig_setattr(self, RawText, name, value) + __swig_getmethods__ = {} + for _s in [SWText]: __swig_getmethods__.update(_s.__swig_getmethods__) + __getattr__ = lambda self, name: _swig_getattr(self, RawText, name) + def __init__(self,*args): + self.this = apply(_Sword.new_RawText,args) + self.thisown = 1 + __swig_getmethods__["createModule"] = lambda x: _Sword.RawText_createModule + if _newclass:createModule = staticmethod(_Sword.RawText_createModule) + def __del__(self, destroy= _Sword.delete_RawText): + try: + if self.thisown: destroy(self) + except: pass + def __repr__(self): + return "" % (self.this,) + +class RawTextPtr(RawText): + def __init__(self,this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = RawText +_Sword.RawText_swigregister(RawTextPtr) +RawText_createModule = _Sword.RawText_createModule + + +class zText(SWText): + __swig_setmethods__ = {} + for _s in [SWText]: __swig_setmethods__.update(_s.__swig_setmethods__) + __setattr__ = lambda self, name, value: _swig_setattr(self, zText, name, value) + __swig_getmethods__ = {} + for _s in [SWText]: __swig_getmethods__.update(_s.__swig_getmethods__) + __getattr__ = lambda self, name: _swig_getattr(self, zText, name) + def __init__(self,*args): + self.this = apply(_Sword.new_zText,args) + self.thisown = 1 + def __del__(self, destroy= _Sword.delete_zText): + try: + if self.thisown: destroy(self) + except: pass + __swig_getmethods__["createModule"] = lambda x: _Sword.zText_createModule + if _newclass:createModule = staticmethod(_Sword.zText_createModule) + def __repr__(self): + return "" % (self.this,) + +class zTextPtr(zText): + def __init__(self,this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = zText +_Sword.zText_swigregister(zTextPtr) +zText_createModule = _Sword.zText_createModule + + +class SWCom(SWModule): + __swig_setmethods__ = {} + for _s in [SWModule]: __swig_setmethods__.update(_s.__swig_setmethods__) + __setattr__ = lambda self, name, value: _swig_setattr(self, SWCom, name, value) + __swig_getmethods__ = {} + for _s in [SWModule]: __swig_getmethods__.update(_s.__swig_getmethods__) + __getattr__ = lambda self, name: _swig_getattr(self, SWCom, name) + def __init__(self): raise RuntimeError, "No constructor defined" + def __repr__(self): + return "" % (self.this,) + +class SWComPtr(SWCom): + def __init__(self,this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = SWCom +_Sword.SWCom_swigregister(SWComPtr) + +class RawCom(SWCom): + __swig_setmethods__ = {} + for _s in [SWCom]: __swig_setmethods__.update(_s.__swig_setmethods__) + __setattr__ = lambda self, name, value: _swig_setattr(self, RawCom, name, value) + __swig_getmethods__ = {} + for _s in [SWCom]: __swig_getmethods__.update(_s.__swig_getmethods__) + __getattr__ = lambda self, name: _swig_getattr(self, RawCom, name) + def __init__(self): raise RuntimeError, "No constructor defined" + def __repr__(self): + return "" % (self.this,) + +class RawComPtr(RawCom): + def __init__(self,this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = RawCom +_Sword.RawCom_swigregister(RawComPtr) + +class zCom(SWCom): + __swig_setmethods__ = {} + for _s in [SWCom]: __swig_setmethods__.update(_s.__swig_setmethods__) + __setattr__ = lambda self, name, value: _swig_setattr(self, zCom, name, value) + __swig_getmethods__ = {} + for _s in [SWCom]: __swig_getmethods__.update(_s.__swig_getmethods__) + __getattr__ = lambda self, name: _swig_getattr(self, zCom, name) + def __init__(self): raise RuntimeError, "No constructor defined" + def __repr__(self): + return "" % (self.this,) + +class zComPtr(zCom): + def __init__(self,this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = zCom +_Sword.zCom_swigregister(zComPtr) + +class SWGenBook(SWModule): + __swig_setmethods__ = {} + for _s in [SWModule]: __swig_setmethods__.update(_s.__swig_setmethods__) + __setattr__ = lambda self, name, value: _swig_setattr(self, SWGenBook, name, value) + __swig_getmethods__ = {} + for _s in [SWModule]: __swig_getmethods__.update(_s.__swig_getmethods__) + __getattr__ = lambda self, name: _swig_getattr(self, SWGenBook, name) + def __init__(self): raise RuntimeError, "No constructor defined" + def __repr__(self): + return "" % (self.this,) + +class SWGenBookPtr(SWGenBook): + def __init__(self,this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = SWGenBook +_Sword.SWGenBook_swigregister(SWGenBookPtr) + +class RawGenBook(SWGenBook): + __swig_setmethods__ = {} + for _s in [SWGenBook]: __swig_setmethods__.update(_s.__swig_setmethods__) + __setattr__ = lambda self, name, value: _swig_setattr(self, RawGenBook, name, value) + __swig_getmethods__ = {} + for _s in [SWGenBook]: __swig_getmethods__.update(_s.__swig_getmethods__) + __getattr__ = lambda self, name: _swig_getattr(self, RawGenBook, name) + def __init__(self,*args): + self.this = apply(_Sword.new_RawGenBook,args) + self.thisown = 1 + def __del__(self, destroy= _Sword.delete_RawGenBook): + try: + if self.thisown: destroy(self) + except: pass + __swig_getmethods__["createModule"] = lambda x: _Sword.RawGenBook_createModule + if _newclass:createModule = staticmethod(_Sword.RawGenBook_createModule) + def __repr__(self): + return "" % (self.this,) + +class RawGenBookPtr(RawGenBook): + def __init__(self,this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = RawGenBook +_Sword.RawGenBook_swigregister(RawGenBookPtr) +RawGenBook_createModule = _Sword.RawGenBook_createModule + + +class SWLD(SWModule): + __swig_setmethods__ = {} + for _s in [SWModule]: __swig_setmethods__.update(_s.__swig_setmethods__) + __setattr__ = lambda self, name, value: _swig_setattr(self, SWLD, name, value) + __swig_getmethods__ = {} + for _s in [SWModule]: __swig_getmethods__.update(_s.__swig_getmethods__) + __getattr__ = lambda self, name: _swig_getattr(self, SWLD, name) + def __init__(self,*args): + self.this = apply(_Sword.new_SWLD,args) + self.thisown = 1 + def __del__(self, destroy= _Sword.delete_SWLD): + try: + if self.thisown: destroy(self) + except: pass + def __repr__(self): + return "" % (self.this,) + +class SWLDPtr(SWLD): + def __init__(self,this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = SWLD +_Sword.SWLD_swigregister(SWLDPtr) + +class RawLD(SWLD): + __swig_setmethods__ = {} + for _s in [SWLD]: __swig_setmethods__.update(_s.__swig_setmethods__) + __setattr__ = lambda self, name, value: _swig_setattr(self, RawLD, name, value) + __swig_getmethods__ = {} + for _s in [SWLD]: __swig_getmethods__.update(_s.__swig_getmethods__) + __getattr__ = lambda self, name: _swig_getattr(self, RawLD, name) + def __init__(self,*args): + self.this = apply(_Sword.new_RawLD,args) + self.thisown = 1 + def __del__(self, destroy= _Sword.delete_RawLD): + try: + if self.thisown: destroy(self) + except: pass + __swig_getmethods__["createModule"] = lambda x: _Sword.RawLD_createModule + if _newclass:createModule = staticmethod(_Sword.RawLD_createModule) + def __repr__(self): + return "" % (self.this,) + +class RawLDPtr(RawLD): + def __init__(self,this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = RawLD +_Sword.RawLD_swigregister(RawLDPtr) +RawLD_createModule = _Sword.RawLD_createModule + + +class RawLD4(SWLD): + __swig_setmethods__ = {} + for _s in [SWLD]: __swig_setmethods__.update(_s.__swig_setmethods__) + __setattr__ = lambda self, name, value: _swig_setattr(self, RawLD4, name, value) + __swig_getmethods__ = {} + for _s in [SWLD]: __swig_getmethods__.update(_s.__swig_getmethods__) + __getattr__ = lambda self, name: _swig_getattr(self, RawLD4, name) + def __init__(self,*args): + self.this = apply(_Sword.new_RawLD4,args) + self.thisown = 1 + def __del__(self, destroy= _Sword.delete_RawLD4): + try: + if self.thisown: destroy(self) + except: pass + __swig_getmethods__["createModule"] = lambda x: _Sword.RawLD4_createModule + if _newclass:createModule = staticmethod(_Sword.RawLD4_createModule) + def __repr__(self): + return "" % (self.this,) + +class RawLD4Ptr(RawLD4): + def __init__(self,this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = RawLD4 +_Sword.RawLD4_swigregister(RawLD4Ptr) +RawLD4_createModule = _Sword.RawLD4_createModule + + +class zLD(SWLD): + __swig_setmethods__ = {} + for _s in [SWLD]: __swig_setmethods__.update(_s.__swig_setmethods__) + __setattr__ = lambda self, name, value: _swig_setattr(self, zLD, name, value) + __swig_getmethods__ = {} + for _s in [SWLD]: __swig_getmethods__.update(_s.__swig_getmethods__) + __getattr__ = lambda self, name: _swig_getattr(self, zLD, name) + def __init__(self,*args): + self.this = apply(_Sword.new_zLD,args) + self.thisown = 1 + def __del__(self, destroy= _Sword.delete_zLD): + try: + if self.thisown: destroy(self) + except: pass + __swig_getmethods__["createModule"] = lambda x: _Sword.zLD_createModule + if _newclass:createModule = staticmethod(_Sword.zLD_createModule) + def __repr__(self): + return "" % (self.this,) + +class zLDPtr(zLD): + def __init__(self,this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = zLD +_Sword.zLD_swigregister(zLDPtr) +zLD_createModule = _Sword.zLD_createModule + + +class SWCompress(_object): + __swig_setmethods__ = {} + __setattr__ = lambda self, name, value: _swig_setattr(self, SWCompress, name, value) + __swig_getmethods__ = {} + __getattr__ = lambda self, name: _swig_getattr(self, SWCompress, name) + def __init__(self,*args): + self.this = apply(_Sword.new_SWCompress,args) + self.thisown = 1 + def __del__(self, destroy= _Sword.delete_SWCompress): + try: + if self.thisown: destroy(self) + except: pass + def Buf(*args): return apply(_Sword.SWCompress_Buf,args) + def zBuf(*args): return apply(_Sword.SWCompress_zBuf,args) + def GetChars(*args): return apply(_Sword.SWCompress_GetChars,args) + def SendChars(*args): return apply(_Sword.SWCompress_SendChars,args) + def Encode(*args): return apply(_Sword.SWCompress_Encode,args) + def Decode(*args): return apply(_Sword.SWCompress_Decode,args) + def __repr__(self): + return "" % (self.this,) + +class SWCompressPtr(SWCompress): + def __init__(self,this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = SWCompress +_Sword.SWCompress_swigregister(SWCompressPtr) + +class LZSSCompress(SWCompress): + __swig_setmethods__ = {} + for _s in [SWCompress]: __swig_setmethods__.update(_s.__swig_setmethods__) + __setattr__ = lambda self, name, value: _swig_setattr(self, LZSSCompress, name, value) + __swig_getmethods__ = {} + for _s in [SWCompress]: __swig_getmethods__.update(_s.__swig_getmethods__) + __getattr__ = lambda self, name: _swig_getattr(self, LZSSCompress, name) + def __init__(self,*args): + self.this = apply(_Sword.new_LZSSCompress,args) + self.thisown = 1 + def __del__(self, destroy= _Sword.delete_LZSSCompress): + try: + if self.thisown: destroy(self) + except: pass + def Encode(*args): return apply(_Sword.LZSSCompress_Encode,args) + def Decode(*args): return apply(_Sword.LZSSCompress_Decode,args) + def __repr__(self): + return "" % (self.this,) + +class LZSSCompressPtr(LZSSCompress): + def __init__(self,this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = LZSSCompress +_Sword.LZSSCompress_swigregister(LZSSCompressPtr) + +class ZipCompress(SWCompress): + __swig_setmethods__ = {} + for _s in [SWCompress]: __swig_setmethods__.update(_s.__swig_setmethods__) + __setattr__ = lambda self, name, value: _swig_setattr(self, ZipCompress, name, value) + __swig_getmethods__ = {} + for _s in [SWCompress]: __swig_getmethods__.update(_s.__swig_getmethods__) + __getattr__ = lambda self, name: _swig_getattr(self, ZipCompress, name) + def __init__(self,*args): + self.this = apply(_Sword.new_ZipCompress,args) + self.thisown = 1 + def __del__(self, destroy= _Sword.delete_ZipCompress): + try: + if self.thisown: destroy(self) + except: pass + def Encode(*args): return apply(_Sword.ZipCompress_Encode,args) + def Decode(*args): return apply(_Sword.ZipCompress_Decode,args) + def __repr__(self): + return "" % (self.this,) + +class ZipCompressPtr(ZipCompress): + def __init__(self,this): + self.this = this + if not hasattr(self,"thisown"): self.thisown = 0 + self.__class__ = ZipCompress +_Sword.ZipCompress_swigregister(ZipCompressPtr) + + diff --git a/bindings/swig/rawcom.i b/bindings/swig/rawcom.i new file mode 100644 index 0000000..4188c0a --- /dev/null +++ b/bindings/swig/rawcom.i @@ -0,0 +1,15 @@ +%{ +#include "rawcom.h" +using namespace sword; +%} + +class RawCom : public SWCom { +public: + RawCom (const char *ipath, const char *iname = 0, const char *idesc = 0, + SWDisplay * idisp = 0, SWTextEncoding encoding = ENC_UNKNOWN, SWTextDirection dir = DIRECTION_LTR, SWTextMarkup markup = FMT_UNKNOWN, + const char* ilang = 0); + virtual ~ RawCom (); + + static char createModule (const char *path); +}; + diff --git a/bindings/swig/rawgenbook.i b/bindings/swig/rawgenbook.i new file mode 100644 index 0000000..c958441 --- /dev/null +++ b/bindings/swig/rawgenbook.i @@ -0,0 +1,22 @@ +%{ +#include "rawgenbook.h" +#include "treekeyidx.h" +#include "swkey.h" +using namespace sword; +%} + +class RawGenBook : public SWGenBook { +public: + RawGenBook (const char *ipath, const char *iname = 0, const char *idesc = 0, SWDisplay * idisp = 0, SWTextEncoding encoding = ENC_UNKNOWN, SWTextDirection dir = DIRECTION_LTR, SWTextMarkup markup = FMT_UNKNOWN, const char* ilang = 0); + virtual ~ RawGenBook (); + + static char createModule (const char *ipath); + +%extend { + TreeKeyIdx* getTreeKey() { + return ( (TreeKeyIdx *) ( (SWKey *) (*self) ) ); + }; +} +}; + + diff --git a/bindings/swig/rawld.i b/bindings/swig/rawld.i new file mode 100644 index 0000000..1d9c0c6 --- /dev/null +++ b/bindings/swig/rawld.i @@ -0,0 +1,13 @@ +%{ +#include "rawld.h" +using namespace sword; +%} + +class RawLD : public SWLD { +public: + RawLD (const char *ipath, const char *iname = 0, const char *idesc = 0, SWDisplay * idisp = 0, SWTextEncoding encoding = ENC_UNKNOWN, SWTextDirection dir = DIRECTION_LTR, SWTextMarkup markup = FMT_UNKNOWN, const char* ilang = 0); + virtual ~RawLD (); + + static char createModule (const char *path); +}; + diff --git a/bindings/swig/rawld4.i b/bindings/swig/rawld4.i new file mode 100644 index 0000000..369e439 --- /dev/null +++ b/bindings/swig/rawld4.i @@ -0,0 +1,13 @@ +%{ +#include "rawld4.h" +using namespace sword; +%} + +class RawLD4 : public SWLD { +public: + RawLD4(const char *ipath, const char *iname = 0, const char *idesc = 0, SWDisplay * idisp = 0, SWTextEncoding encoding = ENC_UNKNOWN, SWTextDirection dir = DIRECTION_LTR, SWTextMarkup markup = FMT_UNKNOWN, const char* ilang = 0); + virtual ~RawLD4(); + + static char createModule (const char *path); +}; + diff --git a/bindings/swig/rawtext.i b/bindings/swig/rawtext.i new file mode 100644 index 0000000..96391e5 --- /dev/null +++ b/bindings/swig/rawtext.i @@ -0,0 +1,12 @@ +%{ +#include "rawtext.h" +using namespace sword; +%} + +class RawText : public SWText { +public: + RawText (const char *ipath, const char *iname = 0, const char *idesc = 0, SWDisplay * idisp = 0, SWTextEncoding encoding = ENC_UNKNOWN, SWTextDirection dir = DIRECTION_LTR, SWTextMarkup markup = FMT_UNKNOWN, const char* ilang = 0); + + static char createModule (const char *path) { return RawVerse::createModule (path); } +}; + diff --git a/bindings/swig/swbuf.i b/bindings/swig/swbuf.i new file mode 100644 index 0000000..1df97ac --- /dev/null +++ b/bindings/swig/swbuf.i @@ -0,0 +1,65 @@ +%{ +#include "swbuf.h" +using namespace sword; +%} + +class SWBuf { +public: + SWBuf(const char *initVal = 0); + SWBuf(char initVal); + SWBuf(const SWBuf &other); + virtual ~SWBuf(); + + inline void setFillByte(char ch) { fillByte = ch; } + inline char getFillByte() { return fillByte; } + inline const char *c_str() const; + inline char &charAt(unsigned int pos) { return ((pos <= (unsigned int)(end - buf)) ? buf[pos] : nullStr[0]); } + inline unsigned int size() const { return length(); } + inline unsigned int length() const { return end - buf; } + + void set(const char *newVal); + void set(const SWBuf &newVal); + void setSize(unsigned int len); + void append(const char *str, int max = -1); + inline void append(const SWBuf &str, int max = -1) { append(str.c_str(), max); } + inline void append(char ch); + void appendFormatted(const char *format, ...); + + inline char *getRawData(); + + /* + inline operator const char *() const { return c_str(); } + inline char &operator[](unsigned int pos) { return charAt(pos); } + inline char &operator[](int pos) { return charAt((unsigned int)pos); } + inline SWBuf &operator =(const char *newVal) { set(newVal); return *this; } + inline SWBuf &operator =(const SWBuf &other) { set(other); return *this; } + inline SWBuf &operator +=(const char *str) { append(str); return *this; } + inline SWBuf &operator +=(char ch) { append(ch); return *this; } + inline SWBuf &operator -=(unsigned int len) { setSize(length()-len); return *this; } + inline SWBuf &operator --(int) { operator -=(1); return *this; } + inline SWBuf operator +(const SWBuf &other) const { + SWBuf retVal = buf; + retVal += other; + return retVal; + } + inline SWBuf operator +(char ch) const { return (*this) + SWBuf(ch); } + */ + + int compare(const SWBuf &other) const; + + /* + inline bool operator ==(const SWBuf &other) const; + inline bool operator !=(const SWBuf &other) const; + inline bool operator > (const SWBuf &other) const; + inline bool operator < (const SWBuf &other) const; + inline bool operator <=(const SWBuf &other) const; + inline bool operator >=(const SWBuf &other) const; + + inline bool operator ==(const char *other) const; + inline bool operator !=(const char *other) const; + inline bool operator > (const char *other) const; + inline bool operator < (const char *other) const; + inline bool operator <=(const char *other) const; + inline bool operator >=(const char *other) const; + */ +}; diff --git a/bindings/swig/swcom.i b/bindings/swig/swcom.i new file mode 100644 index 0000000..2803eed --- /dev/null +++ b/bindings/swig/swcom.i @@ -0,0 +1,11 @@ +%{ +#include "swcom.h" +using namespace sword; +%} + +class SWCom : public SWModule { +protected: + SWCom(const char *imodname = 0, const char *imoddesc = 0, SWDisplay * idisp = 0, SWTextEncoding enc = ENC_UNKNOWN, SWTextDirection dir = DIRECTION_LTR, SWTextMarkup mark = FMT_UNKNOWN, const char* ilang = 0); + virtual ~SWCom(); +}; + diff --git a/bindings/swig/swcompress.i b/bindings/swig/swcompress.i new file mode 100644 index 0000000..9029db6 --- /dev/null +++ b/bindings/swig/swcompress.i @@ -0,0 +1,17 @@ +%{ +#include +using namespace sword; +%} + +class SWCompress { +public: + SWCompress(); + virtual ~SWCompress(); + + virtual char *Buf (const char *buf = 0, unsigned long *len = 0); + virtual char *zBuf (unsigned long *len, char *buf = 0); + virtual unsigned long GetChars (char *buf, unsigned long len); + virtual unsigned long SendChars (char *buf, unsigned long len); + virtual void Encode (void); + virtual void Decode (void); +}; diff --git a/bindings/swig/swconfig.i b/bindings/swig/swconfig.i new file mode 100644 index 0000000..06d3647 --- /dev/null +++ b/bindings/swig/swconfig.i @@ -0,0 +1,43 @@ +%{ +#include +#include +#include +#include +#include +#include "swconfig.h" + +using namespace sword; +using namespace std; +%} + +%include "std_vector.i" +%include "std_string.i" +%include "typemaps.i" + + +typedef multimapwithdefault < SWBuf, SWBuf, less < SWBuf > > ConfigEntMap; +typedef map < SWBuf, ConfigEntMap, less < SWBuf > > SectionMap; + +class SWConfig { +public: + //member data + SWBuf filename; + SectionMap Sections; + + //member functions + SWConfig(const char *ifilename); + virtual ~ SWConfig(); + + virtual void Load(); + virtual void Save(); + +%extend { + void set(const char* group, const char* entry, const char* value) { + self->Sections[group][entry] = value; + }; + const char* get(const char* group, const char* entry) { + return self->Sections[group][entry].c_str(); + }; +} + +}; diff --git a/bindings/swig/swfiltermgr.i b/bindings/swig/swfiltermgr.i new file mode 100644 index 0000000..3db9541 --- /dev/null +++ b/bindings/swig/swfiltermgr.i @@ -0,0 +1,22 @@ +%{ +#include +using namespace sword; +%} + +class SWFilterMgr { + SWFilterMgr (); + virtual ~SWFilterMgr (); + + virtual void setParentMgr(SWMgr *parentMgr); + virtual SWMgr *getParentMgr(); + virtual void AddGlobalOptions (SWModule * module, ConfigEntMap & section, + ConfigEntMap::iterator start, + ConfigEntMap::iterator end); + virtual void AddLocalOptions (SWModule * module, ConfigEntMap & section, + ConfigEntMap::iterator start, + ConfigEntMap::iterator end); + virtual void AddEncodingFilters (SWModule * module, ConfigEntMap & section); + virtual void AddRenderFilters (SWModule * module, ConfigEntMap & section); + virtual void AddStripFilters (SWModule * module, ConfigEntMap & section); + virtual void AddRawFilters (SWModule * module, ConfigEntMap & section); +}; diff --git a/bindings/swig/swgenbook.i b/bindings/swig/swgenbook.i new file mode 100644 index 0000000..5acf355 --- /dev/null +++ b/bindings/swig/swgenbook.i @@ -0,0 +1,11 @@ +%{ +#include "swgenbook.h" +using namespace sword; +%} + +class SWGenBook : public SWModule { +protected: + SWGenBook(const char *imodname = 0, const char *imoddesc = 0, SWDisplay * idisp = 0, SWTextEncoding encoding = ENC_UNKNOWN, SWTextDirection dir = DIRECTION_LTR, SWTextMarkup markup = FMT_UNKNOWN, const char* ilang = 0); + virtual ~SWGenBook(); +}; + diff --git a/bindings/swig/swig-perl.doxygen b/bindings/swig/swig-perl.doxygen new file mode 100644 index 0000000..2c2b650 --- /dev/null +++ b/bindings/swig/swig-perl.doxygen @@ -0,0 +1,177 @@ +# Doxyfile 0.1 + +#--------------------------------------------------------------------------- +# General configuration options +#--------------------------------------------------------------------------- +PROJECT_NAME = SWIG-Perl +PROJECT_NUMBER = 0.1 +OUTPUT_DIRECTORY = . +OUTPUT_LANGUAGE = English +EXTRACT_ALL = YES +EXTRACT_PRIVATE = NO +EXTRACT_STATIC = YES +EXTRACT_LOCAL_CLASSES = YES +HIDE_UNDOC_MEMBERS = NO +HIDE_UNDOC_CLASSES = NO +BRIEF_MEMBER_DESC = YES +REPEAT_BRIEF = YES +ALWAYS_DETAILED_SEC = NO +INLINE_INHERITED_MEMB = NO +FULL_PATH_NAMES = NO +STRIP_FROM_PATH = +INTERNAL_DOCS = NO +STRIP_CODE_COMMENTS = YES +CASE_SENSE_NAMES = YES +SHORT_NAMES = NO +HIDE_SCOPE_NAMES = NO +VERBATIM_HEADERS = YES +SHOW_INCLUDE_FILES = YES +JAVADOC_AUTOBRIEF = NO +INHERIT_DOCS = YES +INLINE_INFO = YES +SORT_MEMBER_DOCS = YES +DISTRIBUTE_GROUP_DOC = NO +TAB_SIZE = 8 +GENERATE_TODOLIST = YES +GENERATE_TESTLIST = YES +GENERATE_BUGLIST = YES +ALIASES = +ENABLED_SECTIONS = +MAX_INITIALIZER_LINES = 30 +OPTIMIZE_OUTPUT_FOR_C = NO +SHOW_USED_FILES = YES +#--------------------------------------------------------------------------- +# configuration options related to warning and progress messages +#--------------------------------------------------------------------------- +QUIET = NO +WARNINGS = YES +WARN_IF_UNDOCUMENTED = YES +WARN_FORMAT = "$file:$line: $text" +WARN_LOGFILE = +#--------------------------------------------------------------------------- +# configuration options related to the input files +#--------------------------------------------------------------------------- +INPUT = +FILE_PATTERNS = *.i +RECURSIVE = NO +EXCLUDE = +EXCLUDE_PATTERNS = +EXAMPLE_PATH = +EXAMPLE_PATTERNS = +EXAMPLE_RECURSIVE = NO +IMAGE_PATH = +INPUT_FILTER = +FILTER_SOURCE_FILES = NO +#--------------------------------------------------------------------------- +# configuration options related to source browsing +#--------------------------------------------------------------------------- +SOURCE_BROWSER = NO +INLINE_SOURCES = NO +REFERENCED_BY_RELATION = YES +REFERENCES_RELATION = YES +#--------------------------------------------------------------------------- +# configuration options related to the alphabetical class index +#--------------------------------------------------------------------------- +ALPHABETICAL_INDEX = YES +COLS_IN_ALPHA_INDEX = 5 +IGNORE_PREFIX = +#--------------------------------------------------------------------------- +# configuration options related to the HTML output +#--------------------------------------------------------------------------- +GENERATE_HTML = YES +HTML_OUTPUT = api-documentation +HTML_HEADER = +HTML_FOOTER = +HTML_STYLESHEET = +HTML_ALIGN_MEMBERS = YES +GENERATE_HTMLHELP = NO +GENERATE_CHI = NO +BINARY_TOC = NO +TOC_EXPAND = NO +DISABLE_INDEX = NO +ENUM_VALUES_PER_LINE = 4 +GENERATE_TREEVIEW = NO +TREEVIEW_WIDTH = 250 +#--------------------------------------------------------------------------- +# configuration options related to the LaTeX output +#--------------------------------------------------------------------------- +GENERATE_LATEX = NO +LATEX_OUTPUT = latex +COMPACT_LATEX = NO +PAPER_TYPE = a4wide +EXTRA_PACKAGES = +LATEX_HEADER = +PDF_HYPERLINKS = NO +USE_PDFLATEX = NO +LATEX_BATCHMODE = NO +#--------------------------------------------------------------------------- +# configuration options related to the RTF output +#--------------------------------------------------------------------------- +GENERATE_RTF = NO +RTF_OUTPUT = rtf +COMPACT_RTF = NO +RTF_HYPERLINKS = NO +RTF_STYLESHEET_FILE = +RTF_EXTENSIONS_FILE = +#--------------------------------------------------------------------------- +# configuration options related to the man page output +#--------------------------------------------------------------------------- +GENERATE_MAN = NO +MAN_OUTPUT = man +MAN_EXTENSION = .3 +MAN_LINKS = NO +#--------------------------------------------------------------------------- +# configuration options related to the XML output +#--------------------------------------------------------------------------- +GENERATE_XML = NO +#--------------------------------------------------------------------------- +# configuration options for the AutoGen Definitions output +#--------------------------------------------------------------------------- +GENERATE_AUTOGEN_DEF = NO +#--------------------------------------------------------------------------- +# Configuration options related to the preprocessor +#--------------------------------------------------------------------------- +ENABLE_PREPROCESSING = YES +MACRO_EXPANSION = NO +EXPAND_ONLY_PREDEF = NO +SEARCH_INCLUDES = YES +INCLUDE_PATH = +INCLUDE_FILE_PATTERNS = +PREDEFINED = +EXPAND_AS_DEFINED = +SKIP_FUNCTION_MACROS = YES +#--------------------------------------------------------------------------- +# Configuration::addtions related to external references +#--------------------------------------------------------------------------- +TAGFILES = +GENERATE_TAGFILE = +ALLEXTERNALS = NO +PERL_PATH = /usr/bin/perl +#--------------------------------------------------------------------------- +# Configuration options related to the dot tool +#--------------------------------------------------------------------------- +CLASS_DIAGRAMS = YES +HAVE_DOT = NO +CLASS_GRAPH = YES +COLLABORATION_GRAPH = YES +TEMPLATE_RELATIONS = YES +HIDE_UNDOC_RELATIONS = YES +INCLUDE_GRAPH = YES +INCLUDED_BY_GRAPH = YES +GRAPHICAL_HIERARCHY = YES +DOT_PATH = +DOTFILE_DIRS = +MAX_DOT_GRAPH_WIDTH = 1024 +MAX_DOT_GRAPH_HEIGHT = 1024 +GENERATE_LEGEND = YES +DOT_CLEANUP = YES +#--------------------------------------------------------------------------- +# Configuration::addtions related to the search engine +#--------------------------------------------------------------------------- +SEARCHENGINE = NO +CGI_NAME = search.cgi +CGI_URL = +DOC_URL = +DOC_ABSPATH = +BIN_ABSPATH = /usr/local/bin/ +EXT_DOC_PATHS = diff --git a/bindings/swig/swkey.i b/bindings/swig/swkey.i new file mode 100644 index 0000000..2fa3f69 --- /dev/null +++ b/bindings/swig/swkey.i @@ -0,0 +1,75 @@ +%{ +#include "swkey.h" +#include "versekey.h" +using namespace sword; +%} + +class SW_POSITION { +public: + SW_POSITION(char ipos); +}; + +#define POS_TOP ((char)1) +#define POS_BOTTOM ((char)2) + +#define TOP SW_POSITION(POS_TOP) +#define BOTTOM SW_POSITION(POS_BOTTOM) + +/** +* The SWKey class for the SWIG-Perl interface. +*/ +class SWKey { +public: + SWKey(const char *ikey = 0); + SWKey(SWKey const &k); + virtual SWKey *clone () const; + virtual ~SWKey(); + + char Persist() const; + +%extend { + void setPersist(signed char persists) { + self->Persist(persists); + }; +} + + virtual char Error (); + + virtual void setText(const char *ikey); + virtual const char *getText() const; + virtual const char *getShortText() const; + + virtual int compare (const SWKey & ikey); + virtual bool equals(const SWKey &ikey); + //virtual void setPosition(SW_POSITION); + + virtual void decrement(int steps = 1); + virtual void increment(int steps = 1); + virtual char Traversable (); + + virtual long Index() const; + //virtual long Index(long iindex); + +%extend { + /** + * Goes to the next key. Only useful for VerseKeys at the moment. + */ + void next() { + (*self)++; + }; + void prev() { + (*self)++; + }; + void setKey(const SWKey* key) { + self->copyFrom(*key); + }; + + /** + * We define here some casting functions since Perl etc. don't support casts of pointers. + */ + VerseKey* toVerseKey() { + return dynamic_cast(self); + }; +} + +}; diff --git a/bindings/swig/swld.i b/bindings/swig/swld.i new file mode 100644 index 0000000..c317062 --- /dev/null +++ b/bindings/swig/swld.i @@ -0,0 +1,11 @@ +%{ +#include "swld.h" +using namespace sword; +%} + +class SWLD : public SWModule { +public: + SWLD (const char *imodname = 0, const char *imoddesc = 0, SWDisplay * idisp = 0, SWTextEncoding encoding = ENC_UNKNOWN, SWTextDirection dir = DIRECTION_LTR, SWTextMarkup markup = FMT_UNKNOWN, const char* ilang = 0); + virtual ~ SWLD (); +}; + diff --git a/bindings/swig/swmgr.i b/bindings/swig/swmgr.i new file mode 100644 index 0000000..2328336 --- /dev/null +++ b/bindings/swig/swmgr.i @@ -0,0 +1,59 @@ +%{ +#include +using namespace sword; +%} + +typedef map < SWBuf, SWModule *, less < SWBuf > > ModMap; +typedef list < SWBuf > StringList; +typedef map < SWBuf, SWFilter * > FilterMap; + +class SWMgr { +public: +//member data + static void findConfig (char *configType, char **prefixPath, char **configPath); + + SWConfig *config; + SWConfig *sysconfig; + ModMap Modules; + char *prefixPath; + char *configPath; + +//member functions + SWMgr (SWConfig* iconfig = 0, SWConfig* isysconfig = 0, bool autoload = true, SWFilterMgr* filterMgr = 0); + SWMgr(const char *iConfigPath, bool autoload = true, SWFilterMgr *filterMgr = 0); + virtual ~SWMgr(); + + virtual signed char Load (); + virtual void setGlobalOption (const char *option, const char *value); + virtual const char *getGlobalOption (const char *option); + virtual const char *getGlobalOptionTip (const char *option); + virtual StringList getGlobalOptions (); + virtual StringList getGlobalOptionValues (const char *option); + virtual signed char setCipherKey (const char *modName, const char *key); + + SWModule *getModule(const char *modName); + virtual void InstallScan(const char *dir); + +%extend { + const int moduleCount() { + return self->Modules.size(); + } + + SWModule* getModuleAt( const int pos ) { + if (pos < 0 || pos > self->Modules.size() ) + return 0; + + ModMap::iterator it = self->Modules.begin(); + + for (int i = 0; i < pos; ++i) { + it++; + } + + if ( it != self->Modules.end() ) { + return (*it).second; + } + + return 0; + } +} +}; diff --git a/bindings/swig/swmodule.i b/bindings/swig/swmodule.i new file mode 100644 index 0000000..b9a792f --- /dev/null +++ b/bindings/swig/swmodule.i @@ -0,0 +1,100 @@ +%{ +#include "swmodule.h" +using namespace sword; +%} + +class SWModule { +public: + bool terminateSearch; + + SWModule (const char *imodname = 0, const char *imoddesc = 0, SWDisplay * idisp = 0, char *imodtype = 0, SWTextEncoding encoding = ENC_UNKNOWN, SWTextDirection dir = DIRECTION_LTR, SWTextMarkup markup = FMT_UNKNOWN, const char* modlang = 0); + virtual char Error(); + virtual const bool isUnicode() const; + virtual const ConfigEntMap& getConfig() const; + virtual const char *getConfigEntry(const char *key) const; + + virtual char SetKey (const SWKey *ikey); + virtual SWKey& Key() const; + virtual SWKey *CreateKey (); + virtual const char* KeyText(const char *imodtype = 0); + virtual char Display(); + +//Search functions + static void nullPercent (char percent, void *userData); + virtual ListKey & Search (const char *istr, int searchType = 0, int flags = 0, SWKey * scope = 0, bool * justCheckIfSupported = 0, void (*percent) (char, void *) = &nullPercent, void *percentUserData = 0); + virtual signed char createSearchFramework(); + virtual bool hasSearchFramework(); + virtual bool isSearchOptimallySupported (const char *istr, int searchType, int flags, SWKey * scope); + +//navigation functions +%extend { + const bool next() { + (*self)++; + return !self->Error(); + }; + const bool prev() { + (*self)--; + return !self->Error(); + }; + const bool inc(const int howFar) { + (*self)+=howFar; + return !self->Error(); + }; + const bool dec(const int howFar) { + (*self)-=howFar; + return !self->Error(); + }; + void setPosition(SW_POSITION pos) { + (*self) = pos; + }; + void top() { + (*self) = TOP; + }; + void bottom() { + (*self) = BOTTOM; + }; +} + +//data functions +%extend { + const char* text() { + return (const char*)*self; + }; + const char* StripText() { + return self->StripText(); + }; +} + + virtual char *getRawEntry(); + + virtual void setSkipConsecutiveLinks(bool val); + virtual bool getSkipConsecutiveLinks(); + virtual AttributeTypeList &getEntryAttributes() const; + virtual void processEntryAttributes(bool val) const; + virtual bool isProcessEntryAttributes() const; + +//module info functions + virtual char* Name (const char *imodname = 0); + virtual char* Description (const char *imoddesc = 0); + virtual char* Type (const char *imodtype = 0); + virtual char Direction(signed char newdir = -1); + virtual char Encoding(signed char enc = -1); + virtual char Markup(signed char enc = -1); + virtual char* Lang (const char *imodlang = 0); + +//write interface + virtual bool isWritable (); + static signed char createModule (const char *); + virtual void setEntry (const char *inbuf, long len); + virtual void deleteEntry (); + +%extend { + void write(const char* text) { + (*self) << text; + }; + + void writeLink(const SWKey* key) { + (*self) << key; + }; +} +}; diff --git a/bindings/swig/sword.i b/bindings/swig/sword.i new file mode 100644 index 0000000..cad0531 --- /dev/null +++ b/bindings/swig/sword.i @@ -0,0 +1,52 @@ +/** @mainpage +* This is the API documentation of the SWIG interface to Sword!
+* The interface contains the most useful classes of Sword to read, navigate and create/write modules. The SWIG intreface is interesting +* for all who want to write Perl/PHP/Phyton/Ruby/TCL/Java code using the Sword library.
+* My aim is to support all who do so much work for the Sword project (Troy, Chris and all the others) and to make their work more easy with the SWIG interface. +* The interface tries to use the function names of the Sword C++ API, but since operators are not (yet) supported in SWIG there are some additions to the functions, the operators can't be used.
+* Here are the basic classes you should know of: +* @ref SWMgr, SWModule, SWKey, VerseKey and SWConfig. +*/ + +%module Sword +%{ +#undef bool +#undef assert +#undef LOCAL +#undef list +%} + +%include "swconfig.i" +%include "swmgr.i" +%include "swmodule.i" + +%include "swkey.i" +%include "versekey.i" +%include "listkey.i" +%include "treekey.i" +%include "treekeyidx.i" + +%include "localemgr.i" +%include "swfiltermgr.i" + +%include "swtext.i" +%include "rawtext.i" +%include "ztext.i" + +%include "swcom.i" +%include "rawcom.i" +%include "zcom.i" + +%include "swgenbook.i" +%include "rawgenbook.i" + +%include "swld.i" +%include "rawld.i" +%include "rawld4.i" +%include "zld.i" + +%include "swcompress.i" +%include "lzsscompress.i" +%include "zipcompress.i" + +%include "swbuf.i" \ No newline at end of file diff --git a/bindings/swig/sword.pl b/bindings/swig/sword.pl new file mode 100644 index 0000000..873b948 --- /dev/null +++ b/bindings/swig/sword.pl @@ -0,0 +1,104 @@ +#!/usr/bin/perl + +use sword; + +print "Version (should be 1.0): " , $sword::VERSION , "\n"; + +print "Create SWConfig object!\n"; +$config = new sword::SWConfig("test.conf"); + +print "Load\n"; +$config->Load(); + +print "Set value ... "; +print $config->set("Group", "Entry", "Value"); +print " finished \n"; + +print "Get value ... "; +print $config->get("Group", "Entry"); +print " finished \n"; + +$config->Save(); + +#testing SWMgr +print "testing SWMgr\n"; +#$localemgr = sword::LocaleMgr::systemLocaleMgr(); +#$localemgr->setDefaultLocaleName("de"); + +$mgr = new sword::SWMgr(); +print "init ... "; +#$module = $mgr->module("GerLut1545-temp"); +$module = $mgr->module("WEB"); +print "Printing WEB Module information: \n"; +print "Name:\t", $module->Name(),"\nDescription:\t", $module->Description(), "\nLang:\t", $module->Lang(), "\n"; + +$key = new sword::VerseKey("Matthew 3:16"); +$key->setPersist(1); +$module->SetKey($key); + +for ($i = 0; $i < 15; $i++) { + print "(", $module->KeyText() ,")\t", $module->StripText(), "\n"; + $key->next(); +} +$key->increment(103); +print "(", $module->KeyText() ,")\t", $module->StripText(), "\n"; + +#testing write interface +$key->setText("John 3:16"); +#$module->SetKey($key); +$module->write("This is a test entry! This tests the write abilities of the Sword Perl classes"); +print "(", $module->KeyText() ,")\t", $module->StripText(), "\n"; + +print "Seraching for God: "; +$list = $module->Search("Gott"); +print $list->Count(), " entries found!\n"; +#for ( $i = 0; $i < $list->Count(); $i++) { +# print "(", $i, ")\t", $list->GetElement()->getText(), "\n"; +# $list->next(); +#} + +print "Creating new module! Writing search result..."; +#sword::RawText::createModule("/usr/share/sword/modules/texts/ztext/testmodule/"); +#$newmod = new sword::RawText("/usr/share/sword/modules/texts/ztext/testmodule/"); + +#$key->setText("Genesis 1:1"); +$newkey = $key->clone(); +#$newmod->SetKey($newkey); +# +#for ($i = 0; $i < $list->Count(); $i++, $list->next()) { +# $key->setText($list->GetElement()->getText()); +# $newkey->setText($list->GetElement()->getText()); +# +# $newmod->write( $module->StripText() ); +#} + +print "Now create the LD module\n"; + + mkdir("ldmod"); +sword::zText::createModule("ldmod/",4); + +print "first step}\n"; + +$newmod = new sword::zText("ldmod/"); + +print "Created module;\n"; + +$newkey = $newmod->CreateKey(); +$newkey->setPersist(1); +$newkey->setText(" "); +$module->SetKey($newkey); + +print "Loop! \n"; + +for ($i = 0; $i < $list->Count(); $i++) { + print $list->GetElement()->getText() . "\n"; + + $key->setText($list->GetElement()->getText()); + $newkey->setText($list->GetElement()->getText()); + + $newmod->SetKey($newkey); + + $newmod->write( $module->StripText() ); + $list->next(); +} + diff --git a/bindings/swig/swposition.i b/bindings/swig/swposition.i new file mode 100644 index 0000000..d76f616 --- /dev/null +++ b/bindings/swig/swposition.i @@ -0,0 +1,15 @@ +%{ +#include "swkey.h" +using namespace sword; +%} + +class SW_POSITION { +public: + SW_POSITION(char ipos); +}; + +%define POS_TOP ((char)1) +%define POS_BOTTOM ((char)2) + +%define TOP SW_POSITION(POS_TOP) +%define BOTTOM SW_POSITION(POS_BOTTOM) diff --git a/bindings/swig/swtext.i b/bindings/swig/swtext.i new file mode 100644 index 0000000..3a2855d --- /dev/null +++ b/bindings/swig/swtext.i @@ -0,0 +1,11 @@ +%{ +#include "swtext.h" +using namespace sword; +%} + +class SWText : public SWModule { +public: + SWText (const char *imodname = 0, const char *imoddesc = 0, SWDisplay * idisp = 0, SWTextEncoding encoding = ENC_UNKNOWN, SWTextDirection dir = DIRECTION_LTR, SWTextMarkup markup = FMT_UNKNOWN, const char* ilang = 0); + virtual ~ SWText (); +}; + diff --git a/bindings/swig/treekey.i b/bindings/swig/treekey.i new file mode 100644 index 0000000..5b5f659 --- /dev/null +++ b/bindings/swig/treekey.i @@ -0,0 +1,48 @@ +%{ +#include "treekey.h" +using namespace sword; +%} + +class TreeKey : public SWKey { +protected: + TreeKey(); + ~TreeKey(); + +public: + + virtual const char *getLocalName() = 0; + virtual const char *setLocalName(const char *) = 0; + + virtual const char *getUserData(int *size = 0) = 0; + virtual void setUserData(const char *userData, int size = 0) = 0; + + virtual const char *getFullName() const = 0; + + virtual void root() = 0; + virtual bool parent() = 0; + + virtual bool firstChild() = 0; + virtual bool nextSibling() = 0; + virtual bool previousSibling() = 0; + + virtual bool hasChildren() = 0; + + virtual void append() = 0; + virtual void appendChild() = 0; + virtual void insertBefore() = 0; + + virtual void remove() = 0; + + virtual void setOffset(unsigned long offset) = 0; + virtual unsigned long getOffset() const = 0; + + //virtual void setText(const char *ikey) = 0; + virtual void setPosition(SW_POSITION p) = 0; + //virtual const char *getText() const = 0; + //virtual int compare(const SWKey &ikey) = 0; + //virtual void decrement(int steps = 1) = 0; + //virtual void increment(int steps = 1) = 0; + virtual char Traversable (); + virtual long Index () const; + //virtual long Index (long iindex); +}; diff --git a/bindings/swig/treekeyidx.i b/bindings/swig/treekeyidx.i new file mode 100644 index 0000000..265d137 --- /dev/null +++ b/bindings/swig/treekeyidx.i @@ -0,0 +1,19 @@ +%{ +#include "treekeyidx.h" +using namespace sword; +%} + +class TreeKeyIdx : public TreeKey { +public: + TreeKeyIdx(const TreeKeyIdx &ikey); + TreeKeyIdx (const char *idxPath, int fileMode = -1); + ~TreeKeyIdx (); + + virtual void save(); + + virtual void copyFrom(const TreeKeyIdx &ikey); + + virtual int _compare (const TreeKeyIdx & ikey); + + static signed char create(const char *path); +}; diff --git a/bindings/swig/versekey.i b/bindings/swig/versekey.i new file mode 100644 index 0000000..71aec5e --- /dev/null +++ b/bindings/swig/versekey.i @@ -0,0 +1,128 @@ +%{ +#include "versekey.h" +#include "listkey.h" +using namespace sword; +%} + +class VerseKey : public SWKey { +public: + VerseKey(const char *ikey = 0); + VerseKey(const SWKey * ikey); + VerseKey(const char *min, const char *max); + VerseKey(const VerseKey &k); + virtual ~VerseKey(); + + virtual SWKey *clone() const; + +//bound management +// VerseKey & LowerBound(const char *lb); +// VerseKey & UpperBound(const char *ub); + VerseKey & LowerBound() const; + VerseKey & UpperBound() const; + void ClearBounds(); + +//data functions + virtual ListKey ParseVerseList (const char *buf, const char *defaultKey="Genesis 1:1", bool expandRange=false); + + virtual void setText(const char *ikey); + virtual const char* getText () const; + virtual const char *getRangeText() const; + virtual const char *getShortText() const; + + + virtual char Traversable(); + + virtual void decrement(int step); + virtual void increment(int step); + + virtual const char *getBookName() const; + virtual const char *getBookAbbrev() const; + + virtual char Testament() const; + virtual char Book() const; + virtual int Chapter() const; + virtual int Verse() const; + + //virtual char Testament(char itestament); +// virtual char Book(char ibook); +// virtual int Chapter(int ichapter); +// virtual int Verse(int iverse); + + virtual void Normalize(char autocheck = 0); + virtual char AutoNormalize(char iautonorm = MAXPOS (char)); + + virtual char Headings(char iheadings = MAXPOS (char)); + virtual const char *getOSISRef() const; + + virtual int compare(const SWKey & ikey); + virtual int _compare(const VerseKey & ikey); + + virtual void setLocale(const char *name); + virtual const char *getLocale() const; + +// extensions to Sword's class + +%extend { + /* Get number of books in the given testament + * testament may be 1 (OT) or 2 (NT) + */ + const int bookCount( const int testament ) { + if ( (testament < 1) || (testament > 2) ) { + return 0; + }; + return self->BMAX[testament-1]; + }; + + /* Get name of book + * Returns the name of the booknumber in the givn testament. + * Testament may be 1 (OT) or 2 (NT) + * book may be in the range of 1 <= bookCount(testament) + */ + const char* bookName( const int testament, const int book ) { + if ( (testament < 1) || (testament > 2) ) { + return ""; + }; + if ( (book < 1) || (book > self->BMAX[testament-1]) ) { + return ""; + } + + return self->books[testament-1][book-1].name; + }; + + /* Get number of chapters in the given testament and book number + * testament may be 1 (OT) or 2 (NT) + * book may be in the range 1 <= bookCount(testament) + */ + const int chapterCount( const int testament, const int book ) { + if ( (testament < 1) || (testament > 2) ) { + return 0; + }; + if ( (book < 1) || (book > self->BMAX[testament-1]) ) { + return 0; + } + + return self->books[testament-1][book-1].chapmax; + }; + + /* Get number of verses in the given chapter of the given in the given testament, + * testament may be 1 (OT) or 2 (NT) + * book may be in the range 1 <= bookCount(testament) + * chapter may be in the range 1 <= chapterCount(testament, book) + */ + const int verseCount( const int testament, const int book, const int chapter ) { + if ( (testament < 1) || (testament > 2) ) { + return 0; + }; + if ( (book < 1) || (book > self->BMAX[testament-1]) ) { + return 0; + } + if ( (chapter < 1) || (chapter > self->books[testament-1][book-1].chapmax) ) { + return 0; + } + + return self->books[testament-1][book-1].versemax[chapter-1]; + + }; +} + +}; diff --git a/bindings/swig/zcom.i b/bindings/swig/zcom.i new file mode 100644 index 0000000..7356ab2 --- /dev/null +++ b/bindings/swig/zcom.i @@ -0,0 +1,13 @@ +%{ +#include "zcom.h" +using namespace sword; +%} + +class zCom : public SWCom { +public: + zCom (const char *ipath, const char *iname = 0, const char *idesc = 0, int blockType = CHAPTERBLOCKS, SWCompress * icomp = 0, SWDisplay * idisp = 0, SWTextEncoding encoding = ENC_UNKNOWN, SWTextDirection dir = DIRECTION_LTR, SWTextMarkup markup = FMT_UNKNOWN, const char* ilang = 0); + virtual ~zCom (); + + static char createModule (const char *path, int blockBound); +}; + diff --git a/bindings/swig/zipcompress.i b/bindings/swig/zipcompress.i new file mode 100644 index 0000000..d806483 --- /dev/null +++ b/bindings/swig/zipcompress.i @@ -0,0 +1,12 @@ +%{ +#include +using namespace sword; +%} + +class ZipCompress : public SWCompress { +public: + ZipCompress(); + virtual ~ZipCompress (); + virtual void Encode (void); + virtual void Decode (void); +}; diff --git a/bindings/swig/zld.i b/bindings/swig/zld.i new file mode 100644 index 0000000..9863743 --- /dev/null +++ b/bindings/swig/zld.i @@ -0,0 +1,13 @@ +%{ +#include "zld.h" +using namespace sword; +%} + +class zLD : public SWLD { +public: + zLD(const char *ipath, const char *iname = 0, const char *idesc = 0, long blockCount = 200, SWCompress *icomp = 0, SWDisplay * idisp = 0, SWTextEncoding encoding = ENC_UNKNOWN, SWTextDirection dir = DIRECTION_LTR, SWTextMarkup markup = FMT_UNKNOWN, const char* ilang = 0); + virtual ~zLD(); + + static char createModule (const char *path); +}; + diff --git a/bindings/swig/ztext.i b/bindings/swig/ztext.i new file mode 100644 index 0000000..ee3e2f2 --- /dev/null +++ b/bindings/swig/ztext.i @@ -0,0 +1,13 @@ +%{ +#include "ztext.h" +using namespace sword; +%} + +class zText : public SWText { +public: + zText(const char *ipath, const char *iname = 0, const char *idesc = 0, int blockType = CHAPTERBLOCKS, SWCompress * icomp = 0, SWDisplay * idisp = 0, SWTextEncoding encoding = ENC_UNKNOWN, SWTextDirection dir = DIRECTION_LTR, SWTextMarkup markup = FMT_UNKNOWN, const char* ilang = 0); + virtual ~zText (); + + static char createModule (const char *path, int blockBound); +}; + -- cgit v1.2.3