1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373637463756376637763786379638063816382638363846385638663876388638963906391639263936394639563966397639863996400640164026403640464056406640764086409641064116412641364146415641664176418641964206421642264236424642564266427642864296430643164326433643464356436643764386439644064416442644364446445644664476448644964506451645264536454645564566457645864596460646164626463646464656466646764686469647064716472647364746475647664776478647964806481648264836484648564866487648864896490649164926493649464956496649764986499650065016502650365046505650665076508650965106511651265136514651565166517651865196520652165226523652465256526652765286529653065316532653365346535653665376538653965406541654265436544654565466547654865496550655165526553655465556556655765586559656065616562656365646565656665676568656965706571657265736574657565766577657865796580658165826583658465856586658765886589659065916592659365946595659665976598659966006601660266036604660566066607660866096610661166126613661466156616661766186619662066216622662366246625662666276628662966306631663266336634663566366637663866396640664166426643664466456646664766486649665066516652665366546655665666576658665966606661666266636664666566666667666866696670667166726673667466756676667766786679668066816682668366846685668666876688668966906691669266936694669566966697669866996700670167026703670467056706670767086709671067116712671367146715671667176718671967206721672267236724672567266727672867296730673167326733673467356736673767386739674067416742674367446745674667476748674967506751675267536754675567566757675867596760676167626763676467656766676767686769677067716772677367746775677667776778677967806781678267836784678567866787678867896790679167926793679467956796679767986799680068016802680368046805680668076808680968106811681268136814681568166817681868196820682168226823682468256826682768286829683068316832683368346835683668376838683968406841684268436844684568466847684868496850685168526853685468556856685768586859686068616862686368646865686668676868686968706871687268736874687568766877687868796880688168826883688468856886688768886889689068916892689368946895689668976898689969006901690269036904690569066907690869096910691169126913691469156916691769186919692069216922692369246925692669276928692969306931693269336934693569366937693869396940694169426943694469456946694769486949695069516952695369546955695669576958695969606961696269636964696569666967696869696970697169726973697469756976697769786979698069816982698369846985698669876988698969906991699269936994699569966997699869997000700170027003700470057006700770087009701070117012701370147015701670177018701970207021702270237024702570267027702870297030703170327033703470357036703770387039704070417042704370447045704670477048704970507051705270537054705570567057705870597060706170627063706470657066706770687069707070717072707370747075707670777078707970807081708270837084708570867087708870897090709170927093709470957096709770987099710071017102710371047105710671077108710971107111711271137114711571167117711871197120712171227123712471257126712771287129713071317132713371347135713671377138713971407141714271437144714571467147714871497150715171527153715471557156715771587159716071617162716371647165716671677168716971707171717271737174717571767177717871797180718171827183718471857186718771887189719071917192719371947195719671977198719972007201720272037204720572067207720872097210721172127213721472157216721772187219722072217222722372247225722672277228722972307231723272337234723572367237723872397240724172427243724472457246724772487249725072517252725372547255725672577258725972607261726272637264726572667267726872697270727172727273727472757276727772787279728072817282728372847285728672877288728972907291729272937294729572967297729872997300730173027303730473057306730773087309731073117312731373147315731673177318731973207321732273237324732573267327732873297330733173327333733473357336733773387339734073417342734373447345734673477348734973507351735273537354735573567357735873597360736173627363736473657366736773687369737073717372737373747375737673777378737973807381738273837384738573867387738873897390739173927393739473957396739773987399740074017402740374047405740674077408740974107411741274137414741574167417741874197420742174227423742474257426742774287429743074317432743374347435743674377438743974407441744274437444744574467447744874497450745174527453745474557456745774587459746074617462746374647465746674677468746974707471747274737474747574767477747874797480748174827483748474857486748774887489749074917492749374947495749674977498749975007501750275037504750575067507750875097510751175127513751475157516751775187519752075217522752375247525752675277528752975307531753275337534753575367537753875397540754175427543754475457546754775487549755075517552755375547555755675577558755975607561756275637564756575667567756875697570757175727573757475757576757775787579758075817582758375847585758675877588758975907591759275937594759575967597759875997600760176027603760476057606760776087609761076117612761376147615761676177618761976207621762276237624762576267627762876297630763176327633763476357636763776387639764076417642764376447645764676477648764976507651765276537654765576567657765876597660766176627663766476657666766776687669767076717672767376747675767676777678767976807681768276837684768576867687768876897690769176927693769476957696769776987699770077017702770377047705770677077708770977107711771277137714771577167717771877197720772177227723772477257726772777287729773077317732773377347735773677377738773977407741774277437744774577467747774877497750775177527753775477557756775777587759776077617762776377647765776677677768776977707771777277737774777577767777777877797780778177827783778477857786778777887789779077917792779377947795779677977798779978007801780278037804780578067807780878097810781178127813781478157816781778187819782078217822782378247825782678277828782978307831783278337834783578367837783878397840784178427843784478457846784778487849785078517852785378547855785678577858785978607861786278637864786578667867786878697870787178727873787478757876787778787879788078817882788378847885788678877888788978907891789278937894789578967897789878997900790179027903790479057906790779087909791079117912791379147915791679177918791979207921792279237924792579267927792879297930793179327933793479357936793779387939794079417942794379447945794679477948794979507951795279537954795579567957795879597960796179627963796479657966796779687969797079717972797379747975797679777978797979807981798279837984798579867987798879897990799179927993799479957996799779987999800080018002800380048005800680078008800980108011801280138014801580168017801880198020802180228023802480258026802780288029803080318032803380348035803680378038803980408041804280438044804580468047804880498050805180528053805480558056805780588059806080618062806380648065806680678068806980708071807280738074807580768077807880798080808180828083808480858086808780888089809080918092809380948095809680978098809981008101810281038104810581068107810881098110811181128113811481158116811781188119812081218122812381248125812681278128812981308131813281338134813581368137813881398140814181428143814481458146814781488149815081518152815381548155815681578158815981608161816281638164816581668167816881698170817181728173817481758176817781788179818081818182818381848185818681878188818981908191819281938194819581968197819881998200820182028203820482058206820782088209821082118212821382148215821682178218821982208221822282238224822582268227822882298230823182328233823482358236823782388239824082418242824382448245824682478248824982508251825282538254825582568257825882598260826182628263826482658266826782688269827082718272827382748275827682778278827982808281828282838284828582868287828882898290829182928293829482958296829782988299830083018302830383048305830683078308830983108311831283138314831583168317831883198320832183228323832483258326832783288329833083318332833383348335833683378338833983408341834283438344834583468347834883498350835183528353835483558356835783588359836083618362836383648365836683678368836983708371837283738374837583768377837883798380838183828383838483858386838783888389839083918392839383948395839683978398839984008401840284038404840584068407840884098410841184128413841484158416841784188419842084218422842384248425842684278428842984308431843284338434843584368437843884398440844184428443844484458446844784488449845084518452845384548455845684578458845984608461846284638464846584668467846884698470847184728473847484758476847784788479848084818482848384848485848684878488848984908491849284938494849584968497849884998500850185028503850485058506850785088509851085118512851385148515851685178518851985208521852285238524852585268527852885298530853185328533853485358536853785388539854085418542854385448545854685478548854985508551855285538554855585568557855885598560856185628563856485658566856785688569857085718572857385748575857685778578857985808581858285838584858585868587858885898590859185928593859485958596859785988599860086018602860386048605860686078608860986108611861286138614861586168617861886198620862186228623862486258626862786288629863086318632863386348635863686378638863986408641864286438644864586468647864886498650865186528653865486558656865786588659866086618662866386648665866686678668866986708671867286738674867586768677867886798680868186828683868486858686868786888689869086918692869386948695869686978698869987008701870287038704870587068707870887098710871187128713871487158716871787188719872087218722872387248725872687278728872987308731873287338734873587368737873887398740874187428743874487458746874787488749875087518752875387548755875687578758875987608761876287638764876587668767876887698770877187728773877487758776877787788779878087818782878387848785878687878788878987908791879287938794879587968797879887998800880188028803880488058806880788088809881088118812881388148815881688178818881988208821882288238824882588268827882888298830883188328833883488358836883788388839884088418842884388448845884688478848884988508851885288538854885588568857885888598860886188628863886488658866886788688869887088718872887388748875887688778878887988808881888288838884888588868887888888898890889188928893889488958896889788988899890089018902890389048905890689078908890989108911891289138914891589168917891889198920892189228923892489258926892789288929893089318932893389348935893689378938893989408941894289438944894589468947894889498950895189528953895489558956895789588959896089618962896389648965896689678968896989708971897289738974897589768977897889798980898189828983898489858986898789888989899089918992899389948995899689978998899990009001900290039004900590069007900890099010901190129013901490159016901790189019902090219022902390249025902690279028902990309031903290339034903590369037903890399040904190429043904490459046904790489049905090519052905390549055905690579058905990609061906290639064906590669067906890699070907190729073907490759076907790789079908090819082908390849085908690879088908990909091909290939094909590969097909890999100910191029103910491059106910791089109911091119112911391149115911691179118911991209121912291239124912591269127912891299130913191329133913491359136913791389139914091419142914391449145914691479148914991509151915291539154915591569157915891599160916191629163916491659166916791689169917091719172917391749175917691779178917991809181918291839184918591869187918891899190919191929193919491959196919791989199920092019202920392049205920692079208920992109211921292139214921592169217921892199220922192229223922492259226922792289229923092319232923392349235923692379238923992409241924292439244924592469247924892499250925192529253925492559256925792589259926092619262926392649265926692679268926992709271927292739274927592769277927892799280928192829283928492859286928792889289929092919292929392949295929692979298929993009301930293039304930593069307930893099310931193129313931493159316931793189319932093219322932393249325932693279328932993309331933293339334933593369337933893399340934193429343934493459346934793489349935093519352935393549355935693579358935993609361936293639364936593669367936893699370937193729373937493759376937793789379938093819382938393849385938693879388938993909391939293939394939593969397939893999400940194029403940494059406940794089409941094119412941394149415941694179418941994209421942294239424942594269427942894299430943194329433943494359436943794389439944094419442944394449445944694479448944994509451945294539454945594569457945894599460946194629463946494659466946794689469947094719472947394749475947694779478947994809481948294839484948594869487948894899490949194929493949494959496949794989499950095019502950395049505950695079508950995109511951295139514951595169517951895199520952195229523952495259526952795289529953095319532953395349535953695379538953995409541954295439544954595469547954895499550955195529553955495559556955795589559956095619562956395649565956695679568956995709571957295739574957595769577957895799580958195829583958495859586958795889589959095919592959395949595959695979598959996009601960296039604960596069607960896099610961196129613961496159616961796189619962096219622962396249625962696279628962996309631963296339634963596369637963896399640964196429643964496459646964796489649965096519652965396549655965696579658965996609661966296639664966596669667966896699670967196729673967496759676967796789679968096819682968396849685968696879688968996909691969296939694969596969697969896999700970197029703970497059706970797089709971097119712971397149715971697179718971997209721972297239724972597269727972897299730973197329733973497359736973797389739974097419742974397449745974697479748974997509751975297539754975597569757975897599760976197629763976497659766976797689769977097719772977397749775977697779778977997809781978297839784978597869787978897899790979197929793979497959796979797989799980098019802980398049805980698079808980998109811981298139814981598169817981898199820982198229823982498259826982798289829983098319832983398349835983698379838983998409841984298439844984598469847984898499850985198529853985498559856985798589859986098619862986398649865986698679868986998709871987298739874987598769877987898799880988198829883988498859886988798889889989098919892989398949895989698979898989999009901990299039904990599069907990899099910991199129913991499159916991799189919992099219922992399249925992699279928992999309931993299339934993599369937993899399940994199429943994499459946994799489949995099519952995399549955995699579958995999609961996299639964996599669967996899699970997199729973997499759976997799789979998099819982998399849985998699879988998999909991999299939994999599969997999899991000010001100021000310004100051000610007100081000910010100111001210013100141001510016100171001810019100201002110022100231002410025100261002710028100291003010031100321003310034100351003610037100381003910040100411004210043100441004510046100471004810049100501005110052100531005410055100561005710058100591006010061100621006310064100651006610067100681006910070100711007210073100741007510076100771007810079100801008110082100831008410085100861008710088100891009010091100921009310094100951009610097100981009910100101011010210103101041010510106101071010810109101101011110112101131011410115101161011710118101191012010121101221012310124101251012610127101281012910130101311013210133101341013510136101371013810139101401014110142101431014410145101461014710148101491015010151101521015310154101551015610157101581015910160101611016210163101641016510166101671016810169101701017110172101731017410175101761017710178101791018010181101821018310184101851018610187101881018910190101911019210193101941019510196101971019810199102001020110202102031020410205102061020710208102091021010211102121021310214102151021610217102181021910220102211022210223102241022510226102271022810229102301023110232102331023410235102361023710238102391024010241102421024310244102451024610247102481024910250102511025210253102541025510256102571025810259102601026110262102631026410265102661026710268102691027010271102721027310274102751027610277102781027910280102811028210283102841028510286102871028810289102901029110292102931029410295102961029710298102991030010301103021030310304103051030610307103081030910310103111031210313103141031510316103171031810319103201032110322103231032410325103261032710328103291033010331103321033310334103351033610337103381033910340103411034210343103441034510346103471034810349103501035110352103531035410355103561035710358103591036010361103621036310364103651036610367103681036910370103711037210373103741037510376103771037810379103801038110382103831038410385103861038710388103891039010391103921039310394103951039610397103981039910400104011040210403104041040510406104071040810409104101041110412104131041410415104161041710418104191042010421104221042310424104251042610427104281042910430104311043210433104341043510436104371043810439104401044110442104431044410445104461044710448104491045010451104521045310454104551045610457104581045910460104611046210463104641046510466104671046810469104701047110472104731047410475104761047710478104791048010481104821048310484104851048610487104881048910490104911049210493104941049510496104971049810499105001050110502105031050410505105061050710508105091051010511105121051310514105151051610517105181051910520105211052210523105241052510526105271052810529105301053110532105331053410535105361053710538105391054010541105421054310544105451054610547105481054910550105511055210553105541055510556105571055810559105601056110562105631056410565105661056710568105691057010571105721057310574105751057610577105781057910580105811058210583105841058510586105871058810589105901059110592105931059410595105961059710598105991060010601106021060310604106051060610607106081060910610106111061210613106141061510616106171061810619106201062110622106231062410625106261062710628106291063010631106321063310634106351063610637106381063910640106411064210643106441064510646106471064810649106501065110652106531065410655106561065710658106591066010661106621066310664106651066610667106681066910670106711067210673106741067510676106771067810679106801068110682106831068410685106861068710688106891069010691106921069310694106951069610697106981069910700107011070210703107041070510706107071070810709107101071110712107131071410715107161071710718107191072010721107221072310724107251072610727 |
- /* ----------------------------------------------------------------------------
- * This file was automatically generated by SWIG (http://www.swig.org).
- * Version 2.0.4
- *
- * 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 SWIGRUBY
- #ifdef __cplusplus
- /* SwigValueWrapper is described in swig.swg */
- template<typename T> class SwigValueWrapper {
- struct SwigMovePointer {
- T *ptr;
- SwigMovePointer(T *p) : ptr(p) { }
- ~SwigMovePointer() { delete ptr; }
- SwigMovePointer& operator=(SwigMovePointer& rhs) { T* oldptr = ptr; ptr = 0; delete oldptr; ptr = rhs.ptr; rhs.ptr = 0; return *this; }
- } pointer;
- SwigValueWrapper& operator=(const SwigValueWrapper<T>& rhs);
- SwigValueWrapper(const SwigValueWrapper<T>& rhs);
- public:
- SwigValueWrapper() : pointer(0) { }
- SwigValueWrapper& operator=(const T& t) { SwigMovePointer tmp(new T(t)); pointer = tmp; return *this; }
- operator T&() const { return *pointer.ptr; }
- T *operator&() { return pointer.ptr; }
- };
- template <typename T> T SwigValueInit() {
- return T();
- }
- #endif
- /* -----------------------------------------------------------------------------
- * This section contains generic SWIG labels for method/variable
- * declarations/attributes, and other compiler dependent labels.
- * ----------------------------------------------------------------------------- */
- /* template workaround for compilers that cannot correctly implement the C++ standard */
- #ifndef SWIGTEMPLATEDISAMBIGUATOR
- # if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
- # define SWIGTEMPLATEDISAMBIGUATOR template
- # elif defined(__HP_aCC)
- /* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
- /* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
- # define SWIGTEMPLATEDISAMBIGUATOR template
- # else
- # define SWIGTEMPLATEDISAMBIGUATOR
- # endif
- #endif
- /* inline attribute */
- #ifndef SWIGINLINE
- # if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
- # define SWIGINLINE inline
- # else
- # define SWIGINLINE
- # endif
- #endif
- /* attribute recognised by some compilers to avoid 'unused' warnings */
- #ifndef SWIGUNUSED
- # if defined(__GNUC__)
- # if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
- # define SWIGUNUSED __attribute__ ((__unused__))
- # else
- # define SWIGUNUSED
- # endif
- # elif defined(__ICC)
- # define SWIGUNUSED __attribute__ ((__unused__))
- # else
- # define SWIGUNUSED
- # endif
- #endif
- #ifndef SWIG_MSC_UNSUPPRESS_4505
- # if defined(_MSC_VER)
- # pragma warning(disable : 4505) /* unreferenced local function has been removed */
- # endif
- #endif
- #ifndef SWIGUNUSEDPARM
- # ifdef __cplusplus
- # define SWIGUNUSEDPARM(p)
- # else
- # define SWIGUNUSEDPARM(p) p SWIGUNUSED
- # endif
- #endif
- /* internal SWIG method */
- #ifndef SWIGINTERN
- # define SWIGINTERN static SWIGUNUSED
- #endif
- /* internal inline SWIG method */
- #ifndef SWIGINTERNINLINE
- # define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
- #endif
- /* exporting methods */
- #if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
- # ifndef GCC_HASCLASSVISIBILITY
- # define GCC_HASCLASSVISIBILITY
- # endif
- #endif
- #ifndef SWIGEXPORT
- # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
- # if defined(STATIC_LINKED)
- # define SWIGEXPORT
- # else
- # define SWIGEXPORT __declspec(dllexport)
- # endif
- # else
- # if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
- # define SWIGEXPORT __attribute__ ((visibility("default")))
- # else
- # define SWIGEXPORT
- # endif
- # endif
- #endif
- /* calling conventions for Windows */
- #ifndef SWIGSTDCALL
- # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
- # define SWIGSTDCALL __stdcall
- # else
- # define SWIGSTDCALL
- # endif
- #endif
- /* Deal with Microsoft's attempt at deprecating C standard runtime functions */
- #if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
- # define _CRT_SECURE_NO_DEPRECATE
- #endif
- /* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
- #if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
- # define _SCL_SECURE_NO_DEPRECATE
- #endif
- /* -----------------------------------------------------------------------------
- * This section contains generic SWIG labels for method/variable
- * declarations/attributes, and other compiler dependent labels.
- * ----------------------------------------------------------------------------- */
- /* template workaround for compilers that cannot correctly implement the C++ standard */
- #ifndef SWIGTEMPLATEDISAMBIGUATOR
- # if defined(__SUNPRO_CC) && (__SUNPRO_CC <= 0x560)
- # define SWIGTEMPLATEDISAMBIGUATOR template
- # elif defined(__HP_aCC)
- /* Needed even with `aCC -AA' when `aCC -V' reports HP ANSI C++ B3910B A.03.55 */
- /* If we find a maximum version that requires this, the test would be __HP_aCC <= 35500 for A.03.55 */
- # define SWIGTEMPLATEDISAMBIGUATOR template
- # else
- # define SWIGTEMPLATEDISAMBIGUATOR
- # endif
- #endif
- /* inline attribute */
- #ifndef SWIGINLINE
- # if defined(__cplusplus) || (defined(__GNUC__) && !defined(__STRICT_ANSI__))
- # define SWIGINLINE inline
- # else
- # define SWIGINLINE
- # endif
- #endif
- /* attribute recognised by some compilers to avoid 'unused' warnings */
- #ifndef SWIGUNUSED
- # if defined(__GNUC__)
- # if !(defined(__cplusplus)) || (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
- # define SWIGUNUSED __attribute__ ((__unused__))
- # else
- # define SWIGUNUSED
- # endif
- # elif defined(__ICC)
- # define SWIGUNUSED __attribute__ ((__unused__))
- # else
- # define SWIGUNUSED
- # endif
- #endif
- #ifndef SWIG_MSC_UNSUPPRESS_4505
- # if defined(_MSC_VER)
- # pragma warning(disable : 4505) /* unreferenced local function has been removed */
- # endif
- #endif
- #ifndef SWIGUNUSEDPARM
- # ifdef __cplusplus
- # define SWIGUNUSEDPARM(p)
- # else
- # define SWIGUNUSEDPARM(p) p SWIGUNUSED
- # endif
- #endif
- /* internal SWIG method */
- #ifndef SWIGINTERN
- # define SWIGINTERN static SWIGUNUSED
- #endif
- /* internal inline SWIG method */
- #ifndef SWIGINTERNINLINE
- # define SWIGINTERNINLINE SWIGINTERN SWIGINLINE
- #endif
- /* exporting methods */
- #if (__GNUC__ >= 4) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)
- # ifndef GCC_HASCLASSVISIBILITY
- # define GCC_HASCLASSVISIBILITY
- # endif
- #endif
- #ifndef SWIGEXPORT
- # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
- # if defined(STATIC_LINKED)
- # define SWIGEXPORT
- # else
- # define SWIGEXPORT __declspec(dllexport)
- # endif
- # else
- # if defined(__GNUC__) && defined(GCC_HASCLASSVISIBILITY)
- # define SWIGEXPORT __attribute__ ((visibility("default")))
- # else
- # define SWIGEXPORT
- # endif
- # endif
- #endif
- /* calling conventions for Windows */
- #ifndef SWIGSTDCALL
- # if defined(_WIN32) || defined(__WIN32__) || defined(__CYGWIN__)
- # define SWIGSTDCALL __stdcall
- # else
- # define SWIGSTDCALL
- # endif
- #endif
- /* Deal with Microsoft's attempt at deprecating C standard runtime functions */
- #if !defined(SWIG_NO_CRT_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_CRT_SECURE_NO_DEPRECATE)
- # define _CRT_SECURE_NO_DEPRECATE
- #endif
- /* Deal with Microsoft's attempt at deprecating methods in the standard C++ library */
- #if !defined(SWIG_NO_SCL_SECURE_NO_DEPRECATE) && defined(_MSC_VER) && !defined(_SCL_SECURE_NO_DEPRECATE)
- # define _SCL_SECURE_NO_DEPRECATE
- #endif
- /* -----------------------------------------------------------------------------
- * swigrun.swg
- *
- * This file contains generic C API SWIG runtime support for pointer
- * type checking.
- * ----------------------------------------------------------------------------- */
- /* This should only be incremented when either the layout of swig_type_info changes,
- or for whatever reason, the runtime changes incompatibly */
- #define SWIG_RUNTIME_VERSION "4"
- /* define SWIG_TYPE_TABLE_NAME as "SWIG_TYPE_TABLE" */
- #ifdef SWIG_TYPE_TABLE
- # define SWIG_QUOTE_STRING(x) #x
- # define SWIG_EXPAND_AND_QUOTE_STRING(x) SWIG_QUOTE_STRING(x)
- # define SWIG_TYPE_TABLE_NAME SWIG_EXPAND_AND_QUOTE_STRING(SWIG_TYPE_TABLE)
- #else
- # define SWIG_TYPE_TABLE_NAME
- #endif
- /*
- You can use the SWIGRUNTIME and SWIGRUNTIMEINLINE macros for
- creating a static or dynamic library from the SWIG runtime code.
- In 99.9% of the cases, SWIG just needs to declare them as 'static'.
-
- But only do this if strictly necessary, ie, if you have problems
- with your compiler or suchlike.
- */
- #ifndef SWIGRUNTIME
- # define SWIGRUNTIME SWIGINTERN
- #endif
- #ifndef SWIGRUNTIMEINLINE
- # define SWIGRUNTIMEINLINE SWIGRUNTIME SWIGINLINE
- #endif
- /* Generic buffer size */
- #ifndef SWIG_BUFFER_SIZE
- # define SWIG_BUFFER_SIZE 1024
- #endif
- /* Flags for pointer conversions */
- #define SWIG_POINTER_DISOWN 0x1
- #define SWIG_CAST_NEW_MEMORY 0x2
- /* Flags for new pointer objects */
- #define SWIG_POINTER_OWN 0x1
- /*
- Flags/methods for returning states.
-
- The SWIG conversion methods, as ConvertPtr, return an integer
- that tells if the conversion was successful or not. And if not,
- an error code can be returned (see swigerrors.swg for the codes).
-
- Use the following macros/flags to set or process the returning
- states.
-
- In old versions of SWIG, code such as the following was usually written:
- if (SWIG_ConvertPtr(obj,vptr,ty.flags) != -1) {
- // success code
- } else {
- //fail code
- }
- Now you can be more explicit:
- int res = SWIG_ConvertPtr(obj,vptr,ty.flags);
- if (SWIG_IsOK(res)) {
- // success code
- } else {
- // fail code
- }
- which is the same really, but now you can also do
- Type *ptr;
- int res = SWIG_ConvertPtr(obj,(void **)(&ptr),ty.flags);
- if (SWIG_IsOK(res)) {
- // success code
- if (SWIG_IsNewObj(res) {
- ...
- delete *ptr;
- } else {
- ...
- }
- } else {
- // fail code
- }
-
- I.e., now SWIG_ConvertPtr can return new objects and you can
- identify the case and take care of the deallocation. Of course that
- also requires SWIG_ConvertPtr to return new result values, such as
- int SWIG_ConvertPtr(obj, ptr,...) {
- if (<obj is ok>) {
- if (<need new object>) {
- *ptr = <ptr to new allocated object>;
- return SWIG_NEWOBJ;
- } else {
- *ptr = <ptr to old object>;
- return SWIG_OLDOBJ;
- }
- } else {
- return SWIG_BADOBJ;
- }
- }
- Of course, returning the plain '0(success)/-1(fail)' still works, but you can be
- more explicit by returning SWIG_BADOBJ, SWIG_ERROR or any of the
- SWIG errors code.
- Finally, if the SWIG_CASTRANK_MODE is enabled, the result code
- allows to return the 'cast rank', for example, if you have this
- int food(double)
- int fooi(int);
- and you call
-
- food(1) // cast rank '1' (1 -> 1.0)
- fooi(1) // cast rank '0'
- just use the SWIG_AddCast()/SWIG_CheckState()
- */
- #define SWIG_OK (0)
- #define SWIG_ERROR (-1)
- #define SWIG_IsOK(r) (r >= 0)
- #define SWIG_ArgError(r) ((r != SWIG_ERROR) ? r : SWIG_TypeError)
- /* The CastRankLimit says how many bits are used for the cast rank */
- #define SWIG_CASTRANKLIMIT (1 << 8)
- /* The NewMask denotes the object was created (using new/malloc) */
- #define SWIG_NEWOBJMASK (SWIG_CASTRANKLIMIT << 1)
- /* The TmpMask is for in/out typemaps that use temporal objects */
- #define SWIG_TMPOBJMASK (SWIG_NEWOBJMASK << 1)
- /* Simple returning values */
- #define SWIG_BADOBJ (SWIG_ERROR)
- #define SWIG_OLDOBJ (SWIG_OK)
- #define SWIG_NEWOBJ (SWIG_OK | SWIG_NEWOBJMASK)
- #define SWIG_TMPOBJ (SWIG_OK | SWIG_TMPOBJMASK)
- /* Check, add and del mask methods */
- #define SWIG_AddNewMask(r) (SWIG_IsOK(r) ? (r | SWIG_NEWOBJMASK) : r)
- #define SWIG_DelNewMask(r) (SWIG_IsOK(r) ? (r & ~SWIG_NEWOBJMASK) : r)
- #define SWIG_IsNewObj(r) (SWIG_IsOK(r) && (r & SWIG_NEWOBJMASK))
- #define SWIG_AddTmpMask(r) (SWIG_IsOK(r) ? (r | SWIG_TMPOBJMASK) : r)
- #define SWIG_DelTmpMask(r) (SWIG_IsOK(r) ? (r & ~SWIG_TMPOBJMASK) : r)
- #define SWIG_IsTmpObj(r) (SWIG_IsOK(r) && (r & SWIG_TMPOBJMASK))
- /* Cast-Rank Mode */
- #if defined(SWIG_CASTRANK_MODE)
- # ifndef SWIG_TypeRank
- # define SWIG_TypeRank unsigned long
- # endif
- # ifndef SWIG_MAXCASTRANK /* Default cast allowed */
- # define SWIG_MAXCASTRANK (2)
- # endif
- # define SWIG_CASTRANKMASK ((SWIG_CASTRANKLIMIT) -1)
- # define SWIG_CastRank(r) (r & SWIG_CASTRANKMASK)
- SWIGINTERNINLINE int SWIG_AddCast(int r) {
- return SWIG_IsOK(r) ? ((SWIG_CastRank(r) < SWIG_MAXCASTRANK) ? (r + 1) : SWIG_ERROR) : r;
- }
- SWIGINTERNINLINE int SWIG_CheckState(int r) {
- return SWIG_IsOK(r) ? SWIG_CastRank(r) + 1 : 0;
- }
- #else /* no cast-rank mode */
- # define SWIG_AddCast
- # define SWIG_CheckState(r) (SWIG_IsOK(r) ? 1 : 0)
- #endif
- #include <string.h>
- #ifdef __cplusplus
- extern "C" {
- #endif
- typedef void *(*swig_converter_func)(void *, int *);
- typedef struct swig_type_info *(*swig_dycast_func)(void **);
- /* Structure to store information on one type */
- typedef struct swig_type_info {
- const char *name; /* mangled name of this type */
- const char *str; /* human readable name of this type */
- swig_dycast_func dcast; /* dynamic cast function down a hierarchy */
- struct swig_cast_info *cast; /* linked list of types that can cast into this type */
- void *clientdata; /* language specific type data */
- int owndata; /* flag if the structure owns the clientdata */
- } swig_type_info;
- /* Structure to store a type and conversion function used for casting */
- typedef struct swig_cast_info {
- swig_type_info *type; /* pointer to type that is equivalent to this type */
- swig_converter_func converter; /* function to cast the void pointers */
- struct swig_cast_info *next; /* pointer to next cast in linked list */
- struct swig_cast_info *prev; /* pointer to the previous cast */
- } swig_cast_info;
- /* Structure used to store module information
- * Each module generates one structure like this, and the runtime collects
- * all of these structures and stores them in a circularly linked list.*/
- typedef struct swig_module_info {
- swig_type_info **types; /* Array of pointers to swig_type_info structures that are in this module */
- size_t size; /* Number of types in this module */
- struct swig_module_info *next; /* Pointer to next element in circularly linked list */
- swig_type_info **type_initial; /* Array of initially generated type structures */
- swig_cast_info **cast_initial; /* Array of initially generated casting structures */
- void *clientdata; /* Language specific module data */
- } swig_module_info;
- /*
- Compare two type names skipping the space characters, therefore
- "char*" == "char *" and "Class<int>" == "Class<int >", etc.
- Return 0 when the two name types are equivalent, as in
- strncmp, but skipping ' '.
- */
- SWIGRUNTIME int
- SWIG_TypeNameComp(const char *f1, const char *l1,
- const char *f2, const char *l2) {
- for (;(f1 != l1) && (f2 != l2); ++f1, ++f2) {
- while ((*f1 == ' ') && (f1 != l1)) ++f1;
- while ((*f2 == ' ') && (f2 != l2)) ++f2;
- if (*f1 != *f2) return (*f1 > *f2) ? 1 : -1;
- }
- return (int)((l1 - f1) - (l2 - f2));
- }
- /*
- Check type equivalence in a name list like <name1>|<name2>|...
- Return 0 if not equal, 1 if equal
- */
- SWIGRUNTIME int
- SWIG_TypeEquiv(const char *nb, const char *tb) {
- int equiv = 0;
- const char* te = tb + strlen(tb);
- const char* ne = nb;
- while (!equiv && *ne) {
- for (nb = ne; *ne; ++ne) {
- if (*ne == '|') break;
- }
- equiv = (SWIG_TypeNameComp(nb, ne, tb, te) == 0) ? 1 : 0;
- if (*ne) ++ne;
- }
- return equiv;
- }
- /*
- Check type equivalence in a name list like <name1>|<name2>|...
- Return 0 if equal, -1 if nb < tb, 1 if nb > tb
- */
- SWIGRUNTIME int
- SWIG_TypeCompare(const char *nb, const char *tb) {
- int equiv = 0;
- const char* te = tb + strlen(tb);
- const char* ne = nb;
- while (!equiv && *ne) {
- for (nb = ne; *ne; ++ne) {
- if (*ne == '|') break;
- }
- equiv = (SWIG_TypeNameComp(nb, ne, tb, te) == 0) ? 1 : 0;
- if (*ne) ++ne;
- }
- return equiv;
- }
- /*
- Check the typename
- */
- SWIGRUNTIME swig_cast_info *
- SWIG_TypeCheck(const char *c, swig_type_info *ty) {
- if (ty) {
- swig_cast_info *iter = ty->cast;
- while (iter) {
- if (strcmp(iter->type->name, c) == 0) {
- if (iter == ty->cast)
- return iter;
- /* Move iter to the top of the linked list */
- iter->prev->next = iter->next;
- if (iter->next)
- iter->next->prev = iter->prev;
- iter->next = ty->cast;
- iter->prev = 0;
- if (ty->cast) ty->cast->prev = iter;
- ty->cast = iter;
- return iter;
- }
- iter = iter->next;
- }
- }
- return 0;
- }
- /*
- Identical to SWIG_TypeCheck, except strcmp is replaced with a pointer comparison
- */
- SWIGRUNTIME swig_cast_info *
- SWIG_TypeCheckStruct(swig_type_info *from, swig_type_info *ty) {
- if (ty) {
- swig_cast_info *iter = ty->cast;
- while (iter) {
- if (iter->type == from) {
- if (iter == ty->cast)
- return iter;
- /* Move iter to the top of the linked list */
- iter->prev->next = iter->next;
- if (iter->next)
- iter->next->prev = iter->prev;
- iter->next = ty->cast;
- iter->prev = 0;
- if (ty->cast) ty->cast->prev = iter;
- ty->cast = iter;
- return iter;
- }
- iter = iter->next;
- }
- }
- return 0;
- }
- /*
- Cast a pointer up an inheritance hierarchy
- */
- SWIGRUNTIMEINLINE void *
- SWIG_TypeCast(swig_cast_info *ty, void *ptr, int *newmemory) {
- return ((!ty) || (!ty->converter)) ? ptr : (*ty->converter)(ptr, newmemory);
- }
- /*
- 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
- */
- SWIGRUNTIMEINLINE const char *
- SWIG_TypeName(const swig_type_info *ty) {
- return ty->name;
- }
- /*
- Return the pretty name associated with this type,
- that is an unmangled type name in a form presentable to the user.
- */
- SWIGRUNTIME const char *
- SWIG_TypePrettyName(const swig_type_info *type) {
- /* The "str" field contains the equivalent pretty names of the
- type, separated by vertical-bar characters. We choose
- to print the last name, as it is often (?) the most
- specific. */
- if (!type) return NULL;
- if (type->str != NULL) {
- const char *last_name = type->str;
- const char *s;
- for (s = type->str; *s; s++)
- if (*s == '|') last_name = s+1;
- return last_name;
- }
- else
- return type->name;
- }
- /*
- Set the clientdata field for a type
- */
- SWIGRUNTIME void
- SWIG_TypeClientData(swig_type_info *ti, void *clientdata) {
- swig_cast_info *cast = ti->cast;
- /* if (ti->clientdata == clientdata) return; */
- ti->clientdata = clientdata;
-
- while (cast) {
- if (!cast->converter) {
- swig_type_info *tc = cast->type;
- if (!tc->clientdata) {
- SWIG_TypeClientData(tc, clientdata);
- }
- }
- cast = cast->next;
- }
- }
- SWIGRUNTIME void
- SWIG_TypeNewClientData(swig_type_info *ti, void *clientdata) {
- SWIG_TypeClientData(ti, clientdata);
- ti->owndata = 1;
- }
-
- /*
- Search for a swig_type_info structure only by mangled name
- Search is a O(log #types)
-
- We start searching at module start, and finish searching when start == end.
- Note: if start == end at the beginning of the function, we go all the way around
- the circular list.
- */
- SWIGRUNTIME swig_type_info *
- SWIG_MangledTypeQueryModule(swig_module_info *start,
- swig_module_info *end,
- const char *name) {
- swig_module_info *iter = start;
- do {
- if (iter->size) {
- register size_t l = 0;
- register size_t r = iter->size - 1;
- do {
- /* since l+r >= 0, we can (>> 1) instead (/ 2) */
- register size_t i = (l + r) >> 1;
- const char *iname = iter->types[i]->name;
- if (iname) {
- register int compare = strcmp(name, iname);
- if (compare == 0) {
- return iter->types[i];
- } else if (compare < 0) {
- if (i) {
- r = i - 1;
- } else {
- break;
- }
- } else if (compare > 0) {
- l = i + 1;
- }
- } else {
- break; /* should never happen */
- }
- } while (l <= r);
- }
- iter = iter->next;
- } while (iter != end);
- return 0;
- }
- /*
- Search for a swig_type_info structure for either a mangled name or a human readable name.
- It first searches the mangled names of the types, which is a O(log #types)
- If a type is not found it then searches the human readable names, which is O(#types).
-
- We start searching at module start, and finish searching when start == end.
- Note: if start == end at the beginning of the function, we go all the way around
- the circular list.
- */
- SWIGRUNTIME swig_type_info *
- SWIG_TypeQueryModule(swig_module_info *start,
- swig_module_info *end,
- const char *name) {
- /* STEP 1: Search the name field using binary search */
- swig_type_info *ret = SWIG_MangledTypeQueryModule(start, end, name);
- if (ret) {
- return ret;
- } else {
- /* STEP 2: If the type hasn't been found, do a complete search
- of the str field (the human readable name) */
- swig_module_info *iter = start;
- do {
- register size_t i = 0;
- for (; i < iter->size; ++i) {
- if (iter->types[i]->str && (SWIG_TypeEquiv(iter->types[i]->str, name)))
- return iter->types[i];
- }
- iter = iter->next;
- } while (iter != end);
- }
-
- /* neither found a match */
- return 0;
- }
- /*
- Pack binary data into a string
- */
- SWIGRUNTIME char *
- SWIG_PackData(char *c, void *ptr, size_t sz) {
- static const char hex[17] = "0123456789abcdef";
- register const unsigned char *u = (unsigned char *) ptr;
- register const unsigned char *eu = u + sz;
- for (; u != eu; ++u) {
- register unsigned char uu = *u;
- *(c++) = hex[(uu & 0xf0) >> 4];
- *(c++) = hex[uu & 0xf];
- }
- return c;
- }
- /*
- Unpack binary data from a string
- */
- SWIGRUNTIME const char *
- SWIG_UnpackData(const char *c, void *ptr, size_t sz) {
- register unsigned char *u = (unsigned char *) ptr;
- register const unsigned char *eu = u + sz;
- for (; u != eu; ++u) {
- register char d = *(c++);
- register unsigned char uu;
- if ((d >= '0') && (d <= '9'))
- uu = ((d - '0') << 4);
- else if ((d >= 'a') && (d <= 'f'))
- uu = ((d - ('a'-10)) << 4);
- else
- return (char *) 0;
- d = *(c++);
- if ((d >= '0') && (d <= '9'))
- uu |= (d - '0');
- else if ((d >= 'a') && (d <= 'f'))
- uu |= (d - ('a'-10));
- else
- return (char *) 0;
- *u = uu;
- }
- return c;
- }
- /*
- Pack 'void *' into a string buffer.
- */
- SWIGRUNTIME char *
- SWIG_PackVoidPtr(char *buff, void *ptr, const char *name, size_t bsz) {
- char *r = buff;
- if ((2*sizeof(void *) + 2) > bsz) return 0;
- *(r++) = '_';
- r = SWIG_PackData(r,&ptr,sizeof(void *));
- if (strlen(name) + 1 > (bsz - (r - buff))) return 0;
- strcpy(r,name);
- return buff;
- }
- SWIGRUNTIME const char *
- SWIG_UnpackVoidPtr(const char *c, void **ptr, const char *name) {
- if (*c != '_') {
- if (strcmp(c,"NULL") == 0) {
- *ptr = (void *) 0;
- return name;
- } else {
- return 0;
- }
- }
- return SWIG_UnpackData(++c,ptr,sizeof(void *));
- }
- SWIGRUNTIME char *
- SWIG_PackDataName(char *buff, void *ptr, size_t sz, const char *name, size_t bsz) {
- char *r = buff;
- size_t lname = (name ? strlen(name) : 0);
- if ((2*sz + 2 + lname) > bsz) return 0;
- *(r++) = '_';
- r = SWIG_PackData(r,ptr,sz);
- if (lname) {
- strncpy(r,name,lname+1);
- } else {
- *r = 0;
- }
- return buff;
- }
- SWIGRUNTIME const char *
- SWIG_UnpackDataName(const char *c, void *ptr, size_t sz, const char *name) {
- if (*c != '_') {
- if (strcmp(c,"NULL") == 0) {
- memset(ptr,0,sz);
- return name;
- } else {
- return 0;
- }
- }
- return SWIG_UnpackData(++c,ptr,sz);
- }
- #ifdef __cplusplus
- }
- #endif
- /* Errors in SWIG */
- #define SWIG_UnknownError -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_AttributeError -11
- #define SWIG_MemoryError -12
- #define SWIG_NullReferenceError -13
- #include <ruby.h>
- /* Ruby 1.9.1 has a "memoisation optimisation" when compiling with GCC which
- * breaks using rb_intern as an lvalue, as SWIG does. We work around this
- * issue for now by disabling this.
- * https://sourceforge.net/tracker/?func=detail&aid=2859614&group_id=1645&atid=101645
- */
- #ifdef rb_intern
- # undef rb_intern
- #endif
- /* Remove global macros defined in Ruby's win32.h */
- #ifdef write
- # undef write
- #endif
- #ifdef read
- # undef read
- #endif
- #ifdef bind
- # undef bind
- #endif
- #ifdef close
- # undef close
- #endif
- #ifdef connect
- # undef connect
- #endif
- /* Ruby 1.7 defines NUM2LL(), LL2NUM() and ULL2NUM() macros */
- #ifndef NUM2LL
- #define NUM2LL(x) NUM2LONG((x))
- #endif
- #ifndef LL2NUM
- #define LL2NUM(x) INT2NUM((long) (x))
- #endif
- #ifndef ULL2NUM
- #define ULL2NUM(x) UINT2NUM((unsigned long) (x))
- #endif
- /* Ruby 1.7 doesn't (yet) define NUM2ULL() */
- #ifndef NUM2ULL
- #ifdef HAVE_LONG_LONG
- #define NUM2ULL(x) rb_num2ull((x))
- #else
- #define NUM2ULL(x) NUM2ULONG(x)
- #endif
- #endif
- /* RSTRING_LEN, etc are new in Ruby 1.9, but ->ptr and ->len no longer work */
- /* Define these for older versions so we can just write code the new way */
- #ifndef RSTRING_LEN
- # define RSTRING_LEN(x) RSTRING(x)->len
- #endif
- #ifndef RSTRING_PTR
- # define RSTRING_PTR(x) RSTRING(x)->ptr
- #endif
- #ifndef RSTRING_END
- # define RSTRING_END(x) (RSTRING_PTR(x) + RSTRING_LEN(x))
- #endif
- #ifndef RARRAY_LEN
- # define RARRAY_LEN(x) RARRAY(x)->len
- #endif
- #ifndef RARRAY_PTR
- # define RARRAY_PTR(x) RARRAY(x)->ptr
- #endif
- #ifndef RFLOAT_VALUE
- # define RFLOAT_VALUE(x) RFLOAT(x)->value
- #endif
- #ifndef DOUBLE2NUM
- # define DOUBLE2NUM(x) rb_float_new(x)
- #endif
- #ifndef RHASH_TBL
- # define RHASH_TBL(x) (RHASH(x)->tbl)
- #endif
- #ifndef RHASH_ITER_LEV
- # define RHASH_ITER_LEV(x) (RHASH(x)->iter_lev)
- #endif
- #ifndef RHASH_IFNONE
- # define RHASH_IFNONE(x) (RHASH(x)->ifnone)
- #endif
- #ifndef RHASH_SIZE
- # define RHASH_SIZE(x) (RHASH(x)->tbl->num_entries)
- #endif
- #ifndef RHASH_EMPTY_P
- # define RHASH_EMPTY_P(x) (RHASH_SIZE(x) == 0)
- #endif
- #ifndef RSTRUCT_LEN
- # define RSTRUCT_LEN(x) RSTRUCT(x)->len
- #endif
- #ifndef RSTRUCT_PTR
- # define RSTRUCT_PTR(x) RSTRUCT(x)->ptr
- #endif
- /*
- * Need to be very careful about how these macros are defined, especially
- * when compiling C++ code or C code with an ANSI C compiler.
- *
- * VALUEFUNC(f) is a macro used to typecast a C function that implements
- * a Ruby method so that it can be passed as an argument to API functions
- * like rb_define_method() and rb_define_singleton_method().
- *
- * VOIDFUNC(f) is a macro used to typecast a C function that implements
- * either the "mark" or "free" stuff for a Ruby Data object, so that it
- * can be passed as an argument to API functions like Data_Wrap_Struct()
- * and Data_Make_Struct().
- */
-
- #ifdef __cplusplus
- # ifndef RUBY_METHOD_FUNC /* These definitions should work for Ruby 1.4.6 */
- # define PROTECTFUNC(f) ((VALUE (*)()) f)
- # define VALUEFUNC(f) ((VALUE (*)()) f)
- # define VOIDFUNC(f) ((void (*)()) f)
- # else
- # ifndef ANYARGS /* These definitions should work for Ruby 1.6 */
- # define PROTECTFUNC(f) ((VALUE (*)()) f)
- # define VALUEFUNC(f) ((VALUE (*)()) f)
- # define VOIDFUNC(f) ((RUBY_DATA_FUNC) f)
- # else /* These definitions should work for Ruby 1.7+ */
- # define PROTECTFUNC(f) ((VALUE (*)(VALUE)) f)
- # define VALUEFUNC(f) ((VALUE (*)(ANYARGS)) f)
- # define VOIDFUNC(f) ((RUBY_DATA_FUNC) f)
- # endif
- # endif
- #else
- # define VALUEFUNC(f) (f)
- # define VOIDFUNC(f) (f)
- #endif
- /* Don't use for expressions have side effect */
- #ifndef RB_STRING_VALUE
- #define RB_STRING_VALUE(s) (TYPE(s) == T_STRING ? (s) : (*(volatile VALUE *)&(s) = rb_str_to_str(s)))
- #endif
- #ifndef StringValue
- #define StringValue(s) RB_STRING_VALUE(s)
- #endif
- #ifndef StringValuePtr
- #define StringValuePtr(s) RSTRING_PTR(RB_STRING_VALUE(s))
- #endif
- #ifndef StringValueLen
- #define StringValueLen(s) RSTRING_LEN(RB_STRING_VALUE(s))
- #endif
- #ifndef SafeStringValue
- #define SafeStringValue(v) do {\
- StringValue(v);\
- rb_check_safe_str(v);\
- } while (0)
- #endif
- #ifndef HAVE_RB_DEFINE_ALLOC_FUNC
- #define rb_define_alloc_func(klass, func) rb_define_singleton_method((klass), "new", VALUEFUNC((func)), -1)
- #define rb_undef_alloc_func(klass) rb_undef_method(CLASS_OF((klass)), "new")
- #endif
- static VALUE _mSWIG = Qnil;
- /* -----------------------------------------------------------------------------
- * error manipulation
- * ----------------------------------------------------------------------------- */
- /* Define some additional error types */
- #define SWIG_ObjectPreviouslyDeletedError -100
- /* Define custom exceptions for errors that do not map to existing Ruby
- exceptions. Note this only works for C++ since a global cannot be
- initialized by a function in C. For C, fallback to rb_eRuntimeError.*/
- SWIGINTERN VALUE
- getNullReferenceError(void) {
- static int init = 0;
- static VALUE rb_eNullReferenceError ;
- if (!init) {
- init = 1;
- rb_eNullReferenceError = rb_define_class("NullReferenceError", rb_eRuntimeError);
- }
- return rb_eNullReferenceError;
- }
- SWIGINTERN VALUE
- getObjectPreviouslyDeletedError(void) {
- static int init = 0;
- static VALUE rb_eObjectPreviouslyDeleted ;
- if (!init) {
- init = 1;
- rb_eObjectPreviouslyDeleted = rb_define_class("ObjectPreviouslyDeleted", rb_eRuntimeError);
- }
- return rb_eObjectPreviouslyDeleted;
- }
- SWIGINTERN VALUE
- SWIG_Ruby_ErrorType(int SWIG_code) {
- VALUE type;
- switch (SWIG_code) {
- case SWIG_MemoryError:
- type = rb_eNoMemError;
- break;
- case SWIG_IOError:
- type = rb_eIOError;
- break;
- case SWIG_RuntimeError:
- type = rb_eRuntimeError;
- break;
- case SWIG_IndexError:
- type = rb_eIndexError;
- break;
- case SWIG_TypeError:
- type = rb_eTypeError;
- break;
- case SWIG_DivisionByZero:
- type = rb_eZeroDivError;
- break;
- case SWIG_OverflowError:
- type = rb_eRangeError;
- break;
- case SWIG_SyntaxError:
- type = rb_eSyntaxError;
- break;
- case SWIG_ValueError:
- type = rb_eArgError;
- break;
- case SWIG_SystemError:
- type = rb_eFatal;
- break;
- case SWIG_AttributeError:
- type = rb_eRuntimeError;
- break;
- case SWIG_NullReferenceError:
- type = getNullReferenceError();
- break;
- case SWIG_ObjectPreviouslyDeletedError:
- type = getObjectPreviouslyDeletedError();
- break;
- case SWIG_UnknownError:
- type = rb_eRuntimeError;
- break;
- default:
- type = rb_eRuntimeError;
- }
- return type;
- }
- /* This function is called when a user inputs a wrong argument to
- a method.
- */
- SWIGINTERN
- const char* Ruby_Format_TypeError( const char* msg,
- const char* type,
- const char* name,
- const int argn,
- VALUE input )
- {
- char buf[128];
- VALUE str;
- VALUE asStr;
- if ( msg && *msg )
- {
- str = rb_str_new2(msg);
- }
- else
- {
- str = rb_str_new(NULL, 0);
- }
- str = rb_str_cat2( str, "Expected argument " );
- sprintf( buf, "%d of type ", argn-1 );
- str = rb_str_cat2( str, buf );
- str = rb_str_cat2( str, type );
- str = rb_str_cat2( str, ", but got " );
- str = rb_str_cat2( str, rb_obj_classname(input) );
- str = rb_str_cat2( str, " " );
- asStr = rb_inspect(input);
- if ( RSTRING_LEN(asStr) > 30 )
- {
- str = rb_str_cat( str, StringValuePtr(asStr), 30 );
- str = rb_str_cat2( str, "..." );
- }
- else
- {
- str = rb_str_append( str, asStr );
- }
- if ( name )
- {
- str = rb_str_cat2( str, "\n\tin SWIG method '" );
- str = rb_str_cat2( str, name );
- str = rb_str_cat2( str, "'" );
- }
- return StringValuePtr( str );
- }
- /* This function is called when an overloaded method fails */
- SWIGINTERN
- void Ruby_Format_OverloadedError(
- const int argc,
- const int maxargs,
- const char* method,
- const char* prototypes
- )
- {
- const char* msg = "Wrong # of arguments";
- if ( argc <= maxargs ) msg = "Wrong arguments";
- rb_raise(rb_eArgError,"%s for overloaded method '%s'.\n"
- "Possible C/C++ prototypes are:\n%s",
- msg, method, prototypes);
- }
- /* -----------------------------------------------------------------------------
- * rubytracking.swg
- *
- * This file contains support for tracking mappings from
- * Ruby objects to C++ objects. This functionality is needed
- * to implement mark functions for Ruby's mark and sweep
- * garbage collector.
- * ----------------------------------------------------------------------------- */
- #ifdef __cplusplus
- extern "C" {
- #endif
- /* Ruby 1.8 actually assumes the first case. */
- #if SIZEOF_VOIDP == SIZEOF_LONG
- # define SWIG2NUM(v) LONG2NUM((unsigned long)v)
- # define NUM2SWIG(x) (unsigned long)NUM2LONG(x)
- #elif SIZEOF_VOIDP == SIZEOF_LONG_LONG
- # define SWIG2NUM(v) LL2NUM((unsigned long long)v)
- # define NUM2SWIG(x) (unsigned long long)NUM2LL(x)
- #else
- # error sizeof(void*) is not the same as long or long long
- #endif
- /* Global Ruby hash table to store Trackings from C/C++
- structs to Ruby Objects.
- */
- static VALUE swig_ruby_trackings = Qnil;
- /* Global variable that stores a reference to the ruby
- hash table delete function. */
- static ID swig_ruby_hash_delete;
- /* Setup a Ruby hash table to store Trackings */
- SWIGRUNTIME void SWIG_RubyInitializeTrackings(void) {
- /* Create a ruby hash table to store Trackings from C++
- objects to Ruby objects. */
- /* Try to see if some other .so has already created a
- tracking hash table, which we keep hidden in an instance var
- in the SWIG module.
- This is done to allow multiple DSOs to share the same
- tracking table.
- */
- ID trackings_id = rb_intern( "@__trackings__" );
- VALUE verbose = rb_gv_get("VERBOSE");
- rb_gv_set("VERBOSE", Qfalse);
- swig_ruby_trackings = rb_ivar_get( _mSWIG, trackings_id );
- rb_gv_set("VERBOSE", verbose);
- /* No, it hasn't. Create one ourselves */
- if ( swig_ruby_trackings == Qnil )
- {
- swig_ruby_trackings = rb_hash_new();
- rb_ivar_set( _mSWIG, trackings_id, swig_ruby_trackings );
- }
- /* Now store a reference to the hash table delete function
- so that we only have to look it up once.*/
- swig_ruby_hash_delete = rb_intern("delete");
- }
- /* Get a Ruby number to reference a pointer */
- SWIGRUNTIME VALUE SWIG_RubyPtrToReference(void* ptr) {
- /* We cast the pointer to an unsigned long
- and then store a reference to it using
- a Ruby number object. */
- /* Convert the pointer to a Ruby number */
- return SWIG2NUM(ptr);
- }
- /* Get a Ruby number to reference an object */
- SWIGRUNTIME VALUE SWIG_RubyObjectToReference(VALUE object) {
- /* We cast the object to an unsigned long
- and then store a reference to it using
- a Ruby number object. */
- /* Convert the Object to a Ruby number */
- return SWIG2NUM(object);
- }
- /* Get a Ruby object from a previously stored reference */
- SWIGRUNTIME VALUE SWIG_RubyReferenceToObject(VALUE reference) {
- /* The provided Ruby number object is a reference
- to the Ruby object we want.*/
- /* Convert the Ruby number to a Ruby object */
- return NUM2SWIG(reference);
- }
- /* Add a Tracking from a C/C++ struct to a Ruby object */
- SWIGRUNTIME void SWIG_RubyAddTracking(void* ptr, VALUE object) {
- /* In a Ruby hash table we store the pointer and
- the associated Ruby object. The trick here is
- that we cannot store the Ruby object directly - if
- we do then it cannot be garbage collected. So
- instead we typecast it as a unsigned long and
- convert it to a Ruby number object.*/
- /* Get a reference to the pointer as a Ruby number */
- VALUE key = SWIG_RubyPtrToReference(ptr);
- /* Get a reference to the Ruby object as a Ruby number */
- VALUE value = SWIG_RubyObjectToReference(object);
- /* Store the mapping to the global hash table. */
- rb_hash_aset(swig_ruby_trackings, key, value);
- }
- /* Get the Ruby object that owns the specified C/C++ struct */
- SWIGRUNTIME VALUE SWIG_RubyInstanceFor(void* ptr) {
- /* Get a reference to the pointer as a Ruby number */
- VALUE key = SWIG_RubyPtrToReference(ptr);
- /* Now lookup the value stored in the global hash table */
- VALUE value = rb_hash_aref(swig_ruby_trackings, key);
-
- if (value == Qnil) {
- /* No object exists - return nil. */
- return Qnil;
- }
- else {
- /* Convert this value to Ruby object */
- return SWIG_RubyReferenceToObject(value);
- }
- }
- /* Remove a Tracking from a C/C++ struct to a Ruby object. It
- is very important to remove objects once they are destroyed
- since the same memory address may be reused later to create
- a new object. */
- SWIGRUNTIME void SWIG_RubyRemoveTracking(void* ptr) {
- /* Get a reference to the pointer as a Ruby number */
- VALUE key = SWIG_RubyPtrToReference(ptr);
- /* Delete the object from the hash table by calling Ruby's
- do this we need to call the Hash.delete method.*/
- rb_funcall(swig_ruby_trackings, swig_ruby_hash_delete, 1, key);
- }
- /* This is a helper method that unlinks a Ruby object from its
- underlying C++ object. This is needed if the lifetime of the
- Ruby object is longer than the C++ object */
- SWIGRUNTIME void SWIG_RubyUnlinkObjects(void* ptr) {
- VALUE object = SWIG_RubyInstanceFor(ptr);
- if (object != Qnil) {
- DATA_PTR(object) = 0;
- }
- }
- #ifdef __cplusplus
- }
- #endif
- /* -----------------------------------------------------------------------------
- * Ruby API portion that goes into the runtime
- * ----------------------------------------------------------------------------- */
- #ifdef __cplusplus
- extern "C" {
- #endif
- SWIGINTERN VALUE
- SWIG_Ruby_AppendOutput(VALUE target, VALUE o) {
- if (NIL_P(target)) {
- target = o;
- } else {
- if (TYPE(target) != T_ARRAY) {
- VALUE o2 = target;
- target = rb_ary_new();
- rb_ary_push(target, o2);
- }
- rb_ary_push(target, o);
- }
- return target;
- }
- /* For ruby1.8.4 and earlier. */
- #ifndef RUBY_INIT_STACK
- RUBY_EXTERN void Init_stack(VALUE* addr);
- # define RUBY_INIT_STACK \
- VALUE variable_in_this_stack_frame; \
- Init_stack(&variable_in_this_stack_frame);
- #endif
- #ifdef __cplusplus
- }
- #endif
- /* -----------------------------------------------------------------------------
- * rubyrun.swg
- *
- * This file contains the runtime support for Ruby modules
- * and includes code for managing global variables and pointer
- * type checking.
- * ----------------------------------------------------------------------------- */
- /* For backward compatibility only */
- #define SWIG_POINTER_EXCEPTION 0
- /* for raw pointers */
- #define SWIG_ConvertPtr(obj, pptr, type, flags) SWIG_Ruby_ConvertPtrAndOwn(obj, pptr, type, flags, 0)
- #define SWIG_ConvertPtrAndOwn(obj,pptr,type,flags,own) SWIG_Ruby_ConvertPtrAndOwn(obj, pptr, type, flags, own)
- #define SWIG_NewPointerObj(ptr, type, flags) SWIG_Ruby_NewPointerObj(ptr, type, flags)
- #define SWIG_AcquirePtr(ptr, own) SWIG_Ruby_AcquirePtr(ptr, own)
- #define swig_owntype ruby_owntype
- /* for raw packed data */
- #define SWIG_ConvertPacked(obj, ptr, sz, ty) SWIG_Ruby_ConvertPacked(obj, ptr, sz, ty, flags)
- #define SWIG_NewPackedObj(ptr, sz, type) SWIG_Ruby_NewPackedObj(ptr, sz, type)
- /* for class or struct pointers */
- #define SWIG_ConvertInstance(obj, pptr, type, flags) SWIG_ConvertPtr(obj, pptr, type, flags)
- #define SWIG_NewInstanceObj(ptr, type, flags) SWIG_NewPointerObj(ptr, type, flags)
- /* for C or C++ function pointers */
- #define SWIG_ConvertFunctionPtr(obj, pptr, type) SWIG_ConvertPtr(obj, pptr, type, 0)
- #define SWIG_NewFunctionPtrObj(ptr, type) SWIG_NewPointerObj(ptr, type, 0)
- /* for C++ member pointers, ie, member methods */
- #define SWIG_ConvertMember(obj, ptr, sz, ty) SWIG_Ruby_ConvertPacked(obj, ptr, sz, ty)
- #define SWIG_NewMemberObj(ptr, sz, type) SWIG_Ruby_NewPackedObj(ptr, sz, type)
- /* Runtime API */
- #define SWIG_GetModule(clientdata) SWIG_Ruby_GetModule()
- #define SWIG_SetModule(clientdata, pointer) SWIG_Ruby_SetModule(pointer)
- /* Error manipulation */
- #define SWIG_ErrorType(code) SWIG_Ruby_ErrorType(code)
- #define SWIG_Error(code, msg) rb_raise(SWIG_Ruby_ErrorType(code), "%s", msg)
- #define SWIG_fail goto fail
- /* Ruby-specific SWIG API */
- #define SWIG_InitRuntime() SWIG_Ruby_InitRuntime()
- #define SWIG_define_class(ty) SWIG_Ruby_define_class(ty)
- #define SWIG_NewClassInstance(value, ty) SWIG_Ruby_NewClassInstance(value, ty)
- #define SWIG_MangleStr(value) SWIG_Ruby_MangleStr(value)
- #define SWIG_CheckConvert(value, ty) SWIG_Ruby_CheckConvert(value, ty)
- #include "assert.h"
- /* -----------------------------------------------------------------------------
- * pointers/data manipulation
- * ----------------------------------------------------------------------------- */
- #ifdef __cplusplus
- extern "C" {
- #endif
- typedef struct {
- VALUE klass;
- VALUE mImpl;
- void (*mark)(void *);
- void (*destroy)(void *);
- int trackObjects;
- } swig_class;
- /* Global pointer used to keep some internal SWIG stuff */
- static VALUE _cSWIG_Pointer = Qnil;
- static VALUE swig_runtime_data_type_pointer = Qnil;
- /* Global IDs used to keep some internal SWIG stuff */
- static ID swig_arity_id = 0;
- static ID swig_call_id = 0;
- /*
- If your swig extension is to be run within an embedded ruby and has
- director callbacks, you should set -DRUBY_EMBEDDED during compilation.
- This will reset ruby's stack frame on each entry point from the main
- program the first time a virtual director function is invoked (in a
- non-recursive way).
- If this is not done, you run the risk of Ruby trashing the stack.
- */
- #ifdef RUBY_EMBEDDED
- # define SWIG_INIT_STACK \
- if ( !swig_virtual_calls ) { RUBY_INIT_STACK } \
- ++swig_virtual_calls;
- # define SWIG_RELEASE_STACK --swig_virtual_calls;
- # define Ruby_DirectorTypeMismatchException(x) \
- rb_raise( rb_eTypeError, "%s", x ); return c_result;
- static unsigned int swig_virtual_calls = 0;
- #else /* normal non-embedded extension */
- # define SWIG_INIT_STACK
- # define SWIG_RELEASE_STACK
- # define Ruby_DirectorTypeMismatchException(x) \
- throw Swig::DirectorTypeMismatchException( x );
- #endif /* RUBY_EMBEDDED */
- SWIGRUNTIME VALUE
- getExceptionClass(void) {
- static int init = 0;
- static VALUE rubyExceptionClass ;
- if (!init) {
- init = 1;
- rubyExceptionClass = rb_const_get(_mSWIG, rb_intern("Exception"));
- }
- return rubyExceptionClass;
- }
- /* This code checks to see if the Ruby object being raised as part
- of an exception inherits from the Ruby class Exception. If so,
- the object is simply returned. If not, then a new Ruby exception
- object is created and that will be returned to Ruby.*/
- SWIGRUNTIME VALUE
- SWIG_Ruby_ExceptionType(swig_type_info *desc, VALUE obj) {
- VALUE exceptionClass = getExceptionClass();
- if (rb_obj_is_kind_of(obj, exceptionClass)) {
- return obj;
- } else {
- return rb_exc_new3(rb_eRuntimeError, rb_obj_as_string(obj));
- }
- }
- /* Initialize Ruby runtime support */
- SWIGRUNTIME void
- SWIG_Ruby_InitRuntime(void)
- {
- if (_mSWIG == Qnil) {
- _mSWIG = rb_define_module("SWIG");
- swig_call_id = rb_intern("call");
- swig_arity_id = rb_intern("arity");
- }
- }
- /* Define Ruby class for C type */
- SWIGRUNTIME void
- SWIG_Ruby_define_class(swig_type_info *type)
- {
- VALUE klass;
- char *klass_name = (char *) malloc(4 + strlen(type->name) + 1);
- sprintf(klass_name, "TYPE%s", type->name);
- if (NIL_P(_cSWIG_Pointer)) {
- _cSWIG_Pointer = rb_define_class_under(_mSWIG, "Pointer", rb_cObject);
- rb_undef_method(CLASS_OF(_cSWIG_Pointer), "new");
- }
- klass = rb_define_class_under(_mSWIG, klass_name, _cSWIG_Pointer);
- free((void *) klass_name);
- }
- /* Create a new pointer object */
- SWIGRUNTIME VALUE
- SWIG_Ruby_NewPointerObj(void *ptr, swig_type_info *type, int flags)
- {
- int own = flags & SWIG_POINTER_OWN;
- int track;
- char *klass_name;
- swig_class *sklass;
- VALUE klass;
- VALUE obj;
-
- if (!ptr)
- return Qnil;
-
- if (type->clientdata) {
- sklass = (swig_class *) type->clientdata;
-
- /* Are we tracking this class and have we already returned this Ruby object? */
- track = sklass->trackObjects;
- if (track) {
- obj = SWIG_RubyInstanceFor(ptr);
-
- /* Check the object's type and make sure it has the correct type.
- It might not in cases where methods do things like
- downcast methods. */
- if (obj != Qnil) {
- VALUE value = rb_iv_get(obj, "@__swigtype__");
- char* type_name = RSTRING_PTR(value);
-
- if (strcmp(type->name, type_name) == 0) {
- return obj;
- }
- }
- }
- /* Create a new Ruby object */
- obj = Data_Wrap_Struct(sklass->klass, VOIDFUNC(sklass->mark),
- ( own ? VOIDFUNC(sklass->destroy) :
- (track ? VOIDFUNC(SWIG_RubyRemoveTracking) : 0 )
- ), ptr);
- /* If tracking is on for this class then track this object. */
- if (track) {
- SWIG_RubyAddTracking(ptr, obj);
- }
- } else {
- klass_name = (char *) malloc(4 + strlen(type->name) + 1);
- sprintf(klass_name, "TYPE%s", type->name);
- klass = rb_const_get(_mSWIG, rb_intern(klass_name));
- free((void *) klass_name);
- obj = Data_Wrap_Struct(klass, 0, 0, ptr);
- }
- rb_iv_set(obj, "@__swigtype__", rb_str_new2(type->name));
-
- return obj;
- }
- /* Create a new class instance (always owned) */
- SWIGRUNTIME VALUE
- SWIG_Ruby_NewClassInstance(VALUE klass, swig_type_info *type)
- {
- VALUE obj;
- swig_class *sklass = (swig_class *) type->clientdata;
- obj = Data_Wrap_Struct(klass, VOIDFUNC(sklass->mark), VOIDFUNC(sklass->destroy), 0);
- rb_iv_set(obj, "@__swigtype__", rb_str_new2(type->name));
- return obj;
- }
- /* Get type mangle from class name */
- SWIGRUNTIMEINLINE char *
- SWIG_Ruby_MangleStr(VALUE obj)
- {
- VALUE stype = rb_iv_get(obj, "@__swigtype__");
- return StringValuePtr(stype);
- }
- /* Acquire a pointer value */
- typedef void (*ruby_owntype)(void*);
- SWIGRUNTIME ruby_owntype
- SWIG_Ruby_AcquirePtr(VALUE obj, ruby_owntype own) {
- if (obj) {
- ruby_owntype oldown = RDATA(obj)->dfree;
- RDATA(obj)->dfree = own;
- return oldown;
- } else {
- return 0;
- }
- }
- /* Convert a pointer value */
- SWIGRUNTIME int
- SWIG_Ruby_ConvertPtrAndOwn(VALUE obj, void **ptr, swig_type_info *ty, int flags, ruby_owntype *own)
- {
- char *c;
- swig_cast_info *tc;
- void *vptr = 0;
- /* Grab the pointer */
- if (NIL_P(obj)) {
- *ptr = 0;
- return SWIG_OK;
- } else {
- if (TYPE(obj) != T_DATA) {
- return SWIG_ERROR;
- }
- Data_Get_Struct(obj, void, vptr);
- }
-
- if (own) *own = RDATA(obj)->dfree;
-
- /* Check to see if the input object is giving up ownership
- of the underlying C struct or C++ object. If so then we
- need to reset the destructor since the Ruby object no
- longer owns the underlying C++ object.*/
- if (flags & SWIG_POINTER_DISOWN) {
- /* Is tracking on for this class? */
- int track = 0;
- if (ty && ty->clientdata) {
- swig_class *sklass = (swig_class *) ty->clientdata;
- track = sklass->trackObjects;
- }
-
- if (track) {
- /* We are tracking objects for this class. Thus we change the destructor
- * to SWIG_RubyRemoveTracking. This allows us to
- * remove the mapping from the C++ to Ruby object
- * when the Ruby object is garbage collected. If we don't
- * do this, then it is possible we will return a reference
- * to a Ruby object that no longer exists thereby crashing Ruby. */
- RDATA(obj)->dfree = SWIG_RubyRemoveTracking;
- } else {
- RDATA(obj)->dfree = 0;
- }
- }
- /* Do type-checking if type info was provided */
- if (ty) {
- if (ty->clientdata) {
- if (rb_obj_is_kind_of(obj, ((swig_class *) (ty->clientdata))->klass)) {
- if (vptr == 0) {
- /* The object has already been deleted */
- return SWIG_ObjectPreviouslyDeletedError;
- }
- *ptr = vptr;
- return SWIG_OK;
- }
- }
- if ((c = SWIG_MangleStr(obj)) == NULL) {
- return SWIG_ERROR;
- }
- tc = SWIG_TypeCheck(c, ty);
- if (!tc) {
- return SWIG_ERROR;
- } else {
- int newmemory = 0;
- *ptr = SWIG_TypeCast(tc, vptr, &newmemory);
- assert(!newmemory); /* newmemory handling not yet implemented */
- }
- } else {
- *ptr = vptr;
- }
-
- return SWIG_OK;
- }
- /* Check convert */
- SWIGRUNTIMEINLINE int
- SWIG_Ruby_CheckConvert(VALUE obj, swig_type_info *ty)
- {
- char *c = SWIG_MangleStr(obj);
- if (!c) return 0;
- return SWIG_TypeCheck(c,ty) != 0;
- }
- SWIGRUNTIME VALUE
- SWIG_Ruby_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 rb_str_new2(result);
- }
- /* Convert a packed value value */
- SWIGRUNTIME int
- SWIG_Ruby_ConvertPacked(VALUE obj, void *ptr, int sz, swig_type_info *ty) {
- swig_cast_info *tc;
- const char *c;
- if (TYPE(obj) != T_STRING) goto type_error;
- c = StringValuePtr(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 SWIG_OK;
- type_error:
- return SWIG_ERROR;
- }
- SWIGRUNTIME swig_module_info *
- SWIG_Ruby_GetModule(void)
- {
- VALUE pointer;
- swig_module_info *ret = 0;
- VALUE verbose = rb_gv_get("VERBOSE");
- /* temporarily disable warnings, since the pointer check causes warnings with 'ruby -w' */
- rb_gv_set("VERBOSE", Qfalse);
-
- /* first check if pointer already created */
- pointer = rb_gv_get("$swig_runtime_data_type_pointer" SWIG_RUNTIME_VERSION SWIG_TYPE_TABLE_NAME);
- if (pointer != Qnil) {
- Data_Get_Struct(pointer, swig_module_info, ret);
- }
- /* reinstate warnings */
- rb_gv_set("VERBOSE", verbose);
- return ret;
- }
- SWIGRUNTIME void
- SWIG_Ruby_SetModule(swig_module_info *pointer)
- {
- /* register a new class */
- VALUE cl = rb_define_class("swig_runtime_data", rb_cObject);
- /* create and store the structure pointer to a global variable */
- swig_runtime_data_type_pointer = Data_Wrap_Struct(cl, 0, 0, pointer);
- rb_define_readonly_variable("$swig_runtime_data_type_pointer" SWIG_RUNTIME_VERSION SWIG_TYPE_TABLE_NAME, &swig_runtime_data_type_pointer);
- }
- /* This function can be used to check whether a proc or method or similarly
- callable function has been passed. Usually used in a %typecheck, like:
- %typecheck(c_callback_t, precedence=SWIG_TYPECHECK_POINTER) {
- $result = SWIG_Ruby_isCallable( $input );
- }
- */
- SWIGINTERN
- int SWIG_Ruby_isCallable( VALUE proc )
- {
- if ( rb_respond_to( proc, swig_call_id ) == Qtrue )
- return 1;
- return 0;
- }
- /* This function can be used to check the arity (number of arguments)
- a proc or method can take. Usually used in a %typecheck.
- Valid arities will be that equal to minimal or those < 0
- which indicate a variable number of parameters at the end.
- */
- SWIGINTERN
- int SWIG_Ruby_arity( VALUE proc, int minimal )
- {
- if ( rb_respond_to( proc, swig_arity_id ) == Qtrue )
- {
- VALUE num = rb_funcall( proc, swig_arity_id, 0 );
- int arity = NUM2INT(num);
- if ( arity < 0 && (arity+1) < -minimal ) return 1;
- if ( arity == minimal ) return 1;
- return 1;
- }
- return 0;
- }
- #ifdef __cplusplus
- }
- #endif
- #define SWIG_exception_fail(code, msg) do { SWIG_Error(code, msg); SWIG_fail; } while(0)
- #define SWIG_contract_assert(expr, msg) if (!(expr)) { SWIG_Error(SWIG_RuntimeError, msg); SWIG_fail; } else
- #define SWIG_exception(code, msg) do { SWIG_Error(code, msg);; } while(0)
- /* -------- TYPES TABLE (BEGIN) -------- */
- #define SWIGTYPE_p_Document swig_types[0]
- #define SWIGTYPE_p_DocumentList swig_types[1]
- #define SWIGTYPE_p_TokenSet swig_types[2]
- #define SWIGTYPE_p_TupleSet swig_types[3]
- #define SWIGTYPE_p_allocator_type swig_types[4]
- #define SWIGTYPE_p_char swig_types[5]
- #define SWIGTYPE_p_difference_type swig_types[6]
- #define SWIGTYPE_p_p_void swig_types[7]
- #define SWIGTYPE_p_size_type swig_types[8]
- #define SWIGTYPE_p_std__allocatorT_int_t swig_types[9]
- #define SWIGTYPE_p_std__istream swig_types[10]
- #define SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t swig_types[11]
- #define SWIGTYPE_p_std__vectorT_std__string_std__allocatorT_std__string_t_t swig_types[12]
- #define SWIGTYPE_p_swig__ConstIterator swig_types[13]
- #define SWIGTYPE_p_swig__GC_VALUE swig_types[14]
- #define SWIGTYPE_p_swig__Iterator swig_types[15]
- #define SWIGTYPE_p_value_type swig_types[16]
- #define SWIGTYPE_p_void swig_types[17]
- static swig_type_info *swig_types[19];
- static swig_module_info swig_module = {swig_types, 18, 0, 0, 0, 0};
- #define SWIG_TypeQuery(name) SWIG_TypeQueryModule(&swig_module, &swig_module, name)
- #define SWIG_MangledTypeQuery(name) SWIG_MangledTypeQueryModule(&swig_module, &swig_module, name)
- /* -------- TYPES TABLE (END) -------- */
- #define SWIG_init Init_uhferret_lib
- #define SWIG_name "Uhferret_lib"
- static VALUE mUhferret_lib;
- #define SWIG_RUBY_THREAD_BEGIN_BLOCK
- #define SWIG_RUBY_THREAD_END_BLOCK
- #define SWIGVERSION 0x020004
- #define SWIG_VERSION SWIGVERSION
- #define SWIG_as_voidptr(a) const_cast< void * >(static_cast< const void * >(a))
- #define SWIG_as_voidptrptr(a) ((void)SWIG_as_voidptr(*a),reinterpret_cast< void** >(a))
- #include <stdexcept>
- #include "document.h"
- #include "documentlist.h"
- #include "tupleset.h"
- #include <string>
- #include <iostream>
- #include <stdexcept>
- namespace swig {
- class GC_VALUE {
- protected:
- // Hash of all GC_VALUE's currently in use
- static VALUE _hash;
- VALUE _obj;
- static ID hash_id;
- static ID lt_id;
- static ID gt_id;
- static ID eq_id;
- static ID le_id;
- static ID ge_id;
- static ID pos_id;
- static ID neg_id;
- static ID inv_id;
- static ID add_id;
- static ID sub_id;
- static ID mul_id;
- static ID div_id;
- static ID mod_id;
- static ID and_id;
- static ID or_id;
- static ID xor_id;
- static ID lshift_id;
- static ID rshift_id;
- struct OpArgs
- {
- VALUE src;
- ID id;
- int nargs;
- VALUE target;
- };
- public:
- static void initialize()
- {
- if ( _hash == Qnil )
- {
- _hash = rb_hash_new();
- rb_gc_register_address( &_hash );
- }
- }
- // this function is never called. Provided for symmetry only.
- static void cleanup()
- {
- rb_gc_unregister_address( &_hash );
- }
- GC_VALUE() : _obj( Qnil )
- {
- }
- GC_VALUE(const GC_VALUE& item) : _obj(item._obj)
- {
- GC_register();
- }
-
- GC_VALUE(VALUE obj) :_obj(obj)
- {
- GC_register();
- }
-
- ~GC_VALUE()
- {
- GC_unregister();
- }
-
- GC_VALUE & operator=(const GC_VALUE& item)
- {
- GC_unregister();
- _obj = item._obj;
- GC_register();
- return *this;
- }
- void GC_register()
- {
- if ( FIXNUM_P(_obj) || SPECIAL_CONST_P(_obj) || SYMBOL_P(_obj) )
- return;
- VALUE val = rb_hash_aref( _hash, _obj );
- unsigned n = FIXNUM_P(val) ? NUM2UINT(val) : 0;
- ++n;
- rb_hash_aset( _hash, _obj, INT2NUM(n) );
- }
- void GC_unregister()
- {
- if ( FIXNUM_P(_obj) || SPECIAL_CONST_P(_obj) || SYMBOL_P(_obj) )
- return;
- // this test should not be needed but I've noticed some very erratic
- // behavior of none being unregistered in some very rare situations.
- if ( BUILTIN_TYPE(_obj) == T_NONE ) return;
- VALUE val = rb_hash_aref( _hash, _obj );
- unsigned n = FIXNUM_P(val) ? NUM2UINT(val) : 1;
- --n;
- if ( n )
- rb_hash_aset( _hash, _obj, INT2NUM(n) );
- else
- rb_hash_delete( _hash, _obj );
- }
-
- operator VALUE() const
- {
- return _obj;
- }
- VALUE inspect() const
- {
- return rb_inspect(_obj);
- }
- VALUE to_s() const
- {
- return rb_inspect(_obj);
- }
- static VALUE swig_protect_funcall( VALUE p )
- {
- OpArgs* args = (OpArgs*) p;
- return rb_funcall( args->src, args->id, args->nargs, args->target );
- }
- #define GC_VALUE_CMP( op_id, op, cmp, cmpval ) \
- bool op( const GC_VALUE& other ) const \
- { \
- if ( FIXNUM_P(_obj) && FIXNUM_P(other._obj) ) \
- { \
- return _obj cmp other._obj; \
- } \
- bool res = false; \
- VALUE ret = Qnil; \
- SWIG_RUBY_THREAD_BEGIN_BLOCK; \
- if ( rb_respond_to( _obj, op_id ) == Qtrue ) \
- { \
- int status; \
- OpArgs args; \
- args.src = _obj; \
- args.id = op_id; \
- args.nargs = 1; \
- args.target = VALUE(other); \
- ret = rb_protect( PROTECTFUNC(swig_protect_funcall), \
- VALUE(&args), &status ); \
- } \
- if ( ret == Qnil ) { \
- VALUE a = rb_funcall( _obj, hash_id, 0 ); \
- VALUE b = rb_funcall( VALUE(other), hash_id, 0 ); \
- res = a cmp b; \
- } \
- else \
- { \
- res = RTEST( ret ); \
- } \
- SWIG_RUBY_THREAD_END_BLOCK; \
- return res; \
- }
- GC_VALUE_CMP( eq_id, operator==, ==, == 0 )
- GC_VALUE_CMP( lt_id, operator<, < , < 0 )
- GC_VALUE_CMP( le_id, operator<=, <=, <= 0 )
- GC_VALUE_CMP( gt_id, operator>, > , > 0 )
- GC_VALUE_CMP( ge_id, operator>=, >=, >= 0 )
- #undef GC_VALUE_CMP
- bool operator!=( const GC_VALUE& other )
- {
- return !(this->operator==(other));
- }
- #define GC_VALUE_UNARY( proc_id, op ) \
- GC_VALUE op() const \
- { \
- VALUE ret = Qnil; \
- SWIG_RUBY_THREAD_BEGIN_BLOCK; \
- int status; \
- OpArgs args; \
- args.src = _obj; \
- args.id = proc_id; \
- args.nargs = 0; \
- args.target = Qnil; \
- ret = rb_protect( PROTECTFUNC(swig_protect_funcall), VALUE(&args), \
- &status ); \
- SWIG_RUBY_THREAD_END_BLOCK; \
- return ret; \
- }
- GC_VALUE_UNARY( pos_id, operator+ )
- GC_VALUE_UNARY( neg_id, operator- )
- GC_VALUE_UNARY( inv_id, operator~ )
- #undef GC_VALUE_BINARY
- #define GC_VALUE_BINARY( proc_id, op ) \
- GC_VALUE op( const GC_VALUE& other ) const \
- { \
- VALUE ret = Qnil; \
- SWIG_RUBY_THREAD_BEGIN_BLOCK; \
- int status; \
- OpArgs args; \
- args.src = _obj; \
- args.id = proc_id; \
- args.nargs = 1; \
- args.target = VALUE(other); \
- ret = rb_protect( PROTECTFUNC(swig_protect_funcall), VALUE(&args), \
- &status ); \
- SWIG_RUBY_THREAD_END_BLOCK; \
- return GC_VALUE(ret); \
- }
- GC_VALUE_BINARY( add_id, operator+ );
- GC_VALUE_BINARY( sub_id, operator- );
- GC_VALUE_BINARY( mul_id, operator* );
- GC_VALUE_BINARY( div_id, operator/ );
- GC_VALUE_BINARY( mod_id, operator% );
-
- GC_VALUE_BINARY( and_id, operator& );
- GC_VALUE_BINARY( xor_id, operator^ );
- GC_VALUE_BINARY( or_id, operator| );
- GC_VALUE_BINARY( lshift_id, operator<< );
- GC_VALUE_BINARY( rshift_id, operator>> );
- #undef GC_VALUE_BINARY
- };
- ID GC_VALUE::hash_id = rb_intern("hash");
- ID GC_VALUE::lt_id = rb_intern("<");
- ID GC_VALUE::gt_id = rb_intern(">");
- ID GC_VALUE::eq_id = rb_intern("==");
- ID GC_VALUE::le_id = rb_intern("<=");
- ID GC_VALUE::ge_id = rb_intern(">=");
- ID GC_VALUE::pos_id = rb_intern("+@");
- ID GC_VALUE::neg_id = rb_intern("-@");
- ID GC_VALUE::inv_id = rb_intern("~");
- ID GC_VALUE::add_id = rb_intern("+");
- ID GC_VALUE::sub_id = rb_intern("-");
- ID GC_VALUE::mul_id = rb_intern("*");
- ID GC_VALUE::div_id = rb_intern("/");
- ID GC_VALUE::mod_id = rb_intern("%");
- ID GC_VALUE::and_id = rb_intern("&");
- ID GC_VALUE::or_id = rb_intern("|");
- ID GC_VALUE::xor_id = rb_intern("^");
- ID GC_VALUE::lshift_id = rb_intern("<<");
- ID GC_VALUE::rshift_id = rb_intern(">>");
- VALUE GC_VALUE::_hash = Qnil;
- typedef GC_VALUE LANGUAGE_OBJ;
- } // namespace swig
- #if defined(__GNUC__)
- # if __GNUC__ == 2 && __GNUC_MINOR <= 96
- # define SWIG_STD_NOMODERN_STL
- # endif
- #endif
- #include <string>
- #include <stdexcept>
- #include <stddef.h>
-
- namespace swig {
- struct stop_iteration {
- };
- /**
- * Abstract base class used to represent all iterators of STL containers.
- */
- struct ConstIterator {
- public:
- typedef ConstIterator self_type;
- protected:
- GC_VALUE _seq;
- protected:
- ConstIterator(VALUE seq) : _seq(seq)
- {
- }
- // Random access iterator methods, but not required in Ruby
- virtual ptrdiff_t distance(const ConstIterator &x) const
- {
- throw std::invalid_argument("distance not supported");
- }
- virtual bool equal (const ConstIterator &x) const
- {
- throw std::invalid_argument("equal not supported");
- }
- virtual self_type* advance(ptrdiff_t n)
- {
- throw std::invalid_argument("advance not supported");
- }
-
- public:
- virtual ~ConstIterator() {}
- // Access iterator method, required by Ruby
- virtual VALUE value() const {
- throw std::invalid_argument("value not supported");
- return Qnil;
- };
- virtual VALUE setValue( const VALUE& v ) {
- throw std::invalid_argument("value= not supported");
- return Qnil;
- }
- virtual self_type* next( size_t n = 1 )
- {
- return this->advance( n );
- }
- virtual self_type* previous( size_t n = 1 )
- {
- ptrdiff_t nn = n;
- return this->advance( -nn );
- }
- virtual VALUE to_s() const {
- throw std::invalid_argument("to_s not supported");
- return Qnil;
- }
- virtual VALUE inspect() const {
- throw std::invalid_argument("inspect not supported");
- return Qnil;
- }
-
- virtual ConstIterator *dup() const
- {
- throw std::invalid_argument("dup not supported");
- return NULL;
- }
- //
- // C++ common/needed methods. We emulate a bidirectional
- // operator, to be compatible with all the STL.
- // The iterator traits will then tell the STL what type of
- // iterator we really are.
- //
- ConstIterator() : _seq( Qnil )
- {
- }
- ConstIterator( const self_type& b ) : _seq( b._seq )
- {
- }
- self_type& operator=( const self_type& b )
- {
- _seq = b._seq;
- return *this;
- }
- bool operator == (const ConstIterator& x) const
- {
- return equal(x);
- }
-
- bool operator != (const ConstIterator& x) const
- {
- return ! operator==(x);
- }
-
- // Pre-decrement operator
- self_type& operator--()
- {
- return *previous();
- }
- // Pre-increment operator
- self_type& operator++()
- {
- return *next();
- }
- // Post-decrement operator
- self_type operator--(int)
- {
- self_type r = *this;
- previous();
- return r;
- }
- // Post-increment operator
- self_type operator++(int)
- {
- self_type r = *this;
- next();
- return r;
- }
- ConstIterator& operator += (ptrdiff_t n)
- {
- return *advance(n);
- }
- ConstIterator& operator -= (ptrdiff_t n)
- {
- return *advance(-n);
- }
- ConstIterator* operator + (ptrdiff_t n) const
- {
- return dup()->advance(n);
- }
- ConstIterator* operator - (ptrdiff_t n) const
- {
- return dup()->advance(-n);
- }
-
- ptrdiff_t operator - (const ConstIterator& x) const
- {
- return x.distance(*this);
- }
-
- static swig_type_info* descriptor() {
- static int init = 0;
- static swig_type_info* desc = 0;
- if (!init) {
- desc = SWIG_TypeQuery("swig::ConstIterator *");
- init = 1;
- }
- return desc;
- }
- };
- /**
- * Abstract base class used to represent all non-const iterators of STL containers.
- *
- */
- struct Iterator : public ConstIterator {
- public:
- typedef Iterator self_type;
- protected:
- Iterator(VALUE seq) : ConstIterator(seq)
- {
- }
- virtual self_type* advance(ptrdiff_t n)
- {
- throw std::invalid_argument("operation not supported");
- }
- public:
- static swig_type_info* descriptor() {
- static int init = 0;
- static swig_type_info* desc = 0;
- if (!init) {
- desc = SWIG_TypeQuery("swig::Iterator *");
- init = 1;
- }
- return desc;
- }
-
- virtual Iterator *dup() const
- {
- throw std::invalid_argument("dup not supported");
- return NULL;
- }
-
- virtual self_type* next( size_t n = 1 )
- {
- return this->advance( n );
- }
- virtual self_type* previous( size_t n = 1 )
- {
- ptrdiff_t nn = n;
- return this->advance( -nn );
- }
- bool operator == (const ConstIterator& x) const
- {
- return equal(x);
- }
-
- bool operator != (const Iterator& x) const
- {
- return ! operator==(x);
- }
-
- Iterator& operator += (ptrdiff_t n)
- {
- return *advance(n);
- }
- Iterator& operator -= (ptrdiff_t n)
- {
- return *advance(-n);
- }
-
- Iterator* operator + (ptrdiff_t n) const
- {
- return dup()->advance(n);
- }
- Iterator* operator - (ptrdiff_t n) const
- {
- return dup()->advance(-n);
- }
-
- ptrdiff_t operator - (const Iterator& x) const
- {
- return x.distance(*this);
- }
- };
- }
- SWIGINTERN VALUE
- SWIG_ruby_failed(void)
- {
- return Qnil;
- }
- /*@SWIG:/usr/local/share/swig/2.0.4/ruby/rubyprimtypes.swg,19,%ruby_aux_method@*/
- SWIGINTERN VALUE SWIG_AUX_NUM2ULONG(VALUE *args)
- {
- VALUE obj = args[0];
- VALUE type = TYPE(obj);
- unsigned long *res = (unsigned long *)(args[1]);
- *res = type == T_FIXNUM ? NUM2ULONG(obj) : rb_big2ulong(obj);
- return obj;
- }
- /*@SWIG@*/
- SWIGINTERN int
- SWIG_AsVal_unsigned_SS_long (VALUE obj, unsigned long *val)
- {
- VALUE type = TYPE(obj);
- if ((type == T_FIXNUM) || (type == T_BIGNUM)) {
- unsigned long v;
- VALUE a[2];
- a[0] = obj;
- a[1] = (VALUE)(&v);
- if (rb_rescue(RUBY_METHOD_FUNC(SWIG_AUX_NUM2ULONG), (VALUE)a, RUBY_METHOD_FUNC(SWIG_ruby_failed), 0) != Qnil) {
- if (val) *val = v;
- return SWIG_OK;
- }
- }
- return SWIG_TypeError;
- }
- SWIGINTERNINLINE int
- SWIG_AsVal_size_t (VALUE obj, size_t *val)
- {
- unsigned long v;
- int res = SWIG_AsVal_unsigned_SS_long (obj, val ? &v : 0);
- if (SWIG_IsOK(res) && val) *val = static_cast< size_t >(v);
- return res;
- }
- SWIGINTERNINLINE VALUE
- SWIG_From_bool (bool value)
- {
- return value ? Qtrue : Qfalse;
- }
- /*@SWIG:/usr/local/share/swig/2.0.4/ruby/rubyprimtypes.swg,19,%ruby_aux_method@*/
- SWIGINTERN VALUE SWIG_AUX_NUM2LONG(VALUE *args)
- {
- VALUE obj = args[0];
- VALUE type = TYPE(obj);
- long *res = (long *)(args[1]);
- *res = type == T_FIXNUM ? NUM2LONG(obj) : rb_big2long(obj);
- return obj;
- }
- /*@SWIG@*/
- SWIGINTERN int
- SWIG_AsVal_long (VALUE obj, long* val)
- {
- VALUE type = TYPE(obj);
- if ((type == T_FIXNUM) || (type == T_BIGNUM)) {
- long v;
- VALUE a[2];
- a[0] = obj;
- a[1] = (VALUE)(&v);
- if (rb_rescue(RUBY_METHOD_FUNC(SWIG_AUX_NUM2LONG), (VALUE)a, RUBY_METHOD_FUNC(SWIG_ruby_failed), 0) != Qnil) {
- if (val) *val = v;
- return SWIG_OK;
- }
- }
- return SWIG_TypeError;
- }
- SWIGINTERNINLINE int
- SWIG_AsVal_ptrdiff_t (VALUE obj, ptrdiff_t *val)
- {
- long v;
- int res = SWIG_AsVal_long (obj, val ? &v : 0);
- if (SWIG_IsOK(res) && val) *val = static_cast< ptrdiff_t >(v);
- return res;
- }
- #include <limits.h>
- #if !defined(SWIG_NO_LLONG_MAX)
- # if !defined(LLONG_MAX) && defined(__GNUC__) && defined (__LONG_LONG_MAX__)
- # define LLONG_MAX __LONG_LONG_MAX__
- # define LLONG_MIN (-LLONG_MAX - 1LL)
- # define ULLONG_MAX (LLONG_MAX * 2ULL + 1ULL)
- # endif
- #endif
- #define SWIG_From_long LONG2NUM
- SWIGINTERNINLINE VALUE
- SWIG_From_ptrdiff_t (ptrdiff_t value)
- {
- return SWIG_From_long (static_cast< long >(value));
- }
- #include <stdexcept>
- #include <algorithm>
- #include <vector>
- SWIGINTERN int
- SWIG_AsVal_int (VALUE obj, int *val)
- {
- long v;
- int res = SWIG_AsVal_long (obj, &v);
- if (SWIG_IsOK(res)) {
- if ((v < INT_MIN || v > INT_MAX)) {
- return SWIG_OverflowError;
- } else {
- if (val) *val = static_cast< int >(v);
- }
- }
- return res;
- }
- SWIGINTERNINLINE VALUE
- SWIG_From_int (int value)
- {
- return SWIG_From_long (value);
- }
- namespace swig {
- template <class Type>
- struct noconst_traits {
- typedef Type noconst_type;
- };
- template <class Type>
- struct noconst_traits<const Type> {
- typedef Type noconst_type;
- };
- /*
- type categories
- */
- struct pointer_category { };
- struct value_category { };
- /*
- General traits that provides type_name and type_info
- */
- template <class Type> struct traits { };
- template <class Type>
- inline const char* type_name() {
- return traits<typename noconst_traits<Type >::noconst_type >::type_name();
- }
- template <class Type>
- struct traits_info {
- static swig_type_info *type_query(std::string name) {
- name += " *";
- return SWIG_TypeQuery(name.c_str());
- }
- static swig_type_info *type_info() {
- static swig_type_info *info = type_query(type_name<Type>());
- return info;
- }
- };
- template <class Type>
- inline swig_type_info *type_info() {
- return traits_info<Type>::type_info();
- }
- /*
- Partial specialization for pointers
- */
- template <class Type> struct traits <Type *> {
- typedef pointer_category category;
- static std::string make_ptr_name(const char* name) {
- std::string ptrname = name;
- ptrname += " *";
- return ptrname;
- }
- static const char* type_name() {
- static std::string name = make_ptr_name(swig::type_name<Type>());
- return name.c_str();
- }
- };
- template <class Type, class Category>
- struct traits_as { };
-
- template <class Type, class Category>
- struct traits_check { };
- }
- namespace swig {
- /*
- Traits that provides the from method
- */
- template <class Type> struct traits_from_ptr {
- static VALUE from(Type *val, int owner = 0) {
- return SWIG_NewPointerObj(val, type_info<Type>(), owner);
- }
- };
- template <class Type> struct traits_from {
- static VALUE from(const Type& val) {
- return traits_from_ptr<Type>::from(new Type(val), 1);
- }
- };
- template <class Type> struct traits_from<Type *> {
- static VALUE from(Type* val) {
- return traits_from_ptr<Type>::from(val, 0);
- }
- };
- template <class Type> struct traits_from<const Type *> {
- static VALUE from(const Type* val) {
- return traits_from_ptr<Type>::from(const_cast<Type*>(val), 0);
- }
- };
- template <class Type>
- inline VALUE from(const Type& val) {
- return traits_from<Type>::from(val);
- }
- template <class Type>
- inline VALUE from_ptr(Type* val, int owner) {
- return traits_from_ptr<Type>::from(val, owner);
- }
- /*
- Traits that provides the asval/as/check method
- */
- template <class Type>
- struct traits_asptr {
- static int asptr(VALUE obj, Type **val) {
- Type *p;
- int res = SWIG_ConvertPtr(obj, (void**)&p, type_info<Type>(), 0);
- if (SWIG_IsOK(res)) {
- if (val) *val = p;
- }
- return res;
- }
- };
- template <class Type>
- inline int asptr(VALUE obj, Type **vptr) {
- return traits_asptr<Type>::asptr(obj, vptr);
- }
- template <class Type>
- struct traits_asval {
- static int asval(VALUE obj, Type *val) {
- if (val) {
- Type *p = 0;
- int res = traits_asptr<Type>::asptr(obj, &p);
- if (!SWIG_IsOK(res)) return res;
- if (p) {
- typedef typename noconst_traits<Type>::noconst_type noconst_type;
- *(const_cast<noconst_type*>(val)) = *p;
- if (SWIG_IsNewObj(res)){
- delete p;
- res = SWIG_DelNewMask(res);
- }
- return res;
- } else {
- return SWIG_ERROR;
- }
- } else {
- return traits_asptr<Type>::asptr(obj, (Type **)(0));
- }
- }
- };
- template <class Type> struct traits_asval<Type*> {
- static int asval(VALUE obj, Type **val) {
- if (val) {
- typedef typename noconst_traits<Type>::noconst_type noconst_type;
- noconst_type *p = 0;
- int res = traits_asptr<noconst_type>::asptr(obj, &p);
- if (SWIG_IsOK(res)) {
- *(const_cast<noconst_type**>(val)) = p;
- }
- return res;
- } else {
- return traits_asptr<Type>::asptr(obj, (Type **)(0));
- }
- }
- };
-
- template <class Type>
- inline int asval(VALUE obj, Type *val) {
- return traits_asval<Type>::asval(obj, val);
- }
- template <class Type>
- struct traits_as<Type, value_category> {
- static Type as(VALUE obj, bool throw_error) {
- Type v;
- int res = asval(obj, &v);
- if (!obj || !SWIG_IsOK(res)) {
- if (throw_error) throw std::invalid_argument("bad type");
- VALUE lastErr = rb_gv_get("$!");
- if (lastErr == Qnil) {
- SWIG_Error(SWIG_TypeError, swig::type_name<Type>());
- }
- }
- return v;
- }
- };
- template <class Type>
- struct traits_as<Type, pointer_category> {
- static Type as(VALUE obj, bool throw_error) {
- Type *v = 0;
- int res = (obj ? traits_asptr<Type>::asptr(obj, &v) : SWIG_ERROR);
- if (SWIG_IsOK(res) && v) {
- if (SWIG_IsNewObj(res)) {
- Type r(*v);
- delete v;
- return r;
- } else {
- return *v;
- }
- } else {
- // Uninitialized return value, no Type() constructor required.
- if (throw_error) throw std::invalid_argument("bad type");
- VALUE lastErr = rb_gv_get("$!");
- if (lastErr == Qnil) {
- SWIG_Error(SWIG_TypeError, swig::type_name<Type>());
- }
- static Type *v_def = (Type*) malloc(sizeof(Type));
- memset(v_def,0,sizeof(Type));
- return *v_def;
- }
- }
- };
- template <class Type>
- struct traits_as<Type*, pointer_category> {
- static Type* as(VALUE obj, bool throw_error) {
- Type *v = 0;
- int res = (obj ? traits_asptr<Type>::asptr(obj, &v) : SWIG_ERROR);
- if (SWIG_IsOK(res)) {
- return v;
- } else {
- if (throw_error) throw std::invalid_argument("bad type");
- VALUE lastErr = rb_gv_get("$!");
- if (lastErr == Qnil) {
- SWIG_Error(SWIG_TypeError, swig::type_name<Type>());
- }
- return 0;
- }
- }
- };
- template <class Type>
- inline Type as(VALUE obj, bool te = false) {
- return traits_as< Type, typename traits< Type >::category >::as(obj, te);
- }
- template <class Type>
- struct traits_check<Type, value_category> {
- static bool check(VALUE obj) {
- int res = obj ? asval(obj, (Type *)(0)) : SWIG_ERROR;
- return SWIG_IsOK(res) ? true : false;
- }
- };
- template <class Type>
- struct traits_check<Type, pointer_category> {
- static bool check(VALUE obj) {
- int res = obj ? asptr(obj, (Type **)(0)) : SWIG_ERROR;
- return SWIG_IsOK(res) ? true : false;
- }
- };
- template <class Type>
- inline bool check(VALUE obj) {
- return traits_check<Type, typename traits<Type>::category>::check(obj);
- }
- }
- namespace swig {
- template <> struct traits<int > {
- typedef value_category category;
- static const char* type_name() { return"int"; }
- };
- template <> struct traits_asval<int > {
- typedef int value_type;
- static int asval(VALUE obj, value_type *val) {
- return SWIG_AsVal_int (obj, val);
- }
- };
- template <> struct traits_from<int > {
- typedef int value_type;
- static VALUE from(const value_type& val) {
- return SWIG_From_int (val);
- }
- };
- }
- #include <functional>
- namespace swig {
- template < class T >
- struct yield : public std::unary_function< T, bool >
- {
- bool
- operator()( const T& v ) const
- {
- return RTEST( rb_yield( swig::from< T >(v) ) );
- }
- };
- inline size_t
- check_index(ptrdiff_t i, size_t size, bool insert = false) {
- if ( i < 0 ) {
- if ((size_t) (-i) <= size)
- return (size_t) (i + size);
- } else if ( (size_t) i < size ) {
- return (size_t) i;
- } else if (insert && ((size_t) i == size)) {
- return size;
- }
-
- throw std::out_of_range("index out of range");
- }
- inline size_t
- slice_index(ptrdiff_t i, size_t size) {
- if ( i < 0 ) {
- if ((size_t) (-i) <= size) {
- return (size_t) (i + size);
- } else {
- throw std::out_of_range("index out of range");
- }
- } else {
- return ( (size_t) i < size ) ? ((size_t) i) : size;
- }
- }
- template <class Sequence, class Difference>
- inline typename Sequence::iterator
- getpos(Sequence* self, Difference i) {
- typename Sequence::iterator pos = self->begin();
- std::advance(pos, check_index(i,self->size()));
- return pos;
- }
- template <class Sequence, class Difference>
- inline typename Sequence::const_iterator
- cgetpos(const Sequence* self, Difference i) {
- typename Sequence::const_iterator pos = self->begin();
- std::advance(pos, check_index(i,self->size()));
- return pos;
- }
- template <class Sequence, class Difference>
- inline Sequence*
- getslice(const Sequence* self, Difference i, Difference j) {
- typename Sequence::size_type size = self->size();
- typename Sequence::size_type ii = swig::check_index(i, size);
- typename Sequence::size_type jj = swig::slice_index(j, size);
- if (jj > ii) {
- typename Sequence::const_iterator vb = self->begin();
- typename Sequence::const_iterator ve = self->begin();
- std::advance(vb,ii);
- std::advance(ve,jj);
- return new Sequence(vb, ve);
- } else {
- return new Sequence();
- }
- }
- template <class Sequence, class Difference, class InputSeq>
- inline void
- setslice(Sequence* self, Difference i, Difference j, const InputSeq& v) {
- typename Sequence::size_type size = self->size();
- typename Sequence::size_type ii = swig::check_index(i, size, true);
- typename Sequence::size_type jj = swig::slice_index(j, size);
- if (jj < ii) jj = ii;
- size_t ssize = jj - ii;
- if (ssize <= v.size()) {
- typename Sequence::iterator sb = self->begin();
- typename InputSeq::const_iterator vmid = v.begin();
- std::advance(sb,ii);
- std::advance(vmid, jj - ii);
- self->insert(std::copy(v.begin(), vmid, sb), vmid, v.end());
- } else {
- typename Sequence::iterator sb = self->begin();
- typename Sequence::iterator se = self->begin();
- std::advance(sb,ii);
- std::advance(se,jj);
- self->erase(sb,se);
- self->insert(sb, v.begin(), v.end());
- }
- }
- template <class Sequence, class Difference>
- inline void
- delslice(Sequence* self, Difference i, Difference j) {
- typename Sequence::size_type size = self->size();
- typename Sequence::size_type ii = swig::check_index(i, size, true);
- typename Sequence::size_type jj = swig::slice_index(j, size);
- if (jj > ii) {
- typename Sequence::iterator sb = self->begin();
- typename Sequence::iterator se = self->begin();
- std::advance(sb,ii);
- std::advance(se,jj);
- self->erase(sb,se);
- }
- }
- }
- #if defined(__SUNPRO_CC) && defined(_RWSTD_VER)
- # if !defined(SWIG_NO_STD_NOITERATOR_TRAITS_STL)
- # define SWIG_STD_NOITERATOR_TRAITS_STL
- # endif
- #endif
- #if !defined(SWIG_STD_NOITERATOR_TRAITS_STL)
- #include <iterator>
- #else
- namespace std {
- template <class Iterator>
- struct iterator_traits {
- typedef ptrdiff_t difference_type;
- typedef typename Iterator::value_type value_type;
- };
- template <class Iterator, class Category,class T, class Reference, class Pointer, class Distance>
- struct iterator_traits<__reverse_bi_iterator<Iterator,Category,T,Reference,Pointer,Distance> > {
- typedef Distance difference_type;
- typedef T value_type;
- };
- template <class T>
- struct iterator_traits<T*> {
- typedef T value_type;
- typedef ptrdiff_t difference_type;
- };
- template<typename _InputIterator>
- inline typename iterator_traits<_InputIterator>::difference_type
- distance(_InputIterator __first, _InputIterator __last)
- {
- typename iterator_traits<_InputIterator>::difference_type __n = 0;
- while (__first != __last) {
- ++__first; ++__n;
- }
- return __n;
- }
- }
- #endif
- namespace swig {
- /**
- * Templated base classes for all custom const_iterators.
- *
- */
- template<typename OutConstIterator>
- class ConstIterator_T : public ConstIterator
- {
- public:
- typedef OutConstIterator const_iter;
- typedef typename std::iterator_traits<const_iter>::value_type value_type;
- typedef ConstIterator_T<const_iter> self_type;
- protected:
-
- virtual bool equal (const ConstIterator &iter) const
- {
- const self_type *iters = dynamic_cast<const self_type *>(&iter);
- if (iters) {
- return (current == iters->get_current());
- } else {
- throw std::invalid_argument("bad iterator type");
- }
- }
-
- virtual ptrdiff_t distance(const ConstIterator &iter) const
- {
- const self_type *iters = dynamic_cast<const self_type *>(&iter);
- if (iters) {
- return std::distance(current, iters->get_current());
- } else {
- throw std::invalid_argument("bad iterator type");
- }
- }
- virtual ConstIterator* advance(ptrdiff_t n)
- {
- std::advance( current, n );
- return this;
- }
- public:
- ConstIterator_T() : ConstIterator(Qnil)
- {
- }
- ConstIterator_T(const_iter curr, VALUE seq = Qnil)
- : ConstIterator(seq), current(curr)
- {
- }
- const const_iter& get_current() const
- {
- return current;
- }
- const value_type& operator*() const
- {
- return *current;
- }
- virtual VALUE inspect() const
- {
- VALUE ret = rb_str_new2("#<");
- ret = rb_str_cat2( ret, rb_obj_classname(_seq) );
- ret = rb_str_cat2( ret, "::const_iterator " );
- VALUE cur = value();
- ret = rb_str_concat( ret, rb_inspect(cur) );
- ret = rb_str_cat2( ret, ">" );
- return ret;
- }
- virtual VALUE to_s() const
- {
- VALUE ret = rb_str_new2( rb_obj_classname(_seq) );
- ret = rb_str_cat2( ret, "::const_iterator " );
- VALUE cur = value();
- ret = rb_str_concat( ret, rb_obj_as_string(cur) );
- return ret;
- }
- protected:
- const_iter current;
- };
- /**
- * Templated base classes for all custom non-const iterators.
- *
- */
- template<typename InOutIterator>
- class Iterator_T : public Iterator
- {
- public:
- typedef InOutIterator nonconst_iter;
- // Make this class iterator STL compatible, by using iterator_traits
- typedef typename std::iterator_traits<nonconst_iter >::iterator_category iterator_category;
- typedef typename std::iterator_traits<nonconst_iter >::value_type value_type;
- typedef typename std::iterator_traits<nonconst_iter >::difference_type difference_type;
- typedef typename std::iterator_traits<nonconst_iter >::pointer pointer;
- typedef typename std::iterator_traits<nonconst_iter >::reference reference;
- typedef Iterator base;
- typedef Iterator_T< nonconst_iter > self_type;
- protected:
- virtual bool equal (const ConstIterator &iter) const
- {
- const self_type *iters = dynamic_cast<const self_type *>(&iter);
- if (iters) {
- return (current == iters->get_current());
- } else {
- throw std::invalid_argument("bad iterator type");
- }
- }
-
- virtual ptrdiff_t distance(const ConstIterator &iter) const
- {
- const self_type *iters = dynamic_cast<const self_type *>(&iter);
- if (iters) {
- return std::distance(current, iters->get_current());
- } else {
- throw std::invalid_argument("bad iterator type");
- }
- }
- virtual Iterator* advance(ptrdiff_t n)
- {
- std::advance( current, n );
- return this;
- }
- public:
- Iterator_T(nonconst_iter curr, VALUE seq = Qnil)
- : Iterator(seq), current(curr)
- {
- }
- const nonconst_iter& get_current() const
- {
- return current;
- }
- self_type& operator=( const self_type& b )
- {
- base::operator=( b );
- return *this;
- }
-
- self_type& operator=( const value_type& b )
- {
- *current = b;
- return *this;
- }
- const value_type& operator*() const
- {
- return *current;
- }
- value_type& operator*()
- {
- return *current;
- }
-
- virtual VALUE inspect() const
- {
- VALUE ret = rb_str_new2("#<");
- ret = rb_str_cat2( ret, rb_obj_classname(_seq) );
- ret = rb_str_cat2( ret, "::iterator " );
- VALUE cur = value();
- ret = rb_str_concat( ret, rb_inspect(cur) );
- ret = rb_str_cat2( ret, ">" );
- return ret;
- }
- virtual VALUE to_s() const
- {
- VALUE ret = rb_str_new2( rb_obj_classname(_seq) );
- ret = rb_str_cat2( ret, "::iterator " );
- VALUE cur = value();
- ret = rb_str_concat( ret, rb_obj_as_string(cur) );
- return ret;
- }
- protected:
- nonconst_iter current;
- };
- /**
- * Auxiliary functor to store the value of a ruby object inside
- * a reference of a compatible C++ type. ie: Ruby -> C++
- *
- */
- template <class ValueType>
- struct asval_oper
- {
- typedef ValueType value_type;
- typedef bool result_type;
- bool operator()(VALUE obj, value_type& v) const
- {
- return ( swig::asval< value_type >(obj, &v) == SWIG_OK );
- }
- };
- /**
- * Auxiliary functor to return a ruby object from a C++ type.
- * ie: C++ -> Ruby
- *
- */
- template <class ValueType>
- struct from_oper
- {
- typedef const ValueType& argument_type;
- typedef VALUE result_type;
- result_type operator()(argument_type v) const
- {
- return swig::from(v);
- }
- };
- /**
- * ConstIterator class for a const_iterator with no end() boundaries.
- *
- */
- template<typename OutConstIterator,
- typename ValueType = typename std::iterator_traits<OutConstIterator>::value_type,
- typename FromOper = from_oper<ValueType> >
- class ConstIteratorOpen_T : public ConstIterator_T<OutConstIterator>
- {
- public:
- FromOper from;
- typedef OutConstIterator const_iter;
- typedef ValueType value_type;
- typedef ConstIterator_T<const_iter> base;
- typedef ConstIteratorOpen_T<OutConstIterator, ValueType, FromOper> self_type;
-
- ConstIteratorOpen_T(const_iter curr, VALUE seq = Qnil)
- : ConstIterator_T<OutConstIterator>(curr, seq)
- {
- }
-
- virtual VALUE value() const {
- return from(static_cast<const value_type&>(*(base::current)));
- }
-
- ConstIterator *dup() const
- {
- return new self_type(*this);
- }
- };
- /**
- * Iterator class for an iterator with no end() boundaries.
- *
- */
- template<typename InOutIterator,
- typename ValueType = typename std::iterator_traits<InOutIterator>::value_type,
- typename FromOper = from_oper<ValueType>,
- typename AsvalOper = asval_oper<ValueType> >
- class IteratorOpen_T : public Iterator_T<InOutIterator>
- {
- public:
- FromOper from;
- AsvalOper asval;
- typedef InOutIterator nonconst_iter;
- typedef ValueType value_type;
- typedef Iterator_T<nonconst_iter> base;
- typedef IteratorOpen_T<InOutIterator, ValueType, FromOper, AsvalOper> self_type;
- public:
- IteratorOpen_T(nonconst_iter curr, VALUE seq = Qnil)
- : Iterator_T<InOutIterator>(curr, seq)
- {
- }
-
- virtual VALUE value() const {
- return from(static_cast<const value_type&>(*(base::current)));
- }
- virtual VALUE setValue( const VALUE& v )
- {
- value_type& dst = *base::current;
- if ( asval(v, dst) ) return v;
- return Qnil;
- }
-
- Iterator *dup() const
- {
- return new self_type(*this);
- }
- };
- /**
- * ConstIterator class for a const_iterator where begin() and end() boundaries are known.
- *
- */
- template<typename OutConstIterator,
- typename ValueType = typename std::iterator_traits<OutConstIterator>::value_type,
- typename FromOper = from_oper<ValueType> >
- class ConstIteratorClosed_T : public ConstIterator_T<OutConstIterator>
- {
- public:
- FromOper from;
- typedef OutConstIterator const_iter;
- typedef ValueType value_type;
- typedef ConstIterator_T<const_iter> base;
- typedef ConstIteratorClosed_T<OutConstIterator, ValueType, FromOper> self_type;
-
- protected:
- virtual ConstIterator* advance(ptrdiff_t n)
- {
- std::advance( base::current, n );
- if ( base::current == end )
- throw stop_iteration();
- return this;
- }
- public:
- ConstIteratorClosed_T(const_iter curr, const_iter first,
- const_iter last, VALUE seq = Qnil)
- : ConstIterator_T<OutConstIterator>(curr, seq), begin(first), end(last)
- {
- }
-
- virtual VALUE value() const {
- if (base::current == end) {
- throw stop_iteration();
- } else {
- return from(static_cast<const value_type&>(*(base::current)));
- }
- }
-
- ConstIterator *dup() const
- {
- return new self_type(*this);
- }
- private:
- const_iter begin;
- const_iter end;
- };
- /**
- * Iterator class for a iterator where begin() and end() boundaries are known.
- *
- */
- template<typename InOutIterator,
- typename ValueType = typename std::iterator_traits<InOutIterator>::value_type,
- typename FromOper = from_oper<ValueType>,
- typename AsvalOper = asval_oper<ValueType> >
- class IteratorClosed_T : public Iterator_T<InOutIterator>
- {
- public:
- FromOper from;
- AsvalOper asval;
- typedef InOutIterator nonconst_iter;
- typedef ValueType value_type;
- typedef Iterator_T<nonconst_iter> base;
- typedef IteratorClosed_T<InOutIterator, ValueType, FromOper, AsvalOper> self_type;
-
- protected:
- virtual Iterator* advance(ptrdiff_t n)
- {
- std::advance( base::current, n );
- if ( base::current == end )
- throw stop_iteration();
- return this;
- }
- public:
- IteratorClosed_T(nonconst_iter curr, nonconst_iter first,
- nonconst_iter last, VALUE seq = Qnil)
- : Iterator_T<InOutIterator>(curr, seq), begin(first), end(last)
- {
- }
-
- virtual VALUE value() const {
- if (base::current == end) {
- throw stop_iteration();
- } else {
- return from(static_cast<const value_type&>(*(base::current)));
- }
- }
-
- // Iterator setter method, required by Ruby
- virtual VALUE setValue( const VALUE& v )
- {
- if (base::current == end)
- throw stop_iteration();
- value_type& dst = *base::current;
- if ( asval( v, dst ) ) return v;
- return Qnil;
- }
-
- Iterator *dup() const
- {
- return new self_type(*this);
- }
- private:
- nonconst_iter begin;
- nonconst_iter end;
- };
- /* Partial specialization for bools which don't allow de-referencing */
- template< typename InOutIterator, typename FromOper, typename AsvalOper >
- class IteratorOpen_T< InOutIterator, bool, FromOper, AsvalOper > :
- public Iterator_T<InOutIterator>
- {
- public:
- FromOper from;
- AsvalOper asval;
- typedef InOutIterator nonconst_iter;
- typedef bool value_type;
- typedef Iterator_T<nonconst_iter> base;
- typedef IteratorOpen_T<InOutIterator, bool, FromOper, AsvalOper> self_type;
- IteratorOpen_T(nonconst_iter curr, VALUE seq = Qnil)
- : Iterator_T<InOutIterator>(curr, seq)
- {
- }
- virtual VALUE value() const {
- return from(static_cast<const value_type&>(*(base::current)));
- }
-
- virtual VALUE setValue( const VALUE& v )
- {
- bool tmp = *base::current;
- if ( asval( v, tmp ) )
- {
- *base::current = tmp;
- return v;
- }
- return Qnil;
- }
-
- Iterator *dup() const
- {
- return new self_type(*this);
- }
-
- };
- /* Partial specialization for bools which don't allow de-referencing */
- template< typename InOutIterator, typename FromOper, typename AsvalOper >
- class IteratorClosed_T< InOutIterator, bool, FromOper, AsvalOper > :
- public Iterator_T<InOutIterator>
- {
- public:
- FromOper from;
- AsvalOper asval;
- typedef InOutIterator nonconst_iter;
- typedef bool value_type;
- typedef Iterator_T<nonconst_iter> base;
- typedef IteratorClosed_T<InOutIterator, bool, FromOper, AsvalOper> self_type;
-
- protected:
- virtual Iterator* advance(ptrdiff_t n)
- {
- std::advance( base::current, n );
- if ( base::current == end )
- throw stop_iteration();
- return this;
- }
- public:
- IteratorClosed_T(nonconst_iter curr, nonconst_iter first,
- nonconst_iter last, VALUE seq = Qnil)
- : Iterator_T<InOutIterator>(curr, seq), begin(first), end(last)
- {
- }
- virtual VALUE value() const {
- if (base::current == end) {
- throw stop_iteration();
- } else {
- return from(static_cast<const value_type&>(*(base::current)));
- }
- }
- virtual VALUE setValue( const VALUE& v )
- {
- if (base::current == end)
- throw stop_iteration();
- bool tmp = *base::current;
- if ( asval( v, tmp ) )
- {
- *base::current = tmp;
- return v;
- }
- return Qnil;
- }
-
- Iterator *dup() const
- {
- return new self_type(*this);
- }
- private:
- nonconst_iter begin;
- nonconst_iter end;
- };
- /**
- * Helper function used to wrap a bounded const_iterator. This is to be used in
- * a %typemap(out), for example.
- *
- */
- template<typename InOutIter>
- inline Iterator*
- make_nonconst_iterator(const InOutIter& current, const InOutIter& begin,
- const InOutIter& end, VALUE seq = Qnil)
- {
- return new IteratorClosed_T<InOutIter>(current, begin, end, seq);
- }
- /**
- * Helper function used to wrap an unbounded const_iterator. This is to be used in
- * a %typemap(out), for example.
- *
- */
- template<typename InOutIter>
- inline Iterator*
- make_nonconst_iterator(const InOutIter& current, VALUE seq = Qnil)
- {
- return new IteratorOpen_T<InOutIter>(current, seq);
- }
- /**
- * Helper function used to wrap a bounded const_iterator. This is to be used in
- * a %typemap(out), for example.
- *
- */
- template<typename OutIter>
- inline ConstIterator*
- make_const_iterator(const OutIter& current, const OutIter& begin,
- const OutIter& end, VALUE seq = Qnil)
- {
- return new ConstIteratorClosed_T<OutIter>(current, begin, end, seq);
- }
- /**
- * Helper function used to wrap an unbounded const_iterator. This is to be used in
- * a %typemap(out), for example.
- *
- */
- template<typename OutIter>
- inline ConstIterator*
- make_const_iterator(const OutIter& current, VALUE seq = Qnil)
- {
- return new ConstIteratorOpen_T<OutIter>(current, seq);
- }
- }
- namespace swig
- {
- /**
- * This class is a proxy class for references, used to return and set values
- * of an element of a Ruby Array of stuff.
- * It can be used by RubySequence_InputIterator to make it work with STL
- * algorithms.
- *
- */
- template <class T>
- struct RubySequence_Ref
- {
- RubySequence_Ref(VALUE seq, int index)
- : _seq(seq), _index(index)
- {
- }
-
- operator T () const
- {
- VALUE item = rb_ary_entry(_seq, _index );
- try {
- return swig::as<T>(item, true);
- } catch (std::exception& e) {
- char msg[1024];
- sprintf(msg, "in sequence element %d ", _index);
- VALUE lastErr = rb_gv_get("$!");
- if ( lastErr == Qnil ) {
- SWIG_Error(SWIG_TypeError, swig::type_name<T>());
- }
- VALUE str = rb_str_new2(msg);
- str = rb_str_cat2( str, e.what() );
- SWIG_Ruby_ExceptionType( NULL, str );
- throw;
- }
- }
- RubySequence_Ref& operator=(const T& v)
- {
- rb_ary_set(_seq, _index, swig::from< T >(v));
- return *this;
- }
- private:
- VALUE _seq;
- int _index;
- };
- /**
- * This class is a proxy to return a pointer to a class, usually
- * RubySequence_Ref.
- * It can be used by RubySequence_InputIterator to make it work with STL
- * algorithms.
- *
- */
- template <class T>
- struct RubySequence_ArrowProxy
- {
- RubySequence_ArrowProxy(const T& x): m_value(x) {}
- const T* operator->() const { return &m_value; }
- operator const T*() const { return &m_value; }
- T m_value;
- };
- /**
- * Input Iterator. This adapator class is a random access iterator that
- * allows you to use STL algorithms with a Ruby class (a Ruby Array by default).
- *
- */
- template <class T, class Reference = RubySequence_Ref< T > >
- struct RubySequence_InputIterator
- {
- typedef RubySequence_InputIterator<T, Reference > self;
- typedef std::random_access_iterator_tag iterator_category;
- typedef Reference reference;
- typedef T value_type;
- typedef T* pointer;
- typedef ptrdiff_t difference_type;
- RubySequence_InputIterator()
- {
- }
- RubySequence_InputIterator(VALUE seq, int index)
- : _seq(seq), _index(index)
- {
- }
- reference operator*() const
- {
- return reference(_seq, _index);
- }
- RubySequence_ArrowProxy<T>
- operator->() const {
- return RubySequence_ArrowProxy<T>(operator*());
- }
- bool operator==(const self& ri) const
- {
- return (_index == ri._index) && (_seq == ri._seq);
- }
- bool operator!=(const self& ri) const
- {
- return !(operator==(ri));
- }
- self& operator ++ ()
- {
- ++_index;
- return *this;
- }
- self& operator -- ()
- {
- --_index;
- return *this;
- }
- self& operator += (difference_type n)
- {
- _index += n;
- return *this;
- }
- self operator +(difference_type n) const
- {
- return self(_seq, _index + n);
- }
- self& operator -= (difference_type n)
- {
- _index -= n;
- return *this;
- }
- self operator -(difference_type n) const
- {
- return self(_seq, _index - n);
- }
- difference_type operator - (const self& ri) const
- {
- return _index - ri._index;
- }
- bool operator < (const self& ri) const
- {
- return _index < ri._index;
- }
- reference
- operator[](difference_type n) const
- {
- return reference(_seq, _index + n);
- }
- private:
- VALUE _seq;
- difference_type _index;
- };
- /**
- * This adaptor class allows you to use a Ruby Array as if it was an STL
- * container, giving it begin(), end(), and iterators.
- *
- */
- template <class T>
- struct RubySequence_Cont
- {
- typedef RubySequence_Ref<T> reference;
- typedef const RubySequence_Ref<T> const_reference;
- typedef T value_type;
- typedef T* pointer;
- typedef int difference_type;
- typedef int size_type;
- typedef const pointer const_pointer;
- typedef RubySequence_InputIterator<T, reference> iterator;
- typedef RubySequence_InputIterator<T, const_reference> const_iterator;
- RubySequence_Cont(VALUE seq) : _seq(0)
- {
- if (!rb_obj_is_kind_of(seq, rb_cArray)) {
- throw std::invalid_argument("an Array is expected");
- }
- _seq = seq;
- }
- ~RubySequence_Cont()
- {
- }
- size_type size() const
- {
- return RARRAY_LEN(_seq);
- }
- bool empty() const
- {
- return size() == 0;
- }
- iterator begin()
- {
- return iterator(_seq, 0);
- }
- const_iterator begin() const
- {
- return const_iterator(_seq, 0);
- }
- iterator end()
- {
- return iterator(_seq, size());
- }
- const_iterator end() const
- {
- return const_iterator(_seq, size());
- }
- reference operator[](difference_type n)
- {
- return reference(_seq, n);
- }
- const_reference operator[](difference_type n) const
- {
- return const_reference(_seq, n);
- }
- bool check(bool set_err = false) const
- {
- int s = (int) size();
- for (int i = 0; i < s; ++i) {
- VALUE item = rb_ary_entry(_seq, i );
- if (!swig::check<value_type>(item)) {
- if (set_err) {
- char msg[1024];
- sprintf(msg, "in sequence element %d", i);
- SWIG_Error(SWIG_RuntimeError, msg);
- }
- return false;
- }
- }
- return true;
- }
- private:
- VALUE _seq;
- };
- }
- namespace swig {
- template <class RubySeq, class Seq>
- inline void
- assign(const RubySeq& rubyseq, Seq* seq) {
- // seq->assign(rubyseq.begin(), rubyseq.end()); // not used as not always implemented
- typedef typename RubySeq::value_type value_type;
- typename RubySeq::const_iterator it = rubyseq.begin();
- for (;it != rubyseq.end(); ++it) {
- seq->insert(seq->end(),(value_type)(*it));
- }
- }
- template <class Seq, class T = typename Seq::value_type >
- struct traits_asptr_stdseq {
- typedef Seq sequence;
- typedef T value_type;
- static int asptr(VALUE obj, sequence **seq) {
- if (rb_obj_is_kind_of(obj, rb_cArray) == Qtrue) {
- try {
- RubySequence_Cont<value_type> rubyseq(obj);
- if (seq) {
- sequence *pseq = new sequence();
- assign(rubyseq, pseq);
- *seq = pseq;
- return SWIG_NEWOBJ;
- } else {
- return rubyseq.check() ? SWIG_OK : SWIG_ERROR;
- }
- } catch (std::exception& e) {
- if (seq) {
- VALUE lastErr = rb_gv_get("$!");
- if (lastErr == Qnil) {
- rb_raise(rb_eTypeError, "%s", e.what());
- }
- }
- return SWIG_ERROR;
- }
- } else {
- sequence *p;
- if (SWIG_ConvertPtr(obj,(void**)&p,
- swig::type_info<sequence>(),0) == SWIG_OK) {
- if (seq) *seq = p;
- return SWIG_OLDOBJ;
- }
- }
- return SWIG_ERROR;
- }
- };
- // Partial specialization for GC_VALUE's. No need to typecheck each
- // element.
- template< class Seq >
- struct traits_asptr_stdseq< Seq, swig::GC_VALUE > {
- typedef Seq sequence;
- typedef swig::GC_VALUE value_type;
- static int asptr(VALUE obj, sequence **seq) {
- if (rb_obj_is_kind_of(obj, rb_cArray) == Qtrue) {
- try {
- if (seq) {
- RubySequence_Cont<value_type> rubyseq(obj);
- sequence *pseq = new sequence();
- assign(rubyseq, pseq);
- *seq = pseq;
- return SWIG_NEWOBJ;
- } else {
- return true;
- }
- } catch (std::exception& e) {
- if (seq) {
- VALUE lastErr = rb_gv_get("$!");
- if (lastErr == Qnil) {
- rb_raise(rb_eTypeError, "%s", e.what());
- }
- }
- return SWIG_ERROR;
- }
- } else {
- sequence *p;
- if (SWIG_ConvertPtr(obj,(void**)&p,
- swig::type_info<sequence>(),0) == SWIG_OK) {
- if (seq) *seq = p;
- return SWIG_OLDOBJ;
- }
- }
- return SWIG_ERROR;
- }
- };
- template <class Seq, class T = typename Seq::value_type >
- struct traits_from_stdseq {
- typedef Seq sequence;
- typedef T value_type;
- typedef typename Seq::size_type size_type;
- typedef typename sequence::const_iterator const_iterator;
- static VALUE from(const sequence& seq) {
- size_type size = seq.size();
- if (size <= (size_type)INT_MAX) {
- VALUE obj = rb_ary_new2((int)size);
- int i = 0;
- for (const_iterator it = seq.begin();
- it != seq.end(); ++it, ++i) {
- rb_ary_push(obj, swig::from< value_type >(*it));
- }
- rb_obj_freeze(obj); // treat as immutable result
- return obj;
- } else {
- rb_raise(rb_eRangeError,"sequence size not valid in ruby");
- return Qnil;
- }
- }
- };
- }
- namespace swig {
- template <class T>
- struct traits_asptr<std::vector<T> > {
- static int asptr(VALUE obj, std::vector<T> **vec) {
- return traits_asptr_stdseq<std::vector<T> >::asptr(obj, vec);
- }
- };
-
- template <class T>
- struct traits_from<std::vector<T> > {
- static VALUE from(const std::vector<T>& vec) {
- return traits_from_stdseq<std::vector<T> >::from(vec);
- }
- };
- }
- namespace swig {
- template <> struct traits<std::vector<int, std::allocator< int > > > {
- typedef pointer_category category;
- static const char* type_name() {
- return "std::vector<" "int" "," "std::allocator< int >" " >";
- }
- };
- }
-
- SWIGINTERN std::vector< int,std::allocator< int > > *std_vector_Sl_int_Sg__dup(std::vector< int > *self){
- return new std::vector<int,std::allocator< int > >(*self);
- }
- SWIGINTERN VALUE std_vector_Sl_int_Sg__inspect(std::vector< int > *self){
- std::vector<int,std::allocator< int > >::const_iterator i = self->begin();
- std::vector<int,std::allocator< int > >::const_iterator e = self->end();
- const char *type_name = swig::type_name< std::vector<int,std::allocator< int > > >();
- VALUE str = rb_str_new2(type_name);
- str = rb_str_cat2( str, " [" );
- bool comma = false;
- VALUE tmp;
- for ( ; i != e; ++i, comma = true )
- {
- if (comma) str = rb_str_cat2( str, "," );
- tmp = swig::from< std::vector<int,std::allocator< int > >::value_type >( *i );
- tmp = rb_inspect( tmp );
- str = rb_str_buf_append( str, tmp );
- }
- str = rb_str_cat2( str, "]" );
- return str;
- }
- SWIGINTERN VALUE std_vector_Sl_int_Sg__to_a(std::vector< int > *self){
- std::vector<int,std::allocator< int > >::const_iterator i = self->begin();
- std::vector<int,std::allocator< int > >::const_iterator e = self->end();
- VALUE ary = rb_ary_new2( std::distance( i, e ) );
- VALUE tmp;
- for ( ; i != e; ++i )
- {
- tmp = swig::from< std::vector<int,std::allocator< int > >::value_type >( *i );
- rb_ary_push( ary, tmp );
- }
- return ary;
- }
- SWIGINTERN VALUE std_vector_Sl_int_Sg__to_s(std::vector< int > *self){
- std::vector<int,std::allocator< int > >::iterator i = self->begin();
- std::vector<int,std::allocator< int > >::iterator e = self->end();
- VALUE str = rb_str_new2( "" );
- VALUE tmp;
- for ( ; i != e; ++i )
- {
- tmp = swig::from< std::vector<int,std::allocator< int > >::value_type >( *i );
- tmp = rb_obj_as_string( tmp );
- str = rb_str_buf_append( str, tmp );
- }
- return str;
- }
- SWIGINTERN VALUE std_vector_Sl_int_Sg__slice(std::vector< int > *self,std::vector< int >::difference_type i,std::vector< int >::difference_type j){
- if ( j <= 0 ) return Qnil;
- std::size_t len = self->size();
- if ( i < 0 ) i = len - i;
- j += i;
- if ( static_cast<std::size_t>(j) >= len ) j = len-1;
- VALUE r = Qnil;
- try {
- r = swig::from< const std::vector<int,std::allocator< int > >* >( swig::getslice(self, i, j) );
- }
- catch( std::out_of_range )
- {
- }
- return r;
- }
- SWIGINTERN std::vector< int,std::allocator< int > > *std_vector_Sl_int_Sg__each(std::vector< int > *self){
- if ( !rb_block_given_p() )
- rb_raise( rb_eArgError, "no block given");
- VALUE r;
- std::vector<int,std::allocator< int > >::const_iterator i = self->begin();
- std::vector<int,std::allocator< int > >::const_iterator e = self->end();
- for ( ; i != e; ++i )
- {
- r = swig::from< std::vector<int,std::allocator< int > >::value_type >(*i);
- rb_yield(r);
- }
-
- return self;
- }
- SWIGINTERN std::vector< int,std::allocator< int > > *std_vector_Sl_int_Sg__select(std::vector< int > *self){
- if ( !rb_block_given_p() )
- rb_raise( rb_eArgError, "no block given" );
- std::vector<int,std::allocator< int > >* r = new std::vector<int,std::allocator< int > >;
- std::vector<int,std::allocator< int > >::const_iterator i = self->begin();
- std::vector<int,std::allocator< int > >::const_iterator e = self->end();
- for ( ; i != e; ++i )
- {
- VALUE v = swig::from< std::vector<int,std::allocator< int > >::value_type >(*i);
- if ( RTEST( rb_yield(v) ) )
- self->insert( r->end(), *i);
- }
-
- return r;
- }
- SWIGINTERN std::vector< int,std::allocator< int > > *std_vector_Sl_int_Sg__reject_bang(std::vector< int > *self){
- if ( !rb_block_given_p() )
- rb_raise( rb_eArgError, "no block given" );
- std::vector<int,std::allocator< int > >::iterator i = self->begin();
- std::vector<int,std::allocator< int > >::iterator e = self->end();
- for ( ; i != e; )
- {
- VALUE r = swig::from< std::vector<int,std::allocator< int > >::value_type >(*i);
- if ( RTEST( rb_yield(r) ) ) {
- self->erase(i++);
- e = self->end();
- } else {
- ++i;
- }
- }
-
- return self;
- }
- SWIGINTERN VALUE std_vector_Sl_int_Sg__delete_at(std::vector< int > *self,std::vector< int >::difference_type i){
- VALUE r = Qnil;
- try {
- std::vector<int,std::allocator< int > >::iterator at = swig::getpos(self, i);
- r = swig::from< std::vector<int,std::allocator< int > >::value_type >( *(at) );
- self->erase(at);
- }
- catch (std::out_of_range)
- {
- }
- return r;
- }
- SWIGINTERN VALUE std_vector_Sl_int_Sg____delete2__(std::vector< int > *self,std::vector< int >::value_type const &i){
- VALUE r = Qnil;
- return r;
- }
- SWIGINTERN VALUE std_vector_Sl_int_Sg__pop(std::vector< int > *self){
- if (self->empty()) return Qnil;
- std::vector<int,std::allocator< int > >::value_type x = self->back();
- self->pop_back();
- return swig::from< std::vector<int,std::allocator< int > >::value_type >( x );
- }
- SWIGINTERN std::vector< int >::value_type const std_vector_Sl_int_Sg__push(std::vector< int > *self,std::vector< int >::value_type const &e){
- self->push_back( e );
- return e;
- }
- SWIGINTERN std::vector< int,std::allocator< int > > *std_vector_Sl_int_Sg__reject(std::vector< int > *self){
- if ( !rb_block_given_p() )
- rb_raise( rb_eArgError, "no block given" );
- std::vector<int,std::allocator< int > >* r = new std::vector<int,std::allocator< int > >;
- std::remove_copy_if( self->begin(), self->end(),
- std::back_inserter(*r),
- swig::yield< std::vector<int,std::allocator< int > >::value_type >() );
- return r;
- }
- SWIGINTERN VALUE std_vector_Sl_int_Sg__at(std::vector< int > const *self,std::vector< int >::difference_type i){
- VALUE r = Qnil;
- try {
- r = swig::from< std::vector<int,std::allocator< int > >::value_type >( *(swig::cgetpos(self, i)) );
- }
- catch( std::out_of_range )
- {
- }
- return r;
- }
- SWIGINTERN VALUE std_vector_Sl_int_Sg____getitem____SWIG_0(std::vector< int > const *self,std::vector< int >::difference_type i,std::vector< int >::difference_type j){
- if ( j <= 0 ) return Qnil;
- std::size_t len = self->size();
- if ( i < 0 ) i = len - i;
- j += i; if ( static_cast<std::size_t>(j) >= len ) j = len-1;
- VALUE r = Qnil;
- try {
- r = swig::from< const std::vector<int,std::allocator< int > >* >( swig::getslice(self, i, j) );
- }
- catch( std::out_of_range )
- {
- }
- return r;
- }
- SWIGINTERN VALUE std_vector_Sl_int_Sg____getitem____SWIG_1(std::vector< int > const *self,std::vector< int >::difference_type i){
- VALUE r = Qnil;
- try {
- r = swig::from< std::vector<int,std::allocator< int > >::value_type >( *(swig::cgetpos(self, i)) );
- }
- catch( std::out_of_range )
- {
- }
- return r;
- }
- SWIGINTERN VALUE std_vector_Sl_int_Sg____getitem____SWIG_2(std::vector< int > const *self,VALUE i){
- if ( rb_obj_is_kind_of( i, rb_cRange ) == Qfalse )
- {
- rb_raise( rb_eTypeError, "not a valid index or range" );
- }
- VALUE r = Qnil;
- static ID id_end = rb_intern("end");
- static ID id_start = rb_intern("begin");
- static ID id_noend = rb_intern("exclude_end?");
- VALUE start = rb_funcall( i, id_start, 0 );
- VALUE end = rb_funcall( i, id_end, 0 );
- bool noend = ( rb_funcall( i, id_noend, 0 ) == Qtrue );
- int len = self->size();
- int s = NUM2INT( start );
- if ( s < 0 ) s = len + s;
- else if ( s >= len ) return Qnil;
- int e = NUM2INT( end );
- if ( e < 0 ) e = len + e;
- if ( e < s ) return Qnil; //std::swap( s, e );
- if ( noend ) e -= 1;
- if ( e >= len ) e = len - 1;
- return swig::from< std::vector<int,std::allocator< int > >* >( swig::getslice(self, s, e+1) );
- }
- SWIGINTERN VALUE std_vector_Sl_int_Sg____setitem____SWIG_0(std::vector< int > *self,std::vector< int >::difference_type i,std::vector< int >::value_type const &x){
- std::size_t len = self->size();
- if ( i < 0 ) i = len - i;
- else if ( static_cast<std::size_t>(i) >= len )
- self->resize( i+1, x );
- else
- *(swig::getpos(self,i)) = x;
- return swig::from< std::vector<int,std::allocator< int > >::value_type >( x );
- }
- SWIGINTERN VALUE std_vector_Sl_int_Sg____setitem____SWIG_1(std::vector< int > *self,std::vector< int >::difference_type i,std::vector< int >::difference_type j,std::vector< int,std::allocator< int > > const &v){
- if ( j <= 0 ) return Qnil;
- std::size_t len = self->size();
- if ( i < 0 ) i = len - i;
- j += i;
- if ( static_cast<std::size_t>(j) >= len ) {
- self->resize( j+1, *(v.begin()) );
- j = len-1;
- }
- VALUE r = Qnil;
- swig::setslice(self, i, j, v);
- r = swig::from< const std::vector<int,std::allocator< int > >* >( &v );
- return r;
- }
- SWIGINTERN VALUE std_vector_Sl_int_Sg__shift(std::vector< int > *self){
- if (self->empty()) return Qnil;
- std::vector<int,std::allocator< int > >::value_type x = self->front();
- self->erase( self->begin() );
- return swig::from< std::vector<int,std::allocator< int > >::value_type >( x );
- }
- SWIGINTERN std::vector< int,std::allocator< int > > *std_vector_Sl_int_Sg__insert__SWIG_0(std::vector< int > *self,std::vector< int >::difference_type pos,int argc,VALUE *argv,...){
- std::size_t len = self->size();
- std::size_t i = swig::check_index( pos, len, true );
- std::vector<int,std::allocator< int > >::iterator start;
- VALUE elem = argv[0];
- int idx = 0;
- try {
- std::vector<int,std::allocator< int > >::value_type val = swig::as<std::vector<int,std::allocator< int > >::value_type>( elem, true );
- if ( i >= len ) {
- self->resize(i-1, val);
- return self;
- }
- start = self->begin();
- std::advance( start, i );
- self->insert( start++, val );
- for ( ++idx; idx < argc; ++idx )
- {
- elem = argv[idx];
- val = swig::as<std::vector<int,std::allocator< int > >::value_type>( elem );
- self->insert( start++, val );
- }
- }
- catch( std::invalid_argument )
- {
- rb_raise( rb_eArgError, "%s",
- Ruby_Format_TypeError( "",
- swig::type_name<std::vector<int,std::allocator< int > >::value_type>(),
- __FUNCTION__, idx+2, elem ));
- }
- return self;
- }
- SWIGINTERN std::vector< int,std::allocator< int > > *std_vector_Sl_int_Sg__unshift(std::vector< int > *self,int argc,VALUE *argv,...){
- for ( int idx = argc-1; idx >= 0; --idx )
- {
- std::vector<int,std::allocator< int > >::iterator start = self->begin();
- VALUE elem = argv[idx];
- try {
- std::vector<int,std::allocator< int > >::value_type val = swig::as<std::vector<int,std::allocator< int > >::value_type>( elem, true );
- self->insert( start, val );
- }
- catch( std::invalid_argument )
- {
- rb_raise( rb_eArgError, "%s",
- Ruby_Format_TypeError( "",
- swig::type_name<std::vector<int,std::allocator< int > >::value_type>(),
- __FUNCTION__, idx+2, elem ));
- }
- }
- return self;
- }
- SWIGINTERNINLINE VALUE
- SWIG_From_unsigned_SS_long (unsigned long value)
- {
- return ULONG2NUM(value);
- }
- SWIGINTERNINLINE VALUE
- SWIG_From_size_t (size_t value)
- {
- return SWIG_From_unsigned_SS_long (static_cast< unsigned long >(value));
- }
- SWIGINTERN std::vector< int,std::allocator< int > > *std_vector_Sl_int_Sg__map_bang(std::vector< int > *self){
- if ( !rb_block_given_p() )
- rb_raise( rb_eArgError, "No block given" );
- VALUE r = Qnil;
- std::vector< int >::iterator i = self->begin();
- std::vector< int >::iterator e = self->end();
- try {
- for ( ; i != e; ++i )
- {
- r = swig::from< int >( *i );
- r = rb_yield( r );
- *i = swig::as< int >( r );
- }
- }
- catch ( const std::invalid_argument& )
- {
- rb_raise(rb_eTypeError,
- "Yield block did not return a valid element for " "std::vector");
- }
-
- return self;
- }
- SWIGINTERN VALUE std_vector_Sl_int_Sg____delete__(std::vector< int > *self,int const &val){
- VALUE r = Qnil;
- std::vector<int >::iterator e = self->end();
- std::vector<int >::iterator i = std::remove( self->begin(), e, val );
- // remove dangling elements now
- self->erase( i, e );
-
- if ( i != e )
- r = swig::from< int >( val );
- else if ( rb_block_given_p() )
- r = rb_yield(Qnil);
- return r;
- }
- SWIGINTERN swig_type_info*
- SWIG_pchar_descriptor(void)
- {
- static int init = 0;
- static swig_type_info* info = 0;
- if (!init) {
- info = SWIG_TypeQuery("_p_char");
- init = 1;
- }
- return info;
- }
- SWIGINTERN int
- SWIG_AsCharPtrAndSize(VALUE obj, char** cptr, size_t* psize, int *alloc)
- {
- if (TYPE(obj) == T_STRING) {
- #if defined(StringValuePtr)
- char *cstr = StringValuePtr(obj);
- #else
- char *cstr = STR2CSTR(obj);
- #endif
- size_t size = RSTRING_LEN(obj) + 1;
- if (cptr) {
- if (alloc) {
- if (*alloc == SWIG_NEWOBJ) {
- *cptr = reinterpret_cast< char* >(memcpy((new char[size]), cstr, sizeof(char)*(size)));
- } else {
- *cptr = cstr;
- *alloc = SWIG_OLDOBJ;
- }
- }
- }
- if (psize) *psize = size;
- return SWIG_OK;
- } else {
- swig_type_info* pchar_descriptor = SWIG_pchar_descriptor();
- if (pchar_descriptor) {
- void* vptr = 0;
- if (SWIG_ConvertPtr(obj, &vptr, pchar_descriptor, 0) == SWIG_OK) {
- if (cptr) *cptr = (char *)vptr;
- if (psize) *psize = vptr ? (strlen((char*)vptr) + 1) : 0;
- if (alloc) *alloc = SWIG_OLDOBJ;
- return SWIG_OK;
- }
- }
- }
- return SWIG_TypeError;
- }
- SWIGINTERN int
- SWIG_AsPtr_std_string (VALUE obj, std::string **val)
- {
- char* buf = 0 ; size_t size = 0; int alloc = SWIG_OLDOBJ;
- if (SWIG_IsOK((SWIG_AsCharPtrAndSize(obj, &buf, &size, &alloc)))) {
- if (buf) {
- if (val) *val = new std::string(buf, size - 1);
- if (alloc == SWIG_NEWOBJ) delete[] buf;
- return SWIG_NEWOBJ;
- } else {
- if (val) *val = 0;
- return SWIG_OLDOBJ;
- }
- } else {
- static int init = 0;
- static swig_type_info* descriptor = 0;
- if (!init) {
- descriptor = SWIG_TypeQuery("std::string" " *");
- init = 1;
- }
- if (descriptor) {
- std::string *vptr;
- int res = SWIG_ConvertPtr(obj, (void**)&vptr, descriptor, 0);
- if (SWIG_IsOK(res) && val) *val = vptr;
- return res;
- }
- }
- return SWIG_ERROR;
- }
- SWIGINTERNINLINE VALUE
- SWIG_FromCharPtrAndSize(const char* carray, size_t size)
- {
- if (carray) {
- if (size > LONG_MAX) {
- swig_type_info* pchar_descriptor = SWIG_pchar_descriptor();
- return pchar_descriptor ?
- SWIG_NewPointerObj(const_cast< char * >(carray), pchar_descriptor, 0) : Qnil;
- } else {
- return rb_str_new(carray, static_cast< long >(size));
- }
- } else {
- return Qnil;
- }
- }
- SWIGINTERNINLINE VALUE
- SWIG_From_std_string (const std::string& s)
- {
- return SWIG_FromCharPtrAndSize(s.data(), s.size());
- }
- #define SWIG_From_double rb_float_new
- SWIGINTERNINLINE VALUE
- SWIG_From_float (float value)
- {
- return SWIG_From_double (value);
- }
- swig_class SwigClassGC_VALUE;
- /*
- Document-method: Uhferret_lib::GC_VALUE.inspect
- call-seq:
- inspect -> VALUE
- Inspect class and its contents.
- */
- SWIGINTERN VALUE
- _wrap_GC_VALUE_inspect(int argc, VALUE *argv, VALUE self) {
- swig::GC_VALUE *arg1 = (swig::GC_VALUE *) 0 ;
- swig::GC_VALUE r1 ;
- VALUE result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- r1 = self; arg1 = &r1;
- result = (VALUE)((swig::GC_VALUE const *)arg1)->inspect();
- vresult = result;
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::GC_VALUE.to_s
- call-seq:
- to_s -> VALUE
- Convert class to a String representation.
- */
- SWIGINTERN VALUE
- _wrap_GC_VALUE_to_s(int argc, VALUE *argv, VALUE self) {
- swig::GC_VALUE *arg1 = (swig::GC_VALUE *) 0 ;
- swig::GC_VALUE r1 ;
- VALUE result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- r1 = self; arg1 = &r1;
- result = (VALUE)((swig::GC_VALUE const *)arg1)->to_s();
- vresult = result;
- return vresult;
- fail:
- return Qnil;
- }
- swig_class SwigClassConstIterator;
- SWIGINTERN void
- free_swig_ConstIterator(swig::ConstIterator *arg1) {
- delete arg1;
- }
- SWIGINTERN VALUE
- _wrap_ConstIterator_value(int argc, VALUE *argv, VALUE self) {
- swig::ConstIterator *arg1 = (swig::ConstIterator *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- VALUE result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_swig__ConstIterator, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "swig::ConstIterator const *","value", 1, self ));
- }
- arg1 = reinterpret_cast< swig::ConstIterator * >(argp1);
- try {
- result = (VALUE)((swig::ConstIterator const *)arg1)->value();
- }
- catch(swig::stop_iteration &_e) {
- {
- (void)_e;
- SWIG_Ruby_ExceptionType(NULL, Qnil);
- SWIG_fail;
- }
- }
-
- vresult = result;
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::ConstIterator.dup
- call-seq:
- dup -> ConstIterator
- Create a duplicate of the class and unfreeze it if needed.
- */
- SWIGINTERN VALUE
- _wrap_ConstIterator_dup(int argc, VALUE *argv, VALUE self) {
- swig::ConstIterator *arg1 = (swig::ConstIterator *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- swig::ConstIterator *result = 0 ;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_swig__ConstIterator, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "swig::ConstIterator const *","dup", 1, self ));
- }
- arg1 = reinterpret_cast< swig::ConstIterator * >(argp1);
- result = (swig::ConstIterator *)((swig::ConstIterator const *)arg1)->dup();
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_swig__ConstIterator, SWIG_POINTER_OWN | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::ConstIterator.inspect
- call-seq:
- inspect -> VALUE
- Inspect class and its contents.
- */
- SWIGINTERN VALUE
- _wrap_ConstIterator_inspect(int argc, VALUE *argv, VALUE self) {
- swig::ConstIterator *arg1 = (swig::ConstIterator *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- VALUE result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_swig__ConstIterator, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "swig::ConstIterator const *","inspect", 1, self ));
- }
- arg1 = reinterpret_cast< swig::ConstIterator * >(argp1);
- result = (VALUE)((swig::ConstIterator const *)arg1)->inspect();
- vresult = result;
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::ConstIterator.to_s
- call-seq:
- to_s -> VALUE
- Convert class to a String representation.
- */
- SWIGINTERN VALUE
- _wrap_ConstIterator_to_s(int argc, VALUE *argv, VALUE self) {
- swig::ConstIterator *arg1 = (swig::ConstIterator *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- VALUE result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_swig__ConstIterator, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "swig::ConstIterator const *","to_s", 1, self ));
- }
- arg1 = reinterpret_cast< swig::ConstIterator * >(argp1);
- result = (VALUE)((swig::ConstIterator const *)arg1)->to_s();
- vresult = result;
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_ConstIterator_next__SWIG_0(int argc, VALUE *argv, VALUE self) {
- swig::ConstIterator *arg1 = (swig::ConstIterator *) 0 ;
- size_t arg2 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- size_t val2 ;
- int ecode2 = 0 ;
- swig::ConstIterator *result = 0 ;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_swig__ConstIterator, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "swig::ConstIterator *","next", 1, self ));
- }
- arg1 = reinterpret_cast< swig::ConstIterator * >(argp1);
- ecode2 = SWIG_AsVal_size_t(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "size_t","next", 2, argv[0] ));
- }
- arg2 = static_cast< size_t >(val2);
- result = (swig::ConstIterator *)(arg1)->next(arg2);
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_swig__ConstIterator, 0 | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_ConstIterator_next__SWIG_1(int argc, VALUE *argv, VALUE self) {
- swig::ConstIterator *arg1 = (swig::ConstIterator *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- swig::ConstIterator *result = 0 ;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_swig__ConstIterator, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "swig::ConstIterator *","next", 1, self ));
- }
- arg1 = reinterpret_cast< swig::ConstIterator * >(argp1);
- try {
- result = (swig::ConstIterator *)(arg1)->next();
- }
- catch(swig::stop_iteration &_e) {
- {
- (void)_e;
- SWIG_Ruby_ExceptionType(NULL, Qnil);
- SWIG_fail;
- }
- }
-
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_swig__ConstIterator, 0 | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE _wrap_ConstIterator_next(int nargs, VALUE *args, VALUE self) {
- int argc;
- VALUE argv[3];
- int ii;
-
- argc = nargs + 1;
- argv[0] = self;
- if (argc > 3) SWIG_fail;
- for (ii = 1; (ii < argc); ++ii) {
- argv[ii] = args[ii-1];
- }
- if (argc == 1) {
- int _v;
- void *vptr = 0;
- int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_swig__ConstIterator, 0);
- _v = SWIG_CheckState(res);
- if (_v) {
- return _wrap_ConstIterator_next__SWIG_1(nargs, args, self);
- }
- }
- if (argc == 2) {
- int _v;
- void *vptr = 0;
- int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_swig__ConstIterator, 0);
- _v = SWIG_CheckState(res);
- if (_v) {
- {
- int res = SWIG_AsVal_size_t(argv[1], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- return _wrap_ConstIterator_next__SWIG_0(nargs, args, self);
- }
- }
- }
-
- fail:
- Ruby_Format_OverloadedError( argc, 3, "ConstIterator.next",
- " swig::ConstIterator * ConstIterator.next(size_t n)\n"
- " swig::ConstIterator * ConstIterator.next()\n");
-
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_ConstIterator_previous__SWIG_0(int argc, VALUE *argv, VALUE self) {
- swig::ConstIterator *arg1 = (swig::ConstIterator *) 0 ;
- size_t arg2 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- size_t val2 ;
- int ecode2 = 0 ;
- swig::ConstIterator *result = 0 ;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_swig__ConstIterator, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "swig::ConstIterator *","previous", 1, self ));
- }
- arg1 = reinterpret_cast< swig::ConstIterator * >(argp1);
- ecode2 = SWIG_AsVal_size_t(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "size_t","previous", 2, argv[0] ));
- }
- arg2 = static_cast< size_t >(val2);
- result = (swig::ConstIterator *)(arg1)->previous(arg2);
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_swig__ConstIterator, 0 | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_ConstIterator_previous__SWIG_1(int argc, VALUE *argv, VALUE self) {
- swig::ConstIterator *arg1 = (swig::ConstIterator *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- swig::ConstIterator *result = 0 ;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_swig__ConstIterator, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "swig::ConstIterator *","previous", 1, self ));
- }
- arg1 = reinterpret_cast< swig::ConstIterator * >(argp1);
- try {
- result = (swig::ConstIterator *)(arg1)->previous();
- }
- catch(swig::stop_iteration &_e) {
- {
- (void)_e;
- SWIG_Ruby_ExceptionType(NULL, Qnil);
- SWIG_fail;
- }
- }
-
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_swig__ConstIterator, 0 | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE _wrap_ConstIterator_previous(int nargs, VALUE *args, VALUE self) {
- int argc;
- VALUE argv[3];
- int ii;
-
- argc = nargs + 1;
- argv[0] = self;
- if (argc > 3) SWIG_fail;
- for (ii = 1; (ii < argc); ++ii) {
- argv[ii] = args[ii-1];
- }
- if (argc == 1) {
- int _v;
- void *vptr = 0;
- int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_swig__ConstIterator, 0);
- _v = SWIG_CheckState(res);
- if (_v) {
- return _wrap_ConstIterator_previous__SWIG_1(nargs, args, self);
- }
- }
- if (argc == 2) {
- int _v;
- void *vptr = 0;
- int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_swig__ConstIterator, 0);
- _v = SWIG_CheckState(res);
- if (_v) {
- {
- int res = SWIG_AsVal_size_t(argv[1], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- return _wrap_ConstIterator_previous__SWIG_0(nargs, args, self);
- }
- }
- }
-
- fail:
- Ruby_Format_OverloadedError( argc, 3, "ConstIterator.previous",
- " swig::ConstIterator * ConstIterator.previous(size_t n)\n"
- " swig::ConstIterator * ConstIterator.previous()\n");
-
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::ConstIterator.==
- call-seq:
- ==(x) -> bool
- Equality comparison operator.
- */
- SWIGINTERN VALUE
- _wrap_ConstIterator___eq__(int argc, VALUE *argv, VALUE self) {
- swig::ConstIterator *arg1 = (swig::ConstIterator *) 0 ;
- swig::ConstIterator *arg2 = 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- void *argp2 ;
- int res2 = 0 ;
- bool result;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_swig__ConstIterator, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "swig::ConstIterator const *","operator ==", 1, self ));
- }
- arg1 = reinterpret_cast< swig::ConstIterator * >(argp1);
- res2 = SWIG_ConvertPtr(argv[0], &argp2, SWIGTYPE_p_swig__ConstIterator, 0 );
- if (!SWIG_IsOK(res2)) {
- SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( "", "swig::ConstIterator const &","operator ==", 2, argv[0] ));
- }
- if (!argp2) {
- SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "swig::ConstIterator const &","operator ==", 2, argv[0]));
- }
- arg2 = reinterpret_cast< swig::ConstIterator * >(argp2);
- result = (bool)((swig::ConstIterator const *)arg1)->operator ==((swig::ConstIterator const &)*arg2);
- vresult = SWIG_From_bool(static_cast< bool >(result));
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::ConstIterator.+
- call-seq:
- +(n) -> ConstIterator
- Add operator.
- */
- SWIGINTERN VALUE
- _wrap_ConstIterator___add__(int argc, VALUE *argv, VALUE self) {
- swig::ConstIterator *arg1 = (swig::ConstIterator *) 0 ;
- ptrdiff_t arg2 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- ptrdiff_t val2 ;
- int ecode2 = 0 ;
- swig::ConstIterator *result = 0 ;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_swig__ConstIterator, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "swig::ConstIterator const *","operator +", 1, self ));
- }
- arg1 = reinterpret_cast< swig::ConstIterator * >(argp1);
- ecode2 = SWIG_AsVal_ptrdiff_t(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "ptrdiff_t","operator +", 2, argv[0] ));
- }
- arg2 = static_cast< ptrdiff_t >(val2);
- try {
- result = (swig::ConstIterator *)((swig::ConstIterator const *)arg1)->operator +(arg2);
- }
- catch(swig::stop_iteration &_e) {
- {
- (void)_e;
- SWIG_Ruby_ExceptionType(NULL, Qnil);
- SWIG_fail;
- }
- }
-
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_swig__ConstIterator, SWIG_POINTER_OWN | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::ConstIterator.-
- call-seq:
- -(n) -> ConstIterator
- -(x) -> ptrdiff_t
- Substraction operator.
- */
- SWIGINTERN VALUE
- _wrap_ConstIterator___sub____SWIG_0(int argc, VALUE *argv, VALUE self) {
- swig::ConstIterator *arg1 = (swig::ConstIterator *) 0 ;
- ptrdiff_t arg2 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- ptrdiff_t val2 ;
- int ecode2 = 0 ;
- swig::ConstIterator *result = 0 ;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_swig__ConstIterator, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "swig::ConstIterator const *","operator -", 1, self ));
- }
- arg1 = reinterpret_cast< swig::ConstIterator * >(argp1);
- ecode2 = SWIG_AsVal_ptrdiff_t(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "ptrdiff_t","operator -", 2, argv[0] ));
- }
- arg2 = static_cast< ptrdiff_t >(val2);
- try {
- result = (swig::ConstIterator *)((swig::ConstIterator const *)arg1)->operator -(arg2);
- }
- catch(swig::stop_iteration &_e) {
- {
- (void)_e;
- SWIG_Ruby_ExceptionType(NULL, Qnil);
- SWIG_fail;
- }
- }
-
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_swig__ConstIterator, SWIG_POINTER_OWN | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_ConstIterator___sub____SWIG_1(int argc, VALUE *argv, VALUE self) {
- swig::ConstIterator *arg1 = (swig::ConstIterator *) 0 ;
- swig::ConstIterator *arg2 = 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- void *argp2 ;
- int res2 = 0 ;
- ptrdiff_t result;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_swig__ConstIterator, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "swig::ConstIterator const *","operator -", 1, self ));
- }
- arg1 = reinterpret_cast< swig::ConstIterator * >(argp1);
- res2 = SWIG_ConvertPtr(argv[0], &argp2, SWIGTYPE_p_swig__ConstIterator, 0 );
- if (!SWIG_IsOK(res2)) {
- SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( "", "swig::ConstIterator const &","operator -", 2, argv[0] ));
- }
- if (!argp2) {
- SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "swig::ConstIterator const &","operator -", 2, argv[0]));
- }
- arg2 = reinterpret_cast< swig::ConstIterator * >(argp2);
- result = ((swig::ConstIterator const *)arg1)->operator -((swig::ConstIterator const &)*arg2);
- vresult = SWIG_From_ptrdiff_t(static_cast< ptrdiff_t >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE _wrap_ConstIterator___sub__(int nargs, VALUE *args, VALUE self) {
- int argc;
- VALUE argv[3];
- int ii;
-
- argc = nargs + 1;
- argv[0] = self;
- if (argc > 3) SWIG_fail;
- for (ii = 1; (ii < argc); ++ii) {
- argv[ii] = args[ii-1];
- }
- if (argc == 2) {
- int _v;
- void *vptr = 0;
- int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_swig__ConstIterator, 0);
- _v = SWIG_CheckState(res);
- if (_v) {
- void *vptr = 0;
- int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_swig__ConstIterator, 0);
- _v = SWIG_CheckState(res);
- if (_v) {
- return _wrap_ConstIterator___sub____SWIG_1(nargs, args, self);
- }
- }
- }
- if (argc == 2) {
- int _v;
- void *vptr = 0;
- int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_swig__ConstIterator, 0);
- _v = SWIG_CheckState(res);
- if (_v) {
- {
- int res = SWIG_AsVal_ptrdiff_t(argv[1], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- return _wrap_ConstIterator___sub____SWIG_0(nargs, args, self);
- }
- }
- }
-
- fail:
- Ruby_Format_OverloadedError( argc, 3, "__sub__.new",
- " __sub__.new(ptrdiff_t n)\n"
- " __sub__.new(swig::ConstIterator const &x)\n");
-
- return Qnil;
- }
- swig_class SwigClassIterator;
- SWIGINTERN VALUE
- _wrap_Iterator_valuee___(int argc, VALUE *argv, VALUE self) {
- swig::Iterator *arg1 = (swig::Iterator *) 0 ;
- VALUE *arg2 = 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- VALUE temp2 ;
- VALUE result;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_swig__Iterator, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "swig::Iterator *","setValue", 1, self ));
- }
- arg1 = reinterpret_cast< swig::Iterator * >(argp1);
- temp2 = static_cast< VALUE >(argv[0]);
- arg2 = &temp2;
- result = (VALUE)(arg1)->setValue((VALUE const &)*arg2);
- vresult = result;
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::Iterator.dup
- call-seq:
- dup -> Iterator
- Create a duplicate of the class and unfreeze it if needed.
- */
- SWIGINTERN VALUE
- _wrap_Iterator_dup(int argc, VALUE *argv, VALUE self) {
- swig::Iterator *arg1 = (swig::Iterator *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- swig::Iterator *result = 0 ;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_swig__Iterator, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "swig::Iterator const *","dup", 1, self ));
- }
- arg1 = reinterpret_cast< swig::Iterator * >(argp1);
- result = (swig::Iterator *)((swig::Iterator const *)arg1)->dup();
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_swig__Iterator, SWIG_POINTER_OWN | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_Iterator_next__SWIG_0(int argc, VALUE *argv, VALUE self) {
- swig::Iterator *arg1 = (swig::Iterator *) 0 ;
- size_t arg2 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- size_t val2 ;
- int ecode2 = 0 ;
- swig::Iterator *result = 0 ;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_swig__Iterator, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "swig::Iterator *","next", 1, self ));
- }
- arg1 = reinterpret_cast< swig::Iterator * >(argp1);
- ecode2 = SWIG_AsVal_size_t(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "size_t","next", 2, argv[0] ));
- }
- arg2 = static_cast< size_t >(val2);
- result = (swig::Iterator *)(arg1)->next(arg2);
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_swig__Iterator, 0 | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_Iterator_next__SWIG_1(int argc, VALUE *argv, VALUE self) {
- swig::Iterator *arg1 = (swig::Iterator *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- swig::Iterator *result = 0 ;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_swig__Iterator, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "swig::Iterator *","next", 1, self ));
- }
- arg1 = reinterpret_cast< swig::Iterator * >(argp1);
- try {
- result = (swig::Iterator *)(arg1)->next();
- }
- catch(swig::stop_iteration &_e) {
- {
- (void)_e;
- SWIG_Ruby_ExceptionType(NULL, Qnil);
- SWIG_fail;
- }
- }
-
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_swig__Iterator, 0 | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE _wrap_Iterator_next(int nargs, VALUE *args, VALUE self) {
- int argc;
- VALUE argv[3];
- int ii;
-
- argc = nargs + 1;
- argv[0] = self;
- if (argc > 3) SWIG_fail;
- for (ii = 1; (ii < argc); ++ii) {
- argv[ii] = args[ii-1];
- }
- if (argc == 1) {
- int _v;
- void *vptr = 0;
- int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_swig__Iterator, 0);
- _v = SWIG_CheckState(res);
- if (_v) {
- return _wrap_Iterator_next__SWIG_1(nargs, args, self);
- }
- }
- if (argc == 2) {
- int _v;
- void *vptr = 0;
- int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_swig__Iterator, 0);
- _v = SWIG_CheckState(res);
- if (_v) {
- {
- int res = SWIG_AsVal_size_t(argv[1], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- return _wrap_Iterator_next__SWIG_0(nargs, args, self);
- }
- }
- }
-
- fail:
- Ruby_Format_OverloadedError( argc, 3, "Iterator.next",
- " swig::Iterator * Iterator.next(size_t n)\n"
- " swig::Iterator * Iterator.next()\n");
-
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_Iterator_previous__SWIG_0(int argc, VALUE *argv, VALUE self) {
- swig::Iterator *arg1 = (swig::Iterator *) 0 ;
- size_t arg2 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- size_t val2 ;
- int ecode2 = 0 ;
- swig::Iterator *result = 0 ;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_swig__Iterator, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "swig::Iterator *","previous", 1, self ));
- }
- arg1 = reinterpret_cast< swig::Iterator * >(argp1);
- ecode2 = SWIG_AsVal_size_t(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "size_t","previous", 2, argv[0] ));
- }
- arg2 = static_cast< size_t >(val2);
- result = (swig::Iterator *)(arg1)->previous(arg2);
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_swig__Iterator, 0 | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_Iterator_previous__SWIG_1(int argc, VALUE *argv, VALUE self) {
- swig::Iterator *arg1 = (swig::Iterator *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- swig::Iterator *result = 0 ;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_swig__Iterator, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "swig::Iterator *","previous", 1, self ));
- }
- arg1 = reinterpret_cast< swig::Iterator * >(argp1);
- try {
- result = (swig::Iterator *)(arg1)->previous();
- }
- catch(swig::stop_iteration &_e) {
- {
- (void)_e;
- SWIG_Ruby_ExceptionType(NULL, Qnil);
- SWIG_fail;
- }
- }
-
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_swig__Iterator, 0 | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE _wrap_Iterator_previous(int nargs, VALUE *args, VALUE self) {
- int argc;
- VALUE argv[3];
- int ii;
-
- argc = nargs + 1;
- argv[0] = self;
- if (argc > 3) SWIG_fail;
- for (ii = 1; (ii < argc); ++ii) {
- argv[ii] = args[ii-1];
- }
- if (argc == 1) {
- int _v;
- void *vptr = 0;
- int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_swig__Iterator, 0);
- _v = SWIG_CheckState(res);
- if (_v) {
- return _wrap_Iterator_previous__SWIG_1(nargs, args, self);
- }
- }
- if (argc == 2) {
- int _v;
- void *vptr = 0;
- int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_swig__Iterator, 0);
- _v = SWIG_CheckState(res);
- if (_v) {
- {
- int res = SWIG_AsVal_size_t(argv[1], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- return _wrap_Iterator_previous__SWIG_0(nargs, args, self);
- }
- }
- }
-
- fail:
- Ruby_Format_OverloadedError( argc, 3, "Iterator.previous",
- " swig::Iterator * Iterator.previous(size_t n)\n"
- " swig::Iterator * Iterator.previous()\n");
-
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::Iterator.inspect
- call-seq:
- inspect -> VALUE
- Inspect class and its contents.
- */
- SWIGINTERN VALUE
- _wrap_Iterator_inspect(int argc, VALUE *argv, VALUE self) {
- swig::Iterator *arg1 = (swig::Iterator *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- VALUE result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_swig__Iterator, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "swig::Iterator const *","inspect", 1, self ));
- }
- arg1 = reinterpret_cast< swig::Iterator * >(argp1);
- result = (VALUE)((swig::Iterator const *)arg1)->inspect();
- vresult = result;
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::Iterator.to_s
- call-seq:
- to_s -> VALUE
- Convert class to a String representation.
- */
- SWIGINTERN VALUE
- _wrap_Iterator_to_s(int argc, VALUE *argv, VALUE self) {
- swig::Iterator *arg1 = (swig::Iterator *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- VALUE result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_swig__Iterator, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "swig::Iterator const *","to_s", 1, self ));
- }
- arg1 = reinterpret_cast< swig::Iterator * >(argp1);
- result = (VALUE)((swig::Iterator const *)arg1)->to_s();
- vresult = result;
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::Iterator.==
- call-seq:
- ==(x) -> bool
- Equality comparison operator.
- */
- SWIGINTERN VALUE
- _wrap_Iterator___eq__(int argc, VALUE *argv, VALUE self) {
- swig::Iterator *arg1 = (swig::Iterator *) 0 ;
- swig::Iterator *arg2 = 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- void *argp2 ;
- int res2 = 0 ;
- bool result;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_swig__Iterator, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "swig::Iterator const *","operator ==", 1, self ));
- }
- arg1 = reinterpret_cast< swig::Iterator * >(argp1);
- res2 = SWIG_ConvertPtr(argv[0], &argp2, SWIGTYPE_p_swig__Iterator, 0 );
- if (!SWIG_IsOK(res2)) {
- SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( "", "swig::Iterator const &","operator ==", 2, argv[0] ));
- }
- if (!argp2) {
- SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "swig::Iterator const &","operator ==", 2, argv[0]));
- }
- arg2 = reinterpret_cast< swig::Iterator * >(argp2);
- result = (bool)((swig::Iterator const *)arg1)->operator ==((swig::Iterator const &)*arg2);
- vresult = SWIG_From_bool(static_cast< bool >(result));
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::Iterator.+
- call-seq:
- +(n) -> Iterator
- Add operator.
- */
- SWIGINTERN VALUE
- _wrap_Iterator___add__(int argc, VALUE *argv, VALUE self) {
- swig::Iterator *arg1 = (swig::Iterator *) 0 ;
- ptrdiff_t arg2 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- ptrdiff_t val2 ;
- int ecode2 = 0 ;
- swig::Iterator *result = 0 ;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_swig__Iterator, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "swig::Iterator const *","operator +", 1, self ));
- }
- arg1 = reinterpret_cast< swig::Iterator * >(argp1);
- ecode2 = SWIG_AsVal_ptrdiff_t(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "ptrdiff_t","operator +", 2, argv[0] ));
- }
- arg2 = static_cast< ptrdiff_t >(val2);
- try {
- result = (swig::Iterator *)((swig::Iterator const *)arg1)->operator +(arg2);
- }
- catch(swig::stop_iteration &_e) {
- {
- (void)_e;
- SWIG_Ruby_ExceptionType(NULL, Qnil);
- SWIG_fail;
- }
- }
-
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_swig__Iterator, SWIG_POINTER_OWN | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::Iterator.-
- call-seq:
- -(n) -> Iterator
- -(x) -> ptrdiff_t
- Substraction operator.
- */
- SWIGINTERN VALUE
- _wrap_Iterator___sub____SWIG_0(int argc, VALUE *argv, VALUE self) {
- swig::Iterator *arg1 = (swig::Iterator *) 0 ;
- ptrdiff_t arg2 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- ptrdiff_t val2 ;
- int ecode2 = 0 ;
- swig::Iterator *result = 0 ;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_swig__Iterator, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "swig::Iterator const *","operator -", 1, self ));
- }
- arg1 = reinterpret_cast< swig::Iterator * >(argp1);
- ecode2 = SWIG_AsVal_ptrdiff_t(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "ptrdiff_t","operator -", 2, argv[0] ));
- }
- arg2 = static_cast< ptrdiff_t >(val2);
- try {
- result = (swig::Iterator *)((swig::Iterator const *)arg1)->operator -(arg2);
- }
- catch(swig::stop_iteration &_e) {
- {
- (void)_e;
- SWIG_Ruby_ExceptionType(NULL, Qnil);
- SWIG_fail;
- }
- }
-
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_swig__Iterator, SWIG_POINTER_OWN | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_Iterator___sub____SWIG_1(int argc, VALUE *argv, VALUE self) {
- swig::Iterator *arg1 = (swig::Iterator *) 0 ;
- swig::Iterator *arg2 = 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- void *argp2 ;
- int res2 = 0 ;
- ptrdiff_t result;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_swig__Iterator, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "swig::Iterator const *","operator -", 1, self ));
- }
- arg1 = reinterpret_cast< swig::Iterator * >(argp1);
- res2 = SWIG_ConvertPtr(argv[0], &argp2, SWIGTYPE_p_swig__Iterator, 0 );
- if (!SWIG_IsOK(res2)) {
- SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( "", "swig::Iterator const &","operator -", 2, argv[0] ));
- }
- if (!argp2) {
- SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "swig::Iterator const &","operator -", 2, argv[0]));
- }
- arg2 = reinterpret_cast< swig::Iterator * >(argp2);
- result = ((swig::Iterator const *)arg1)->operator -((swig::Iterator const &)*arg2);
- vresult = SWIG_From_ptrdiff_t(static_cast< ptrdiff_t >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE _wrap_Iterator___sub__(int nargs, VALUE *args, VALUE self) {
- int argc;
- VALUE argv[3];
- int ii;
-
- argc = nargs + 1;
- argv[0] = self;
- if (argc > 3) SWIG_fail;
- for (ii = 1; (ii < argc); ++ii) {
- argv[ii] = args[ii-1];
- }
- if (argc == 2) {
- int _v;
- void *vptr = 0;
- int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_swig__Iterator, 0);
- _v = SWIG_CheckState(res);
- if (_v) {
- void *vptr = 0;
- int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_swig__Iterator, 0);
- _v = SWIG_CheckState(res);
- if (_v) {
- return _wrap_Iterator___sub____SWIG_1(nargs, args, self);
- }
- }
- }
- if (argc == 2) {
- int _v;
- void *vptr = 0;
- int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_swig__Iterator, 0);
- _v = SWIG_CheckState(res);
- if (_v) {
- {
- int res = SWIG_AsVal_ptrdiff_t(argv[1], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- return _wrap_Iterator___sub____SWIG_0(nargs, args, self);
- }
- }
- }
-
- fail:
- Ruby_Format_OverloadedError( argc, 3, "__sub__.new",
- " __sub__.new(ptrdiff_t n)\n"
- " __sub__.new(swig::Iterator const &x)\n");
-
- return Qnil;
- }
- SWIGINTERN void
- free_swig_Iterator(swig::Iterator *arg1) {
- delete arg1;
- }
- swig_class SwigClassIntVector;
- /*
- Document-method: Uhferret_lib::IntVector.dup
- call-seq:
- dup -> IntVector
- Create a duplicate of the class and unfreeze it if needed.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_dup(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- std::vector< int,std::allocator< int > > *result = 0 ;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","dup", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- result = (std::vector< int,std::allocator< int > > *)std_vector_Sl_int_Sg__dup(arg1);
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, SWIG_POINTER_OWN | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.inspect
- call-seq:
- inspect -> VALUE
- Inspect class and its contents.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_inspect(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- VALUE result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","inspect", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- result = (VALUE)std_vector_Sl_int_Sg__inspect(arg1);
- vresult = result;
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.to_a
- call-seq:
- to_a -> VALUE
- Convert IntVector to an Array.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_to_a(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- VALUE result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","to_a", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- result = (VALUE)std_vector_Sl_int_Sg__to_a(arg1);
- vresult = result;
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.to_s
- call-seq:
- to_s -> VALUE
- Convert class to a String representation.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_to_s(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- VALUE result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","to_s", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- result = (VALUE)std_vector_Sl_int_Sg__to_s(arg1);
- vresult = result;
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.slice
- call-seq:
- slice(i, j) -> VALUE
- Return a slice (portion of) the IntVector.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_slice(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- std::vector< int >::difference_type arg2 ;
- std::vector< int >::difference_type arg3 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- ptrdiff_t val2 ;
- int ecode2 = 0 ;
- ptrdiff_t val3 ;
- int ecode3 = 0 ;
- VALUE result;
- VALUE vresult = Qnil;
-
- if ((argc < 2) || (argc > 2)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","slice", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- ecode2 = SWIG_AsVal_ptrdiff_t(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "std::vector< int >::difference_type","slice", 2, argv[0] ));
- }
- arg2 = static_cast< std::vector< int >::difference_type >(val2);
- ecode3 = SWIG_AsVal_ptrdiff_t(argv[1], &val3);
- if (!SWIG_IsOK(ecode3)) {
- SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "std::vector< int >::difference_type","slice", 3, argv[1] ));
- }
- arg3 = static_cast< std::vector< int >::difference_type >(val3);
- result = (VALUE)std_vector_Sl_int_Sg__slice(arg1,arg2,arg3);
- vresult = result;
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.each
- call-seq:
- each -> IntVector
- Iterate thru each element in the IntVector. A block must be provided.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_each(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- std::vector< int,std::allocator< int > > *result = 0 ;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","each", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- result = (std::vector< int,std::allocator< int > > *)std_vector_Sl_int_Sg__each(arg1);
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.select
- call-seq:
- select -> IntVector
- Iterate thru each element in the IntVector and select those that match a condition. A block must be provided.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_select(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- std::vector< int,std::allocator< int > > *result = 0 ;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","select", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- result = (std::vector< int,std::allocator< int > > *)std_vector_Sl_int_Sg__select(arg1);
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, SWIG_POINTER_OWN | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.reject!
- call-seq:
- reject! -> IntVector
- Iterate thru each element in the IntVector and reject those that fail a condition. A block must be provided. IntVector is modified in place.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_rejectN___(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- std::vector< int,std::allocator< int > > *result = 0 ;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","reject_bang", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- result = (std::vector< int,std::allocator< int > > *)std_vector_Sl_int_Sg__reject_bang(arg1);
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.delete_at
- call-seq:
- delete_at(i) -> VALUE
- Delete an element at a certain index.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_delete_at(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- std::vector< int >::difference_type arg2 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- ptrdiff_t val2 ;
- int ecode2 = 0 ;
- VALUE result;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","delete_at", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- ecode2 = SWIG_AsVal_ptrdiff_t(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "std::vector< int >::difference_type","delete_at", 2, argv[0] ));
- }
- arg2 = static_cast< std::vector< int >::difference_type >(val2);
- result = (VALUE)std_vector_Sl_int_Sg__delete_at(arg1,arg2);
- vresult = result;
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_IntVector___delete2__(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- std::vector< int >::value_type *arg2 = 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- std::vector< int >::value_type temp2 ;
- int val2 ;
- int ecode2 = 0 ;
- VALUE result;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","__delete2__", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- ecode2 = SWIG_AsVal_int(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "std::vector< int >::value_type","__delete2__", 2, argv[0] ));
- }
- temp2 = static_cast< std::vector< int >::value_type >(val2);
- arg2 = &temp2;
- result = (VALUE)std_vector_Sl_int_Sg____delete2__(arg1,(int const &)*arg2);
- vresult = result;
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.pop
- call-seq:
- pop -> VALUE
- Remove and return element at the end of the IntVector.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_pop(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- VALUE result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","pop", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- result = (VALUE)std_vector_Sl_int_Sg__pop(arg1);
- vresult = result;
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.push
- call-seq:
- push(e) -> value_type
- Add an element at the end of the IntVector.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_push(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- std::vector< int >::value_type *arg2 = 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- std::vector< int >::value_type temp2 ;
- int val2 ;
- int ecode2 = 0 ;
- std::vector< int >::value_type result;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","push", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- ecode2 = SWIG_AsVal_int(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "std::vector< int >::value_type","push", 2, argv[0] ));
- }
- temp2 = static_cast< std::vector< int >::value_type >(val2);
- arg2 = &temp2;
- result = (std::vector< int >::value_type)std_vector_Sl_int_Sg__push(arg1,(int const &)*arg2);
- vresult = SWIG_From_int(static_cast< int >(result));
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.reject
- call-seq:
- reject -> IntVector
- Iterate thru each element in the IntVector and reject those that fail a condition returning a new IntVector. A block must be provided.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_reject(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- std::vector< int,std::allocator< int > > *result = 0 ;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","reject", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- result = (std::vector< int,std::allocator< int > > *)std_vector_Sl_int_Sg__reject(arg1);
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, SWIG_POINTER_OWN | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.at
- call-seq:
- at(i) -> VALUE
- Return element at a certain index.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_at(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- std::vector< int >::difference_type arg2 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- ptrdiff_t val2 ;
- int ecode2 = 0 ;
- VALUE result;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > const *","at", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- ecode2 = SWIG_AsVal_ptrdiff_t(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "std::vector< int >::difference_type","at", 2, argv[0] ));
- }
- arg2 = static_cast< std::vector< int >::difference_type >(val2);
- result = (VALUE)std_vector_Sl_int_Sg__at((std::vector< int > const *)arg1,arg2);
- vresult = result;
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.[]
- call-seq:
- [](i, j) -> VALUE
- [](i) -> VALUE
- [](i) -> VALUE
- Element accessor/slicing.
- */
- SWIGINTERN VALUE
- _wrap_IntVector___getitem____SWIG_0(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- std::vector< int >::difference_type arg2 ;
- std::vector< int >::difference_type arg3 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- ptrdiff_t val2 ;
- int ecode2 = 0 ;
- ptrdiff_t val3 ;
- int ecode3 = 0 ;
- VALUE result;
- VALUE vresult = Qnil;
-
- if ((argc < 2) || (argc > 2)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > const *","__getitem__", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- ecode2 = SWIG_AsVal_ptrdiff_t(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "std::vector< int >::difference_type","__getitem__", 2, argv[0] ));
- }
- arg2 = static_cast< std::vector< int >::difference_type >(val2);
- ecode3 = SWIG_AsVal_ptrdiff_t(argv[1], &val3);
- if (!SWIG_IsOK(ecode3)) {
- SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "std::vector< int >::difference_type","__getitem__", 3, argv[1] ));
- }
- arg3 = static_cast< std::vector< int >::difference_type >(val3);
- result = (VALUE)std_vector_Sl_int_Sg____getitem____SWIG_0((std::vector< int > const *)arg1,arg2,arg3);
- vresult = result;
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_IntVector___getitem____SWIG_1(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- std::vector< int >::difference_type arg2 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- ptrdiff_t val2 ;
- int ecode2 = 0 ;
- VALUE result;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > const *","__getitem__", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- ecode2 = SWIG_AsVal_ptrdiff_t(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "std::vector< int >::difference_type","__getitem__", 2, argv[0] ));
- }
- arg2 = static_cast< std::vector< int >::difference_type >(val2);
- result = (VALUE)std_vector_Sl_int_Sg____getitem____SWIG_1((std::vector< int > const *)arg1,arg2);
- vresult = result;
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_IntVector___getitem____SWIG_2(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- VALUE arg2 = (VALUE) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- VALUE result;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > const *","__getitem__", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- arg2 = argv[0];
- result = (VALUE)std_vector_Sl_int_Sg____getitem____SWIG_2((std::vector< int > const *)arg1,arg2);
- vresult = result;
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE _wrap_IntVector___getitem__(int nargs, VALUE *args, VALUE self) {
- int argc;
- VALUE argv[4];
- int ii;
-
- argc = nargs + 1;
- argv[0] = self;
- if (argc > 4) SWIG_fail;
- for (ii = 1; (ii < argc); ++ii) {
- argv[ii] = args[ii-1];
- }
- if (argc == 2) {
- int _v;
- int res = swig::asptr(argv[0], (std::vector<int,std::allocator< int > >**)(0));
- _v = SWIG_CheckState(res);
- if (_v) {
- {
- int res = SWIG_AsVal_ptrdiff_t(argv[1], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- return _wrap_IntVector___getitem____SWIG_1(nargs, args, self);
- }
- }
- }
- if (argc == 2) {
- int _v;
- int res = swig::asptr(argv[0], (std::vector<int,std::allocator< int > >**)(0));
- _v = SWIG_CheckState(res);
- if (_v) {
- _v = (argv[1] != 0);
- if (_v) {
- return _wrap_IntVector___getitem____SWIG_2(nargs, args, self);
- }
- }
- }
- if (argc == 3) {
- int _v;
- int res = swig::asptr(argv[0], (std::vector<int,std::allocator< int > >**)(0));
- _v = SWIG_CheckState(res);
- if (_v) {
- {
- int res = SWIG_AsVal_ptrdiff_t(argv[1], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- {
- int res = SWIG_AsVal_ptrdiff_t(argv[2], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- return _wrap_IntVector___getitem____SWIG_0(nargs, args, self);
- }
- }
- }
- }
-
- fail:
- Ruby_Format_OverloadedError( argc, 4, "__getitem__",
- " VALUE __getitem__(std::vector< int >::difference_type i, std::vector< int >::difference_type j)\n"
- " VALUE __getitem__(std::vector< int >::difference_type i)\n"
- " VALUE __getitem__(VALUE i)\n");
-
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.[]=
- call-seq:
- []=(i, x) -> VALUE
- []=(i, j, v) -> VALUE
- Element setter/slicing.
- */
- SWIGINTERN VALUE
- _wrap_IntVector___setitem____SWIG_0(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- std::vector< int >::difference_type arg2 ;
- std::vector< int >::value_type *arg3 = 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- ptrdiff_t val2 ;
- int ecode2 = 0 ;
- std::vector< int >::value_type temp3 ;
- int val3 ;
- int ecode3 = 0 ;
- VALUE result;
- VALUE vresult = Qnil;
-
- if ((argc < 2) || (argc > 2)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","__setitem__", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- ecode2 = SWIG_AsVal_ptrdiff_t(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "std::vector< int >::difference_type","__setitem__", 2, argv[0] ));
- }
- arg2 = static_cast< std::vector< int >::difference_type >(val2);
- ecode3 = SWIG_AsVal_int(argv[1], &val3);
- if (!SWIG_IsOK(ecode3)) {
- SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "std::vector< int >::value_type","__setitem__", 3, argv[1] ));
- }
- temp3 = static_cast< std::vector< int >::value_type >(val3);
- arg3 = &temp3;
- result = (VALUE)std_vector_Sl_int_Sg____setitem____SWIG_0(arg1,arg2,(int const &)*arg3);
- vresult = result;
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_IntVector___setitem____SWIG_1(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- std::vector< int >::difference_type arg2 ;
- std::vector< int >::difference_type arg3 ;
- std::vector< int,std::allocator< int > > *arg4 = 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- ptrdiff_t val2 ;
- int ecode2 = 0 ;
- ptrdiff_t val3 ;
- int ecode3 = 0 ;
- int res4 = SWIG_OLDOBJ ;
- VALUE result;
- VALUE vresult = Qnil;
-
- if ((argc < 3) || (argc > 3)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 3)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","__setitem__", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- ecode2 = SWIG_AsVal_ptrdiff_t(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "std::vector< int >::difference_type","__setitem__", 2, argv[0] ));
- }
- arg2 = static_cast< std::vector< int >::difference_type >(val2);
- ecode3 = SWIG_AsVal_ptrdiff_t(argv[1], &val3);
- if (!SWIG_IsOK(ecode3)) {
- SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "std::vector< int >::difference_type","__setitem__", 3, argv[1] ));
- }
- arg3 = static_cast< std::vector< int >::difference_type >(val3);
- {
- std::vector<int,std::allocator< int > > *ptr = (std::vector<int,std::allocator< int > > *)0;
- res4 = swig::asptr(argv[2], &ptr);
- if (!SWIG_IsOK(res4)) {
- SWIG_exception_fail(SWIG_ArgError(res4), Ruby_Format_TypeError( "", "std::vector< int,std::allocator< int > > const &","__setitem__", 4, argv[2] ));
- }
- if (!ptr) {
- SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "std::vector< int,std::allocator< int > > const &","__setitem__", 4, argv[2]));
- }
- arg4 = ptr;
- }
- try {
- result = (VALUE)std_vector_Sl_int_Sg____setitem____SWIG_1(arg1,arg2,arg3,(std::vector< int,std::allocator< int > > const &)*arg4);
- }
- catch(std::invalid_argument &_e) {
- SWIG_exception_fail(SWIG_ValueError, (&_e)->what());
- }
-
- vresult = result;
- if (SWIG_IsNewObj(res4)) delete arg4;
- return vresult;
- fail:
- if (SWIG_IsNewObj(res4)) delete arg4;
- return Qnil;
- }
- SWIGINTERN VALUE _wrap_IntVector___setitem__(int nargs, VALUE *args, VALUE self) {
- int argc;
- VALUE argv[5];
- int ii;
-
- argc = nargs + 1;
- argv[0] = self;
- if (argc > 5) SWIG_fail;
- for (ii = 1; (ii < argc); ++ii) {
- argv[ii] = args[ii-1];
- }
- if (argc == 3) {
- int _v;
- int res = swig::asptr(argv[0], (std::vector<int,std::allocator< int > >**)(0));
- _v = SWIG_CheckState(res);
- if (_v) {
- {
- int res = SWIG_AsVal_ptrdiff_t(argv[1], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- {
- int res = SWIG_AsVal_int(argv[2], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- return _wrap_IntVector___setitem____SWIG_0(nargs, args, self);
- }
- }
- }
- }
- if (argc == 4) {
- int _v;
- int res = swig::asptr(argv[0], (std::vector<int,std::allocator< int > >**)(0));
- _v = SWIG_CheckState(res);
- if (_v) {
- {
- int res = SWIG_AsVal_ptrdiff_t(argv[1], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- {
- int res = SWIG_AsVal_ptrdiff_t(argv[2], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- int res = swig::asptr(argv[3], (std::vector<int,std::allocator< int > >**)(0));
- _v = SWIG_CheckState(res);
- if (_v) {
- return _wrap_IntVector___setitem____SWIG_1(nargs, args, self);
- }
- }
- }
- }
- }
-
- fail:
- Ruby_Format_OverloadedError( argc, 5, "__setitem__",
- " VALUE __setitem__(std::vector< int >::difference_type i, std::vector< int >::value_type const &x)\n"
- " VALUE __setitem__(std::vector< int >::difference_type i, std::vector< int >::difference_type j, std::vector< int,std::allocator< int > > const &v)\n");
-
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.shift
- call-seq:
- shift -> VALUE
- Remove and return element at the beginning of the IntVector.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_shift(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- VALUE result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","shift", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- result = (VALUE)std_vector_Sl_int_Sg__shift(arg1);
- vresult = result;
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.insert
- call-seq:
- insert(pos, argc, ?) -> IntVector
- insert(pos, x) -> iterator
- insert(pos, n, x)
- Insert one or more new elements in the IntVector.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_insert__SWIG_0(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- std::vector< int >::difference_type arg2 ;
- int arg3 ;
- VALUE *arg4 = (VALUE *) 0 ;
- void *arg5 = 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- ptrdiff_t val2 ;
- int ecode2 = 0 ;
- std::vector< int,std::allocator< int > > *result = 0 ;
- VALUE vresult = Qnil;
-
- if (argc < 2) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","insert", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- ecode2 = SWIG_AsVal_ptrdiff_t(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "std::vector< int >::difference_type","insert", 2, argv[0] ));
- }
- arg2 = static_cast< std::vector< int >::difference_type >(val2);
- {
- arg3 = argc - 1;
- arg4 = argv + 1;
- }
- result = (std::vector< int,std::allocator< int > > *)std_vector_Sl_int_Sg__insert__SWIG_0(arg1,arg2,arg3,arg4,arg5);
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.unshift
- call-seq:
- unshift(argc, ?) -> IntVector
- Add one or more elements at the beginning of the IntVector.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_unshift(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- int arg2 ;
- VALUE *arg3 = (VALUE *) 0 ;
- void *arg4 = 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- std::vector< int,std::allocator< int > > *result = 0 ;
- VALUE vresult = Qnil;
-
- if (argc < 1) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","unshift", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- {
- arg2 = argc;
- arg3 = argv;
- }
- result = (std::vector< int,std::allocator< int > > *)std_vector_Sl_int_Sg__unshift(arg1,arg2,arg3,arg4);
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_new_IntVector__SWIG_0(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *result = 0 ;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- result = (std::vector< int > *)new std::vector< int >();
- DATA_PTR(self) = result;
- return self;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_new_IntVector__SWIG_1(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = 0 ;
- int res1 = SWIG_OLDOBJ ;
- std::vector< int > *result = 0 ;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- {
- std::vector<int,std::allocator< int > > *ptr = (std::vector<int,std::allocator< int > > *)0;
- res1 = swig::asptr(argv[0], &ptr);
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > const &","std::vector<(int)>", 1, argv[0] ));
- }
- if (!ptr) {
- SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "std::vector< int > const &","std::vector<(int)>", 1, argv[0]));
- }
- arg1 = ptr;
- }
- result = (std::vector< int > *)new std::vector< int >((std::vector< int > const &)*arg1);
- DATA_PTR(self) = result;
- if (SWIG_IsNewObj(res1)) delete arg1;
- return self;
- fail:
- if (SWIG_IsNewObj(res1)) delete arg1;
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.empty?
- call-seq:
- empty? -> bool
- Check if the IntVector is empty or not.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_emptyq___(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- bool result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > const *","empty", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- result = (bool)((std::vector< int > const *)arg1)->empty();
- vresult = SWIG_From_bool(static_cast< bool >(result));
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.size
- call-seq:
- size -> size_type
- Size or Length of the IntVector.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_size(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- std::vector< int >::size_type result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > const *","size", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- result = ((std::vector< int > const *)arg1)->size();
- vresult = SWIG_From_size_t(static_cast< size_t >(result));
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.clear
- call-seq:
- clear
- Clear IntVector contents.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_clear(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","clear", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- (arg1)->clear();
- return Qnil;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_IntVector_swap(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- std::vector< int > *arg2 = 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- void *argp2 = 0 ;
- int res2 = 0 ;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","swap", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- res2 = SWIG_ConvertPtr(argv[0], &argp2, SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 );
- if (!SWIG_IsOK(res2)) {
- SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( "", "std::vector< int > &","swap", 2, argv[0] ));
- }
- if (!argp2) {
- SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "std::vector< int > &","swap", 2, argv[0]));
- }
- arg2 = reinterpret_cast< std::vector< int > * >(argp2);
- (arg1)->swap(*arg2);
- return Qnil;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_IntVector_get_allocator(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- SwigValueWrapper< std::allocator< int > > result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > const *","get_allocator", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- result = ((std::vector< int > const *)arg1)->get_allocator();
- vresult = SWIG_NewPointerObj((new std::vector< int >::allocator_type(static_cast< const std::vector< int >::allocator_type& >(result))), SWIGTYPE_p_std__allocatorT_int_t, SWIG_POINTER_OWN | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.begin
- call-seq:
- begin -> iterator
- Return an iterator to the beginning of the IntVector.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_begin(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- std::vector< int >::iterator result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","begin", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- result = (arg1)->begin();
- vresult = SWIG_NewPointerObj(swig::make_nonconst_iterator(static_cast< const std::vector< int >::iterator & >(result),
- self),
- swig::Iterator::descriptor(),SWIG_POINTER_OWN);
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.end
- call-seq:
- end -> iterator
- Return an iterator to past the end of the IntVector.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_end(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- std::vector< int >::iterator result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","end", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- result = (arg1)->end();
- vresult = SWIG_NewPointerObj(swig::make_nonconst_iterator(static_cast< const std::vector< int >::iterator & >(result),
- self),
- swig::Iterator::descriptor(),SWIG_POINTER_OWN);
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.rbegin
- call-seq:
- rbegin -> reverse_iterator
- Return a reverse iterator to the beginning (the end) of the IntVector.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_rbegin(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- std::vector< int >::reverse_iterator result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","rbegin", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- result = (arg1)->rbegin();
- vresult = SWIG_NewPointerObj(swig::make_nonconst_iterator(static_cast< const std::vector< int >::reverse_iterator & >(result),
- self),
- swig::Iterator::descriptor(),SWIG_POINTER_OWN);
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.rend
- call-seq:
- rend -> reverse_iterator
- Return a reverse iterator to past the end (past the beginning) of the IntVector.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_rend(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- std::vector< int >::reverse_iterator result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","rend", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- result = (arg1)->rend();
- vresult = SWIG_NewPointerObj(swig::make_nonconst_iterator(static_cast< const std::vector< int >::reverse_iterator & >(result),
- self),
- swig::Iterator::descriptor(),SWIG_POINTER_OWN);
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_new_IntVector__SWIG_2(int argc, VALUE *argv, VALUE self) {
- std::vector< int >::size_type arg1 ;
- size_t val1 ;
- int ecode1 = 0 ;
- std::vector< int > *result = 0 ;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- ecode1 = SWIG_AsVal_size_t(argv[0], &val1);
- if (!SWIG_IsOK(ecode1)) {
- SWIG_exception_fail(SWIG_ArgError(ecode1), Ruby_Format_TypeError( "", "std::vector< int >::size_type","std::vector<(int)>", 1, argv[0] ));
- }
- arg1 = static_cast< std::vector< int >::size_type >(val1);
- result = (std::vector< int > *)new std::vector< int >(arg1);
- DATA_PTR(self) = result;
- return self;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.resize
- call-seq:
- resize(new_size)
- resize(new_size, x)
- Resize the size of the IntVector.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_resize__SWIG_0(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- std::vector< int >::size_type arg2 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- size_t val2 ;
- int ecode2 = 0 ;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","resize", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- ecode2 = SWIG_AsVal_size_t(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "std::vector< int >::size_type","resize", 2, argv[0] ));
- }
- arg2 = static_cast< std::vector< int >::size_type >(val2);
- (arg1)->resize(arg2);
- return Qnil;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.erase
- call-seq:
- erase(pos) -> iterator
- erase(first, last) -> iterator
- Delete a portion of the IntVector.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_erase__SWIG_0(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- std::vector< int >::iterator arg2 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- swig::Iterator *iter2 = 0 ;
- int res2 ;
- std::vector< int >::iterator result;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","erase", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- res2 = SWIG_ConvertPtr(argv[0], SWIG_as_voidptrptr(&iter2), swig::Iterator::descriptor(), 0);
- if (!SWIG_IsOK(res2) || !iter2) {
- SWIG_exception_fail(SWIG_ArgError(SWIG_TypeError), Ruby_Format_TypeError( "", "std::vector< int >::iterator","erase", 2, argv[0] ));
- } else {
- swig::Iterator_T<std::vector< int >::iterator > *iter_t = dynamic_cast<swig::Iterator_T<std::vector< int >::iterator > *>(iter2);
- if (iter_t) {
- arg2 = iter_t->get_current();
- } else {
- SWIG_exception_fail(SWIG_ArgError(SWIG_TypeError), Ruby_Format_TypeError( "", "std::vector< int >::iterator","erase", 2, argv[0] ));
- }
- }
- result = (arg1)->erase(arg2);
- vresult = SWIG_NewPointerObj(swig::make_nonconst_iterator(static_cast< const std::vector< int >::iterator & >(result),
- self),
- swig::Iterator::descriptor(),SWIG_POINTER_OWN);
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_IntVector_erase__SWIG_1(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- std::vector< int >::iterator arg2 ;
- std::vector< int >::iterator arg3 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- swig::Iterator *iter2 = 0 ;
- int res2 ;
- swig::Iterator *iter3 = 0 ;
- int res3 ;
- std::vector< int >::iterator result;
- VALUE vresult = Qnil;
-
- if ((argc < 2) || (argc > 2)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","erase", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- res2 = SWIG_ConvertPtr(argv[0], SWIG_as_voidptrptr(&iter2), swig::Iterator::descriptor(), 0);
- if (!SWIG_IsOK(res2) || !iter2) {
- SWIG_exception_fail(SWIG_ArgError(SWIG_TypeError), Ruby_Format_TypeError( "", "std::vector< int >::iterator","erase", 2, argv[0] ));
- } else {
- swig::Iterator_T<std::vector< int >::iterator > *iter_t = dynamic_cast<swig::Iterator_T<std::vector< int >::iterator > *>(iter2);
- if (iter_t) {
- arg2 = iter_t->get_current();
- } else {
- SWIG_exception_fail(SWIG_ArgError(SWIG_TypeError), Ruby_Format_TypeError( "", "std::vector< int >::iterator","erase", 2, argv[0] ));
- }
- }
- res3 = SWIG_ConvertPtr(argv[1], SWIG_as_voidptrptr(&iter3), swig::Iterator::descriptor(), 0);
- if (!SWIG_IsOK(res3) || !iter3) {
- SWIG_exception_fail(SWIG_ArgError(SWIG_TypeError), Ruby_Format_TypeError( "", "std::vector< int >::iterator","erase", 3, argv[1] ));
- } else {
- swig::Iterator_T<std::vector< int >::iterator > *iter_t = dynamic_cast<swig::Iterator_T<std::vector< int >::iterator > *>(iter3);
- if (iter_t) {
- arg3 = iter_t->get_current();
- } else {
- SWIG_exception_fail(SWIG_ArgError(SWIG_TypeError), Ruby_Format_TypeError( "", "std::vector< int >::iterator","erase", 3, argv[1] ));
- }
- }
- result = (arg1)->erase(arg2,arg3);
- vresult = SWIG_NewPointerObj(swig::make_nonconst_iterator(static_cast< const std::vector< int >::iterator & >(result),
- self),
- swig::Iterator::descriptor(),SWIG_POINTER_OWN);
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE _wrap_IntVector_erase(int nargs, VALUE *args, VALUE self) {
- int argc;
- VALUE argv[4];
- int ii;
-
- argc = nargs + 1;
- argv[0] = self;
- if (argc > 4) SWIG_fail;
- for (ii = 1; (ii < argc); ++ii) {
- argv[ii] = args[ii-1];
- }
- if (argc == 2) {
- int _v;
- int res = swig::asptr(argv[0], (std::vector<int,std::allocator< int > >**)(0));
- _v = SWIG_CheckState(res);
- if (_v) {
- swig::ConstIterator *iter = 0;
- int res = SWIG_ConvertPtr(argv[1], SWIG_as_voidptrptr(&iter),
- swig::Iterator::descriptor(), 0);
- _v = (SWIG_IsOK(res) && iter && (dynamic_cast<swig::Iterator_T<std::vector< int >::iterator > *>(iter) != 0));
- if (_v) {
- return _wrap_IntVector_erase__SWIG_0(nargs, args, self);
- }
- }
- }
- if (argc == 3) {
- int _v;
- int res = swig::asptr(argv[0], (std::vector<int,std::allocator< int > >**)(0));
- _v = SWIG_CheckState(res);
- if (_v) {
- swig::ConstIterator *iter = 0;
- int res = SWIG_ConvertPtr(argv[1], SWIG_as_voidptrptr(&iter),
- swig::Iterator::descriptor(), 0);
- _v = (SWIG_IsOK(res) && iter && (dynamic_cast<swig::Iterator_T<std::vector< int >::iterator > *>(iter) != 0));
- if (_v) {
- swig::ConstIterator *iter = 0;
- int res = SWIG_ConvertPtr(argv[2], SWIG_as_voidptrptr(&iter),
- swig::Iterator::descriptor(), 0);
- _v = (SWIG_IsOK(res) && iter && (dynamic_cast<swig::Iterator_T<std::vector< int >::iterator > *>(iter) != 0));
- if (_v) {
- return _wrap_IntVector_erase__SWIG_1(nargs, args, self);
- }
- }
- }
- }
-
- fail:
- Ruby_Format_OverloadedError( argc, 4, "IntVector.erase",
- " std::vector< int >::iterator IntVector.erase(std::vector< int >::iterator pos)\n"
- " std::vector< int >::iterator IntVector.erase(std::vector< int >::iterator first, std::vector< int >::iterator last)\n");
-
- return Qnil;
- }
- #ifdef HAVE_RB_DEFINE_ALLOC_FUNC
- SWIGINTERN VALUE
- _wrap_IntVector_allocate(VALUE self) {
- #else
- SWIGINTERN VALUE
- _wrap_IntVector_allocate(int argc, VALUE *argv, VALUE self) {
- #endif
-
-
- VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t);
- #ifndef HAVE_RB_DEFINE_ALLOC_FUNC
- rb_obj_call_init(vresult, argc, argv);
- #endif
- return vresult;
- }
-
- SWIGINTERN VALUE
- _wrap_new_IntVector__SWIG_3(int argc, VALUE *argv, VALUE self) {
- std::vector< int >::size_type arg1 ;
- std::vector< int >::value_type *arg2 = 0 ;
- size_t val1 ;
- int ecode1 = 0 ;
- std::vector< int >::value_type temp2 ;
- int val2 ;
- int ecode2 = 0 ;
- std::vector< int > *result = 0 ;
-
- if ((argc < 2) || (argc > 2)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
- }
- ecode1 = SWIG_AsVal_size_t(argv[0], &val1);
- if (!SWIG_IsOK(ecode1)) {
- SWIG_exception_fail(SWIG_ArgError(ecode1), Ruby_Format_TypeError( "", "std::vector< int >::size_type","std::vector<(int)>", 1, argv[0] ));
- }
- arg1 = static_cast< std::vector< int >::size_type >(val1);
- ecode2 = SWIG_AsVal_int(argv[1], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "std::vector< int >::value_type","std::vector<(int)>", 2, argv[1] ));
- }
- temp2 = static_cast< std::vector< int >::value_type >(val2);
- arg2 = &temp2;
- result = (std::vector< int > *)new std::vector< int >(arg1,(std::vector< int >::value_type const &)*arg2);
- DATA_PTR(self) = result;
- return self;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE _wrap_new_IntVector(int nargs, VALUE *args, VALUE self) {
- int argc;
- VALUE argv[2];
- int ii;
-
- argc = nargs;
- if (argc > 2) SWIG_fail;
- for (ii = 0; (ii < argc); ++ii) {
- argv[ii] = args[ii];
- }
- if (argc == 0) {
- return _wrap_new_IntVector__SWIG_0(nargs, args, self);
- }
- if (argc == 1) {
- int _v;
- {
- int res = SWIG_AsVal_size_t(argv[0], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- return _wrap_new_IntVector__SWIG_2(nargs, args, self);
- }
- }
- if (argc == 1) {
- int _v;
- int res = swig::asptr(argv[0], (std::vector<int,std::allocator< int > >**)(0));
- _v = SWIG_CheckState(res);
- if (_v) {
- return _wrap_new_IntVector__SWIG_1(nargs, args, self);
- }
- }
- if (argc == 2) {
- int _v;
- {
- int res = SWIG_AsVal_size_t(argv[0], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- {
- int res = SWIG_AsVal_int(argv[1], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- return _wrap_new_IntVector__SWIG_3(nargs, args, self);
- }
- }
- }
-
- fail:
- Ruby_Format_OverloadedError( argc, 2, "IntVector.new",
- " IntVector.new()\n"
- " IntVector.new(std::vector< int > const &)\n"
- " IntVector.new(std::vector< int >::size_type size)\n"
- " IntVector.new(std::vector< int >::size_type size, std::vector< int >::value_type const &value)\n");
-
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.front
- call-seq:
- front -> value_type
- Return the first element in IntVector.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_front(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- std::vector< int >::value_type *result = 0 ;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > const *","front", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- result = (std::vector< int >::value_type *) &((std::vector< int > const *)arg1)->front();
- vresult = SWIG_From_int(static_cast< int >(*result));
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.back
- call-seq:
- back -> value_type
- Return the last element in IntVector.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_back(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- std::vector< int >::value_type *result = 0 ;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > const *","back", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- result = (std::vector< int >::value_type *) &((std::vector< int > const *)arg1)->back();
- vresult = SWIG_From_int(static_cast< int >(*result));
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.assign
- call-seq:
- assign(n, x)
- Assign a new IntVector or portion of it.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_assign(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- std::vector< int >::size_type arg2 ;
- std::vector< int >::value_type *arg3 = 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- size_t val2 ;
- int ecode2 = 0 ;
- std::vector< int >::value_type temp3 ;
- int val3 ;
- int ecode3 = 0 ;
-
- if ((argc < 2) || (argc > 2)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","assign", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- ecode2 = SWIG_AsVal_size_t(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "std::vector< int >::size_type","assign", 2, argv[0] ));
- }
- arg2 = static_cast< std::vector< int >::size_type >(val2);
- ecode3 = SWIG_AsVal_int(argv[1], &val3);
- if (!SWIG_IsOK(ecode3)) {
- SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "std::vector< int >::value_type","assign", 3, argv[1] ));
- }
- temp3 = static_cast< std::vector< int >::value_type >(val3);
- arg3 = &temp3;
- (arg1)->assign(arg2,(std::vector< int >::value_type const &)*arg3);
- return Qnil;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.resize
- call-seq:
- resize(new_size)
- resize(new_size, x)
- Resize the size of the IntVector.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_resize__SWIG_1(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- std::vector< int >::size_type arg2 ;
- std::vector< int >::value_type *arg3 = 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- size_t val2 ;
- int ecode2 = 0 ;
- std::vector< int >::value_type temp3 ;
- int val3 ;
- int ecode3 = 0 ;
-
- if ((argc < 2) || (argc > 2)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","resize", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- ecode2 = SWIG_AsVal_size_t(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "std::vector< int >::size_type","resize", 2, argv[0] ));
- }
- arg2 = static_cast< std::vector< int >::size_type >(val2);
- ecode3 = SWIG_AsVal_int(argv[1], &val3);
- if (!SWIG_IsOK(ecode3)) {
- SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "std::vector< int >::value_type","resize", 3, argv[1] ));
- }
- temp3 = static_cast< std::vector< int >::value_type >(val3);
- arg3 = &temp3;
- (arg1)->resize(arg2,(std::vector< int >::value_type const &)*arg3);
- return Qnil;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE _wrap_IntVector_resize(int nargs, VALUE *args, VALUE self) {
- int argc;
- VALUE argv[4];
- int ii;
-
- argc = nargs + 1;
- argv[0] = self;
- if (argc > 4) SWIG_fail;
- for (ii = 1; (ii < argc); ++ii) {
- argv[ii] = args[ii-1];
- }
- if (argc == 2) {
- int _v;
- int res = swig::asptr(argv[0], (std::vector<int,std::allocator< int > >**)(0));
- _v = SWIG_CheckState(res);
- if (_v) {
- {
- int res = SWIG_AsVal_size_t(argv[1], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- return _wrap_IntVector_resize__SWIG_0(nargs, args, self);
- }
- }
- }
- if (argc == 3) {
- int _v;
- int res = swig::asptr(argv[0], (std::vector<int,std::allocator< int > >**)(0));
- _v = SWIG_CheckState(res);
- if (_v) {
- {
- int res = SWIG_AsVal_size_t(argv[1], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- {
- int res = SWIG_AsVal_int(argv[2], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- return _wrap_IntVector_resize__SWIG_1(nargs, args, self);
- }
- }
- }
- }
-
- fail:
- Ruby_Format_OverloadedError( argc, 4, "IntVector.resize",
- " void IntVector.resize(std::vector< int >::size_type new_size)\n"
- " void IntVector.resize(std::vector< int >::size_type new_size, std::vector< int >::value_type const &x)\n");
-
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.insert
- call-seq:
- insert(pos, argc, ?) -> IntVector
- insert(pos, x) -> iterator
- insert(pos, n, x)
- Insert one or more new elements in the IntVector.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_insert__SWIG_1(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- std::vector< int >::iterator arg2 ;
- std::vector< int >::value_type *arg3 = 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- swig::Iterator *iter2 = 0 ;
- int res2 ;
- std::vector< int >::value_type temp3 ;
- int val3 ;
- int ecode3 = 0 ;
- std::vector< int >::iterator result;
- VALUE vresult = Qnil;
-
- if ((argc < 2) || (argc > 2)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","insert", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- res2 = SWIG_ConvertPtr(argv[0], SWIG_as_voidptrptr(&iter2), swig::Iterator::descriptor(), 0);
- if (!SWIG_IsOK(res2) || !iter2) {
- SWIG_exception_fail(SWIG_ArgError(SWIG_TypeError), Ruby_Format_TypeError( "", "std::vector< int >::iterator","insert", 2, argv[0] ));
- } else {
- swig::Iterator_T<std::vector< int >::iterator > *iter_t = dynamic_cast<swig::Iterator_T<std::vector< int >::iterator > *>(iter2);
- if (iter_t) {
- arg2 = iter_t->get_current();
- } else {
- SWIG_exception_fail(SWIG_ArgError(SWIG_TypeError), Ruby_Format_TypeError( "", "std::vector< int >::iterator","insert", 2, argv[0] ));
- }
- }
- ecode3 = SWIG_AsVal_int(argv[1], &val3);
- if (!SWIG_IsOK(ecode3)) {
- SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "std::vector< int >::value_type","insert", 3, argv[1] ));
- }
- temp3 = static_cast< std::vector< int >::value_type >(val3);
- arg3 = &temp3;
- result = (arg1)->insert(arg2,(std::vector< int >::value_type const &)*arg3);
- vresult = SWIG_NewPointerObj(swig::make_nonconst_iterator(static_cast< const std::vector< int >::iterator & >(result),
- self),
- swig::Iterator::descriptor(),SWIG_POINTER_OWN);
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_IntVector_insert__SWIG_2(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- std::vector< int >::iterator arg2 ;
- std::vector< int >::size_type arg3 ;
- std::vector< int >::value_type *arg4 = 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- swig::Iterator *iter2 = 0 ;
- int res2 ;
- size_t val3 ;
- int ecode3 = 0 ;
- std::vector< int >::value_type temp4 ;
- int val4 ;
- int ecode4 = 0 ;
-
- if ((argc < 3) || (argc > 3)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 3)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","insert", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- res2 = SWIG_ConvertPtr(argv[0], SWIG_as_voidptrptr(&iter2), swig::Iterator::descriptor(), 0);
- if (!SWIG_IsOK(res2) || !iter2) {
- SWIG_exception_fail(SWIG_ArgError(SWIG_TypeError), Ruby_Format_TypeError( "", "std::vector< int >::iterator","insert", 2, argv[0] ));
- } else {
- swig::Iterator_T<std::vector< int >::iterator > *iter_t = dynamic_cast<swig::Iterator_T<std::vector< int >::iterator > *>(iter2);
- if (iter_t) {
- arg2 = iter_t->get_current();
- } else {
- SWIG_exception_fail(SWIG_ArgError(SWIG_TypeError), Ruby_Format_TypeError( "", "std::vector< int >::iterator","insert", 2, argv[0] ));
- }
- }
- ecode3 = SWIG_AsVal_size_t(argv[1], &val3);
- if (!SWIG_IsOK(ecode3)) {
- SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "std::vector< int >::size_type","insert", 3, argv[1] ));
- }
- arg3 = static_cast< std::vector< int >::size_type >(val3);
- ecode4 = SWIG_AsVal_int(argv[2], &val4);
- if (!SWIG_IsOK(ecode4)) {
- SWIG_exception_fail(SWIG_ArgError(ecode4), Ruby_Format_TypeError( "", "std::vector< int >::value_type","insert", 4, argv[2] ));
- }
- temp4 = static_cast< std::vector< int >::value_type >(val4);
- arg4 = &temp4;
- (arg1)->insert(arg2,arg3,(std::vector< int >::value_type const &)*arg4);
- return Qnil;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE _wrap_IntVector_insert(int nargs, VALUE *args, VALUE self) {
- int argc;
- VALUE argv[5];
- int ii;
-
- argc = nargs + 1;
- argv[0] = self;
- if (argc > 5) SWIG_fail;
- for (ii = 1; (ii < argc); ++ii) {
- argv[ii] = args[ii-1];
- }
- if (argc == 3) {
- int _v;
- int res = swig::asptr(argv[0], (std::vector<int,std::allocator< int > >**)(0));
- _v = SWIG_CheckState(res);
- if (_v) {
- swig::ConstIterator *iter = 0;
- int res = SWIG_ConvertPtr(argv[1], SWIG_as_voidptrptr(&iter),
- swig::Iterator::descriptor(), 0);
- _v = (SWIG_IsOK(res) && iter && (dynamic_cast<swig::Iterator_T<std::vector< int >::iterator > *>(iter) != 0));
- if (_v) {
- {
- int res = SWIG_AsVal_int(argv[2], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- return _wrap_IntVector_insert__SWIG_1(nargs, args, self);
- }
- }
- }
- }
- if (argc == 3) {
- int _v;
- int res = swig::asptr(argv[0], (std::vector<int,std::allocator< int > >**)(0));
- _v = SWIG_CheckState(res);
- if (_v) {
- {
- int res = SWIG_AsVal_ptrdiff_t(argv[1], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- {
- int res = SWIG_AsVal_int(argv[2], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- if (argc <= 3) {
- return _wrap_IntVector_insert__SWIG_0(nargs, args, self);
- }
- return _wrap_IntVector_insert__SWIG_0(nargs, args, self);
- }
- }
- }
- }
- if (argc == 4) {
- int _v;
- int res = swig::asptr(argv[0], (std::vector<int,std::allocator< int > >**)(0));
- _v = SWIG_CheckState(res);
- if (_v) {
- swig::ConstIterator *iter = 0;
- int res = SWIG_ConvertPtr(argv[1], SWIG_as_voidptrptr(&iter),
- swig::Iterator::descriptor(), 0);
- _v = (SWIG_IsOK(res) && iter && (dynamic_cast<swig::Iterator_T<std::vector< int >::iterator > *>(iter) != 0));
- if (_v) {
- {
- int res = SWIG_AsVal_size_t(argv[2], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- {
- int res = SWIG_AsVal_int(argv[3], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- return _wrap_IntVector_insert__SWIG_2(nargs, args, self);
- }
- }
- }
- }
- }
-
- fail:
- Ruby_Format_OverloadedError( argc, 5, "insert",
- " void insert(std::vector< int >::difference_type pos, int argc, VALUE *argv, ...)\n"
- " void insert(std::vector< int >::iterator pos, std::vector< int >::value_type const &x)\n"
- " void insert(std::vector< int >::iterator pos, std::vector< int >::size_type n, std::vector< int >::value_type const &x)\n");
-
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.reserve
- call-seq:
- reserve(n)
- Reserve memory in the IntVector for a number of elements.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_reserve(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- std::vector< int >::size_type arg2 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- size_t val2 ;
- int ecode2 = 0 ;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","reserve", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- ecode2 = SWIG_AsVal_size_t(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "std::vector< int >::size_type","reserve", 2, argv[0] ));
- }
- arg2 = static_cast< std::vector< int >::size_type >(val2);
- (arg1)->reserve(arg2);
- return Qnil;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.capacity
- call-seq:
- capacity -> size_type
- Reserved capacity of the IntVector.
- */
- SWIGINTERN VALUE
- _wrap_IntVector_capacity(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- std::vector< int >::size_type result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > const *","capacity", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- result = ((std::vector< int > const *)arg1)->capacity();
- vresult = SWIG_From_size_t(static_cast< size_t >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_IntVector_map_bang(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- std::vector< int,std::allocator< int > > *result = 0 ;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","map_bang", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- result = (std::vector< int,std::allocator< int > > *)std_vector_Sl_int_Sg__map_bang(arg1);
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- /*
- Document-method: Uhferret_lib::IntVector.__delete__
- call-seq:
- __delete__(val) -> VALUE
- Delete a matching element.
- */
- SWIGINTERN VALUE
- _wrap_IntVector___delete__(int argc, VALUE *argv, VALUE self) {
- std::vector< int > *arg1 = (std::vector< int > *) 0 ;
- int *arg2 = 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- int temp2 ;
- int val2 ;
- int ecode2 = 0 ;
- VALUE result;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "std::vector< int > *","__delete__", 1, self ));
- }
- arg1 = reinterpret_cast< std::vector< int > * >(argp1);
- ecode2 = SWIG_AsVal_int(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "int","__delete__", 2, argv[0] ));
- }
- temp2 = static_cast< int >(val2);
- arg2 = &temp2;
- result = (VALUE)std_vector_Sl_int_Sg____delete__(arg1,(int const &)*arg2);
- vresult = result;
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN void
- free_std_vector_Sl_int_Sg_(std::vector< int > *arg1) {
- delete arg1;
- }
- swig_class SwigClassDocument;
- SWIGINTERN VALUE
- _wrap_new_Document__SWIG_0(int argc, VALUE *argv, VALUE self) {
- std::string arg1 ;
- Document::DocumentType arg2 ;
- int arg3 ;
- int val2 ;
- int ecode2 = 0 ;
- int val3 ;
- int ecode3 = 0 ;
- Document *result = 0 ;
-
- if ((argc < 3) || (argc > 3)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 3)",argc); SWIG_fail;
- }
- {
- std::string *ptr = (std::string *)0;
- int res = SWIG_AsPtr_std_string(argv[0], &ptr);
- if (!SWIG_IsOK(res) || !ptr) {
- SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), Ruby_Format_TypeError( "", "std::string","Document", 1, argv[0] ));
- }
- arg1 = *ptr;
- if (SWIG_IsNewObj(res)) delete ptr;
- }
- ecode2 = SWIG_AsVal_int(argv[1], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "Document::DocumentType","Document", 2, argv[1] ));
- }
- arg2 = static_cast< Document::DocumentType >(val2);
- ecode3 = SWIG_AsVal_int(argv[2], &val3);
- if (!SWIG_IsOK(ecode3)) {
- SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "int","Document", 3, argv[2] ));
- }
- arg3 = static_cast< int >(val3);
- result = (Document *)new Document(arg1,arg2,arg3);
- DATA_PTR(self) = result;
- return self;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_new_Document__SWIG_1(int argc, VALUE *argv, VALUE self) {
- std::string arg1 ;
- Document::DocumentType arg2 ;
- int val2 ;
- int ecode2 = 0 ;
- Document *result = 0 ;
-
- if ((argc < 2) || (argc > 2)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
- }
- {
- std::string *ptr = (std::string *)0;
- int res = SWIG_AsPtr_std_string(argv[0], &ptr);
- if (!SWIG_IsOK(res) || !ptr) {
- SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), Ruby_Format_TypeError( "", "std::string","Document", 1, argv[0] ));
- }
- arg1 = *ptr;
- if (SWIG_IsNewObj(res)) delete ptr;
- }
- ecode2 = SWIG_AsVal_int(argv[1], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "Document::DocumentType","Document", 2, argv[1] ));
- }
- arg2 = static_cast< Document::DocumentType >(val2);
- result = (Document *)new Document(arg1,arg2);
- DATA_PTR(self) = result;
- return self;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_new_Document__SWIG_2(int argc, VALUE *argv, VALUE self) {
- std::string arg1 ;
- Document *result = 0 ;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- {
- std::string *ptr = (std::string *)0;
- int res = SWIG_AsPtr_std_string(argv[0], &ptr);
- if (!SWIG_IsOK(res) || !ptr) {
- SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), Ruby_Format_TypeError( "", "std::string","Document", 1, argv[0] ));
- }
- arg1 = *ptr;
- if (SWIG_IsNewObj(res)) delete ptr;
- }
- result = (Document *)new Document(arg1);
- DATA_PTR(self) = result;
- return self;
- fail:
- return Qnil;
- }
- #ifdef HAVE_RB_DEFINE_ALLOC_FUNC
- SWIGINTERN VALUE
- _wrap_Document_allocate(VALUE self) {
- #else
- SWIGINTERN VALUE
- _wrap_Document_allocate(int argc, VALUE *argv, VALUE self) {
- #endif
-
-
- VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_Document);
- #ifndef HAVE_RB_DEFINE_ALLOC_FUNC
- rb_obj_call_init(vresult, argc, argv);
- #endif
- return vresult;
- }
-
- SWIGINTERN VALUE
- _wrap_new_Document__SWIG_3(int argc, VALUE *argv, VALUE self) {
- Document *arg1 = (Document *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- Document *result = 0 ;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(argv[0], &argp1,SWIGTYPE_p_Document, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "Document *","Document", 1, argv[0] ));
- }
- arg1 = reinterpret_cast< Document * >(argp1);
- result = (Document *)new Document(arg1);
- DATA_PTR(self) = result;
- return self;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE _wrap_new_Document(int nargs, VALUE *args, VALUE self) {
- int argc;
- VALUE argv[3];
- int ii;
-
- argc = nargs;
- if (argc > 3) SWIG_fail;
- for (ii = 0; (ii < argc); ++ii) {
- argv[ii] = args[ii];
- }
- if (argc == 1) {
- int _v;
- void *vptr = 0;
- int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_Document, 0);
- _v = SWIG_CheckState(res);
- if (_v) {
- return _wrap_new_Document__SWIG_3(nargs, args, self);
- }
- }
- if (argc == 1) {
- int _v;
- int res = SWIG_AsPtr_std_string(argv[0], (std::string**)(0));
- _v = SWIG_CheckState(res);
- if (_v) {
- return _wrap_new_Document__SWIG_2(nargs, args, self);
- }
- }
- if (argc == 2) {
- int _v;
- int res = SWIG_AsPtr_std_string(argv[0], (std::string**)(0));
- _v = SWIG_CheckState(res);
- if (_v) {
- {
- int res = SWIG_AsVal_int(argv[1], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- return _wrap_new_Document__SWIG_1(nargs, args, self);
- }
- }
- }
- if (argc == 3) {
- int _v;
- int res = SWIG_AsPtr_std_string(argv[0], (std::string**)(0));
- _v = SWIG_CheckState(res);
- if (_v) {
- {
- int res = SWIG_AsVal_int(argv[1], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- {
- int res = SWIG_AsVal_int(argv[2], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- return _wrap_new_Document__SWIG_0(nargs, args, self);
- }
- }
- }
- }
-
- fail:
- Ruby_Format_OverloadedError( argc, 3, "Document.new",
- " Document.new(std::string pathname, Document::DocumentType type, int id)\n"
- " Document.new(std::string pathname, Document::DocumentType type)\n"
- " Document.new(std::string pathname)\n"
- " Document.new(Document *document)\n");
-
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_Document_SetType(int argc, VALUE *argv, VALUE self) {
- Document *arg1 = (Document *) 0 ;
- Document::DocumentType arg2 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- int val2 ;
- int ecode2 = 0 ;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_Document, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "Document *","SetType", 1, self ));
- }
- arg1 = reinterpret_cast< Document * >(argp1);
- ecode2 = SWIG_AsVal_int(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "Document::DocumentType","SetType", 2, argv[0] ));
- }
- arg2 = static_cast< Document::DocumentType >(val2);
- (arg1)->SetType(arg2);
- return Qnil;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_Document_IsTextType(int argc, VALUE *argv, VALUE self) {
- Document *arg1 = (Document *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- bool result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_Document, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "Document const *","IsTextType", 1, self ));
- }
- arg1 = reinterpret_cast< Document * >(argp1);
- result = (bool)((Document const *)arg1)->IsTextType();
- vresult = SWIG_From_bool(static_cast< bool >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_Document_GetPathname(int argc, VALUE *argv, VALUE self) {
- Document *arg1 = (Document *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- std::string result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_Document, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "Document const *","GetPathname", 1, self ));
- }
- arg1 = reinterpret_cast< Document * >(argp1);
- result = ((Document const *)arg1)->GetPathname();
- vresult = SWIG_From_std_string(static_cast< std::string >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_Document_SetPathname(int argc, VALUE *argv, VALUE self) {
- Document *arg1 = (Document *) 0 ;
- std::string arg2 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_Document, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "Document *","SetPathname", 1, self ));
- }
- arg1 = reinterpret_cast< Document * >(argp1);
- {
- std::string *ptr = (std::string *)0;
- int res = SWIG_AsPtr_std_string(argv[0], &ptr);
- if (!SWIG_IsOK(res) || !ptr) {
- SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), Ruby_Format_TypeError( "", "std::string","SetPathname", 2, argv[0] ));
- }
- arg2 = *ptr;
- if (SWIG_IsNewObj(res)) delete ptr;
- }
- (arg1)->SetPathname(arg2);
- return Qnil;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_Document_GetGroupId(int argc, VALUE *argv, VALUE self) {
- Document *arg1 = (Document *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- int result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_Document, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "Document const *","GetGroupId", 1, self ));
- }
- arg1 = reinterpret_cast< Document * >(argp1);
- result = (int)((Document const *)arg1)->GetGroupId();
- vresult = SWIG_From_int(static_cast< int >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_Document_SetGroupId(int argc, VALUE *argv, VALUE self) {
- Document *arg1 = (Document *) 0 ;
- int arg2 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- int val2 ;
- int ecode2 = 0 ;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_Document, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "Document *","SetGroupId", 1, self ));
- }
- arg1 = reinterpret_cast< Document * >(argp1);
- ecode2 = SWIG_AsVal_int(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "int","SetGroupId", 2, argv[0] ));
- }
- arg2 = static_cast< int >(val2);
- (arg1)->SetGroupId(arg2);
- return Qnil;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_Document_GetTrigramCount(int argc, VALUE *argv, VALUE self) {
- Document *arg1 = (Document *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- int result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_Document, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "Document const *","GetTrigramCount", 1, self ));
- }
- arg1 = reinterpret_cast< Document * >(argp1);
- result = (int)((Document const *)arg1)->GetTrigramCount();
- vresult = SWIG_From_int(static_cast< int >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_Document_SetTrigramCount(int argc, VALUE *argv, VALUE self) {
- Document *arg1 = (Document *) 0 ;
- int arg2 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- int val2 ;
- int ecode2 = 0 ;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_Document, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "Document *","SetTrigramCount", 1, self ));
- }
- arg1 = reinterpret_cast< Document * >(argp1);
- ecode2 = SWIG_AsVal_int(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "int","SetTrigramCount", 2, argv[0] ));
- }
- arg2 = static_cast< int >(val2);
- (arg1)->SetTrigramCount(arg2);
- return Qnil;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_Document_ResetTrigramCount(int argc, VALUE *argv, VALUE self) {
- Document *arg1 = (Document *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_Document, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "Document *","ResetTrigramCount", 1, self ));
- }
- arg1 = reinterpret_cast< Document * >(argp1);
- (arg1)->ResetTrigramCount();
- return Qnil;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_Document_IncrementTrigramCount(int argc, VALUE *argv, VALUE self) {
- Document *arg1 = (Document *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_Document, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "Document *","IncrementTrigramCount", 1, self ));
- }
- arg1 = reinterpret_cast< Document * >(argp1);
- (arg1)->IncrementTrigramCount();
- return Qnil;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_Document_StartInput__SWIG_0(int argc, VALUE *argv, VALUE self) {
- Document *arg1 = (Document *) 0 ;
- TokenSet *arg2 = 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- void *argp2 = 0 ;
- int res2 = 0 ;
- bool result;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_Document, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "Document *","StartInput", 1, self ));
- }
- arg1 = reinterpret_cast< Document * >(argp1);
- res2 = SWIG_ConvertPtr(argv[0], &argp2, SWIGTYPE_p_TokenSet, 0 );
- if (!SWIG_IsOK(res2)) {
- SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( "", "TokenSet &","StartInput", 2, argv[0] ));
- }
- if (!argp2) {
- SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "TokenSet &","StartInput", 2, argv[0]));
- }
- arg2 = reinterpret_cast< TokenSet * >(argp2);
- result = (bool)(arg1)->StartInput(*arg2);
- vresult = SWIG_From_bool(static_cast< bool >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_Document_StartInput__SWIG_1(int argc, VALUE *argv, VALUE self) {
- Document *arg1 = (Document *) 0 ;
- std::istream *arg2 = 0 ;
- TokenSet *arg3 = 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- void *argp2 = 0 ;
- int res2 = 0 ;
- void *argp3 = 0 ;
- int res3 = 0 ;
- bool result;
- VALUE vresult = Qnil;
-
- if ((argc < 2) || (argc > 2)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_Document, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "Document *","StartInput", 1, self ));
- }
- arg1 = reinterpret_cast< Document * >(argp1);
- res2 = SWIG_ConvertPtr(argv[0], &argp2, SWIGTYPE_p_std__istream, 0 );
- if (!SWIG_IsOK(res2)) {
- SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( "", "std::istream &","StartInput", 2, argv[0] ));
- }
- if (!argp2) {
- SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "std::istream &","StartInput", 2, argv[0]));
- }
- arg2 = reinterpret_cast< std::istream * >(argp2);
- res3 = SWIG_ConvertPtr(argv[1], &argp3, SWIGTYPE_p_TokenSet, 0 );
- if (!SWIG_IsOK(res3)) {
- SWIG_exception_fail(SWIG_ArgError(res3), Ruby_Format_TypeError( "", "TokenSet &","StartInput", 3, argv[1] ));
- }
- if (!argp3) {
- SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "TokenSet &","StartInput", 3, argv[1]));
- }
- arg3 = reinterpret_cast< TokenSet * >(argp3);
- result = (bool)(arg1)->StartInput(*arg2,*arg3);
- vresult = SWIG_From_bool(static_cast< bool >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE _wrap_Document_StartInput(int nargs, VALUE *args, VALUE self) {
- int argc;
- VALUE argv[4];
- int ii;
-
- argc = nargs + 1;
- argv[0] = self;
- if (argc > 4) SWIG_fail;
- for (ii = 1; (ii < argc); ++ii) {
- argv[ii] = args[ii-1];
- }
- if (argc == 2) {
- int _v;
- void *vptr = 0;
- int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_Document, 0);
- _v = SWIG_CheckState(res);
- if (_v) {
- void *vptr = 0;
- int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_TokenSet, 0);
- _v = SWIG_CheckState(res);
- if (_v) {
- return _wrap_Document_StartInput__SWIG_0(nargs, args, self);
- }
- }
- }
- if (argc == 3) {
- int _v;
- void *vptr = 0;
- int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_Document, 0);
- _v = SWIG_CheckState(res);
- if (_v) {
- void *vptr = 0;
- int res = SWIG_ConvertPtr(argv[1], &vptr, SWIGTYPE_p_std__istream, 0);
- _v = SWIG_CheckState(res);
- if (_v) {
- void *vptr = 0;
- int res = SWIG_ConvertPtr(argv[2], &vptr, SWIGTYPE_p_TokenSet, 0);
- _v = SWIG_CheckState(res);
- if (_v) {
- return _wrap_Document_StartInput__SWIG_1(nargs, args, self);
- }
- }
- }
- }
-
- fail:
- Ruby_Format_OverloadedError( argc, 4, "Document.StartInput",
- " bool Document.StartInput(TokenSet &tokenset)\n"
- " bool Document.StartInput(std::istream &input, TokenSet &tokenset)\n");
-
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_Document_ReadTrigram(int argc, VALUE *argv, VALUE self) {
- Document *arg1 = (Document *) 0 ;
- TokenSet *arg2 = 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- void *argp2 = 0 ;
- int res2 = 0 ;
- bool result;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_Document, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "Document *","ReadTrigram", 1, self ));
- }
- arg1 = reinterpret_cast< Document * >(argp1);
- res2 = SWIG_ConvertPtr(argv[0], &argp2, SWIGTYPE_p_TokenSet, 0 );
- if (!SWIG_IsOK(res2)) {
- SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( "", "TokenSet &","ReadTrigram", 2, argv[0] ));
- }
- if (!argp2) {
- SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "TokenSet &","ReadTrigram", 2, argv[0]));
- }
- arg2 = reinterpret_cast< TokenSet * >(argp2);
- result = (bool)(arg1)->ReadTrigram(*arg2);
- vresult = SWIG_From_bool(static_cast< bool >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_Document_GetToken(int argc, VALUE *argv, VALUE self) {
- Document *arg1 = (Document *) 0 ;
- int arg2 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- int val2 ;
- int ecode2 = 0 ;
- std::size_t result;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_Document, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "Document const *","GetToken", 1, self ));
- }
- arg1 = reinterpret_cast< Document * >(argp1);
- ecode2 = SWIG_AsVal_int(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "int","GetToken", 2, argv[0] ));
- }
- arg2 = static_cast< int >(val2);
- result = ((Document const *)arg1)->GetToken(arg2);
- vresult = SWIG_From_size_t(static_cast< size_t >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_Document_GetTrigramStart__SWIG_0(int argc, VALUE *argv, VALUE self) {
- Document *arg1 = (Document *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- std::size_t result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_Document, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "Document const *","GetTrigramStart", 1, self ));
- }
- arg1 = reinterpret_cast< Document * >(argp1);
- result = ((Document const *)arg1)->GetTrigramStart();
- vresult = SWIG_From_size_t(static_cast< size_t >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_Document_GetTrigramStart__SWIG_1(int argc, VALUE *argv, VALUE self) {
- Document *arg1 = (Document *) 0 ;
- int arg2 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- int val2 ;
- int ecode2 = 0 ;
- std::size_t result;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_Document, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "Document const *","GetTrigramStart", 1, self ));
- }
- arg1 = reinterpret_cast< Document * >(argp1);
- ecode2 = SWIG_AsVal_int(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "int","GetTrigramStart", 2, argv[0] ));
- }
- arg2 = static_cast< int >(val2);
- result = ((Document const *)arg1)->GetTrigramStart(arg2);
- vresult = SWIG_From_size_t(static_cast< size_t >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE _wrap_Document_GetTrigramStart(int nargs, VALUE *args, VALUE self) {
- int argc;
- VALUE argv[3];
- int ii;
-
- argc = nargs + 1;
- argv[0] = self;
- if (argc > 3) SWIG_fail;
- for (ii = 1; (ii < argc); ++ii) {
- argv[ii] = args[ii-1];
- }
- if (argc == 1) {
- int _v;
- void *vptr = 0;
- int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_Document, 0);
- _v = SWIG_CheckState(res);
- if (_v) {
- return _wrap_Document_GetTrigramStart__SWIG_0(nargs, args, self);
- }
- }
- if (argc == 2) {
- int _v;
- void *vptr = 0;
- int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_Document, 0);
- _v = SWIG_CheckState(res);
- if (_v) {
- {
- int res = SWIG_AsVal_int(argv[1], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- return _wrap_Document_GetTrigramStart__SWIG_1(nargs, args, self);
- }
- }
- }
-
- fail:
- Ruby_Format_OverloadedError( argc, 3, "Document.GetTrigramStart",
- " std::size_t Document.GetTrigramStart()\n"
- " std::size_t Document.GetTrigramStart(int i)\n");
-
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_Document_GetTrigramEnd(int argc, VALUE *argv, VALUE self) {
- Document *arg1 = (Document *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- std::size_t result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_Document, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "Document const *","GetTrigramEnd", 1, self ));
- }
- arg1 = reinterpret_cast< Document * >(argp1);
- result = ((Document const *)arg1)->GetTrigramEnd();
- vresult = SWIG_From_size_t(static_cast< size_t >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_Document_CloseInput(int argc, VALUE *argv, VALUE self) {
- Document *arg1 = (Document *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_Document, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "Document *","CloseInput", 1, self ));
- }
- arg1 = reinterpret_cast< Document * >(argp1);
- (arg1)->CloseInput();
- return Qnil;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_Document_IsCodeType(int argc, VALUE *argv, VALUE self) {
- Document *arg1 = (Document *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- bool result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_Document, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "Document const *","IsCodeType", 1, self ));
- }
- arg1 = reinterpret_cast< Document * >(argp1);
- result = (bool)((Document const *)arg1)->IsCodeType();
- vresult = SWIG_From_bool(static_cast< bool >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_Document_IsTxtType(int argc, VALUE *argv, VALUE self) {
- Document *arg1 = (Document *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- bool result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_Document, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "Document const *","IsTxtType", 1, self ));
- }
- arg1 = reinterpret_cast< Document * >(argp1);
- result = (bool)((Document const *)arg1)->IsTxtType();
- vresult = SWIG_From_bool(static_cast< bool >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_Document_IsUnknownType(int argc, VALUE *argv, VALUE self) {
- Document *arg1 = (Document *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- bool result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_Document, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "Document const *","IsUnknownType", 1, self ));
- }
- arg1 = reinterpret_cast< Document * >(argp1);
- result = (bool)((Document const *)arg1)->IsUnknownType();
- vresult = SWIG_From_bool(static_cast< bool >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN void
- free_Document(Document *arg1) {
- delete arg1;
- }
- swig_class SwigClassDocumentList;
- #ifdef HAVE_RB_DEFINE_ALLOC_FUNC
- SWIGINTERN VALUE
- _wrap_DocumentList_allocate(VALUE self) {
- #else
- SWIGINTERN VALUE
- _wrap_DocumentList_allocate(int argc, VALUE *argv, VALUE self) {
- #endif
-
-
- VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_DocumentList);
- #ifndef HAVE_RB_DEFINE_ALLOC_FUNC
- rb_obj_call_init(vresult, argc, argv);
- #endif
- return vresult;
- }
-
- SWIGINTERN VALUE
- _wrap_new_DocumentList(int argc, VALUE *argv, VALUE self) {
- DocumentList *result = 0 ;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- result = (DocumentList *)new DocumentList();
- DATA_PTR(self) = result;
- return self;
- fail:
- return Qnil;
- }
- SWIGINTERN void
- free_DocumentList(DocumentList *arg1) {
- delete arg1;
- }
- SWIGINTERN VALUE
- _wrap_DocumentList_AddDocument__SWIG_0(int argc, VALUE *argv, VALUE self) {
- DocumentList *arg1 = (DocumentList *) 0 ;
- std::string arg2 ;
- Document::DocumentType arg3 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- int val3 ;
- int ecode3 = 0 ;
-
- if ((argc < 2) || (argc > 2)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_DocumentList, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "DocumentList *","AddDocument", 1, self ));
- }
- arg1 = reinterpret_cast< DocumentList * >(argp1);
- {
- std::string *ptr = (std::string *)0;
- int res = SWIG_AsPtr_std_string(argv[0], &ptr);
- if (!SWIG_IsOK(res) || !ptr) {
- SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), Ruby_Format_TypeError( "", "std::string","AddDocument", 2, argv[0] ));
- }
- arg2 = *ptr;
- if (SWIG_IsNewObj(res)) delete ptr;
- }
- ecode3 = SWIG_AsVal_int(argv[1], &val3);
- if (!SWIG_IsOK(ecode3)) {
- SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "Document::DocumentType","AddDocument", 3, argv[1] ));
- }
- arg3 = static_cast< Document::DocumentType >(val3);
- (arg1)->AddDocument(arg2,arg3);
- return Qnil;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_DocumentList_AddDocument__SWIG_1(int argc, VALUE *argv, VALUE self) {
- DocumentList *arg1 = (DocumentList *) 0 ;
- std::string arg2 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_DocumentList, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "DocumentList *","AddDocument", 1, self ));
- }
- arg1 = reinterpret_cast< DocumentList * >(argp1);
- {
- std::string *ptr = (std::string *)0;
- int res = SWIG_AsPtr_std_string(argv[0], &ptr);
- if (!SWIG_IsOK(res) || !ptr) {
- SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), Ruby_Format_TypeError( "", "std::string","AddDocument", 2, argv[0] ));
- }
- arg2 = *ptr;
- if (SWIG_IsNewObj(res)) delete ptr;
- }
- (arg1)->AddDocument(arg2);
- return Qnil;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_DocumentList_AddDocument__SWIG_2(int argc, VALUE *argv, VALUE self) {
- DocumentList *arg1 = (DocumentList *) 0 ;
- std::string arg2 ;
- Document::DocumentType arg3 ;
- int arg4 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- int val3 ;
- int ecode3 = 0 ;
- int val4 ;
- int ecode4 = 0 ;
-
- if ((argc < 3) || (argc > 3)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 3)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_DocumentList, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "DocumentList *","AddDocument", 1, self ));
- }
- arg1 = reinterpret_cast< DocumentList * >(argp1);
- {
- std::string *ptr = (std::string *)0;
- int res = SWIG_AsPtr_std_string(argv[0], &ptr);
- if (!SWIG_IsOK(res) || !ptr) {
- SWIG_exception_fail(SWIG_ArgError((ptr ? res : SWIG_TypeError)), Ruby_Format_TypeError( "", "std::string","AddDocument", 2, argv[0] ));
- }
- arg2 = *ptr;
- if (SWIG_IsNewObj(res)) delete ptr;
- }
- ecode3 = SWIG_AsVal_int(argv[1], &val3);
- if (!SWIG_IsOK(ecode3)) {
- SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "Document::DocumentType","AddDocument", 3, argv[1] ));
- }
- arg3 = static_cast< Document::DocumentType >(val3);
- ecode4 = SWIG_AsVal_int(argv[2], &val4);
- if (!SWIG_IsOK(ecode4)) {
- SWIG_exception_fail(SWIG_ArgError(ecode4), Ruby_Format_TypeError( "", "int","AddDocument", 4, argv[2] ));
- }
- arg4 = static_cast< int >(val4);
- (arg1)->AddDocument(arg2,arg3,arg4);
- return Qnil;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE _wrap_DocumentList_AddDocument(int nargs, VALUE *args, VALUE self) {
- int argc;
- VALUE argv[5];
- int ii;
-
- argc = nargs + 1;
- argv[0] = self;
- if (argc > 5) SWIG_fail;
- for (ii = 1; (ii < argc); ++ii) {
- argv[ii] = args[ii-1];
- }
- if (argc == 2) {
- int _v;
- void *vptr = 0;
- int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_DocumentList, 0);
- _v = SWIG_CheckState(res);
- if (_v) {
- int res = SWIG_AsPtr_std_string(argv[1], (std::string**)(0));
- _v = SWIG_CheckState(res);
- if (_v) {
- return _wrap_DocumentList_AddDocument__SWIG_1(nargs, args, self);
- }
- }
- }
- if (argc == 3) {
- int _v;
- void *vptr = 0;
- int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_DocumentList, 0);
- _v = SWIG_CheckState(res);
- if (_v) {
- int res = SWIG_AsPtr_std_string(argv[1], (std::string**)(0));
- _v = SWIG_CheckState(res);
- if (_v) {
- {
- int res = SWIG_AsVal_int(argv[2], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- return _wrap_DocumentList_AddDocument__SWIG_0(nargs, args, self);
- }
- }
- }
- }
- if (argc == 4) {
- int _v;
- void *vptr = 0;
- int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_DocumentList, 0);
- _v = SWIG_CheckState(res);
- if (_v) {
- int res = SWIG_AsPtr_std_string(argv[1], (std::string**)(0));
- _v = SWIG_CheckState(res);
- if (_v) {
- {
- int res = SWIG_AsVal_int(argv[2], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- {
- int res = SWIG_AsVal_int(argv[3], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- return _wrap_DocumentList_AddDocument__SWIG_2(nargs, args, self);
- }
- }
- }
- }
- }
-
- fail:
- Ruby_Format_OverloadedError( argc, 5, "DocumentList.AddDocument",
- " void DocumentList.AddDocument(std::string pathname, Document::DocumentType type)\n"
- " void DocumentList.AddDocument(std::string pathname)\n"
- " void DocumentList.AddDocument(std::string pathname, Document::DocumentType type, int id)\n");
-
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_DocumentList_getDocument(int argc, VALUE *argv, VALUE self) {
- DocumentList *arg1 = (DocumentList *) 0 ;
- std::size_t arg2 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- size_t val2 ;
- int ecode2 = 0 ;
- Document *result = 0 ;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_DocumentList, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "DocumentList const *","getDocument", 1, self ));
- }
- arg1 = reinterpret_cast< DocumentList * >(argp1);
- ecode2 = SWIG_AsVal_size_t(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "std::size_t","getDocument", 2, argv[0] ));
- }
- arg2 = static_cast< std::size_t >(val2);
- result = (Document *)((DocumentList const *)arg1)->getDocument(arg2);
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_Document, 0 | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_DocumentList_RemoveDocument(int argc, VALUE *argv, VALUE self) {
- DocumentList *arg1 = (DocumentList *) 0 ;
- Document *arg2 = (Document *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- void *argp2 = 0 ;
- int res2 = 0 ;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_DocumentList, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "DocumentList *","RemoveDocument", 1, self ));
- }
- arg1 = reinterpret_cast< DocumentList * >(argp1);
- res2 = SWIG_ConvertPtr(argv[0], &argp2,SWIGTYPE_p_Document, 0 | 0 );
- if (!SWIG_IsOK(res2)) {
- SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( "", "Document *","RemoveDocument", 2, argv[0] ));
- }
- arg2 = reinterpret_cast< Document * >(argp2);
- (arg1)->RemoveDocument(arg2);
- return Qnil;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_DocumentList_GetTokenSet(int argc, VALUE *argv, VALUE self) {
- DocumentList *arg1 = (DocumentList *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- TokenSet *result = 0 ;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_DocumentList, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "DocumentList *","GetTokenSet", 1, self ));
- }
- arg1 = reinterpret_cast< DocumentList * >(argp1);
- result = (TokenSet *) &(arg1)->GetTokenSet();
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_TokenSet, 0 | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_DocumentList_GetTupleSet(int argc, VALUE *argv, VALUE self) {
- DocumentList *arg1 = (DocumentList *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- TupleSet *result = 0 ;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_DocumentList, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "DocumentList *","GetTupleSet", 1, self ));
- }
- arg1 = reinterpret_cast< DocumentList * >(argp1);
- result = (TupleSet *) &(arg1)->GetTupleSet();
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_TupleSet, 0 | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_DocumentList_Clear(int argc, VALUE *argv, VALUE self) {
- DocumentList *arg1 = (DocumentList *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_DocumentList, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "DocumentList *","Clear", 1, self ));
- }
- arg1 = reinterpret_cast< DocumentList * >(argp1);
- (arg1)->Clear();
- return Qnil;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_DocumentList_GetNewGroupId(int argc, VALUE *argv, VALUE self) {
- DocumentList *arg1 = (DocumentList *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- int result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_DocumentList, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "DocumentList *","GetNewGroupId", 1, self ));
- }
- arg1 = reinterpret_cast< DocumentList * >(argp1);
- result = (int)(arg1)->GetNewGroupId();
- vresult = SWIG_From_int(static_cast< int >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_DocumentList_ResetReading(int argc, VALUE *argv, VALUE self) {
- DocumentList *arg1 = (DocumentList *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_DocumentList, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "DocumentList *","ResetReading", 1, self ));
- }
- arg1 = reinterpret_cast< DocumentList * >(argp1);
- (arg1)->ResetReading();
- return Qnil;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_DocumentList_Size(int argc, VALUE *argv, VALUE self) {
- DocumentList *arg1 = (DocumentList *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- int result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_DocumentList, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "DocumentList const *","Size", 1, self ));
- }
- arg1 = reinterpret_cast< DocumentList * >(argp1);
- result = (int)((DocumentList const *)arg1)->Size();
- vresult = SWIG_From_int(static_cast< int >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_DocumentList_NumberOfPairs(int argc, VALUE *argv, VALUE self) {
- DocumentList *arg1 = (DocumentList *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- int result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_DocumentList, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "DocumentList const *","NumberOfPairs", 1, self ));
- }
- arg1 = reinterpret_cast< DocumentList * >(argp1);
- result = (int)((DocumentList const *)arg1)->NumberOfPairs();
- vresult = SWIG_From_int(static_cast< int >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_DocumentList_RunFerret__SWIG_0(int argc, VALUE *argv, VALUE self) {
- DocumentList *arg1 = (DocumentList *) 0 ;
- int arg2 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- int val2 ;
- int ecode2 = 0 ;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_DocumentList, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "DocumentList *","RunFerret", 1, self ));
- }
- arg1 = reinterpret_cast< DocumentList * >(argp1);
- ecode2 = SWIG_AsVal_int(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "int","RunFerret", 2, argv[0] ));
- }
- arg2 = static_cast< int >(val2);
- (arg1)->RunFerret(arg2);
- return Qnil;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_DocumentList_RunFerret__SWIG_1(int argc, VALUE *argv, VALUE self) {
- DocumentList *arg1 = (DocumentList *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_DocumentList, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "DocumentList *","RunFerret", 1, self ));
- }
- arg1 = reinterpret_cast< DocumentList * >(argp1);
- (arg1)->RunFerret();
- return Qnil;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE _wrap_DocumentList_RunFerret(int nargs, VALUE *args, VALUE self) {
- int argc;
- VALUE argv[3];
- int ii;
-
- argc = nargs + 1;
- argv[0] = self;
- if (argc > 3) SWIG_fail;
- for (ii = 1; (ii < argc); ++ii) {
- argv[ii] = args[ii-1];
- }
- if (argc == 1) {
- int _v;
- void *vptr = 0;
- int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_DocumentList, 0);
- _v = SWIG_CheckState(res);
- if (_v) {
- return _wrap_DocumentList_RunFerret__SWIG_1(nargs, args, self);
- }
- }
- if (argc == 2) {
- int _v;
- void *vptr = 0;
- int res = SWIG_ConvertPtr(argv[0], &vptr, SWIGTYPE_p_DocumentList, 0);
- _v = SWIG_CheckState(res);
- if (_v) {
- {
- int res = SWIG_AsVal_int(argv[1], NULL);
- _v = SWIG_CheckState(res);
- }
- if (_v) {
- return _wrap_DocumentList_RunFerret__SWIG_0(nargs, args, self);
- }
- }
- }
-
- fail:
- Ruby_Format_OverloadedError( argc, 3, "DocumentList.RunFerret",
- " void DocumentList.RunFerret(int first_document)\n"
- " void DocumentList.RunFerret()\n");
-
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_DocumentList_ReadDocument(int argc, VALUE *argv, VALUE self) {
- DocumentList *arg1 = (DocumentList *) 0 ;
- int arg2 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- int val2 ;
- int ecode2 = 0 ;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_DocumentList, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "DocumentList *","ReadDocument", 1, self ));
- }
- arg1 = reinterpret_cast< DocumentList * >(argp1);
- ecode2 = SWIG_AsVal_int(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "int","ReadDocument", 2, argv[0] ));
- }
- arg2 = static_cast< int >(val2);
- (arg1)->ReadDocument(arg2);
- return Qnil;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_DocumentList_ClearSimilarities(int argc, VALUE *argv, VALUE self) {
- DocumentList *arg1 = (DocumentList *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_DocumentList, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "DocumentList *","ClearSimilarities", 1, self ));
- }
- arg1 = reinterpret_cast< DocumentList * >(argp1);
- (arg1)->ClearSimilarities();
- return Qnil;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_DocumentList_ComputeSimilarities(int argc, VALUE *argv, VALUE self) {
- DocumentList *arg1 = (DocumentList *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_DocumentList, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "DocumentList *","ComputeSimilarities", 1, self ));
- }
- arg1 = reinterpret_cast< DocumentList * >(argp1);
- (arg1)->ComputeSimilarities();
- return Qnil;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_DocumentList_GetTotalTrigramCount(int argc, VALUE *argv, VALUE self) {
- DocumentList *arg1 = (DocumentList *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- int result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_DocumentList, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "DocumentList *","GetTotalTrigramCount", 1, self ));
- }
- arg1 = reinterpret_cast< DocumentList * >(argp1);
- result = (int)(arg1)->GetTotalTrigramCount();
- vresult = SWIG_From_int(static_cast< int >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_DocumentList_CountTrigrams(int argc, VALUE *argv, VALUE self) {
- DocumentList *arg1 = (DocumentList *) 0 ;
- int arg2 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- int val2 ;
- int ecode2 = 0 ;
- int result;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_DocumentList, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "DocumentList *","CountTrigrams", 1, self ));
- }
- arg1 = reinterpret_cast< DocumentList * >(argp1);
- ecode2 = SWIG_AsVal_int(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "int","CountTrigrams", 2, argv[0] ));
- }
- arg2 = static_cast< int >(val2);
- result = (int)(arg1)->CountTrigrams(arg2);
- vresult = SWIG_From_int(static_cast< int >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_DocumentList_CountMatches(int argc, VALUE *argv, VALUE self) {
- DocumentList *arg1 = (DocumentList *) 0 ;
- int arg2 ;
- int arg3 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- int val2 ;
- int ecode2 = 0 ;
- int val3 ;
- int ecode3 = 0 ;
- int result;
- VALUE vresult = Qnil;
-
- if ((argc < 2) || (argc > 2)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_DocumentList, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "DocumentList *","CountMatches", 1, self ));
- }
- arg1 = reinterpret_cast< DocumentList * >(argp1);
- ecode2 = SWIG_AsVal_int(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "int","CountMatches", 2, argv[0] ));
- }
- arg2 = static_cast< int >(val2);
- ecode3 = SWIG_AsVal_int(argv[1], &val3);
- if (!SWIG_IsOK(ecode3)) {
- SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "int","CountMatches", 3, argv[1] ));
- }
- arg3 = static_cast< int >(val3);
- result = (int)(arg1)->CountMatches(arg2,arg3);
- vresult = SWIG_From_int(static_cast< int >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_DocumentList_ComputeResemblance(int argc, VALUE *argv, VALUE self) {
- DocumentList *arg1 = (DocumentList *) 0 ;
- int arg2 ;
- int arg3 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- int val2 ;
- int ecode2 = 0 ;
- int val3 ;
- int ecode3 = 0 ;
- float result;
- VALUE vresult = Qnil;
-
- if ((argc < 2) || (argc > 2)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_DocumentList, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "DocumentList *","ComputeResemblance", 1, self ));
- }
- arg1 = reinterpret_cast< DocumentList * >(argp1);
- ecode2 = SWIG_AsVal_int(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "int","ComputeResemblance", 2, argv[0] ));
- }
- arg2 = static_cast< int >(val2);
- ecode3 = SWIG_AsVal_int(argv[1], &val3);
- if (!SWIG_IsOK(ecode3)) {
- SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "int","ComputeResemblance", 3, argv[1] ));
- }
- arg3 = static_cast< int >(val3);
- result = (float)(arg1)->ComputeResemblance(arg2,arg3);
- vresult = SWIG_From_float(static_cast< float >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_DocumentList_ComputeContainment(int argc, VALUE *argv, VALUE self) {
- DocumentList *arg1 = (DocumentList *) 0 ;
- int arg2 ;
- int arg3 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- int val2 ;
- int ecode2 = 0 ;
- int val3 ;
- int ecode3 = 0 ;
- float result;
- VALUE vresult = Qnil;
-
- if ((argc < 2) || (argc > 2)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_DocumentList, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "DocumentList *","ComputeContainment", 1, self ));
- }
- arg1 = reinterpret_cast< DocumentList * >(argp1);
- ecode2 = SWIG_AsVal_int(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "int","ComputeContainment", 2, argv[0] ));
- }
- arg2 = static_cast< int >(val2);
- ecode3 = SWIG_AsVal_int(argv[1], &val3);
- if (!SWIG_IsOK(ecode3)) {
- SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "int","ComputeContainment", 3, argv[1] ));
- }
- arg3 = static_cast< int >(val3);
- result = (float)(arg1)->ComputeContainment(arg2,arg3);
- vresult = SWIG_From_float(static_cast< float >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_DocumentList_IsMatchingTrigram(int argc, VALUE *argv, VALUE self) {
- DocumentList *arg1 = (DocumentList *) 0 ;
- std::size_t arg2 ;
- std::size_t arg3 ;
- std::size_t arg4 ;
- int arg5 ;
- int arg6 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- size_t val2 ;
- int ecode2 = 0 ;
- size_t val3 ;
- int ecode3 = 0 ;
- size_t val4 ;
- int ecode4 = 0 ;
- int val5 ;
- int ecode5 = 0 ;
- int val6 ;
- int ecode6 = 0 ;
- bool result;
- VALUE vresult = Qnil;
-
- if ((argc < 5) || (argc > 5)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 5)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_DocumentList, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "DocumentList *","IsMatchingTrigram", 1, self ));
- }
- arg1 = reinterpret_cast< DocumentList * >(argp1);
- ecode2 = SWIG_AsVal_size_t(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "std::size_t","IsMatchingTrigram", 2, argv[0] ));
- }
- arg2 = static_cast< std::size_t >(val2);
- ecode3 = SWIG_AsVal_size_t(argv[1], &val3);
- if (!SWIG_IsOK(ecode3)) {
- SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "std::size_t","IsMatchingTrigram", 3, argv[1] ));
- }
- arg3 = static_cast< std::size_t >(val3);
- ecode4 = SWIG_AsVal_size_t(argv[2], &val4);
- if (!SWIG_IsOK(ecode4)) {
- SWIG_exception_fail(SWIG_ArgError(ecode4), Ruby_Format_TypeError( "", "std::size_t","IsMatchingTrigram", 4, argv[2] ));
- }
- arg4 = static_cast< std::size_t >(val4);
- ecode5 = SWIG_AsVal_int(argv[3], &val5);
- if (!SWIG_IsOK(ecode5)) {
- SWIG_exception_fail(SWIG_ArgError(ecode5), Ruby_Format_TypeError( "", "int","IsMatchingTrigram", 5, argv[3] ));
- }
- arg5 = static_cast< int >(val5);
- ecode6 = SWIG_AsVal_int(argv[4], &val6);
- if (!SWIG_IsOK(ecode6)) {
- SWIG_exception_fail(SWIG_ArgError(ecode6), Ruby_Format_TypeError( "", "int","IsMatchingTrigram", 6, argv[4] ));
- }
- arg6 = static_cast< int >(val6);
- result = (bool)(arg1)->IsMatchingTrigram(arg2,arg3,arg4,arg5,arg6);
- vresult = SWIG_From_bool(static_cast< bool >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_DocumentList_MakeTrigramString(int argc, VALUE *argv, VALUE self) {
- DocumentList *arg1 = (DocumentList *) 0 ;
- std::size_t arg2 ;
- std::size_t arg3 ;
- std::size_t arg4 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- size_t val2 ;
- int ecode2 = 0 ;
- size_t val3 ;
- int ecode3 = 0 ;
- size_t val4 ;
- int ecode4 = 0 ;
- std::string result;
- VALUE vresult = Qnil;
-
- if ((argc < 3) || (argc > 3)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 3)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_DocumentList, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "DocumentList *","MakeTrigramString", 1, self ));
- }
- arg1 = reinterpret_cast< DocumentList * >(argp1);
- ecode2 = SWIG_AsVal_size_t(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "std::size_t","MakeTrigramString", 2, argv[0] ));
- }
- arg2 = static_cast< std::size_t >(val2);
- ecode3 = SWIG_AsVal_size_t(argv[1], &val3);
- if (!SWIG_IsOK(ecode3)) {
- SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "std::size_t","MakeTrigramString", 3, argv[1] ));
- }
- arg3 = static_cast< std::size_t >(val3);
- ecode4 = SWIG_AsVal_size_t(argv[2], &val4);
- if (!SWIG_IsOK(ecode4)) {
- SWIG_exception_fail(SWIG_ArgError(ecode4), Ruby_Format_TypeError( "", "std::size_t","MakeTrigramString", 4, argv[2] ));
- }
- arg4 = static_cast< std::size_t >(val4);
- result = (arg1)->MakeTrigramString(arg2,arg3,arg4);
- vresult = SWIG_From_std_string(static_cast< std::string >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_DocumentList_CollectMatchingTrigrams(int argc, VALUE *argv, VALUE self) {
- DocumentList *arg1 = (DocumentList *) 0 ;
- int arg2 ;
- int arg3 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- int val2 ;
- int ecode2 = 0 ;
- int val3 ;
- int ecode3 = 0 ;
- SwigValueWrapper< std::vector< std::string,std::allocator< std::string > > > result;
- VALUE vresult = Qnil;
-
- if ((argc < 2) || (argc > 2)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 2)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_DocumentList, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "DocumentList *","CollectMatchingTrigrams", 1, self ));
- }
- arg1 = reinterpret_cast< DocumentList * >(argp1);
- ecode2 = SWIG_AsVal_int(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "int","CollectMatchingTrigrams", 2, argv[0] ));
- }
- arg2 = static_cast< int >(val2);
- ecode3 = SWIG_AsVal_int(argv[1], &val3);
- if (!SWIG_IsOK(ecode3)) {
- SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "int","CollectMatchingTrigrams", 3, argv[1] ));
- }
- arg3 = static_cast< int >(val3);
- result = (arg1)->CollectMatchingTrigrams(arg2,arg3);
- vresult = SWIG_NewPointerObj((new std::vector< std::string,std::allocator< std::string > >(static_cast< const std::vector< std::string,std::allocator< std::string > >& >(result))), SWIGTYPE_p_std__vectorT_std__string_std__allocatorT_std__string_t_t, SWIG_POINTER_OWN | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- swig_class SwigClassTupleSet;
- #ifdef HAVE_RB_DEFINE_ALLOC_FUNC
- SWIGINTERN VALUE
- _wrap_TupleSet_allocate(VALUE self) {
- #else
- SWIGINTERN VALUE
- _wrap_TupleSet_allocate(int argc, VALUE *argv, VALUE self) {
- #endif
-
-
- VALUE vresult = SWIG_NewClassInstance(self, SWIGTYPE_p_TupleSet);
- #ifndef HAVE_RB_DEFINE_ALLOC_FUNC
- rb_obj_call_init(vresult, argc, argv);
- #endif
- return vresult;
- }
-
- SWIGINTERN VALUE
- _wrap_new_TupleSet(int argc, VALUE *argv, VALUE self) {
- TupleSet *result = 0 ;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- result = (TupleSet *)new TupleSet();
- DATA_PTR(self) = result;
- return self;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_TupleSet_Clear(int argc, VALUE *argv, VALUE self) {
- TupleSet *arg1 = (TupleSet *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TupleSet, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TupleSet *","Clear", 1, self ));
- }
- arg1 = reinterpret_cast< TupleSet * >(argp1);
- (arg1)->Clear();
- return Qnil;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_TupleSet_Size(int argc, VALUE *argv, VALUE self) {
- TupleSet *arg1 = (TupleSet *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- int result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TupleSet, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TupleSet *","Size", 1, self ));
- }
- arg1 = reinterpret_cast< TupleSet * >(argp1);
- result = (int)(arg1)->Size();
- vresult = SWIG_From_int(static_cast< int >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_TupleSet_GetDocumentsForTuple(int argc, VALUE *argv, VALUE self) {
- TupleSet *arg1 = (TupleSet *) 0 ;
- std::size_t arg2 ;
- std::size_t arg3 ;
- std::size_t arg4 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- size_t val2 ;
- int ecode2 = 0 ;
- size_t val3 ;
- int ecode3 = 0 ;
- size_t val4 ;
- int ecode4 = 0 ;
- std::vector< int,std::allocator< int > > *result = 0 ;
- VALUE vresult = Qnil;
-
- if ((argc < 3) || (argc > 3)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 3)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TupleSet, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TupleSet *","GetDocumentsForTuple", 1, self ));
- }
- arg1 = reinterpret_cast< TupleSet * >(argp1);
- ecode2 = SWIG_AsVal_size_t(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "std::size_t","GetDocumentsForTuple", 2, argv[0] ));
- }
- arg2 = static_cast< std::size_t >(val2);
- ecode3 = SWIG_AsVal_size_t(argv[1], &val3);
- if (!SWIG_IsOK(ecode3)) {
- SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "std::size_t","GetDocumentsForTuple", 3, argv[1] ));
- }
- arg3 = static_cast< std::size_t >(val3);
- ecode4 = SWIG_AsVal_size_t(argv[2], &val4);
- if (!SWIG_IsOK(ecode4)) {
- SWIG_exception_fail(SWIG_ArgError(ecode4), Ruby_Format_TypeError( "", "std::size_t","GetDocumentsForTuple", 4, argv[2] ));
- }
- arg4 = static_cast< std::size_t >(val4);
- result = (std::vector< int,std::allocator< int > > *) &(arg1)->GetDocumentsForTuple(arg2,arg3,arg4);
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_TupleSet_AddDocument(int argc, VALUE *argv, VALUE self) {
- TupleSet *arg1 = (TupleSet *) 0 ;
- std::size_t arg2 ;
- std::size_t arg3 ;
- std::size_t arg4 ;
- int arg5 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- size_t val2 ;
- int ecode2 = 0 ;
- size_t val3 ;
- int ecode3 = 0 ;
- size_t val4 ;
- int ecode4 = 0 ;
- int val5 ;
- int ecode5 = 0 ;
- bool result;
- VALUE vresult = Qnil;
-
- if ((argc < 4) || (argc > 4)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 4)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TupleSet, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TupleSet *","AddDocument", 1, self ));
- }
- arg1 = reinterpret_cast< TupleSet * >(argp1);
- ecode2 = SWIG_AsVal_size_t(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "std::size_t","AddDocument", 2, argv[0] ));
- }
- arg2 = static_cast< std::size_t >(val2);
- ecode3 = SWIG_AsVal_size_t(argv[1], &val3);
- if (!SWIG_IsOK(ecode3)) {
- SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "std::size_t","AddDocument", 3, argv[1] ));
- }
- arg3 = static_cast< std::size_t >(val3);
- ecode4 = SWIG_AsVal_size_t(argv[2], &val4);
- if (!SWIG_IsOK(ecode4)) {
- SWIG_exception_fail(SWIG_ArgError(ecode4), Ruby_Format_TypeError( "", "std::size_t","AddDocument", 4, argv[2] ));
- }
- arg4 = static_cast< std::size_t >(val4);
- ecode5 = SWIG_AsVal_int(argv[3], &val5);
- if (!SWIG_IsOK(ecode5)) {
- SWIG_exception_fail(SWIG_ArgError(ecode5), Ruby_Format_TypeError( "", "int","AddDocument", 5, argv[3] ));
- }
- arg5 = static_cast< int >(val5);
- result = (bool)(arg1)->AddDocument(arg2,arg3,arg4,arg5);
- vresult = SWIG_From_bool(static_cast< bool >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_TupleSet_IsMatchingTuple(int argc, VALUE *argv, VALUE self) {
- TupleSet *arg1 = (TupleSet *) 0 ;
- std::size_t arg2 ;
- std::size_t arg3 ;
- std::size_t arg4 ;
- int arg5 ;
- int arg6 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- size_t val2 ;
- int ecode2 = 0 ;
- size_t val3 ;
- int ecode3 = 0 ;
- size_t val4 ;
- int ecode4 = 0 ;
- int val5 ;
- int ecode5 = 0 ;
- int val6 ;
- int ecode6 = 0 ;
- bool result;
- VALUE vresult = Qnil;
-
- if ((argc < 5) || (argc > 5)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 5)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TupleSet, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TupleSet *","IsMatchingTuple", 1, self ));
- }
- arg1 = reinterpret_cast< TupleSet * >(argp1);
- ecode2 = SWIG_AsVal_size_t(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "std::size_t","IsMatchingTuple", 2, argv[0] ));
- }
- arg2 = static_cast< std::size_t >(val2);
- ecode3 = SWIG_AsVal_size_t(argv[1], &val3);
- if (!SWIG_IsOK(ecode3)) {
- SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "std::size_t","IsMatchingTuple", 3, argv[1] ));
- }
- arg3 = static_cast< std::size_t >(val3);
- ecode4 = SWIG_AsVal_size_t(argv[2], &val4);
- if (!SWIG_IsOK(ecode4)) {
- SWIG_exception_fail(SWIG_ArgError(ecode4), Ruby_Format_TypeError( "", "std::size_t","IsMatchingTuple", 4, argv[2] ));
- }
- arg4 = static_cast< std::size_t >(val4);
- ecode5 = SWIG_AsVal_int(argv[3], &val5);
- if (!SWIG_IsOK(ecode5)) {
- SWIG_exception_fail(SWIG_ArgError(ecode5), Ruby_Format_TypeError( "", "int","IsMatchingTuple", 5, argv[3] ));
- }
- arg5 = static_cast< int >(val5);
- ecode6 = SWIG_AsVal_int(argv[4], &val6);
- if (!SWIG_IsOK(ecode6)) {
- SWIG_exception_fail(SWIG_ArgError(ecode6), Ruby_Format_TypeError( "", "int","IsMatchingTuple", 6, argv[4] ));
- }
- arg6 = static_cast< int >(val6);
- result = (bool)(arg1)->IsMatchingTuple(arg2,arg3,arg4,arg5,arg6);
- vresult = SWIG_From_bool(static_cast< bool >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_TupleSet_CollectMatchingTuples(int argc, VALUE *argv, VALUE self) {
- TupleSet *arg1 = (TupleSet *) 0 ;
- int arg2 ;
- int arg3 ;
- TokenSet *arg4 = 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- int val2 ;
- int ecode2 = 0 ;
- int val3 ;
- int ecode3 = 0 ;
- void *argp4 = 0 ;
- int res4 = 0 ;
- SwigValueWrapper< std::vector< std::string,std::allocator< std::string > > > result;
- VALUE vresult = Qnil;
-
- if ((argc < 3) || (argc > 3)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 3)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TupleSet, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TupleSet *","CollectMatchingTuples", 1, self ));
- }
- arg1 = reinterpret_cast< TupleSet * >(argp1);
- ecode2 = SWIG_AsVal_int(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "int","CollectMatchingTuples", 2, argv[0] ));
- }
- arg2 = static_cast< int >(val2);
- ecode3 = SWIG_AsVal_int(argv[1], &val3);
- if (!SWIG_IsOK(ecode3)) {
- SWIG_exception_fail(SWIG_ArgError(ecode3), Ruby_Format_TypeError( "", "int","CollectMatchingTuples", 3, argv[1] ));
- }
- arg3 = static_cast< int >(val3);
- res4 = SWIG_ConvertPtr(argv[2], &argp4, SWIGTYPE_p_TokenSet, 0 );
- if (!SWIG_IsOK(res4)) {
- SWIG_exception_fail(SWIG_ArgError(res4), Ruby_Format_TypeError( "", "TokenSet &","CollectMatchingTuples", 4, argv[2] ));
- }
- if (!argp4) {
- SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "TokenSet &","CollectMatchingTuples", 4, argv[2]));
- }
- arg4 = reinterpret_cast< TokenSet * >(argp4);
- result = (arg1)->CollectMatchingTuples(arg2,arg3,*arg4);
- vresult = SWIG_NewPointerObj((new std::vector< std::string,std::allocator< std::string > >(static_cast< const std::vector< std::string,std::allocator< std::string > >& >(result))), SWIGTYPE_p_std__vectorT_std__string_std__allocatorT_std__string_t_t, SWIG_POINTER_OWN | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_TupleSet_Begin(int argc, VALUE *argv, VALUE self) {
- TupleSet *arg1 = (TupleSet *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TupleSet, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TupleSet *","Begin", 1, self ));
- }
- arg1 = reinterpret_cast< TupleSet * >(argp1);
- (arg1)->Begin();
- return Qnil;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_TupleSet_GetNext(int argc, VALUE *argv, VALUE self) {
- TupleSet *arg1 = (TupleSet *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TupleSet, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TupleSet *","GetNext", 1, self ));
- }
- arg1 = reinterpret_cast< TupleSet * >(argp1);
- (arg1)->GetNext();
- return Qnil;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_TupleSet_HasMore(int argc, VALUE *argv, VALUE self) {
- TupleSet *arg1 = (TupleSet *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- bool result;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TupleSet, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TupleSet const *","HasMore", 1, self ));
- }
- arg1 = reinterpret_cast< TupleSet * >(argp1);
- result = (bool)((TupleSet const *)arg1)->HasMore();
- vresult = SWIG_From_bool(static_cast< bool >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_TupleSet_GetDocumentsForCurrentTuple(int argc, VALUE *argv, VALUE self) {
- TupleSet *arg1 = (TupleSet *) 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- std::vector< int,std::allocator< int > > *result = 0 ;
- VALUE vresult = Qnil;
-
- if ((argc < 0) || (argc > 0)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 0)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TupleSet, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TupleSet *","GetDocumentsForCurrentTuple", 1, self ));
- }
- arg1 = reinterpret_cast< TupleSet * >(argp1);
- result = (std::vector< int,std::allocator< int > > *) &(arg1)->GetDocumentsForCurrentTuple();
- vresult = SWIG_NewPointerObj(SWIG_as_voidptr(result), SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, 0 | 0 );
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_TupleSet_GetStringForCurrentTuple(int argc, VALUE *argv, VALUE self) {
- TupleSet *arg1 = (TupleSet *) 0 ;
- TokenSet *arg2 = 0 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- void *argp2 = 0 ;
- int res2 = 0 ;
- std::string result;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TupleSet, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TupleSet const *","GetStringForCurrentTuple", 1, self ));
- }
- arg1 = reinterpret_cast< TupleSet * >(argp1);
- res2 = SWIG_ConvertPtr(argv[0], &argp2, SWIGTYPE_p_TokenSet, 0 );
- if (!SWIG_IsOK(res2)) {
- SWIG_exception_fail(SWIG_ArgError(res2), Ruby_Format_TypeError( "", "TokenSet &","GetStringForCurrentTuple", 2, argv[0] ));
- }
- if (!argp2) {
- SWIG_exception_fail(SWIG_ValueError, Ruby_Format_TypeError("invalid null reference ", "TokenSet &","GetStringForCurrentTuple", 2, argv[0]));
- }
- arg2 = reinterpret_cast< TokenSet * >(argp2);
- result = ((TupleSet const *)arg1)->GetStringForCurrentTuple(*arg2);
- vresult = SWIG_From_std_string(static_cast< std::string >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN VALUE
- _wrap_TupleSet_GetToken(int argc, VALUE *argv, VALUE self) {
- TupleSet *arg1 = (TupleSet *) 0 ;
- int arg2 ;
- void *argp1 = 0 ;
- int res1 = 0 ;
- int val2 ;
- int ecode2 = 0 ;
- std::size_t result;
- VALUE vresult = Qnil;
-
- if ((argc < 1) || (argc > 1)) {
- rb_raise(rb_eArgError, "wrong # of arguments(%d for 1)",argc); SWIG_fail;
- }
- res1 = SWIG_ConvertPtr(self, &argp1,SWIGTYPE_p_TupleSet, 0 | 0 );
- if (!SWIG_IsOK(res1)) {
- SWIG_exception_fail(SWIG_ArgError(res1), Ruby_Format_TypeError( "", "TupleSet const *","GetToken", 1, self ));
- }
- arg1 = reinterpret_cast< TupleSet * >(argp1);
- ecode2 = SWIG_AsVal_int(argv[0], &val2);
- if (!SWIG_IsOK(ecode2)) {
- SWIG_exception_fail(SWIG_ArgError(ecode2), Ruby_Format_TypeError( "", "int","GetToken", 2, argv[0] ));
- }
- arg2 = static_cast< int >(val2);
- result = ((TupleSet const *)arg1)->GetToken(arg2);
- vresult = SWIG_From_size_t(static_cast< size_t >(result));
- return vresult;
- fail:
- return Qnil;
- }
- SWIGINTERN void
- free_TupleSet(TupleSet *arg1) {
- delete arg1;
- }
- /* -------- TYPE CONVERSION AND EQUIVALENCE RULES (BEGIN) -------- */
- static void *_p_swig__IteratorTo_p_swig__ConstIterator(void *x, int *SWIGUNUSEDPARM(newmemory)) {
- return (void *)((swig::ConstIterator *) ((swig::Iterator *) x));
- }
- static swig_type_info _swigt__p_Document = {"_p_Document", "Document *", 0, 0, (void*)0, 0};
- static swig_type_info _swigt__p_DocumentList = {"_p_DocumentList", "DocumentList *", 0, 0, (void*)0, 0};
- static swig_type_info _swigt__p_TokenSet = {"_p_TokenSet", "TokenSet *", 0, 0, (void*)0, 0};
- static swig_type_info _swigt__p_TupleSet = {"_p_TupleSet", "TupleSet *", 0, 0, (void*)0, 0};
- static swig_type_info _swigt__p_allocator_type = {"_p_allocator_type", "allocator_type *", 0, 0, (void*)0, 0};
- static swig_type_info _swigt__p_char = {"_p_char", "char *", 0, 0, (void*)0, 0};
- static swig_type_info _swigt__p_difference_type = {"_p_difference_type", "difference_type *", 0, 0, (void*)0, 0};
- static swig_type_info _swigt__p_p_void = {"_p_p_void", "void **|VALUE *", 0, 0, (void*)0, 0};
- static swig_type_info _swigt__p_size_type = {"_p_size_type", "size_type *", 0, 0, (void*)0, 0};
- static swig_type_info _swigt__p_std__allocatorT_int_t = {"_p_std__allocatorT_int_t", "std::vector< int >::allocator_type *|std::allocator< int > *", 0, 0, (void*)0, 0};
- static swig_type_info _swigt__p_std__istream = {"_p_std__istream", "std::istream *", 0, 0, (void*)0, 0};
- static swig_type_info _swigt__p_std__vectorT_int_std__allocatorT_int_t_t = {"_p_std__vectorT_int_std__allocatorT_int_t_t", "std::vector< int,std::allocator< int > > *|std::vector< int > *", 0, 0, (void*)0, 0};
- static swig_type_info _swigt__p_std__vectorT_std__string_std__allocatorT_std__string_t_t = {"_p_std__vectorT_std__string_std__allocatorT_std__string_t_t", "std::vector< std::string,std::allocator< std::string > > *", 0, 0, (void*)0, 0};
- static swig_type_info _swigt__p_swig__ConstIterator = {"_p_swig__ConstIterator", "swig::ConstIterator *", 0, 0, (void*)0, 0};
- static swig_type_info _swigt__p_swig__GC_VALUE = {"_p_swig__GC_VALUE", "swig::GC_VALUE *", 0, 0, (void*)0, 0};
- static swig_type_info _swigt__p_swig__Iterator = {"_p_swig__Iterator", "swig::Iterator *", 0, 0, (void*)0, 0};
- static swig_type_info _swigt__p_value_type = {"_p_value_type", "value_type *", 0, 0, (void*)0, 0};
- static swig_type_info _swigt__p_void = {"_p_void", "VALUE|void *", 0, 0, (void*)0, 0};
- static swig_type_info *swig_type_initial[] = {
- &_swigt__p_Document,
- &_swigt__p_DocumentList,
- &_swigt__p_TokenSet,
- &_swigt__p_TupleSet,
- &_swigt__p_allocator_type,
- &_swigt__p_char,
- &_swigt__p_difference_type,
- &_swigt__p_p_void,
- &_swigt__p_size_type,
- &_swigt__p_std__allocatorT_int_t,
- &_swigt__p_std__istream,
- &_swigt__p_std__vectorT_int_std__allocatorT_int_t_t,
- &_swigt__p_std__vectorT_std__string_std__allocatorT_std__string_t_t,
- &_swigt__p_swig__ConstIterator,
- &_swigt__p_swig__GC_VALUE,
- &_swigt__p_swig__Iterator,
- &_swigt__p_value_type,
- &_swigt__p_void,
- };
- static swig_cast_info _swigc__p_Document[] = { {&_swigt__p_Document, 0, 0, 0},{0, 0, 0, 0}};
- static swig_cast_info _swigc__p_DocumentList[] = { {&_swigt__p_DocumentList, 0, 0, 0},{0, 0, 0, 0}};
- static swig_cast_info _swigc__p_TokenSet[] = { {&_swigt__p_TokenSet, 0, 0, 0},{0, 0, 0, 0}};
- static swig_cast_info _swigc__p_TupleSet[] = { {&_swigt__p_TupleSet, 0, 0, 0},{0, 0, 0, 0}};
- static swig_cast_info _swigc__p_allocator_type[] = { {&_swigt__p_allocator_type, 0, 0, 0},{0, 0, 0, 0}};
- static swig_cast_info _swigc__p_char[] = { {&_swigt__p_char, 0, 0, 0},{0, 0, 0, 0}};
- static swig_cast_info _swigc__p_difference_type[] = { {&_swigt__p_difference_type, 0, 0, 0},{0, 0, 0, 0}};
- static swig_cast_info _swigc__p_p_void[] = { {&_swigt__p_p_void, 0, 0, 0},{0, 0, 0, 0}};
- static swig_cast_info _swigc__p_size_type[] = { {&_swigt__p_size_type, 0, 0, 0},{0, 0, 0, 0}};
- static swig_cast_info _swigc__p_std__allocatorT_int_t[] = { {&_swigt__p_std__allocatorT_int_t, 0, 0, 0},{0, 0, 0, 0}};
- static swig_cast_info _swigc__p_std__istream[] = { {&_swigt__p_std__istream, 0, 0, 0},{0, 0, 0, 0}};
- static swig_cast_info _swigc__p_std__vectorT_int_std__allocatorT_int_t_t[] = { {&_swigt__p_std__vectorT_int_std__allocatorT_int_t_t, 0, 0, 0},{0, 0, 0, 0}};
- static swig_cast_info _swigc__p_std__vectorT_std__string_std__allocatorT_std__string_t_t[] = { {&_swigt__p_std__vectorT_std__string_std__allocatorT_std__string_t_t, 0, 0, 0},{0, 0, 0, 0}};
- static swig_cast_info _swigc__p_swig__ConstIterator[] = { {&_swigt__p_swig__ConstIterator, 0, 0, 0}, {&_swigt__p_swig__Iterator, _p_swig__IteratorTo_p_swig__ConstIterator, 0, 0},{0, 0, 0, 0}};
- static swig_cast_info _swigc__p_swig__GC_VALUE[] = { {&_swigt__p_swig__GC_VALUE, 0, 0, 0},{0, 0, 0, 0}};
- static swig_cast_info _swigc__p_swig__Iterator[] = { {&_swigt__p_swig__Iterator, 0, 0, 0},{0, 0, 0, 0}};
- static swig_cast_info _swigc__p_value_type[] = { {&_swigt__p_value_type, 0, 0, 0},{0, 0, 0, 0}};
- static swig_cast_info _swigc__p_void[] = { {&_swigt__p_void, 0, 0, 0},{0, 0, 0, 0}};
- static swig_cast_info *swig_cast_initial[] = {
- _swigc__p_Document,
- _swigc__p_DocumentList,
- _swigc__p_TokenSet,
- _swigc__p_TupleSet,
- _swigc__p_allocator_type,
- _swigc__p_char,
- _swigc__p_difference_type,
- _swigc__p_p_void,
- _swigc__p_size_type,
- _swigc__p_std__allocatorT_int_t,
- _swigc__p_std__istream,
- _swigc__p_std__vectorT_int_std__allocatorT_int_t_t,
- _swigc__p_std__vectorT_std__string_std__allocatorT_std__string_t_t,
- _swigc__p_swig__ConstIterator,
- _swigc__p_swig__GC_VALUE,
- _swigc__p_swig__Iterator,
- _swigc__p_value_type,
- _swigc__p_void,
- };
- /* -------- TYPE CONVERSION AND EQUIVALENCE RULES (END) -------- */
- /* -----------------------------------------------------------------------------
- * Type initialization:
- * This problem is tough by the requirement that no dynamic
- * memory is used. Also, since swig_type_info structures store pointers to
- * swig_cast_info structures and swig_cast_info structures store pointers back
- * to swig_type_info structures, we need some lookup code at initialization.
- * The idea is that swig generates all the structures that are needed.
- * The runtime then collects these partially filled structures.
- * The SWIG_InitializeModule function takes these initial arrays out of
- * swig_module, and does all the lookup, filling in the swig_module.types
- * array with the correct data and linking the correct swig_cast_info
- * structures together.
- *
- * The generated swig_type_info structures are assigned staticly to an initial
- * array. We just loop through that array, and handle each type individually.
- * First we lookup if this type has been already loaded, and if so, use the
- * loaded structure instead of the generated one. Then we have to fill in the
- * cast linked list. The cast data is initially stored in something like a
- * two-dimensional array. Each row corresponds to a type (there are the same
- * number of rows as there are in the swig_type_initial array). Each entry in
- * a column is one of the swig_cast_info structures for that type.
- * The cast_initial array is actually an array of arrays, because each row has
- * a variable number of columns. So to actually build the cast linked list,
- * we find the array of casts associated with the type, and loop through it
- * adding the casts to the list. The one last trick we need to do is making
- * sure the type pointer in the swig_cast_info struct is correct.
- *
- * First off, we lookup the cast->type name to see if it is already loaded.
- * There are three cases to handle:
- * 1) If the cast->type has already been loaded AND the type we are adding
- * casting info to has not been loaded (it is in this module), THEN we
- * replace the cast->type pointer with the type pointer that has already
- * been loaded.
- * 2) If BOTH types (the one we are adding casting info to, and the
- * cast->type) are loaded, THEN the cast info has already been loaded by
- * the previous module so we just ignore it.
- * 3) Finally, if cast->type has not already been loaded, then we add that
- * swig_cast_info to the linked list (because the cast->type) pointer will
- * be correct.
- * ----------------------------------------------------------------------------- */
- #ifdef __cplusplus
- extern "C" {
- #if 0
- } /* c-mode */
- #endif
- #endif
- #if 0
- #define SWIGRUNTIME_DEBUG
- #endif
- SWIGRUNTIME void
- SWIG_InitializeModule(void *clientdata) {
- size_t i;
- swig_module_info *module_head, *iter;
- int found, init;
- clientdata = clientdata;
- /* check to see if the circular list has been setup, if not, set it up */
- if (swig_module.next==0) {
- /* Initialize the swig_module */
- swig_module.type_initial = swig_type_initial;
- swig_module.cast_initial = swig_cast_initial;
- swig_module.next = &swig_module;
- init = 1;
- } else {
- init = 0;
- }
- /* Try and load any already created modules */
- module_head = SWIG_GetModule(clientdata);
- if (!module_head) {
- /* This is the first module loaded for this interpreter */
- /* so set the swig module into the interpreter */
- SWIG_SetModule(clientdata, &swig_module);
- module_head = &swig_module;
- } else {
- /* the interpreter has loaded a SWIG module, but has it loaded this one? */
- found=0;
- iter=module_head;
- do {
- if (iter==&swig_module) {
- found=1;
- break;
- }
- iter=iter->next;
- } while (iter!= module_head);
- /* if the is found in the list, then all is done and we may leave */
- if (found) return;
- /* otherwise we must add out module into the list */
- swig_module.next = module_head->next;
- module_head->next = &swig_module;
- }
- /* When multiple interpeters are used, a module could have already been initialized in
- a different interpreter, but not yet have a pointer in this interpreter.
- In this case, we do not want to continue adding types... everything should be
- set up already */
- if (init == 0) return;
- /* Now work on filling in swig_module.types */
- #ifdef SWIGRUNTIME_DEBUG
- printf("SWIG_InitializeModule: size %d\n", swig_module.size);
- #endif
- for (i = 0; i < swig_module.size; ++i) {
- swig_type_info *type = 0;
- swig_type_info *ret;
- swig_cast_info *cast;
-
- #ifdef SWIGRUNTIME_DEBUG
- printf("SWIG_InitializeModule: type %d %s\n", i, swig_module.type_initial[i]->name);
- #endif
- /* if there is another module already loaded */
- if (swig_module.next != &swig_module) {
- type = SWIG_MangledTypeQueryModule(swig_module.next, &swig_module, swig_module.type_initial[i]->name);
- }
- if (type) {
- /* Overwrite clientdata field */
- #ifdef SWIGRUNTIME_DEBUG
- printf("SWIG_InitializeModule: found type %s\n", type->name);
- #endif
- if (swig_module.type_initial[i]->clientdata) {
- type->clientdata = swig_module.type_initial[i]->clientdata;
- #ifdef SWIGRUNTIME_DEBUG
- printf("SWIG_InitializeModule: found and overwrite type %s \n", type->name);
- #endif
- }
- } else {
- type = swig_module.type_initial[i];
- }
- /* Insert casting types */
- cast = swig_module.cast_initial[i];
- while (cast->type) {
-
- /* Don't need to add information already in the list */
- ret = 0;
- #ifdef SWIGRUNTIME_DEBUG
- printf("SWIG_InitializeModule: look cast %s\n", cast->type->name);
- #endif
- if (swig_module.next != &swig_module) {
- ret = SWIG_MangledTypeQueryModule(swig_module.next, &swig_module, cast->type->name);
- #ifdef SWIGRUNTIME_DEBUG
- if (ret) printf("SWIG_InitializeModule: found cast %s\n", ret->name);
- #endif
- }
- if (ret) {
- if (type == swig_module.type_initial[i]) {
- #ifdef SWIGRUNTIME_DEBUG
- printf("SWIG_InitializeModule: skip old type %s\n", ret->name);
- #endif
- cast->type = ret;
- ret = 0;
- } else {
- /* Check for casting already in the list */
- swig_cast_info *ocast = SWIG_TypeCheck(ret->name, type);
- #ifdef SWIGRUNTIME_DEBUG
- if (ocast) printf("SWIG_InitializeModule: skip old cast %s\n", ret->name);
- #endif
- if (!ocast) ret = 0;
- }
- }
- if (!ret) {
- #ifdef SWIGRUNTIME_DEBUG
- printf("SWIG_InitializeModule: adding cast %s\n", cast->type->name);
- #endif
- if (type->cast) {
- type->cast->prev = cast;
- cast->next = type->cast;
- }
- type->cast = cast;
- }
- cast++;
- }
- /* Set entry in modules->types array equal to the type */
- swig_module.types[i] = type;
- }
- swig_module.types[i] = 0;
- #ifdef SWIGRUNTIME_DEBUG
- printf("**** SWIG_InitializeModule: Cast List ******\n");
- for (i = 0; i < swig_module.size; ++i) {
- int j = 0;
- swig_cast_info *cast = swig_module.cast_initial[i];
- printf("SWIG_InitializeModule: type %d %s\n", i, swig_module.type_initial[i]->name);
- while (cast->type) {
- printf("SWIG_InitializeModule: cast type %s\n", cast->type->name);
- cast++;
- ++j;
- }
- printf("---- Total casts: %d\n",j);
- }
- printf("**** SWIG_InitializeModule: Cast List ******\n");
- #endif
- }
- /* This function will propagate the clientdata field of type to
- * any new swig_type_info structures that have been added into the list
- * of equivalent types. It is like calling
- * SWIG_TypeClientData(type, clientdata) a second time.
- */
- SWIGRUNTIME void
- SWIG_PropagateClientData(void) {
- size_t i;
- swig_cast_info *equiv;
- static int init_run = 0;
- if (init_run) return;
- init_run = 1;
- for (i = 0; i < swig_module.size; i++) {
- if (swig_module.types[i]->clientdata) {
- equiv = swig_module.types[i]->cast;
- while (equiv) {
- if (!equiv->converter) {
- if (equiv->type && !equiv->type->clientdata)
- SWIG_TypeClientData(equiv->type, swig_module.types[i]->clientdata);
- }
- equiv = equiv->next;
- }
- }
- }
- }
- #ifdef __cplusplus
- #if 0
- { /* c-mode */
- #endif
- }
- #endif
- /*
- */
- #ifdef __cplusplus
- extern "C"
- #endif
- SWIGEXPORT void Init_uhferret_lib(void) {
- size_t i;
-
- SWIG_InitRuntime();
- mUhferret_lib = rb_define_module("Uhferret_lib");
-
- SWIG_InitializeModule(0);
- for (i = 0; i < swig_module.size; i++) {
- SWIG_define_class(swig_module.types[i]);
- }
-
- SWIG_RubyInitializeTrackings();
-
- SwigClassGC_VALUE.klass = rb_define_class_under(mUhferret_lib, "GC_VALUE", rb_cObject);
- SWIG_TypeClientData(SWIGTYPE_p_swig__GC_VALUE, (void *) &SwigClassGC_VALUE);
- rb_undef_alloc_func(SwigClassGC_VALUE.klass);
- rb_define_method(SwigClassGC_VALUE.klass, "inspect", VALUEFUNC(_wrap_GC_VALUE_inspect), -1);
- rb_define_method(SwigClassGC_VALUE.klass, "to_s", VALUEFUNC(_wrap_GC_VALUE_to_s), -1);
- SwigClassGC_VALUE.mark = 0;
- SwigClassGC_VALUE.trackObjects = 0;
-
- swig::GC_VALUE::initialize();
-
-
- SwigClassConstIterator.klass = rb_define_class_under(mUhferret_lib, "ConstIterator", rb_cObject);
- SWIG_TypeClientData(SWIGTYPE_p_swig__ConstIterator, (void *) &SwigClassConstIterator);
- rb_undef_alloc_func(SwigClassConstIterator.klass);
- rb_define_method(SwigClassConstIterator.klass, "value", VALUEFUNC(_wrap_ConstIterator_value), -1);
- rb_define_method(SwigClassConstIterator.klass, "dup", VALUEFUNC(_wrap_ConstIterator_dup), -1);
- rb_define_method(SwigClassConstIterator.klass, "inspect", VALUEFUNC(_wrap_ConstIterator_inspect), -1);
- rb_define_method(SwigClassConstIterator.klass, "to_s", VALUEFUNC(_wrap_ConstIterator_to_s), -1);
- rb_define_method(SwigClassConstIterator.klass, "next", VALUEFUNC(_wrap_ConstIterator_next), -1);
- rb_define_method(SwigClassConstIterator.klass, "previous", VALUEFUNC(_wrap_ConstIterator_previous), -1);
- rb_define_method(SwigClassConstIterator.klass, "==", VALUEFUNC(_wrap_ConstIterator___eq__), -1);
- rb_define_method(SwigClassConstIterator.klass, "+", VALUEFUNC(_wrap_ConstIterator___add__), -1);
- rb_define_method(SwigClassConstIterator.klass, "-", VALUEFUNC(_wrap_ConstIterator___sub__), -1);
- SwigClassConstIterator.mark = 0;
- SwigClassConstIterator.destroy = (void (*)(void *)) free_swig_ConstIterator;
- SwigClassConstIterator.trackObjects = 0;
-
- SwigClassIterator.klass = rb_define_class_under(mUhferret_lib, "Iterator", ((swig_class *) SWIGTYPE_p_swig__ConstIterator->clientdata)->klass);
- SWIG_TypeClientData(SWIGTYPE_p_swig__Iterator, (void *) &SwigClassIterator);
- rb_undef_alloc_func(SwigClassIterator.klass);
- rb_define_method(SwigClassIterator.klass, "value=", VALUEFUNC(_wrap_Iterator_valuee___), -1);
- rb_define_method(SwigClassIterator.klass, "dup", VALUEFUNC(_wrap_Iterator_dup), -1);
- rb_define_method(SwigClassIterator.klass, "next", VALUEFUNC(_wrap_Iterator_next), -1);
- rb_define_method(SwigClassIterator.klass, "previous", VALUEFUNC(_wrap_Iterator_previous), -1);
- rb_define_method(SwigClassIterator.klass, "inspect", VALUEFUNC(_wrap_Iterator_inspect), -1);
- rb_define_method(SwigClassIterator.klass, "to_s", VALUEFUNC(_wrap_Iterator_to_s), -1);
- rb_define_method(SwigClassIterator.klass, "==", VALUEFUNC(_wrap_Iterator___eq__), -1);
- rb_define_method(SwigClassIterator.klass, "+", VALUEFUNC(_wrap_Iterator___add__), -1);
- rb_define_method(SwigClassIterator.klass, "-", VALUEFUNC(_wrap_Iterator___sub__), -1);
- SwigClassIterator.mark = 0;
- SwigClassIterator.destroy = (void (*)(void *)) free_swig_Iterator;
- SwigClassIterator.trackObjects = 0;
-
- SwigClassIntVector.klass = rb_define_class_under(mUhferret_lib, "IntVector", rb_cObject);
- SWIG_TypeClientData(SWIGTYPE_p_std__vectorT_int_std__allocatorT_int_t_t, (void *) &SwigClassIntVector);
- rb_include_module(SwigClassIntVector.klass, rb_eval_string("Enumerable"));
- rb_define_alloc_func(SwigClassIntVector.klass, _wrap_IntVector_allocate);
- rb_define_method(SwigClassIntVector.klass, "initialize", VALUEFUNC(_wrap_new_IntVector), -1);
- rb_define_method(SwigClassIntVector.klass, "dup", VALUEFUNC(_wrap_IntVector_dup), -1);
- rb_define_method(SwigClassIntVector.klass, "inspect", VALUEFUNC(_wrap_IntVector_inspect), -1);
- rb_define_method(SwigClassIntVector.klass, "to_a", VALUEFUNC(_wrap_IntVector_to_a), -1);
- rb_define_method(SwigClassIntVector.klass, "to_s", VALUEFUNC(_wrap_IntVector_to_s), -1);
- rb_define_method(SwigClassIntVector.klass, "slice", VALUEFUNC(_wrap_IntVector_slice), -1);
- rb_define_method(SwigClassIntVector.klass, "each", VALUEFUNC(_wrap_IntVector_each), -1);
- rb_define_method(SwigClassIntVector.klass, "select", VALUEFUNC(_wrap_IntVector_select), -1);
- rb_define_method(SwigClassIntVector.klass, "reject!", VALUEFUNC(_wrap_IntVector_rejectN___), -1);
- rb_define_alias(SwigClassIntVector.klass, "delete_if", "reject!");
- rb_define_method(SwigClassIntVector.klass, "delete_at", VALUEFUNC(_wrap_IntVector_delete_at), -1);
- rb_define_method(SwigClassIntVector.klass, "__delete2__", VALUEFUNC(_wrap_IntVector___delete2__), -1);
- rb_define_method(SwigClassIntVector.klass, "pop", VALUEFUNC(_wrap_IntVector_pop), -1);
- rb_define_method(SwigClassIntVector.klass, "push", VALUEFUNC(_wrap_IntVector_push), -1);
- rb_define_alias(SwigClassIntVector.klass, "<<", "push");
- rb_define_method(SwigClassIntVector.klass, "reject", VALUEFUNC(_wrap_IntVector_reject), -1);
- rb_define_method(SwigClassIntVector.klass, "at", VALUEFUNC(_wrap_IntVector_at), -1);
- rb_define_method(SwigClassIntVector.klass, "[]", VALUEFUNC(_wrap_IntVector___getitem__), -1);
- rb_define_method(SwigClassIntVector.klass, "[]=", VALUEFUNC(_wrap_IntVector___setitem__), -1);
- rb_define_method(SwigClassIntVector.klass, "shift", VALUEFUNC(_wrap_IntVector_shift), -1);
- rb_define_method(SwigClassIntVector.klass, "unshift", VALUEFUNC(_wrap_IntVector_unshift), -1);
- rb_define_method(SwigClassIntVector.klass, "empty?", VALUEFUNC(_wrap_IntVector_emptyq___), -1);
- rb_define_method(SwigClassIntVector.klass, "size", VALUEFUNC(_wrap_IntVector_size), -1);
- rb_define_method(SwigClassIntVector.klass, "clear", VALUEFUNC(_wrap_IntVector_clear), -1);
- rb_define_method(SwigClassIntVector.klass, "swap", VALUEFUNC(_wrap_IntVector_swap), -1);
- rb_define_method(SwigClassIntVector.klass, "get_allocator", VALUEFUNC(_wrap_IntVector_get_allocator), -1);
- rb_define_method(SwigClassIntVector.klass, "begin", VALUEFUNC(_wrap_IntVector_begin), -1);
- rb_define_method(SwigClassIntVector.klass, "end", VALUEFUNC(_wrap_IntVector_end), -1);
- rb_define_method(SwigClassIntVector.klass, "rbegin", VALUEFUNC(_wrap_IntVector_rbegin), -1);
- rb_define_method(SwigClassIntVector.klass, "rend", VALUEFUNC(_wrap_IntVector_rend), -1);
- rb_define_method(SwigClassIntVector.klass, "erase", VALUEFUNC(_wrap_IntVector_erase), -1);
- rb_define_method(SwigClassIntVector.klass, "front", VALUEFUNC(_wrap_IntVector_front), -1);
- rb_define_method(SwigClassIntVector.klass, "back", VALUEFUNC(_wrap_IntVector_back), -1);
- rb_define_method(SwigClassIntVector.klass, "assign", VALUEFUNC(_wrap_IntVector_assign), -1);
- rb_define_method(SwigClassIntVector.klass, "resize", VALUEFUNC(_wrap_IntVector_resize), -1);
- rb_define_method(SwigClassIntVector.klass, "insert", VALUEFUNC(_wrap_IntVector_insert), -1);
- rb_define_method(SwigClassIntVector.klass, "reserve", VALUEFUNC(_wrap_IntVector_reserve), -1);
- rb_define_method(SwigClassIntVector.klass, "capacity", VALUEFUNC(_wrap_IntVector_capacity), -1);
- rb_define_method(SwigClassIntVector.klass, "map_bang", VALUEFUNC(_wrap_IntVector_map_bang), -1);
- rb_define_method(SwigClassIntVector.klass, "__delete__", VALUEFUNC(_wrap_IntVector___delete__), -1);
- SwigClassIntVector.mark = 0;
- SwigClassIntVector.destroy = (void (*)(void *)) free_std_vector_Sl_int_Sg_;
- SwigClassIntVector.trackObjects = 0;
-
- SwigClassDocument.klass = rb_define_class_under(mUhferret_lib, "Document", rb_cObject);
- SWIG_TypeClientData(SWIGTYPE_p_Document, (void *) &SwigClassDocument);
- rb_define_alloc_func(SwigClassDocument.klass, _wrap_Document_allocate);
- rb_define_method(SwigClassDocument.klass, "initialize", VALUEFUNC(_wrap_new_Document), -1);
- rb_define_const(SwigClassDocument.klass, "TypeText", SWIG_From_int(static_cast< int >(Document::TypeText)));
- rb_define_const(SwigClassDocument.klass, "TypeCode", SWIG_From_int(static_cast< int >(Document::TypeCode)));
- rb_define_method(SwigClassDocument.klass, "SetType", VALUEFUNC(_wrap_Document_SetType), -1);
- rb_define_method(SwigClassDocument.klass, "IsTextType", VALUEFUNC(_wrap_Document_IsTextType), -1);
- rb_define_method(SwigClassDocument.klass, "GetPathname", VALUEFUNC(_wrap_Document_GetPathname), -1);
- rb_define_method(SwigClassDocument.klass, "SetPathname", VALUEFUNC(_wrap_Document_SetPathname), -1);
- rb_define_method(SwigClassDocument.klass, "GetGroupId", VALUEFUNC(_wrap_Document_GetGroupId), -1);
- rb_define_method(SwigClassDocument.klass, "SetGroupId", VALUEFUNC(_wrap_Document_SetGroupId), -1);
- rb_define_method(SwigClassDocument.klass, "GetTrigramCount", VALUEFUNC(_wrap_Document_GetTrigramCount), -1);
- rb_define_method(SwigClassDocument.klass, "SetTrigramCount", VALUEFUNC(_wrap_Document_SetTrigramCount), -1);
- rb_define_method(SwigClassDocument.klass, "ResetTrigramCount", VALUEFUNC(_wrap_Document_ResetTrigramCount), -1);
- rb_define_method(SwigClassDocument.klass, "IncrementTrigramCount", VALUEFUNC(_wrap_Document_IncrementTrigramCount), -1);
- rb_define_method(SwigClassDocument.klass, "StartInput", VALUEFUNC(_wrap_Document_StartInput), -1);
- rb_define_method(SwigClassDocument.klass, "ReadTrigram", VALUEFUNC(_wrap_Document_ReadTrigram), -1);
- rb_define_method(SwigClassDocument.klass, "GetToken", VALUEFUNC(_wrap_Document_GetToken), -1);
- rb_define_method(SwigClassDocument.klass, "GetTrigramStart", VALUEFUNC(_wrap_Document_GetTrigramStart), -1);
- rb_define_method(SwigClassDocument.klass, "GetTrigramEnd", VALUEFUNC(_wrap_Document_GetTrigramEnd), -1);
- rb_define_method(SwigClassDocument.klass, "CloseInput", VALUEFUNC(_wrap_Document_CloseInput), -1);
- rb_define_method(SwigClassDocument.klass, "IsCodeType", VALUEFUNC(_wrap_Document_IsCodeType), -1);
- rb_define_method(SwigClassDocument.klass, "IsTxtType", VALUEFUNC(_wrap_Document_IsTxtType), -1);
- rb_define_method(SwigClassDocument.klass, "IsUnknownType", VALUEFUNC(_wrap_Document_IsUnknownType), -1);
- SwigClassDocument.mark = 0;
- SwigClassDocument.destroy = (void (*)(void *)) free_Document;
- SwigClassDocument.trackObjects = 0;
-
- SwigClassDocumentList.klass = rb_define_class_under(mUhferret_lib, "DocumentList", rb_cObject);
- SWIG_TypeClientData(SWIGTYPE_p_DocumentList, (void *) &SwigClassDocumentList);
- rb_define_alloc_func(SwigClassDocumentList.klass, _wrap_DocumentList_allocate);
- rb_define_method(SwigClassDocumentList.klass, "initialize", VALUEFUNC(_wrap_new_DocumentList), -1);
- rb_define_method(SwigClassDocumentList.klass, "AddDocument", VALUEFUNC(_wrap_DocumentList_AddDocument), -1);
- rb_define_method(SwigClassDocumentList.klass, "getDocument", VALUEFUNC(_wrap_DocumentList_getDocument), -1);
- rb_define_method(SwigClassDocumentList.klass, "RemoveDocument", VALUEFUNC(_wrap_DocumentList_RemoveDocument), -1);
- rb_define_method(SwigClassDocumentList.klass, "GetTokenSet", VALUEFUNC(_wrap_DocumentList_GetTokenSet), -1);
- rb_define_method(SwigClassDocumentList.klass, "GetTupleSet", VALUEFUNC(_wrap_DocumentList_GetTupleSet), -1);
- rb_define_method(SwigClassDocumentList.klass, "Clear", VALUEFUNC(_wrap_DocumentList_Clear), -1);
- rb_define_method(SwigClassDocumentList.klass, "GetNewGroupId", VALUEFUNC(_wrap_DocumentList_GetNewGroupId), -1);
- rb_define_method(SwigClassDocumentList.klass, "ResetReading", VALUEFUNC(_wrap_DocumentList_ResetReading), -1);
- rb_define_method(SwigClassDocumentList.klass, "Size", VALUEFUNC(_wrap_DocumentList_Size), -1);
- rb_define_method(SwigClassDocumentList.klass, "NumberOfPairs", VALUEFUNC(_wrap_DocumentList_NumberOfPairs), -1);
- rb_define_method(SwigClassDocumentList.klass, "RunFerret", VALUEFUNC(_wrap_DocumentList_RunFerret), -1);
- rb_define_method(SwigClassDocumentList.klass, "ReadDocument", VALUEFUNC(_wrap_DocumentList_ReadDocument), -1);
- rb_define_method(SwigClassDocumentList.klass, "ClearSimilarities", VALUEFUNC(_wrap_DocumentList_ClearSimilarities), -1);
- rb_define_method(SwigClassDocumentList.klass, "ComputeSimilarities", VALUEFUNC(_wrap_DocumentList_ComputeSimilarities), -1);
- rb_define_method(SwigClassDocumentList.klass, "GetTotalTrigramCount", VALUEFUNC(_wrap_DocumentList_GetTotalTrigramCount), -1);
- rb_define_method(SwigClassDocumentList.klass, "CountTrigrams", VALUEFUNC(_wrap_DocumentList_CountTrigrams), -1);
- rb_define_method(SwigClassDocumentList.klass, "CountMatches", VALUEFUNC(_wrap_DocumentList_CountMatches), -1);
- rb_define_method(SwigClassDocumentList.klass, "ComputeResemblance", VALUEFUNC(_wrap_DocumentList_ComputeResemblance), -1);
- rb_define_method(SwigClassDocumentList.klass, "ComputeContainment", VALUEFUNC(_wrap_DocumentList_ComputeContainment), -1);
- rb_define_method(SwigClassDocumentList.klass, "IsMatchingTrigram", VALUEFUNC(_wrap_DocumentList_IsMatchingTrigram), -1);
- rb_define_method(SwigClassDocumentList.klass, "MakeTrigramString", VALUEFUNC(_wrap_DocumentList_MakeTrigramString), -1);
- rb_define_method(SwigClassDocumentList.klass, "CollectMatchingTrigrams", VALUEFUNC(_wrap_DocumentList_CollectMatchingTrigrams), -1);
- SwigClassDocumentList.mark = 0;
- SwigClassDocumentList.destroy = (void (*)(void *)) free_DocumentList;
- SwigClassDocumentList.trackObjects = 0;
-
- SwigClassTupleSet.klass = rb_define_class_under(mUhferret_lib, "TupleSet", rb_cObject);
- SWIG_TypeClientData(SWIGTYPE_p_TupleSet, (void *) &SwigClassTupleSet);
- rb_define_alloc_func(SwigClassTupleSet.klass, _wrap_TupleSet_allocate);
- rb_define_method(SwigClassTupleSet.klass, "initialize", VALUEFUNC(_wrap_new_TupleSet), -1);
- rb_define_method(SwigClassTupleSet.klass, "Clear", VALUEFUNC(_wrap_TupleSet_Clear), -1);
- rb_define_method(SwigClassTupleSet.klass, "Size", VALUEFUNC(_wrap_TupleSet_Size), -1);
- rb_define_method(SwigClassTupleSet.klass, "GetDocumentsForTuple", VALUEFUNC(_wrap_TupleSet_GetDocumentsForTuple), -1);
- rb_define_method(SwigClassTupleSet.klass, "AddDocument", VALUEFUNC(_wrap_TupleSet_AddDocument), -1);
- rb_define_method(SwigClassTupleSet.klass, "IsMatchingTuple", VALUEFUNC(_wrap_TupleSet_IsMatchingTuple), -1);
- rb_define_method(SwigClassTupleSet.klass, "CollectMatchingTuples", VALUEFUNC(_wrap_TupleSet_CollectMatchingTuples), -1);
- rb_define_method(SwigClassTupleSet.klass, "Begin", VALUEFUNC(_wrap_TupleSet_Begin), -1);
- rb_define_method(SwigClassTupleSet.klass, "GetNext", VALUEFUNC(_wrap_TupleSet_GetNext), -1);
- rb_define_method(SwigClassTupleSet.klass, "HasMore", VALUEFUNC(_wrap_TupleSet_HasMore), -1);
- rb_define_method(SwigClassTupleSet.klass, "GetDocumentsForCurrentTuple", VALUEFUNC(_wrap_TupleSet_GetDocumentsForCurrentTuple), -1);
- rb_define_method(SwigClassTupleSet.klass, "GetStringForCurrentTuple", VALUEFUNC(_wrap_TupleSet_GetStringForCurrentTuple), -1);
- rb_define_method(SwigClassTupleSet.klass, "GetToken", VALUEFUNC(_wrap_TupleSet_GetToken), -1);
- SwigClassTupleSet.mark = 0;
- SwigClassTupleSet.destroy = (void (*)(void *)) free_TupleSet;
- SwigClassTupleSet.trackObjects = 0;
- }
|