From 58dccea28b6de724a6bcd9445e4b612cce1c1031 Mon Sep 17 00:00:00 2001 From: Sven Heidemann Date: Tue, 2 Nov 2021 17:45:45 +0100 Subject: [PATCH] Improved docs --- .../doctrees/cpl_query.extension.doctree | Bin 3288 -> 96646 bytes docs/build/doctrees/cpl_query.tests.doctree | Bin 9755 -> 51071 bytes docs/build/doctrees/environment.pickle | Bin 184498 -> 201229 bytes docs/build/html/cpl_query.extension.html | 215 +++++++++++++++- docs/build/html/cpl_query.html | 6 +- docs/build/html/cpl_query.tests.html | 197 ++++++++++++++- docs/build/html/genindex.html | 239 +++++++++++++++++- docs/build/html/modules.html | 6 +- docs/build/html/objects.inv | Bin 3403 -> 3853 bytes docs/build/html/py-modindex.html | 30 +++ docs/build/html/searchindex.js | 2 +- src/cpl_query/extension/__init__.py | 10 +- src/cpl_query/extension/iterable.py | 39 +-- src/cpl_query/extension/list.py | 4 +- src/cpl_query/extension/ordered_iterable.py | 6 +- .../extension/ordered_iterable_abc.py | 2 +- 16 files changed, 691 insertions(+), 65 deletions(-) diff --git a/docs/build/doctrees/cpl_query.extension.doctree b/docs/build/doctrees/cpl_query.extension.doctree index 8b029a103b1d44c3a192307fcee18738841a95ef..5d04ffd5acf364ca1e65d051d09070b93b443d82 100644 GIT binary patch literal 96646 zcmdsg37BM6l_s@hR%Y!BRRUE=0D@UqmBkKSQ0zN&sh}VNMny)xtQU{Sh$I%M97VBJ zMtYvu4T0TutDm+AsHi;-;-@w^qch#^+OCXC>nES6BigoYw>pmYoOAd4-g)uvjfgBV ztnaJH7jHTDoO91T=RfD(cjJzc`<5KCeW@z`{|+@1|; ztQQt^>(8ibmBwcj&fM3PB(&D=cZ1)7H@A=s?AC9{EB8!ZdK|v z^>{cEj)p64>P&>=@kp!Ess_fTcvE?YN?cR8KwNeW@d)rf`cx9>8YE-7$EszqWT2`5Eq690- z)l#zwC*gRcR+{BUW7F+9{bj0DzPS<1;63elMXR(QFLlCo;nr|9wis@Ur*?()*Ys7EWUpi!Et2F21;nd^3o!;M*vq6Jl0ea~e`2QUEe?0u30PTb)FsG(Ua$2a3LDQ642~9vhTh0IogCKVI;<97$gf5 zY$y~ewOmfNcj6s+nzgy5w9KsujAJ>to^r}ICg93iyi#mdV8pfB4a;?0WUxNb+Ff}5 z9QvJ7^@i5`TyRriPhoGp7VIe8TB^2#rg6DiX}09$?QA??L+e;WrCP1tDkc0^Jj(SV z$Bz7}N608x&dqKkBpyF7TixB9E1@?Xn`;EkpmA%!22KU21j3yRgZ+Ug0L885ih}@x zK2ZjZa3nrD*FdB~9qzPs{mN`zPsFRhT6ThB89(tFWRLY9`yQCyDx44h6At`WXvK#w zXC4mZ8fS7Pg<548on+rSXEXX|-54E1Mmd*b*jP4$cT)^*WDG*&1HFS^K(jX0e@2f( zLX8MM^b~!Q_F-AH)x%8fIBttc4K9H=hVgw%3`e%M-k%ID@se7nWcC>L*2AEThnVRd z$~1tD%(ZLfRy#Ftm+V$;?M}4y@pM~r>9!sdZ2_}|1Oa5>ebV{HYi;kN^sss^s7-^f zEgk^;V5m@d>n-t^d@w=&i6nof8UT_7Gt>3iQl-|3m(I-tih&d8_W;8%WACtATBXMR zpap(LH4=|Q(BYx6;{XD{L(T8z1oxuuzYhBNG6?>-5`4)GO2s!MMEF@sgwLcp6BUdE zzaa@K#Vlvy*aq_dQWOpBVJanjN^2zik);bx*VIG!w1b#nvBGL^vc-(n0hUhjl__ap zBc6|>G$PGA!{iQ$Hz=#G&jGM&)f|DxH44lI2bkg+yNOKNGUDT^+a!^*rSyu z$fiYy+z}$GE%sX}y8dEw(!GeB?S}rAVy&CViE-1_QZr2|nt*22uoeC$D z4p4X>X|mZZ?=f4>^*!ID+P^&6ey+n2Y$bGOSU|$(8Kh z`}JVcr^2n#ilq>aSd~R2jB2dL>yu4z7d;-Ys8%pnt{QAb8<7qV;wuD8x`xD8+v-ebWar2!7>whc+eLzn}Y=azWs4g-_3Z{3Y$ zjWiZ*ebHvnuykM1x!8l;Kq%*bKGCxiQ33miVeow0*h5etZ6n%=R1K6LU5O{sC_mE_ zqEp}jW&_cwa1`DXorV;+T%ymTGw=!<^=y!}rwrGVuIxo4c>6ZbbaK=3 zMEqPM_eW9_Gmv%eE?fwQSYF*;*m+K2s$PdCz=kHmNIf`Snt~!)PJ4h!A)MYa>SdNd&UgckG*53+kCPPX_R`6zat6Ns^ zUWzP@_5@i1NQo;tD;Sfu%q3EBRwd>723yMiL9t_?BGZ+1$;~zS?vaf9udUHzRI@aY z<+5h`H)%4ED@ONGWDRNLy#U>4^ODf15kS$p)-*s!yj*z*s^-Bi+NymzhZ#rJ@^;diB>{-Z%C%|5^UQ%ElTjWolSzZ9AVx(w1uMBlTk$KaNE_c*)arZ&534WX%NQQt%EPA&oxLM~+WbL70JZsnApqdo4juzR z0B3^s&1}aF0i3Fy8ip}|osdERcv2z&IJUjurAj`31fX>jU4mo|G6J{>+H^z!*RxyQ z5Wvk8SsDQdvIGJUR|bFpUQMxM#7xI9<%|# z04Vc{erPy!|Cs-toaP;s=@auG$Z0YW^C_XVYNK61Z9!u`I0%eGLlX0uzhg1~Bv4FW zF<%mZn6I3fR(xK}kB)-&qbKmAfFJ)GKaN&M$H39xe*q_zb+MQ>!w?-I$b!(zu7D!97>Uvy+L2J`)1{GXOJ<WzL39%aA~ zW250aCxu58C`0I;#qg(vFKbT`d3!W!BERF#XI@$O-$JWiXoW!mf*~&V#6z5ln3MzE z@ov?b(JRp)wnneOKgI-EcFG9S$SVF%PzqlApBK-kvJ}H4@kvp3kn#frQ5LB?#tnkp z3r%te(!nDJLD*3S1c^AiST*jo%y4e$R+tgoAM}nxPW8hfytzyul0V^awPlZjdtP#o z3%YKQ6bk{TI$nyjwjL zKeYIfm+Z4dbz+6E9XV3fcQqE-{PEu@S^cXNT2Il(kW8XVaa2yfC-H~V{U!v-oyqtz zaFy~9bS(S=yVVV1e2*eaLkvNdfEeP6h8P>u1B7X4f(Vg%5t7}T|4wmcxWue5nOJbB z$-9NgU!;_mz0PTTgy<7md4g;jZt0SXE&j78+C7LbJrn>3z4kP{IspSMEH91H;%BdU zI)P%boA`E^%9w}CGc)HkPZtpEbzSq6+p^!9rx#J}_ps)Pvz5@DVF}XRW995KIfF*t zik7qk~b^iNS7dWyb6 zz`BI+U#Cd>3$Lj6DE^Xc$Ngi9!*0UoIv+V1P5Bi4aCASorvYb;n+TMyiqpdcd0BG% z04S)h0<|On*`dO*x&z#@!;PadJKTgvEIVXJ8QGyorFzW_&%-6I@GecW_tfw-uhdYs z*GF#nJk#nVy$SZ7f>rKS%T0Pr`gTAExYZV9WXGg$LOm6~d(kI-QhTX6=`nqUPfY6* zHdH=KiR+*DX;nqLkxU}*TVr);GRq^bnmOGFdsv2F@y%xah0vyBR`>FvdDW8 zT~mf-qigTAXm87D-Vsjv%uD}OPLo1n8U87uwQ8edf!ct>|Dlv4R`GwRydMJq$AOCa z0sxW#008CCbQib*fX@LFygdAQJYoQV9W4w1*i){zYpvd+|H+=w9~#RH{qX}s5HOhl zdDGJq_Q*gD6YJ$LX+?kDBR=_|Fjv0?^G~X$hD_ah$@~bjSryy)H#@ffyOPo$mS_z{ z|Au4|u!LF{Z@gbiT{eM9Zn1gw3TId{#%^_kB}Y(XX;>o260k&E(Xd2UP&0suzQOLG z6Df9#aPAmSHF-C1vV&@t1}9ur+kIz&ljRgyLmCsDQ08TW6IOG|&?iypx<03IM^$=M zx?Y^qVgi{^5^KFi-+@6kU}Ul(<$o0{8J-x!Fv<6XBXgK>KmKa=&PActo}CIBIL%%! zm)i~44yGJ5@heM-)RepH?P}accR;rTx_%}8@tt%3F7u>Jq?e25Q@NKhV2n9;sR000 z${lO#aRXKNL6aO*y$O#PsA5MMpeo|*_A}>x-ZZRlsKDMVy<;oC%8G0+6JCi@QI}P9 zFEWRXq(>naAJEqi#QA`;sYwruC7AcBr-q;eBh{QP!RRZZ1fx!96d&updpT9=lHSU23C*EVJ!i( zC}ry|jUIr08!*hW3P8#`;c^CiJ7Mt`fE3GOHQ+;_qP_}1k^o>820yp2U0o12M|o^7W=>|*P2*GQ=DM0YVL-eJX>td zzZYXA@giQ21(^!;mm4saJ`&MNpq`4~yXfm*TG1)IveLZ95sP`s_PPg@(EgZ3D=fMV z$s{n#N^JqWM5NzLNM17QGGdormUeHEd-mE)-wmxfqLn{ox4NN~w@_qhv?9n7XhmGn zXvMRL@Ii_R|1juLM0h{dA`MTtaJD1Of+u%UWDP;&&_j4aS&|J;JU3Yp{)2!h{)BAX z`&N!vjxfca4L7LrjU4t8P=!*w?%rr0P#Z8**+Pd4RTdgD*UJhiQ=q24;EE&wa7B4i z-3@MVWqe%1m6dqJ;0ilh7`XDsI?5F54cJAV?V#CvjpYI_fIv3h2Z*_uwn|en9nBb? zQH#61_y%Cp*ZU90Lf85uo1@fI@uNe8Yz*zEK+fh23*dMsBp&VoMY zQDhB4Oz1;dk_~-!_w8!Zg&O@rh&?9m%i-Ly3p9B*)bi)7S<_Urm#IHQu}GV$Ae$E7 zAAQ+sdX(b9=wL@R`LofhIurcfLsSfS+;&SIszIVFt$88H;OBmIlOU@ zA&%fysJu!n?{ zfPs@PvyEq4!v=o>YkI=o45A`_^k;WL-r8j!57{h-Vx!`#?LgP8?1p2z@8dD9o*lM6 z(EE54^7Namn7KV**3q`mO~}<+S(oj8dJgE?5pEXPt!50*UYdO}MV1aaf-C_y#T5-V z$E0y`8Pj23-(X958O4r&IM?Le!t_N{vo!kTvf2(h3w>^*$Qsg^=u?lSXe&I%@)#R^ z8oS!36-xcW#w|I`XJMmg244GN7v)dJ_-yPko6~Bd?nTM1wHqx1Y6He5*2W&fCyEI= zp?VhBN3j>OHsrK7_Bi!o=BnBL9fhg+0^cnJf5%Pa#?8V^qdv>__>c}ItBwjcK>al3CABDVdI+5yy}%vE=r8)|tNn&hbEeR#xB z3p>g{EfHt8pCw3pW-9R8iM`jx{ML4}#xik>n5FCj2QHOv6n-yZQgRMEdiWN)m>2GG z2Ji2MUF6%9^kz7N_X+jX5G<({-Ne9|v7}m@=HO|Be^bMbEi?L>lG49!r8N|N70D#( zR!b-NuMyfm5S0--C|Y*x@Xv2E7Tfw0vQ_pkAZrT77-D6`q{KEF{%p7bfuH8Emk3^z z;BPdz>P$lVtJO?>G{Sow=|2)iT z>Z$m@F8X@upFzeHI@Tir(V0+`slp6d4m{wtQDU#_YfKjv-X#krBSr>5t+n2*$ zB7jkf*FH2l5vUC~fNe`*TEiWxqVP}-N*2~m#<9>(Sd#=Gtf_IOyTmQ5-2+VU%<5h| zVquLPElgNDZwA&K1f_D=dpPrZu|u}kM;N=nvO~!~@k(m$rc*urw9~`FO#ITShtyL; zu#{MLQX;b&(^q(y(kJZj^f4u_e|XZWiav^D65)w@Cv}joto|dknF9W|eC{O_4RE zkp&K1CrO!?jaUY@Tivr)6Q*Ra<(M*i?N)aLYtyvJ>}3EaQT)+1DafYF*KDPTZCmG3 zWc|hVSc8%hy6bLrS5y3XicRiTw~r$1FSyrkb$+5ZDGohFSNqA?z5Z&7w7>9*x|>5u ziQi?nx(>x*H{o-gk6flf`4s(d^iFV30|w*P+e#`b%YxG4e_KhhEG9AD1uE(bd`kiV zz7=ZFUEl`39|Hs7;QMhrV&Iz{Ee!ZRyISgJM&l%}Iuf?k2k5@U1l@w~gIq8A2K0%4 zz340IsrX%szFx#TDFM2d^Rpaq^DnmNeM*Vw54N>>q8}ic1labP%%Eu5$jZO?p8;$A z3E3)Jx@I8A%%2UnsP=p4ic}6_#L`49h*G@vebEAJ8JxB)w_kA6TujH*f|N0SlD4l3lnxOMSo(H?s_l%ob4TfjAr`?MlVcS zpF#HE&tqHxo#r2xE>Ta#e>)U$$s)Ao?-oZkXsGx7^F ziSd{)6u(J~kEo}H;Mb{HUnNqhW$Yx+q}Z_?k3Og5^N&YbH_>O2Od=jR{f?6{jp1~^ zxl}!OE6(o&SEnRx9n4e40?m>Jt!{nB_rp3>GZ*DimVmI;aP?Yhz zPkCnM{JT$A6YO>U-KX4^{eJgpnrgp?-+kh2C3I(4f}9=0o$0?x4QJwBoJpfxo(-D^ zHk0-mLKWs@pyOEfnn`;VYtwBYzlq|Hwq!vzJ&=i+wEHQtMsGNZ?J<*<61wY5+J`Cr zJjEtw(*74k*k5q3nKVDqpP)GO6kW}A*`E6;inPD*in^QQPKn=TCha#AhuwtFbv|+? zjq)k_;ph=?PXo>f*CkN7$^!3S^ko?iaarc~C@7|{%uf=4%unH0t$4T0@0fKm^E(!g zSmwu$7Ao_r)DBwaSE&sw^8>D*xyJ(Wz2ne!7<|nQUHuHNO#hHHq_09ZVol;(Q z=J%Hri?s3t*)(9x%KRRnX!jt#XXcj{KRfgL2*qMI@$FEQk@@ABnRDj%j|6*NGr!!H z{W8BNsrGxw{5V?)-5Hi(W`5TbZJH^TycaV+%H=Ik=C^b`;k*nH98(~#%|+1{%A`UWYYtg$o!6_$oh-zk@=;B?wa|XPVwg{HktWdL=pBE+$;0*6a6}hLr>9F zZf3)ffFkWLyrS-w`K83~lKCB=IP4~TuJe(ZALUc@!_g@)CKojG157BFPYyxm#~?1t z{7wVK^p*KZ0+9JB{Hhi2mifH{%!1GP{S6+m%#R%{Oy+l9y)hj$ic|Bwr+-81$5XCir3X)DXPLB-NZs2gmdk@gkEtVSD7yC~^H0L#?Xl(?}+f z7%udSOy7ex9n-#Vvs+ETlb!bcj3P@%06~^W`@|KU_UT+EW5uVw!S0~t8we@=L#8J0 z7Bdf_nx$t`xvaKFrGPa~zdS)H*O0~p;gosVAl&bFTrw2zN5t-&os^agaU8+B9}8|B zxIKq8p=pUuC}ry|jXntdHehsOz2Tv}lY}UX{|yhtvUtPe5l~TII7JcwoTA*R?gBTQ zas%`_$0;}B5yL6$Xkl>5l~M_?w|lb;dqTp_V!cC_^SqYZ5>5AkUd)XUCkfKeB#>!C zSNa2)ThvqWBa42fhtPNm(`+Jd;_!yNX8Y>bDt-7P9j(jgHAvW$P}Dsz7bPNarYX2A*Lm-bK-{KL;6oxbKz%v*?ughUA5kM(rYd;+w57Y)6KsOPtKuu;0lgnd)aywdk)=NzG_T8JV z=JBO)!sUAlFSzRb3okx_@6J6DZi&a_MZMO?I0wbHJ48eBC75tL9t&pY!cw!+?A+Vg z{_4){or!QHUa6_eB}8MgJx!bKEBs$_Oa+ikbQdltYP~v^i zB(JQzACDNaU`H9qBI4}!vnBXBO(>^S`v4cGc!3MvS|+yO9zN_6u`e@+sp8!;U{Ch> zyT1P*OhX!d_MY)F1H)axKdGJ?g5L{~9mOK1j@hH~JP+COs~xewt_1au*jh=^*N{v< z5u2iAM{K`07p2uKz^}Rf0%YyxXdENAzdUY*{-5Qrmx$h!;RT|E_la7YG`q3=|2 ze?!X1BormC*dgt5r3wF#rnMMdhGhB)X%sCxq#ev(=?p-e0Yoj|HR2`KtU3RXy|nZI z#UefbAjqbdmik9k+j#Dzc<@il{n>B}?rC*quQ`7+B}zAS+HuEBc@mg`vTXfubP_Z? zV9ao2S8uIy|Kap}tO{@nD6KCfAqfDIP_9dNiW`#n1Tevq+E3yULlW$0VUWbx&6_K8 zy@Ln84I#0uKJda-mIWf;i63|OK{EYRp}#E*#V?_KLOnGE+d}fLN~E*P`B|RK@-MdQ z{)rONKkjSwME?iLB;x)`-Pat3JgAFhiA&}lB_r&b1TNy6&GeE(iLgx1HvbM7g96&) zs_7-!ix$^WWNF_o$P!ce;)V@LMdB!Y4jE7w*dnY zYa>wRk!0y&@oxkw+$w_`Uqdg~PvJrm0Jxz%rdGWh+;|1_HisLx;}L@!>}X-&#`&m# zB5vK-JLWjuC(KW(2KxXW*5;pz;4_6j-UJ=xU!1r{Jr%!a@fRngm86Oi<4XN9rW#Fd`G$ag6w{DYnc z82J{}VmEEt?lTLF{5OiMA&8vDLNG#E(jo&RW19(^GsJP6O<4#qvOI^i1Q?-|t-CaO z1N7T~!N}%hPRfFts)h`gt7Wj{ji98yV2LCEutfPz-3e~6nxl$TD`4*Fe~@jXH`- zK7Z7qbrZb|$s|yR(*~^zx}j?uxN<}%x3F8?(8+5kvNSpoWC?U4u4r^Jhz(ueOmXHP z8hxj1?n@~zd&=fvibYy^f^2%qM!%q88}mmg+C7NxxvfuH{Ol=~&r>XR6W$DUA0s|NTYi8UM`hv+AiKnE&Qo zl}P=T^Rr_9n|-mp?msCJ{gXefp6EMBCXxIt-2C@1p*6>(?&s`Q250WOW&RNMkH4_e zWg>j(vk3aMqZjmv>`q+K*&V|p88fp43ObBp!ap8*prAvk7U|kE7tZ#S6ktYh{WR5E zh9DA%Be>FL%B|^dN(o<2FcGeFoSq0bE^$CIuFu#$_Aiyh{-{K2EBXs0 zbI?%9`=K>QRPr8nt65~pUX}NE6j>UK2(kni5m$N!BVVSN@DF+(VB`x_i!>PF!rAUK z3yeHKku?M{!3bqZiwunXHbvC&D$) z;*It{0VVYXOC$k+CCYc|PH=-I+YghlfZRhp2MsH?mi#7J1NA-|dijAt*Z=T1x5j zZlE?`7i;agB0EkvSfO~9Po0f@(9gnRNdO#|>Q612o8x)|Fv0VwyYYxQE_Spqj_d5! z{9I6&@Tq_n<{I_6pwXJ&-ibZyxX@M~F3Zl_87*)|6QS{{vSh8GR=Mgk_CR@1bhh8S zNbgin4MQ!Ksfal!?Z}s7hfD47FScSHRU-OlJz71{hmZ_wTX&Cc8#nz~y1Srv(_vfk z{Le(wl+R=A+Z=xm9vg(uW2D`D9&*~Avd1Z#d*J=_aWClKwBS z!Cmri@rb!(cC;`qdCzTO(CA}s?PMQkKFJ#E!zo*(EzUV#S}E5q9n=}NLl5tUKeI;Y zdi7NNz@mT0Lv&cet&fP)9G#1AwwpXwN$Ky{wT7Z&kPK`69dba%3;p{Te*|r&JUm^7 zIgQ=wR@AzbB1;#w1X-e}C9deAmR=N?G4G>qusi4`iXDIKuF1Q_vg@g4yD8W9pwytk z3Ad9dvW7G=^}`7_%Dn7E$Zw)5L-Bq@?9RC}M;yn*%8v!N4*ZiG))EOArEJ}$(JG)e zU_7$HeA$CLDhWu2$KNtUvIdmXSBfYJ03uP2R4d;=BwhAzd<2-_c;rKP#PA3^>WW9~ zR?JZgeId4&4EOQkP55%=;q6Dn#*!mtcn!5l;iOL}zCNk=Vn<27!W}Z}(k)DcSH%TD zE<0~&2aWli!GTs#YgX#Dot0M5C{0y^ou#QVv?{homBTu%6p4=Zz((;z~RJA zY*E?DaBH|)2=_cFRF1%Q1gm8H;(&4@TrW?=hfx?x*J8GGxk0&&=&PUwaBg45KTuYX zGH1VxkAq?zJn=>KM2Nhu0bYCC@$8DYFk7E)SA(-qwJCKmf#Re1Eju&s2uJs}IwfRo zkHuVk*8+hhlZCR2dPt604fHnrL9dgR$>EtcBX!c{4qHu!DuHPfe^>aY zWQF||ma?KvNG6d(EaxMMrx5&$-S#m#ZFj5g>y9$o))~YZJsO*^HNC0LVOfO4of@Yv z;j3l$@} z36~_UP%eo918TKt;gW|56)QJH^JD)tma&|r!5$tt!KDjOXIiG8(_Iq$XoUMfJ3?oQ8pZt5V z%tm1_{bcl8NIM-WKV5R;ABCgQe=LET#B*>cK};`0or6P7RzCT?NNmXooeBE~Lr%M( z)WjTvLxkP?CKK)lxy6wH!OJlY6mAieHHJCW)* z`!-vGpQ?}Ufk$Kbk)#}R;^`6$*L$X`)!Ljw^lBTlw2Uh ze*ZC;E=n)Vs;CC*eCIiSH1Lm>Iqga-Q05_@QV1vZuL@9;CNS;`YHK@ zT~F1_#~)sxdMd?*Q+<_u@cE5t@D9^5~w)w$#0o z=@t`fAau9zI$O7L=|yR36UD>^Q{{TK8kEuTHz#3sVp1-T=(B3Nd7JBCk)RQ)rW@2# z!)$YQjdiE87RQ9ZhH~C)va!OEk%}2dj(mdNFuK2BFQnT zZky>Fn6MK%H{lbN0Iqbg)mA{2;?&3-O{5<_rD1;fBX*@#YU~eM9fQ1Czl`03I#uNi zQyR}MuiQb&L2F!)O_x^=%TlX`$ZRyA7f^N2Rhgj?Q=Wf;oU>QQ}4z4MD*)oi4SS6-V|`t9cq4A!Br+f=X1Fc>_>d;1S~3Q+yR3Mb&sK}rDmV*GWUg;_>_dU^ z^jk9Hr72kTR4TXhOHBHV?R-v0qjV~j$oPZV-^uE!Ka`HuuQ#nww#;3-`fe-kVx6+!7cul?0Y8Hfc za9t#>3NAIvL2a6?N5&d>VQRjB-WZFz(j)sns4PADA~Lu&`n=#%CO>v=kpWL9@gY9N z^%*56%;>F}s@BUl!^-b^%bd;QgVdgIe-;m1GQW}qYMr!=@*8ydB$j7@>+eCU5C@eT zh&RxL>?G_b$SaT3`n4sc5mui0DI;tv!7su3F+sspW0wT$SMaE=lEsdb;r{?nB@-+y zo=Bb|(Pbk_d3w|*9lw!>7*BmCM=pHoTW}9FAZ-HXF*yOiEYY{&nw*`c4B`x&S~RAq z$qC@J1JMRECJ7iOqt5|bhdn!CG`pnHQ0YuoQ?^MR3p9mE9q&d(bH@zsIL1^z26r?; z!O`G$!J~sQI9K5l<~Xjp#m5}+sm(c3=a^&n=EMu#(uac`E9`AQDCXn4ygqd;@X06S zufroYAHhU1D=AI~GK35)^WRGud7aPET2u4HoTto>4ZgCA0G}E1 zB7h}iUOnKoX=g(yYY~?QZUNi&FAdD9r{X`n?$%X;jp^|y0UUM71|)YV9r@P|w0@&k zAsJ?di>G$*Cg91jc5n~7)vb1LKSh?V9SE{S?Lb^P2(^QcQtTS3wPUt9fZD;M6eo1; zfUC!jg(l{Z^#H6L+)a@+1eEt;?SQh_p{gA`nIo)YZyuc5!FO|*P1Fvk&e0|i?FVWL zS35Y)DMYF=!XH*VVHJf4^y^wtIEkz%XgpY8kc}!S^zft#SkcO(fW@uR82)jZC@@mZ z3W~>T3M1lqhpe%`GQ#1|kbfEBImll3GQ#nUa6ehyF$4wE!*(enoCuHlXLU>Asr)j6 z=p`&8aOG(S(4~xEJhdf9E+cP~W&r6IC$Kom2rpz37`3MXlo4(OnthcKUPh?ZuWt2H zf`X&Lh4AQL49>TVAPfr&0=!#%%n_g3njPOR_la~?x z43AhDfgNR)5!8sWTQYkTWfLsQH95edS|@5hnEU3zTNQ_IQyj9R6o+iF^ERH&=td@@ z-@(Fqw(2kS)`2K6WbMx4zBsAtTM4j|U$YZ$f=Wk{5!mHL?g)dIlUtmmH-TBk!ytQ6 zU}-AXF+gxU+N`%5@D5D)Jm{8iNxZh)ZopeHt)e);H(o8zR4cWhvo{`V2CWuM4>UXR z26(xu-KtcZlQWHa4fe8`?!=?lvTZZ;OEv5E#^d{g8tiY=syE>I@##`4XtqkTbMR#q zZw9uNuH6h@SBkIgMisuTY1PZcsZ#l7yb8^Y0AG#yPP}oZUT@W))^A+Aa!I_V2}{pw z?b+ginR;Wk183Ia#wv5ga(xzGNNNJft^7>DUr}lnZ>zMzB74g$z{_jI1Gqy9JF&VE z%)ul{u^QYOR6AELjaP=Hs`@$-ZwL-lKv(dxQ@bf|8i_}ygQ@m@ptly^9s^y$9gUzg z3unf0(L;bjbzUE@t<>h)ts=aHRL2RIPCVXj&FnmLXR`vw+w623Cf#KZA=l%WZV3PD9xkf{@| zsg`Q{+ok;hXnY#JFAZv)cvB-N!#IMv)Ew9cG*e-U9WB>uGax2tq%vKcgO{-?2cRk! zuPwD<^J0A}URnX8S~K0AohvHC1I4lv6|lKRtyIOXTgT3Tc56-Setl}L8MLSC#RIcw zQtRREzIrn#nolw-DYuHZR+<%VqU(y&l_qY-1cC@ISI7YoJ}+L4MK%}$>{x<=eq zoT*enxSKlh+PPp(zhH*Etj04_@UmwSZ96W6t=3#~_pV*H-F6$iq|yrOwaI#8|E}ra z)?ILCb5|$cj87m%e4^M2;JrE+IIwIP&hI?##8W{nYa27=L^F6sH?vJP)2i2DlvaY) z3~MHA%~qia_)(B47y{F+uyf^Dd?XmuY*CFZ^?qEjIfvbQSGis!Uu2jK1iM8Y zO@kq?YLsqMUt!>_Z_dLDfCq|UWq(+O|6r!et97*S)y>%wj3+i#*MuiGvG4qA5oYm9 zLW4(^!xAnJ3L1P^L64#TDZ7gt(R^t2Jm)hwOE>-ZUoE$ygptQ)Nbtn0F1}DCxD>` zRs=t-R{^_j75Q3n*5@0bA+U-TI7HCRbTHHG+z!6VI$JBvf`Pzkpf;nv;A^UtX?A`E zp5(_9(FZV~J&YfpgBRnXPvggTAXr7;#E%E@!u{~kj>qvSe3KPv@aOijXZEuD_p*Co z`;h`(MS|gKMh&(oy9%aHN5zWxdpq_-ncjT%Diwg_>x1z~r3tTubzYCr{8g!w;o~U$Shf;A#_{7Z{P+ZZoVW@;PQ#CP;>Sby z@rBj!@fG|ye+_(Gf*+6I$4Btvly&fNCVqTyJ$!r^KdKwx;}-llej|MBz>mlA9BQHtmww7rtNr*88Mg> zTLW*;v)G8SiJ!r!F7M;s(mccOgSZKCV|J=uRY8c|dT8RLx_jKBI4)ad4{fyQ13+uE z5D{)p(h^q=iB|&VDA(JFC_3>fV_{<_UU8u~e=oS#*LAMO_+Dy2C z+njGgoR+6G1RmiF4-zjK9RA`Opb>~7!E^xw6@-lfi&T?xnx@Mgs`$lb^Ir<1vK!1t zC(YjB-x^)VZUt`FRGFKs7TMw%gV}h~3n27DKnWTvcglZ~CGwihOq9cnEboSJAEd&_ z5afTjV#7>?WX7Wdj=huN)mFOaq`%4g&?yEh)oX+6;!$N}^Q7F4{(MWQ$Gd1_3g zs+m&6SWsJ~ TPO~&*DB~ij2|Imn$;* zvt@W?NN0FVUMQ|MIfjYD)-{7MgE>PcLpwv(o3}Ixp|eLKxgbZkur#%(Qa81tBsH%% zGe1u^C$qR@N@9jm?34@@py?YG8KtMUnK2qn-)_d3&z6x4G&>PywqzWV*`mm1Pv4uy zsLhzT{bd^C2_~kDMccP!GR|gp%Babx%y7!E&xp>5$SBDuEbZaUOUz9zsVqn>o&xev sjbDb7Uq-ZFMu}f(h5|^WGJ^-GUI(b&HKQ;iZu_@FMh?d5-j$5j06hO;MF0Q* diff --git a/docs/build/doctrees/cpl_query.tests.doctree b/docs/build/doctrees/cpl_query.tests.doctree index 427c6a5a6cc1cc7edf8103696aa01826fd183594..b06e123c4813ca2e052f340ab9465b1e3ddb1bea 100644 GIT binary patch literal 51071 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 z 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 literal 184498 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 diff --git a/docs/build/html/cpl_query.extension.html b/docs/build/html/cpl_query.extension.html index 2e054a66..1f9afb93 100644 --- a/docs/build/html/cpl_query.extension.html +++ b/docs/build/html/cpl_query.extension.html @@ -43,9 +43,9 @@

  • API Reference
  • Query Reference
  • - -
    • cpl_core.database.database_settings_name_enum @@ -478,6 +489,8 @@
    • module
    + + @@ -761,6 +820,10 @@
  • (cpl_core.database.database_settings_name_enum.DatabaseSettingsNameEnum attribute)
  • +
  • element_at() (cpl_query.extension.iterable_abc.IterableABC method) +
  • +
  • element_at_or_default() (cpl_query.extension.iterable_abc.IterableABC method) +
  • EMail (class in cpl_core.mailing.email)
  • EMailClient (class in cpl_core.mailing.email_client_service) @@ -828,6 +891,8 @@
  • ExceptionArgument (class in cpl_query.exceptions)
  • exit() (cpl_core.console.spinner_thread.SpinnerThread method) +
  • +
  • extend() (cpl_query.extension.iterable_abc.IterableABC method)
  • @@ -851,12 +916,18 @@
  • (cpl_core.logging.logging_settings_name_enum.LoggingSettingsNameEnum attribute)
  • +
  • first() (cpl_query.extension.iterable_abc.IterableABC method) +
  • +
  • first_or_default() (cpl_query.extension.iterable_abc.IterableABC method) +
  • first_to_lower() (cpl_core.utils.string.String static method)
  • first_to_upper() (cpl_core.utils.string.String static method)
  • - + @@ -981,16 +1056,22 @@

    L

    @@ -1135,6 +1232,14 @@
  • main() (cpl_core.application.application_abc.ApplicationABC method) +
  • +
  • max() (cpl_query.extension.iterable_abc.IterableABC method) +
  • +
  • min() (cpl_query.extension.iterable_abc.IterableABC method)
  • module @@ -1110,10 +1195,22 @@
  • cpl_core.utils.string
  • cpl_query.exceptions +
  • +
  • cpl_query.extension.iterable_abc +
  • +
  • cpl_query.extension.list +
  • +
  • cpl_query.extension.ordered_iterable_abc
  • cpl_query.tests +
  • +
  • cpl_query.tests.iterable_test
  • cpl_query.tests.models +
  • +
  • cpl_query.tests.query_test +
  • +
  • cpl_query.tests.tester
  • +
    @@ -1163,6 +1268,14 @@ +

    Q

    + + +
    +

    R

    - +
  • set_background_color() (cpl_core.console.console.Console class method)
  • -
    @@ -1299,8 +1432,78 @@ + -
      +
  • token (cpl_core.configuration.console_argument.ConsoleArgument property)
  • TRACE (cpl_core.logging.logging_level_enum.LoggingLevelEnum attribute) @@ -1331,7 +1536,11 @@
  • transient (cpl_core.dependency_injection.service_lifetime_enum.ServiceLifetimeEnum attribute)
  • type (cpl_query.exceptions.ExceptionArgument attribute) + +
  • @@ -1384,20 +1593,22 @@
  • (cpl_core.logging.logger_service.Logger method)
  • +
  • where() (cpl_query.extension.iterable_abc.IterableABC method) +
  • white (cpl_core.console.background_color_enum.BackgroundColorEnum attribute)
  • + + -
    • write() (cpl_core.console.console.Console class method)
    • write_at() (cpl_core.console.console.Console class method) diff --git a/docs/build/html/modules.html b/docs/build/html/modules.html index 4589c486..cade8e27 100644 --- a/docs/build/html/modules.html +++ b/docs/build/html/modules.html @@ -248,9 +248,9 @@
    • Query Reference
      • cpl_query.extension
      • cpl_query.exceptions
          diff --git a/docs/build/html/objects.inv b/docs/build/html/objects.inv index 8bb2ce35ed30ac495aabbd735785038ca0da6645..06b02efab2f527db9588c917d6ebca4a25cc9ced 100644 GIT binary patch delta 3756 zcmV;d4pZ^V8jT*1g?~$P+$t8{=T~&q%r>f-?cF&Y=T@qmIO8~TmnvGKyA`V?U4d-( zzaJiY3($iDJsZ1);QJ16IB<9=D$+2@OB|r0NRtTBB+vT4Lv)CC#r2O%9#<*e{c9Jg z5}fHJ{fCV5@t?boAEE`Q!Cm)!_i4{bq7)Ib`?rB(BX|(y*?%!PRV5aA!StNRPIxXT z$sALZ6)3}@O41mY4(hl@?#utFBLk{yJxL&5IVdU>S4D7$-zm-r3-riIC@N`HIAC@q;QRW3M>D3WyO%>v@%**gtWl^KMZi#yp>YnU` zspGb(??~*;n6Sr#4Cy)+%M46NJQy`2uUp%;oSJy#_J3pP^!)A&o|e;x-P4eJGkA@H>1BX+mCb4B0=I?D?kucgyt7HErKX5lS4)E&7>JM=i3X!(^{DI>-bfLkG(iNz^?_zKp@zHR~#zw}DMD>6cv6obLCu13zXdihW_BwC3Ur5FK%CQViZG3$+6e~Kf`cf#L!+U}NI+pbD+C&< zlz$5f`<$n-C>Jo$B7wA*6tc;`m33bW1{NX;iwD^{J4Aai!w97*OwTW%8X@;J?DiqR z1dh)a6KexJg{O4(R2{x^dV&ct3^+jf^$Wo+^h+$#PIIhV6b8?!n%kqc8HDhtbOtHFb$^fI zcRG-P2h3}nNVZ7blmz|UHH1d>>iF!4mg^E2<8s9Tqa^5+y*#7rq}%@FhIYAfZslBN z4=uHG-2Qmj5*uifDFvTeFos#*|wtr)aPp` z2}kGLHANQXvHLQc*>1RrWp00=O}p%E6C3BnxR=l}BU-X?+f~kkI3u4nXV3hq7VcSu zVWam;-q-=ptUc4Pni&^3V+9sn!zBCN`tag39-r+?jk7qa#QH|Oj4JpkgMan|@@WIs za>I~{BMb3i;Pg$+p${R_{B+XJ&v}u6M6ADwZz%xFe~PJYiQ0<{v_#CVYL5#!mqDCj zZVt+ZYzXk0#JV+WSYZrqr3(WfPYI9nuXQoOv#R92fjKbC;?XLY1@UJbX5{c`Bg~?B zH5GbMd|Qkdlc-DznwQS4MSn-tWc~Ai+=-bmkp{`7NHO0lk4*b5oQshrM@$p_83gA7 zG?D1Fa4JNTQIlT@r*8wcCf5&jpx()Z&Zmkw=nSxW@b5>6zV*GK90SwqOpbvqb*Xm^ zQIppnJz^*7rXw77ChqzWEk8e8?2X;ah__ER&aTVR?hLQ*n%0Q{Re#~VqqBosp+-k) zr&ZlgsIB1z=>0pV?uVq4`kinBkqx4o&L}z)pnsm)D{+h{8;$TzBa>Uxys|S54Nc=Q zhs51&A2+G+b53r=TvnN=?>H%$RmjV$cM13@1*H^IE9O*&x4e8|1GC%7!0&pyjs7dM z?nDCpU;(NJ8Q)yk%YUbCpa7C9J*U6^WJV6>-O3EVpWbCg2<5|7$&m~CPY&iK|-{Z5hO%o89{=ymJudEa~UB*w3iX2ZG+)sos@UkhEd6? zMl%EyVzQtI9)F@8hinmbf*gFl|McrmZKnvsasTx6_~e-5%iZ(cgJX`b-@iOMrg;4F z#WBP4)7}2wF~?tbPu~G3%;z3fH?VelcrCB-%)@#q$FTiNx>UXp00X~v+B7i$L1ErG z55OQ4$zcu(M9*;WbI#~yt?aokqZ}B$QJWm-h}w%++JCA6YRC(yxk}%P*LeG{6V^sI zS2A8ulJYm0|4{2;6Gf|s1B~GQTa7ePumR8v-A1>Chd*GYtQXnWCl$>Y+#9($e zDsK;0krUnuiPqp+R&r&dcgj7gzZ(fKYz|(9uqc3vCTV||$i~tcI_VA#$=F)8 z)qjBn`!?uX2R~8J9{NVu=2%F3t;f`00FcBuDz61~hL5w&_(f7!)ErA4{E!GME2mB= zroQkyjw-|T^2?F(it_dq+u{@`dSNAN1CwNgHW#&Tgpl8KfGHg~q$;z>TCbsP(>Mtb z{A_Vn>fIncpDB68eDh=;M$9;}n26x*`F~Qtk_^3IAlPG45&@d#Z@LNbO?XvNK;V@q zi`m#~r7``x!sRu~<(IPMS&&d%iqD&>Rwu@hP0d#Y7<{cC6pIr|?6shQsxt#Z&aSSI3w}=6 z6*%j@RO25QbiUMyl8iWmuN3R3FxYXzcacY~;IX`HMfH&&Xo4^=!`@d_TyXIyt~6AP zU0hW#-$o(!!VVY zbpgax4mza=E+Ay{&yRvPlbAekJAY7@LYsZ=&A5hPsTHQfqR_k7+aa}n^=8N!huRu#)t49N`&I{#UV$Y0VH+ zLIlq(((1A206}-qVgr)6BWfW~n(%{nJ3`|>;yl`YWN~GXh{F@^*nfkFCw5PbV~W5o zu6Pu&PdH=V56jRfK@;AkX+lJ@GfsLbVvgNDzg+nLCwye8nME>BMRiCMavo#V!5w)WAkvih z!nnpsWN4Q{K8pmh(tk(sMPL_QJc`)ezMfHv_C=Sf4U#E~SW&Aow3kLaiv+x1Fu zRPp;)rzz9+-bHy_?j@qL2zZd{$Xy#5ej9R{=tXw_FrX!cFXQ$rIo$W~XC)>A_$wwPW)Ki(dr2Xkg#bl&1RoAKQCX<(PbLR)v$;cg1 z93VvpoN|aJRDY%w+k03{v4J`i#u5)YywNL}>Q5QCs{=oDGQXA9@Hg&_Awh*pUqx z{;rbfWzt7=p~|w{y(RQ4%sRoSjLt(|8733{l<$A=swF0vR)aBw2x#I-0v3T6TAD{F W-Sy1?@4fjAmxL(}{_sC_v^W56i8HqV delta 3302 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 diff --git a/docs/build/html/py-modindex.html b/docs/build/html/py-modindex.html index 60deed88..4d5b223b 100644 --- a/docs/build/html/py-modindex.html +++ b/docs/build/html/py-modindex.html @@ -321,16 +321,46 @@     cpl_query.exceptions + + +     + cpl_query.extension.iterable_abc + + + +     + cpl_query.extension.list + + + +     + cpl_query.extension.ordered_iterable_abc +     cpl_query.tests + + +     + cpl_query.tests.iterable_test +     cpl_query.tests.models + + +     + cpl_query.tests.query_test + + + +     + cpl_query.tests.tester + diff --git a/docs/build/html/searchindex.js b/docs/build/html/searchindex.js index bba7375e..8d377346 100644 --- a/docs/build/html/searchindex.js +++ b/docs/build/html/searchindex.js @@ -1 +1 @@ -Search.setIndex({docnames:["cli.add","cli.build","cli.generate","cli.help","cli.install","cli.new","cli.overview","cli.publish","cli.remove","cli.start","cli.uninstall","cli.update","cli.version","contributing","cpl_cli","cpl_core","cpl_core.application","cpl_core.configuration","cpl_core.console","cpl_core.database","cpl_core.database.connection","cpl_core.database.context","cpl_core.dependency_injection","cpl_core.environment","cpl_core.logging","cpl_core.mailing","cpl_core.time","cpl_core.utils","cpl_query","cpl_query.exceptions","cpl_query.extension","cpl_query.tests","getting_started","index","introduction","modules","quickstart","setup"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":4,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,sphinx:56},filenames:["cli.add.md","cli.build.md","cli.generate.md","cli.help.md","cli.install.md","cli.new.md","cli.overview.md","cli.publish.md","cli.remove.md","cli.start.md","cli.uninstall.md","cli.update.md","cli.version.md","contributing.md","cpl_cli.rst","cpl_core.rst","cpl_core.application.rst","cpl_core.configuration.rst","cpl_core.console.rst","cpl_core.database.rst","cpl_core.database.connection.rst","cpl_core.database.context.rst","cpl_core.dependency_injection.rst","cpl_core.environment.rst","cpl_core.logging.rst","cpl_core.mailing.rst","cpl_core.time.rst","cpl_core.utils.rst","cpl_query.rst","cpl_query.exceptions.rst","cpl_query.extension.rst","cpl_query.tests.rst","getting_started.rst","index.rst","introduction.md","modules.rst","quickstart.md","setup.md"],objects:{"cpl_core.application":{application_abc:[16,0,0,"-"],application_builder:[16,0,0,"-"],application_builder_abc:[16,0,0,"-"],startup_abc:[16,0,0,"-"]},"cpl_core.application.application_abc":{ApplicationABC:[16,1,1,""]},"cpl_core.application.application_abc.ApplicationABC":{configure:[16,2,1,""],main:[16,2,1,""],run:[16,2,1,""]},"cpl_core.application.application_builder":{ApplicationBuilder:[16,1,1,""]},"cpl_core.application.application_builder.ApplicationBuilder":{build:[16,2,1,""],use_extension:[16,2,1,""],use_startup:[16,2,1,""]},"cpl_core.application.application_builder_abc":{ApplicationBuilderABC:[16,1,1,""]},"cpl_core.application.application_builder_abc.ApplicationBuilderABC":{build:[16,2,1,""],use_startup:[16,2,1,""]},"cpl_core.application.startup_abc":{StartupABC:[16,1,1,""]},"cpl_core.application.startup_abc.StartupABC":{configure_configuration:[16,2,1,""],configure_services:[16,2,1,""]},"cpl_core.configuration":{configuration:[17,0,0,"-"],configuration_abc:[17,0,0,"-"],configuration_model_abc:[17,0,0,"-"],configuration_variable_name_enum:[17,0,0,"-"],console_argument:[17,0,0,"-"]},"cpl_core.configuration.configuration":{Configuration:[17,1,1,""]},"cpl_core.configuration.configuration.Configuration":{add_configuration:[17,2,1,""],add_console_argument:[17,2,1,""],add_console_arguments:[17,2,1,""],add_environment_variables:[17,2,1,""],add_json_file:[17,2,1,""],additional_arguments:[17,3,1,""],argument_error_function:[17,3,1,""],environment:[17,3,1,""],get_configuration:[17,2,1,""]},"cpl_core.configuration.configuration_abc":{ConfigurationABC:[17,1,1,""]},"cpl_core.configuration.configuration_abc.ConfigurationABC":{add_configuration:[17,2,1,""],add_console_argument:[17,2,1,""],add_console_arguments:[17,2,1,""],add_environment_variables:[17,2,1,""],add_json_file:[17,2,1,""],additional_arguments:[17,3,1,""],argument_error_function:[17,3,1,""],environment:[17,3,1,""],get_configuration:[17,2,1,""]},"cpl_core.configuration.configuration_model_abc":{ConfigurationModelABC:[17,1,1,""]},"cpl_core.configuration.configuration_model_abc.ConfigurationModelABC":{from_dict:[17,2,1,""]},"cpl_core.configuration.configuration_variable_name_enum":{ConfigurationVariableNameEnum:[17,1,1,""]},"cpl_core.configuration.configuration_variable_name_enum.ConfigurationVariableNameEnum":{customer:[17,4,1,""],environment:[17,4,1,""],name:[17,4,1,""],to_list:[17,2,1,""]},"cpl_core.configuration.console_argument":{ConsoleArgument:[17,1,1,""]},"cpl_core.configuration.console_argument.ConsoleArgument":{aliases:[17,3,1,""],console_arguments:[17,3,1,""],is_value_token_optional:[17,3,1,""],name:[17,3,1,""],token:[17,3,1,""],value_token:[17,3,1,""]},"cpl_core.console":{background_color_enum:[18,0,0,"-"],console:[18,0,0,"-"],console_call:[18,0,0,"-"],foreground_color_enum:[18,0,0,"-"],spinner_thread:[18,0,0,"-"]},"cpl_core.console.background_color_enum":{BackgroundColorEnum:[18,1,1,""]},"cpl_core.console.background_color_enum.BackgroundColorEnum":{"default":[18,4,1,""],blue:[18,4,1,""],cyan:[18,4,1,""],green:[18,4,1,""],grey:[18,4,1,""],magenta:[18,4,1,""],red:[18,4,1,""],white:[18,4,1,""],yellow:[18,4,1,""]},"cpl_core.console.console":{Console:[18,1,1,""]},"cpl_core.console.console.Console":{background_color:[18,3,1,""],banner:[18,2,1,""],clear:[18,2,1,""],close:[18,2,1,""],color_reset:[18,2,1,""],disable:[18,2,1,""],enable:[18,2,1,""],error:[18,2,1,""],foreground_color:[18,3,1,""],read:[18,2,1,""],read_line:[18,2,1,""],reset_cursor_position:[18,2,1,""],select:[18,2,1,""],set_background_color:[18,2,1,""],set_cursor_position:[18,2,1,""],set_foreground_color:[18,2,1,""],set_hold_back:[18,2,1,""],spinner:[18,2,1,""],table:[18,2,1,""],write:[18,2,1,""],write_at:[18,2,1,""],write_line:[18,2,1,""],write_line_at:[18,2,1,""]},"cpl_core.console.console_call":{ConsoleCall:[18,1,1,""]},"cpl_core.console.console_call.ConsoleCall":{"function":[18,3,1,""],args:[18,3,1,""]},"cpl_core.console.foreground_color_enum":{ForegroundColorEnum:[18,1,1,""]},"cpl_core.console.foreground_color_enum.ForegroundColorEnum":{"default":[18,4,1,""],blue:[18,4,1,""],cyan:[18,4,1,""],green:[18,4,1,""],grey:[18,4,1,""],magenta:[18,4,1,""],red:[18,4,1,""],white:[18,4,1,""],yellow:[18,4,1,""]},"cpl_core.console.spinner_thread":{SpinnerThread:[18,1,1,""]},"cpl_core.console.spinner_thread.SpinnerThread":{exit:[18,2,1,""],run:[18,2,1,""],stop_spinning:[18,2,1,""]},"cpl_core.database":{database_model:[19,0,0,"-"],database_settings:[19,0,0,"-"],database_settings_name_enum:[19,0,0,"-"]},"cpl_core.database.connection":{database_connection:[20,0,0,"-"],database_connection_abc:[20,0,0,"-"]},"cpl_core.database.connection.database_connection":{DatabaseConnection:[20,1,1,""]},"cpl_core.database.connection.database_connection.DatabaseConnection":{connect:[20,2,1,""],engine:[20,3,1,""],session:[20,3,1,""]},"cpl_core.database.connection.database_connection_abc":{DatabaseConnectionABC:[20,1,1,""]},"cpl_core.database.connection.database_connection_abc.DatabaseConnectionABC":{connect:[20,2,1,""],engine:[20,3,1,""],session:[20,3,1,""]},"cpl_core.database.context":{database_context:[21,0,0,"-"],database_context_abc:[21,0,0,"-"]},"cpl_core.database.context.database_context":{DatabaseContext:[21,1,1,""]},"cpl_core.database.context.database_context.DatabaseContext":{connect:[21,2,1,""],engine:[21,3,1,""],save_changes:[21,2,1,""],session:[21,3,1,""]},"cpl_core.database.context.database_context_abc":{DatabaseContextABC:[21,1,1,""]},"cpl_core.database.context.database_context_abc.DatabaseContextABC":{connect:[21,2,1,""],engine:[21,3,1,""],save_changes:[21,2,1,""],session:[21,3,1,""]},"cpl_core.database.database_settings":{DatabaseSettings:[19,1,1,""]},"cpl_core.database.database_settings.DatabaseSettings":{auth_plugin:[19,3,1,""],case_sensitive:[19,3,1,""],connection_string:[19,3,1,""],credentials:[19,3,1,""],echo:[19,3,1,""],encoding:[19,3,1,""],from_dict:[19,2,1,""]},"cpl_core.database.database_settings_name_enum":{DatabaseSettingsNameEnum:[19,1,1,""]},"cpl_core.database.database_settings_name_enum.DatabaseSettingsNameEnum":{auth_plugin:[19,4,1,""],case_sensitive:[19,4,1,""],connection_string:[19,4,1,""],credentials:[19,4,1,""],echo:[19,4,1,""],encoding:[19,4,1,""]},"cpl_core.dependency_injection":{service_collection:[22,0,0,"-"],service_collection_abc:[22,0,0,"-"],service_descriptor:[22,0,0,"-"],service_lifetime_enum:[22,0,0,"-"],service_provider:[22,0,0,"-"],service_provider_abc:[22,0,0,"-"]},"cpl_core.dependency_injection.service_collection":{ServiceCollection:[22,1,1,""]},"cpl_core.dependency_injection.service_collection.ServiceCollection":{add_db_context:[22,2,1,""],add_logging:[22,2,1,""],add_scoped:[22,2,1,""],add_singleton:[22,2,1,""],add_transient:[22,2,1,""],build_service_provider:[22,2,1,""]},"cpl_core.dependency_injection.service_collection_abc":{ServiceCollectionABC:[22,1,1,""]},"cpl_core.dependency_injection.service_collection_abc.ServiceCollectionABC":{add_db_context:[22,2,1,""],add_logging:[22,2,1,""],add_scoped:[22,2,1,""],add_singleton:[22,2,1,""],add_transient:[22,2,1,""],build_service_provider:[22,2,1,""]},"cpl_core.dependency_injection.service_descriptor":{ServiceDescriptor:[22,1,1,""]},"cpl_core.dependency_injection.service_descriptor.ServiceDescriptor":{implementation:[22,3,1,""],lifetime:[22,3,1,""],service_type:[22,3,1,""]},"cpl_core.dependency_injection.service_lifetime_enum":{ServiceLifetimeEnum:[22,1,1,""]},"cpl_core.dependency_injection.service_lifetime_enum.ServiceLifetimeEnum":{"transient":[22,4,1,""],scoped:[22,4,1,""],singleton:[22,4,1,""]},"cpl_core.dependency_injection.service_provider":{ServiceProvider:[22,1,1,""]},"cpl_core.dependency_injection.service_provider.ServiceProvider":{build_service:[22,2,1,""],get_service:[22,2,1,""]},"cpl_core.dependency_injection.service_provider_abc":{ServiceProviderABC:[22,1,1,""]},"cpl_core.dependency_injection.service_provider_abc.ServiceProviderABC":{build_service:[22,2,1,""],get_service:[22,2,1,""]},"cpl_core.environment":{application_environment:[23,0,0,"-"],application_environment_abc:[23,0,0,"-"],environment_name_enum:[23,0,0,"-"]},"cpl_core.environment.application_environment":{ApplicationEnvironment:[23,1,1,""]},"cpl_core.environment.application_environment.ApplicationEnvironment":{application_name:[23,3,1,""],customer:[23,3,1,""],date_time_now:[23,3,1,""],end_time:[23,3,1,""],environment_name:[23,3,1,""],host_name:[23,3,1,""],runtime_directory:[23,3,1,""],set_runtime_directory:[23,2,1,""],set_working_directory:[23,2,1,""],start_time:[23,3,1,""],working_directory:[23,3,1,""]},"cpl_core.environment.application_environment_abc":{ApplicationEnvironmentABC:[23,1,1,""]},"cpl_core.environment.application_environment_abc.ApplicationEnvironmentABC":{application_name:[23,3,1,""],customer:[23,3,1,""],date_time_now:[23,3,1,""],end_time:[23,3,1,""],environment_name:[23,3,1,""],host_name:[23,3,1,""],runtime_directory:[23,3,1,""],set_runtime_directory:[23,2,1,""],set_working_directory:[23,2,1,""],start_time:[23,3,1,""],working_directory:[23,3,1,""]},"cpl_core.environment.environment_name_enum":{EnvironmentNameEnum:[23,1,1,""]},"cpl_core.environment.environment_name_enum.EnvironmentNameEnum":{development:[23,4,1,""],production:[23,4,1,""],staging:[23,4,1,""],testing:[23,4,1,""]},"cpl_core.logging":{logger_abc:[24,0,0,"-"],logger_service:[24,0,0,"-"],logging_level_enum:[24,0,0,"-"],logging_settings:[24,0,0,"-"],logging_settings_name_enum:[24,0,0,"-"]},"cpl_core.logging.logger_abc":{LoggerABC:[24,1,1,""]},"cpl_core.logging.logger_abc.LoggerABC":{debug:[24,2,1,""],error:[24,2,1,""],fatal:[24,2,1,""],header:[24,2,1,""],info:[24,2,1,""],trace:[24,2,1,""],warn:[24,2,1,""]},"cpl_core.logging.logger_service":{Logger:[24,1,1,""]},"cpl_core.logging.logger_service.Logger":{create:[24,2,1,""],debug:[24,2,1,""],error:[24,2,1,""],fatal:[24,2,1,""],header:[24,2,1,""],info:[24,2,1,""],trace:[24,2,1,""],warn:[24,2,1,""]},"cpl_core.logging.logging_level_enum":{LoggingLevelEnum:[24,1,1,""]},"cpl_core.logging.logging_level_enum.LoggingLevelEnum":{DEBUG:[24,4,1,""],ERROR:[24,4,1,""],FATAL:[24,4,1,""],INFO:[24,4,1,""],OFF:[24,4,1,""],TRACE:[24,4,1,""],WARN:[24,4,1,""]},"cpl_core.logging.logging_settings":{LoggingSettings:[24,1,1,""]},"cpl_core.logging.logging_settings.LoggingSettings":{console:[24,3,1,""],filename:[24,3,1,""],from_dict:[24,2,1,""],level:[24,3,1,""],path:[24,3,1,""]},"cpl_core.logging.logging_settings_name_enum":{LoggingSettingsNameEnum:[24,1,1,""]},"cpl_core.logging.logging_settings_name_enum.LoggingSettingsNameEnum":{console_level:[24,4,1,""],file_level:[24,4,1,""],filename:[24,4,1,""],path:[24,4,1,""]},"cpl_core.mailing":{email:[25,0,0,"-"],email_client_abc:[25,0,0,"-"],email_client_service:[25,0,0,"-"],email_client_settings:[25,0,0,"-"],email_client_settings_name_enum:[25,0,0,"-"]},"cpl_core.mailing.email":{EMail:[25,1,1,""]},"cpl_core.mailing.email.EMail":{add_header:[25,2,1,""],add_receiver:[25,2,1,""],body:[25,3,1,""],check_mail:[25,2,1,""],get_content:[25,2,1,""],header:[25,3,1,""],header_list:[25,3,1,""],receiver:[25,3,1,""],receiver_list:[25,3,1,""],subject:[25,3,1,""],transceiver:[25,3,1,""]},"cpl_core.mailing.email_client_abc":{EMailClientABC:[25,1,1,""]},"cpl_core.mailing.email_client_abc.EMailClientABC":{connect:[25,2,1,""],send_mail:[25,2,1,""]},"cpl_core.mailing.email_client_service":{EMailClient:[25,1,1,""]},"cpl_core.mailing.email_client_service.EMailClient":{connect:[25,2,1,""],create:[25,2,1,""],login:[25,2,1,""],send_mail:[25,2,1,""]},"cpl_core.mailing.email_client_settings":{EMailClientSettings:[25,1,1,""]},"cpl_core.mailing.email_client_settings.EMailClientSettings":{credentials:[25,3,1,""],from_dict:[25,2,1,""],host:[25,3,1,""],port:[25,3,1,""],user_name:[25,3,1,""]},"cpl_core.mailing.email_client_settings_name_enum":{EMailClientSettingsNameEnum:[25,1,1,""]},"cpl_core.mailing.email_client_settings_name_enum.EMailClientSettingsNameEnum":{credentials:[25,4,1,""],host:[25,4,1,""],port:[25,4,1,""],user_name:[25,4,1,""]},"cpl_core.time":{time_format_settings:[26,0,0,"-"],time_format_settings_names_enum:[26,0,0,"-"]},"cpl_core.time.time_format_settings":{TimeFormatSettings:[26,1,1,""]},"cpl_core.time.time_format_settings.TimeFormatSettings":{date_format:[26,3,1,""],date_time_format:[26,3,1,""],date_time_log_format:[26,3,1,""],from_dict:[26,2,1,""],time_format:[26,3,1,""]},"cpl_core.time.time_format_settings_names_enum":{TimeFormatSettingsNamesEnum:[26,1,1,""]},"cpl_core.time.time_format_settings_names_enum.TimeFormatSettingsNamesEnum":{date_format:[26,4,1,""],date_time_format:[26,4,1,""],date_time_log_format:[26,4,1,""],time_format:[26,4,1,""]},"cpl_core.utils":{credential_manager:[27,0,0,"-"],pip:[27,0,0,"-"],string:[27,0,0,"-"]},"cpl_core.utils.credential_manager":{CredentialManager:[27,1,1,""]},"cpl_core.utils.credential_manager.CredentialManager":{build_string:[27,2,1,""],decrypt:[27,2,1,""],encrypt:[27,2,1,""]},"cpl_core.utils.pip":{Pip:[27,1,1,""]},"cpl_core.utils.pip.Pip":{get_executable:[27,2,1,""],get_outdated:[27,2,1,""],get_package:[27,2,1,""],install:[27,2,1,""],reset_executable:[27,2,1,""],set_executable:[27,2,1,""],uninstall:[27,2,1,""]},"cpl_core.utils.string":{String:[27,1,1,""]},"cpl_core.utils.string.String":{convert_to_camel_case:[27,2,1,""],convert_to_snake_case:[27,2,1,""],first_to_lower:[27,2,1,""],first_to_upper:[27,2,1,""],random_string:[27,2,1,""]},"cpl_query.exceptions":{ArgumentNoneException:[29,5,1,""],ExceptionArgument:[29,1,1,""],IndexOutOfRangeException:[29,5,1,""],InvalidTypeException:[29,5,1,""],WrongTypeException:[29,5,1,""]},"cpl_query.exceptions.ExceptionArgument":{func:[29,4,1,""],index:[29,4,1,""],list:[29,4,1,""],type:[29,4,1,""],value:[29,4,1,""]},"cpl_query.tests":{models:[31,0,0,"-"]},"cpl_query.tests.models":{Address:[31,1,1,""],User:[31,1,1,""]},cpl_query:{exceptions:[29,0,0,"-"],tests:[31,0,0,"-"]}},objnames:{"0":["py","module","Python module"],"1":["py","class","Python class"],"2":["py","method","Python method"],"3":["py","property","Python property"],"4":["py","attribute","Python attribute"],"5":["py","exception","Python exception"]},objtypes:{"0":"py:module","1":"py:class","2":"py:method","3":"py:property","4":"py:attribute","5":"py:exception"},terms:{"0":[22,24,36],"1":[22,24,36],"14":[20,21],"2":[22,24,36],"3":24,"4":24,"5":[24,36],"6":24,"8":13,"9":[20,21],"abstract":[2,16,17,20,21,22,23,24,25],"byte":27,"case":[13,27,36],"char":[18,27],"class":[2,16,17,18,19,20,21,22,23,24,25,26,27,29,31],"default":[18,37],"do":[33,36],"enum":[2,17,18,19,22,23,24,25,26,29],"function":[18,27,36],"import":[13,36],"int":[18,25,27,36],"new":[6,13,14,18,35,36,37],"public":13,"return":[17,18,22,25,36],"short":[3,6],"static":[17,25,27],"transient":22,"true":17,"while":13,A:[0,5,13],As:13,Be:13,By:13,For:13,If:[0,5,8,13,37],In:[6,13,36],Such:13,That:13,The:[1,2,4,5,6,7,8,10,13,22,25,27,33,34,36,37],These:33,To:[6,13,36,37],With:6,__init__:[20,21,36],__main__:36,__name__:36,abc:[2,16,17,18,20,21,22,23,24,25],abl:13,about:[33,37],absolut:6,accept:13,activ:18,ad:[0,13],add:[5,6,13,14,17,22,25,35,36],add_configur:17,add_console_argu:17,add_db_context:22,add_environment_vari:17,add_head:25,add_json_fil:17,add_log:22,add_receiv:25,add_scop:22,add_singleton:22,add_transi:22,addit:[6,13],additional_argu:17,address:[25,31],agre:13,alia:6,alias:[6,17],all:[1,7,12,13],allow:13,alreadi:[13,36,37],also:[36,37],an:[1,6,7,17,18,19,22,23,24,25,26,29,36,37],ani:[6,18],api:[13,33,34,35],app:[1,6,16,32,33,34,35,36],appli:13,applic:[5,9,15,18,23,24,25,33,34,35,36,37],application_abc:[15,35],application_build:[15,35],application_builder_abc:[15,35],application_environ:[15,35],application_environment_abc:[15,16,17,24,25,35],application_extension_abc:16,application_nam:23,applicationabc:16,applicationbuild:16,applicationbuilderabc:16,applicationenviron:23,applicationenvironmentabc:[16,17,23,24,25],applicationextensionabc:16,appropri:13,appset:[16,36],ar:[6,7,13],arg:[16,18,21,27,29],argument:[1,5,6,7,14,17,18,27,29,35],argument_error_funct:17,argumentnoneexcept:29,artifact:6,ascii_lett:36,ascii_lowercas:36,ascii_uppercas:36,ask:13,attribut:[17,19,24,25,26],auth_plugin:19,authplugin:19,automat:13,avail:[3,6,13],b:[1,6,13],back:[13,18],background:18,background_color:18,background_color_enum:[15,35],backgroundcolorenum:18,banner:18,base64:27,base:[2,16,17,18,19,20,21,22,23,24,25,26,27,29,31,36],basic:[14,35,36,37],been:13,befor:[13,18],behavior:13,better:13,bit:13,blue:18,bodi:25,bool:[17,18,19,25],branch:13,build:[6,7,14,16,27,35,36,37],build_servic:22,build_service_provid:22,build_str:27,call:[0,8,16,18],callabl:[17,18,22],camel:27,camelcas:27,can:[0,1,6,7,8,13,33,37],case_sensit:19,casesensit:19,cd:[6,37],chang:[6,9,13,21,36],channel:13,charact:18,check:25,check_mail:25,checkout:13,chnage:37,choic:36,citizen:13,classmethod:[18,27],clear:18,cli:[12,32,33,34,35,36],close:[13,18],code:[36,37],codebas:13,collect:[17,18,22],color:18,color_reset:18,command:[0,1,3,5,7,8,13,14,27,35,37],commandnameoralia:6,commit:13,common:[33,34],commun:13,complex:[33,34],config:[16,22],configmodel:2,configur:[15,16,19,22,24,25,26,35],configuration_abc:[15,16,22,35],configuration_model_abc:[15,19,24,25,26,35],configuration_variable_name_enum:[15,35],configurationabc:[16,17,22],configurationmodelabc:[17,19,24,25,26],configurationvariablenameenum:17,configure_configur:16,configure_servic:16,confirm:13,connect:[15,19,21,25,35],connection_str:[19,20,21],connectionstr:19,consid:13,consist:13,consol:[1,3,5,6,7,15,17,24,32,35,36],console_argu:[15,35],console_cal:[15,35],console_level:24,consoleargu:17,consolecal:18,consoleloglevel:24,contain:16,content:[14,32,35],context:[15,19,22,35,37],continu:36,contributor:13,convert:[17,24,25,26,27],convert_to_camel_cas:27,convert_to_snake_cas:27,coordin:[13,18],copi:1,core:[20,21],count:13,cpl:[6,14,20,21,22,32,37],cpl_core:[7,15,35,36,37],cpl_queri:[28,35],craft:13,creat:[6,7,13,16,22,24,25,27,32,33,34,35],credenti:[19,25,27],credential_manag:[15,35],credentialmanag:27,current:[6,23],cursor:18,cursor_background_color:18,cursor_foreground_color:18,custom:[16,17,23],cyan:18,d:13,data:7,databas:[15,22,35],database_connect:[15,19,35],database_connection_abc:[15,19,35],database_context:[15,19,35],database_context_abc:[15,19,22,35],database_model:[15,35],database_set:[15,20,21,22,35],database_settings_name_enum:[15,35],databaseconnect:20,databaseconnectionabc:20,databasecontext:21,databasecontextabc:[21,22],databaseset:[19,20,21,22],databasesettingsnameenum:19,date_format:26,date_time_format:26,date_time_log_format:26,date_time_now:23,dateformat:26,datetim:23,datetimeformat:26,datetimelogformat:26,db_context:22,db_context_typ:22,db_set:22,de:[13,37],debug:24,declin:37,decod:27,decrypt:27,def:36,defin:[6,17,37],delet:8,deped:4,depend:[6,11,36],dependency_inject:[15,16,35],describ:13,descript:[6,14,35],descriptor:22,design:13,desktop:[33,34],detail:33,determin:13,develop:[6,13,23,33,34,36,37],dict:[17,18,19,24,25,26],directli:[1,13],directori:[1,6,7,23,36],disabl:18,discuss:13,dist:[6,7],doc:[20,21],document:13,doesn:13,don:[13,36],done:36,duplic:13,e:25,each:6,echo:19,edit:13,edraft:[13,37],edraft_d:[20,21],effici:[33,34],effort:13,either:6,element:18,elif:36,email:[15,35],email_client_abc:[15,35],email_client_servic:[15,35],email_client_set:[15,35],email_client_settings_name_enum:[15,35],emailcli:25,emailclientabc:25,emailclientset:25,emailclientsettingsnameenum:25,emul:36,en:[20,21],enabl:[18,36],encod:[19,27],encrypt:27,end:[18,24],end_tim:23,engin:[20,21],enough:13,ensur:13,enter:37,enterpris:[33,34],entri:[16,18],enumer:[17,18,19,22,23,24,25,26,29],env:[16,20,21,24],environ:[15,16,17,24,25,32,35],environment_nam:23,environment_name_enum:[15,35],environmentnameenum:23,error:[17,18,24],essenti:[13,36],even:13,everyth:33,ex:24,except:[24,28,35],exceptionargu:29,execut:[1,6,7,27],exist:13,exit:[18,36],explor:36,extens:[16,28,35],extra:[27,37],extract:13,fatal:24,featur:37,file:[1,2,6,7,8,9,13,17,37],file_level:24,fileloglevel:24,filenam:24,find:13,first:[6,13,27,33,34],first_to_low:27,first_to_upp:27,fix:13,fixup:13,folder:36,follow:[6,13,36,37],fore:37,foreground:18,foreground_color:18,foreground_color_enum:[15,35],foregroundcolorenum:18,fork:13,format:[6,24,26],forth:13,found:17,from:[0,6,7,8,10,12,13,16,17,19,20,21,33,34,36],from_dict:[17,19,24,25,26],full:36,func:29,g:[2,6],gener:[5,6,7,14,35,36,37],generate_password:36,get:[27,33,34,35,37],get_configur:17,get_cont:25,get_execut:27,get_outd:27,get_packag:27,get_servic:22,git:13,git_sh:[20,21],gitea:13,give:13,given:[0,1,4,6,7,10,17,18,19,22,27],go:[6,13,33],good:13,great:33,green:18,grei:18,guid:13,h:[3,6],ha:[0,18],handl:[18,27],hard:13,have:[6,13,36,37],haven:13,head:13,header:[18,24,25],header_background_color:18,header_foreground_color:18,header_list:25,hear:13,hello:[36,37],help:[6,13,14,33,34,35],here:[13,37],hold:18,home:[20,21],host:25,host_nam:23,html:[20,21],http:[20,21,37],i:[4,6,36],id:36,immedi:6,implement:[13,22],includ:[1,13,37],index:[27,29,36,37],indexoutofrangeexcept:29,info:[13,24],inform:[13,24,37],initi:[5,32,35],inject:36,input:[18,36],instal:[6,12,14,27,32,35,36],instanc:[16,22],instance_typ:22,interact:18,intern:22,introduc:36,invalid:[17,29],invalidtypeexcept:29,investig:13,is_value_token_opt:17,isol:13,issus:13,iterable_abc:[28,35],its:[6,13],join:36,json:[7,17,36,37],keep:13,kei:37,key_typ:17,keyword:18,known:17,kwarg:18,languag:[14,35],larger:13,last:18,launch:37,learn:[33,34,37],len:36,length:[18,27,36],letter:36,level:24,lib:[20,21,37],librari:[1,5,6,7,32,33,34,35],licens:36,lifetim:22,like:[13,36],line:[13,18,36],list:[3,6,12,17,18,22,25,27,28,29,35],live:37,load:16,local:[27,32,35],log:[15,25,35],logfil:24,logger:[22,24,25],logger_abc:[15,25,35],logger_servic:[15,35],loggerabc:[24,25],logging_level_enum:[15,35],logging_set:[15,35],logging_settings_name_enum:[15,35],logginglevelenum:24,loggingset:24,loggingsettingsnameenum:24,login:25,look:36,love:13,lower:[27,36],magenta:18,mail:[15,35],mail_set:25,main:[16,36],maintain:13,major:13,make:[13,37],manag:13,master:13,mayb:13,md:36,meant:[33,34],member:13,menu:[18,32,35],messag:[3,18,24],method:13,might:13,mind:13,minim:13,mit:13,modul:[20,21],more:[13,37],most:[6,36,37],msg_len:18,must:[0,1,6,8,13],my:[6,13,37],n:[5,6,36,37],name:[0,1,2,5,6,7,8,17,23,24,27,31,37],navig:37,need:[13,36,37],next:[18,32,35],nextcloud_sven:[20,21],none:[17,18,22,24,25,27,29],note:13,nr:31,object:[16,17,18,22,25,27,31],occur:17,off:24,often:13,on_blu:18,on_cyan:18,on_default:18,on_green:18,on_grei:18,on_magenta:18,on_r:18,on_whit:18,on_yellow:18,one:13,onli:36,open:[13,36,37],option:[6,13,17,18,22,24,25,27,36],option_background_color:18,option_foreground_color:18,optionalsarg:6,order:13,ordered_iterable_abc:[28,35],org:[20,21],origin:13,orm:[20,21],otherwis:[0,8],ouput:36,our:13,out:[13,29,36,37],outdat:27,outlin:13,output:[1,6,7,17,18,36,37],outsid:13,overview:[14,35,37],own:6,p:[6,7],packag:[4,5,6,10,12,20,21,27,32,33,34,35,36],page:33,parent:6,password:36,patch:13,path:[0,1,7,8,14,17,23,24,35,37],pep:13,pip:[4,10,12,15,35,36,37],place:17,platform:[33,34],pleas:13,point:[13,16,18],port:25,posit:18,possibl:13,pr:13,prefix:[6,17],prepar:[1,6,7,13,16],prerequisit:[32,35],press:37,prevent:13,print:[18,36],problem:13,proce:13,process:13,product:23,program:24,project:[0,1,4,6,7,8,10,11,13,14,32,35,37],projectmain:36,prompt:37,properti:[17,18,19,20,21,22,23,24,25,26],propos:13,provid:[13,16,22,36,37],publish:[1,6,14,35,37],push:13,py:[6,7,20,21,27,36],pycharm:36,pyhton:37,python3:[20,21],python:[1,13,27,33,34,36,37],queri:[33,34,35],question:13,quickli:13,r:[6,8],random:[27,36],random_str:27,rang:[29,36],re:13,read:[17,18,36],read_lin:18,readi:[13,37],readili:13,readm:36,realli:13,receiv:25,receiver_list:25,red:18,refer:[0,8,33,34,35],referenc:0,rel:[14,35],relat:13,remov:[0,6,7,14,35],replac:27,repo:13,repositori:13,repres:[18,19,23,25],represent:[20,21,22,24,25,26],reproduc:13,reproduct:13,requir:13,requiredarg:6,reserv:13,reset:[18,27],reset_cursor_posit:18,reset_execut:27,restart:[6,9,37],result:[25,27],right:13,rm:13,root:6,run:[1,5,16,18,27,36,37],runtim:23,runtime_directori:23,s:[6,9,13,32,35],same:6,sampl:36,save:[13,17,21],save_chang:21,scenario:13,schemat:[14,35],schreibtisch:[20,21],scope:22,search:[13,17,22],search_typ:17,section:36,see:[5,13,20,21,36,37],select:[18,36],send:[13,25],send_mail:25,serv:6,server:[6,25,33,34,37],servic:[2,16,22,24,25,36],service_collect:[15,35],service_collection_abc:[15,16,35],service_descriptor:[15,35],service_lifetime_enum:[15,35],service_provid:[15,35],service_provider_abc:[15,16,35],service_typ:22,servicecollect:22,servicecollectionabc:[16,22],servicedescriptor:22,servicelifetimeenum:22,serviceprovid:22,serviceproviderabc:[16,22],session:[20,21],set:[2,16,17,18,19,22,23,24,25,26,27,32,35,36],set_background_color:18,set_cursor_posit:18,set_execut:27,set_foreground_color:18,set_hold_back:18,set_runtime_directori:23,set_working_directori:23,setup:[6,7,34,37],sh:[13,37],sh_cpl:[13,20,21,37],should:[17,36,37],show:[3,18],shown:[6,17,37],significantli:13,similar:37,simpl:[5,33,34,37],singleton:22,site:[20,21],size:13,small:13,snake:27,snake_cas:27,so:[13,37],some:6,sometim:13,soon:13,sourc:[0,1,7,13,27,36,37],specifi:[0,6,8,17],spinner:18,spinner_background_color:18,spinner_foreground_color:18,spinner_thread:[15,35],spinnerthread:18,sqlalchemi:[20,21],src:36,stage:23,standard:27,start:[6,14,33,34,35],start_tim:23,startup:16,startup_abc:[15,35],startupabc:16,statement:6,stderr:27,stdout:27,step:13,stop:18,stop_spin:18,store:17,str:[0,1,2,3,4,5,7,8,10,17,18,19,20,21,23,24,25,26,27,36],street:31,string:[15,18,20,21,24,25,35,36],style:13,subject:25,submodul:[15,35],subprocess:27,success:37,successfulli:13,suppli:6,sure:13,sven:[20,21],syntax:[14,35],system:27,t:[13,36],tabl:[14,18,27,32,35],take:[6,17],target:[0,1],tb:18,team:13,termin:[6,18,36,37],test:[13,23,36],text:18,text_background_color:18,text_foreground_color:18,than:13,thank:13,them:1,themselv:13,thi:[3,13,16,33,34,36,37],those:37,thread:[2,18],through:36,throughout:13,thrown:24,time:[13,15,24,35],time_format:[24,26],time_format_set:[15,24,35],time_format_settings_names_enum:[15,35],timeformat:26,timeformatset:[24,26],timeformatsettingsnamesenum:26,to_list:17,todai:13,token:17,topic:13,trace:24,traceback:18,tracker:13,transceiv:25,tree:24,tutori:[36,37],type:[0,1,2,3,4,7,8,10,14,16,17,22,29,35],u:[6,11],ui:[6,10],ultim:13,under:13,understand:[13,33,34,36,37],unexpect:29,unfortun:13,uninstal:[6,14,27,35],union:[17,18,22],unit:13,up:[32,35],updat:[6,13,14,35],upfront:13,upper:[27,36],url:[27,37],us:[0,1,6,7,8,13,16,18,25,27,33,34,36,37],use_extens:16,use_startup:16,user:[31,36],user_nam:25,usernam:25,util:[15,35],v:[6,12],valid:[25,36],valu:[0,1,2,3,4,5,7,8,10,17,18,19,22,23,24,25,26,29],value_token:17,variabl:[17,27],ve:36,version:[6,14,35],via:[4,10,13],vs:36,wa:[17,37],walk:36,want:[13,36],warn:24,watch:37,we:[13,36],wealth:13,welcom:36,well:13,what:[32,35],when:[18,29],whether:17,which:[0,6,17,18,27,37],white:18,who:13,window:37,within:[1,6,13],without:[4,6,13],work:[6,13,23],workaround:13,workflow:[14,35],working_directori:23,workspac:[0,1,5,6,8,32,35],world:[36,37],would:13,write:[13,18,24],write_at:18,write_lin:[18,36],write_line_at:18,wrongtypeexcept:29,x:18,y:[18,36],yellow:18,you:[0,1,6,8,13,33,34,36,37],your:[4,6,9,13,33,34,37]},titles:["cpl add","cpl build","cpl generate","cpl help","cpl install","cpl new","CLI Overview and Command Reference","cpl publish","cpl remove","cpl start","cpl uninstall","cpl update","cpl version","Contributing to CPL","CLI Reference","API Reference","cpl_core.application","cpl_core.configuration","cpl_core.console","cpl_core.database","cpl_core.database.connection","cpl_core.database.context","cpl_core.dependency_injection","cpl_core.environment","cpl_core.logging","cpl_core.mailing","cpl_core.time","cpl_core.utils","Query Reference","cpl_query.exceptions","cpl_query.extension","cpl_query.tests package","Getting started","Introduction to the CPL Docs","Introduction to the CPL Docs","cpl","Getting started with CPL","Setting up the local environment and workspace"],titleterms:{"new":5,add:0,address:13,an:13,api:15,app:37,applic:16,application_abc:16,application_build:16,application_builder_abc:16,application_environ:23,application_environment_abc:23,argument:[0,2,3,4,8,10],background_color_enum:18,basic:6,bug:13,build:1,cli:[6,14,37],code:13,command:6,configur:17,configuration_abc:17,configuration_model_abc:17,configuration_variable_name_enum:17,connect:20,consol:[18,37],console_argu:17,console_cal:18,content:[0,1,2,4,5,6,7,8,10,31,36,37],context:21,contribut:13,cpl:[0,1,2,3,4,5,7,8,9,10,11,12,13,33,34,35,36],cpl_core:[16,17,18,19,20,21,22,23,24,25,26,27],cpl_queri:[29,30,31],creat:[36,37],credential_manag:27,databas:[19,20,21],database_connect:20,database_connection_abc:20,database_context:21,database_context_abc:21,database_model:19,database_set:19,database_settings_name_enum:19,dependency_inject:22,descript:[0,1,2,3,4,5,7,8,10],doc:[33,34],email:25,email_client_abc:25,email_client_servic:25,email_client_set:25,email_client_settings_name_enum:25,environ:[23,37],environment_name_enum:23,except:29,explor:34,extens:30,featur:13,feedback:13,foreground_color_enum:18,found:13,gener:2,get:[32,36],guidelin:13,help:3,initi:37,instal:[4,37],introduct:[33,34],issu:13,iterable_abc:30,iterable_test:31,languag:6,librari:37,licens:13,list:30,local:37,log:24,logger_abc:24,logger_servic:24,logging_level_enum:24,logging_set:24,logging_settings_name_enum:24,mail:25,manual:33,menu:36,model:31,modul:31,next:[36,37],ordered_iterable_abc:30,overview:6,packag:[31,37],path:6,pip:27,prerequisit:[36,37],project:[5,36],publish:7,pull:13,queri:28,query_test:31,refer:[6,14,15,28],rel:6,remov:8,request:13,review:13,rule:13,s:[36,37],schemat:[2,6],service_collect:22,service_collection_abc:22,service_descriptor:22,service_lifetime_enum:22,service_provid:22,service_provider_abc:22,set:37,spinner_thread:18,start:[9,32,36,37],startup_abc:16,string:27,submiss:13,submit:13,submodul:[19,31],syntax:6,tabl:[6,36,37],test:31,tester:31,time:26,time_format_set:26,time_format_settings_names_enum:26,type:5,uninstal:10,up:37,updat:11,util:27,version:12,what:[36,37],workflow:6,workspac:37}}) \ No newline at end of file +Search.setIndex({docnames:["cli.add","cli.build","cli.generate","cli.help","cli.install","cli.new","cli.overview","cli.publish","cli.remove","cli.start","cli.uninstall","cli.update","cli.version","contributing","cpl_cli","cpl_core","cpl_core.application","cpl_core.configuration","cpl_core.console","cpl_core.database","cpl_core.database.connection","cpl_core.database.context","cpl_core.dependency_injection","cpl_core.environment","cpl_core.logging","cpl_core.mailing","cpl_core.time","cpl_core.utils","cpl_query","cpl_query.exceptions","cpl_query.extension","cpl_query.tests","getting_started","index","introduction","modules","quickstart","setup"],envversion:{"sphinx.domains.c":2,"sphinx.domains.changeset":1,"sphinx.domains.citation":1,"sphinx.domains.cpp":4,"sphinx.domains.index":1,"sphinx.domains.javascript":2,"sphinx.domains.math":2,"sphinx.domains.python":3,"sphinx.domains.rst":2,"sphinx.domains.std":2,sphinx:56},filenames:["cli.add.md","cli.build.md","cli.generate.md","cli.help.md","cli.install.md","cli.new.md","cli.overview.md","cli.publish.md","cli.remove.md","cli.start.md","cli.uninstall.md","cli.update.md","cli.version.md","contributing.md","cpl_cli.rst","cpl_core.rst","cpl_core.application.rst","cpl_core.configuration.rst","cpl_core.console.rst","cpl_core.database.rst","cpl_core.database.connection.rst","cpl_core.database.context.rst","cpl_core.dependency_injection.rst","cpl_core.environment.rst","cpl_core.logging.rst","cpl_core.mailing.rst","cpl_core.time.rst","cpl_core.utils.rst","cpl_query.rst","cpl_query.exceptions.rst","cpl_query.extension.rst","cpl_query.tests.rst","getting_started.rst","index.rst","introduction.md","modules.rst","quickstart.md","setup.md"],objects:{"cpl_core.application":{application_abc:[16,0,0,"-"],application_builder:[16,0,0,"-"],application_builder_abc:[16,0,0,"-"],startup_abc:[16,0,0,"-"]},"cpl_core.application.application_abc":{ApplicationABC:[16,1,1,""]},"cpl_core.application.application_abc.ApplicationABC":{configure:[16,2,1,""],main:[16,2,1,""],run:[16,2,1,""]},"cpl_core.application.application_builder":{ApplicationBuilder:[16,1,1,""]},"cpl_core.application.application_builder.ApplicationBuilder":{build:[16,2,1,""],use_extension:[16,2,1,""],use_startup:[16,2,1,""]},"cpl_core.application.application_builder_abc":{ApplicationBuilderABC:[16,1,1,""]},"cpl_core.application.application_builder_abc.ApplicationBuilderABC":{build:[16,2,1,""],use_startup:[16,2,1,""]},"cpl_core.application.startup_abc":{StartupABC:[16,1,1,""]},"cpl_core.application.startup_abc.StartupABC":{configure_configuration:[16,2,1,""],configure_services:[16,2,1,""]},"cpl_core.configuration":{configuration:[17,0,0,"-"],configuration_abc:[17,0,0,"-"],configuration_model_abc:[17,0,0,"-"],configuration_variable_name_enum:[17,0,0,"-"],console_argument:[17,0,0,"-"]},"cpl_core.configuration.configuration":{Configuration:[17,1,1,""]},"cpl_core.configuration.configuration.Configuration":{add_configuration:[17,2,1,""],add_console_argument:[17,2,1,""],add_console_arguments:[17,2,1,""],add_environment_variables:[17,2,1,""],add_json_file:[17,2,1,""],additional_arguments:[17,3,1,""],argument_error_function:[17,3,1,""],environment:[17,3,1,""],get_configuration:[17,2,1,""]},"cpl_core.configuration.configuration_abc":{ConfigurationABC:[17,1,1,""]},"cpl_core.configuration.configuration_abc.ConfigurationABC":{add_configuration:[17,2,1,""],add_console_argument:[17,2,1,""],add_console_arguments:[17,2,1,""],add_environment_variables:[17,2,1,""],add_json_file:[17,2,1,""],additional_arguments:[17,3,1,""],argument_error_function:[17,3,1,""],environment:[17,3,1,""],get_configuration:[17,2,1,""]},"cpl_core.configuration.configuration_model_abc":{ConfigurationModelABC:[17,1,1,""]},"cpl_core.configuration.configuration_model_abc.ConfigurationModelABC":{from_dict:[17,2,1,""]},"cpl_core.configuration.configuration_variable_name_enum":{ConfigurationVariableNameEnum:[17,1,1,""]},"cpl_core.configuration.configuration_variable_name_enum.ConfigurationVariableNameEnum":{customer:[17,4,1,""],environment:[17,4,1,""],name:[17,4,1,""],to_list:[17,2,1,""]},"cpl_core.configuration.console_argument":{ConsoleArgument:[17,1,1,""]},"cpl_core.configuration.console_argument.ConsoleArgument":{aliases:[17,3,1,""],console_arguments:[17,3,1,""],is_value_token_optional:[17,3,1,""],name:[17,3,1,""],token:[17,3,1,""],value_token:[17,3,1,""]},"cpl_core.console":{background_color_enum:[18,0,0,"-"],console:[18,0,0,"-"],console_call:[18,0,0,"-"],foreground_color_enum:[18,0,0,"-"],spinner_thread:[18,0,0,"-"]},"cpl_core.console.background_color_enum":{BackgroundColorEnum:[18,1,1,""]},"cpl_core.console.background_color_enum.BackgroundColorEnum":{"default":[18,4,1,""],blue:[18,4,1,""],cyan:[18,4,1,""],green:[18,4,1,""],grey:[18,4,1,""],magenta:[18,4,1,""],red:[18,4,1,""],white:[18,4,1,""],yellow:[18,4,1,""]},"cpl_core.console.console":{Console:[18,1,1,""]},"cpl_core.console.console.Console":{background_color:[18,3,1,""],banner:[18,2,1,""],clear:[18,2,1,""],close:[18,2,1,""],color_reset:[18,2,1,""],disable:[18,2,1,""],enable:[18,2,1,""],error:[18,2,1,""],foreground_color:[18,3,1,""],read:[18,2,1,""],read_line:[18,2,1,""],reset_cursor_position:[18,2,1,""],select:[18,2,1,""],set_background_color:[18,2,1,""],set_cursor_position:[18,2,1,""],set_foreground_color:[18,2,1,""],set_hold_back:[18,2,1,""],spinner:[18,2,1,""],table:[18,2,1,""],write:[18,2,1,""],write_at:[18,2,1,""],write_line:[18,2,1,""],write_line_at:[18,2,1,""]},"cpl_core.console.console_call":{ConsoleCall:[18,1,1,""]},"cpl_core.console.console_call.ConsoleCall":{"function":[18,3,1,""],args:[18,3,1,""]},"cpl_core.console.foreground_color_enum":{ForegroundColorEnum:[18,1,1,""]},"cpl_core.console.foreground_color_enum.ForegroundColorEnum":{"default":[18,4,1,""],blue:[18,4,1,""],cyan:[18,4,1,""],green:[18,4,1,""],grey:[18,4,1,""],magenta:[18,4,1,""],red:[18,4,1,""],white:[18,4,1,""],yellow:[18,4,1,""]},"cpl_core.console.spinner_thread":{SpinnerThread:[18,1,1,""]},"cpl_core.console.spinner_thread.SpinnerThread":{exit:[18,2,1,""],run:[18,2,1,""],stop_spinning:[18,2,1,""]},"cpl_core.database":{database_model:[19,0,0,"-"],database_settings:[19,0,0,"-"],database_settings_name_enum:[19,0,0,"-"]},"cpl_core.database.connection":{database_connection:[20,0,0,"-"],database_connection_abc:[20,0,0,"-"]},"cpl_core.database.connection.database_connection":{DatabaseConnection:[20,1,1,""]},"cpl_core.database.connection.database_connection.DatabaseConnection":{connect:[20,2,1,""],engine:[20,3,1,""],session:[20,3,1,""]},"cpl_core.database.connection.database_connection_abc":{DatabaseConnectionABC:[20,1,1,""]},"cpl_core.database.connection.database_connection_abc.DatabaseConnectionABC":{connect:[20,2,1,""],engine:[20,3,1,""],session:[20,3,1,""]},"cpl_core.database.context":{database_context:[21,0,0,"-"],database_context_abc:[21,0,0,"-"]},"cpl_core.database.context.database_context":{DatabaseContext:[21,1,1,""]},"cpl_core.database.context.database_context.DatabaseContext":{connect:[21,2,1,""],engine:[21,3,1,""],save_changes:[21,2,1,""],session:[21,3,1,""]},"cpl_core.database.context.database_context_abc":{DatabaseContextABC:[21,1,1,""]},"cpl_core.database.context.database_context_abc.DatabaseContextABC":{connect:[21,2,1,""],engine:[21,3,1,""],save_changes:[21,2,1,""],session:[21,3,1,""]},"cpl_core.database.database_settings":{DatabaseSettings:[19,1,1,""]},"cpl_core.database.database_settings.DatabaseSettings":{auth_plugin:[19,3,1,""],case_sensitive:[19,3,1,""],connection_string:[19,3,1,""],credentials:[19,3,1,""],echo:[19,3,1,""],encoding:[19,3,1,""],from_dict:[19,2,1,""]},"cpl_core.database.database_settings_name_enum":{DatabaseSettingsNameEnum:[19,1,1,""]},"cpl_core.database.database_settings_name_enum.DatabaseSettingsNameEnum":{auth_plugin:[19,4,1,""],case_sensitive:[19,4,1,""],connection_string:[19,4,1,""],credentials:[19,4,1,""],echo:[19,4,1,""],encoding:[19,4,1,""]},"cpl_core.dependency_injection":{service_collection:[22,0,0,"-"],service_collection_abc:[22,0,0,"-"],service_descriptor:[22,0,0,"-"],service_lifetime_enum:[22,0,0,"-"],service_provider:[22,0,0,"-"],service_provider_abc:[22,0,0,"-"]},"cpl_core.dependency_injection.service_collection":{ServiceCollection:[22,1,1,""]},"cpl_core.dependency_injection.service_collection.ServiceCollection":{add_db_context:[22,2,1,""],add_logging:[22,2,1,""],add_scoped:[22,2,1,""],add_singleton:[22,2,1,""],add_transient:[22,2,1,""],build_service_provider:[22,2,1,""]},"cpl_core.dependency_injection.service_collection_abc":{ServiceCollectionABC:[22,1,1,""]},"cpl_core.dependency_injection.service_collection_abc.ServiceCollectionABC":{add_db_context:[22,2,1,""],add_logging:[22,2,1,""],add_scoped:[22,2,1,""],add_singleton:[22,2,1,""],add_transient:[22,2,1,""],build_service_provider:[22,2,1,""]},"cpl_core.dependency_injection.service_descriptor":{ServiceDescriptor:[22,1,1,""]},"cpl_core.dependency_injection.service_descriptor.ServiceDescriptor":{implementation:[22,3,1,""],lifetime:[22,3,1,""],service_type:[22,3,1,""]},"cpl_core.dependency_injection.service_lifetime_enum":{ServiceLifetimeEnum:[22,1,1,""]},"cpl_core.dependency_injection.service_lifetime_enum.ServiceLifetimeEnum":{"transient":[22,4,1,""],scoped:[22,4,1,""],singleton:[22,4,1,""]},"cpl_core.dependency_injection.service_provider":{ServiceProvider:[22,1,1,""]},"cpl_core.dependency_injection.service_provider.ServiceProvider":{build_service:[22,2,1,""],get_service:[22,2,1,""]},"cpl_core.dependency_injection.service_provider_abc":{ServiceProviderABC:[22,1,1,""]},"cpl_core.dependency_injection.service_provider_abc.ServiceProviderABC":{build_service:[22,2,1,""],get_service:[22,2,1,""]},"cpl_core.environment":{application_environment:[23,0,0,"-"],application_environment_abc:[23,0,0,"-"],environment_name_enum:[23,0,0,"-"]},"cpl_core.environment.application_environment":{ApplicationEnvironment:[23,1,1,""]},"cpl_core.environment.application_environment.ApplicationEnvironment":{application_name:[23,3,1,""],customer:[23,3,1,""],date_time_now:[23,3,1,""],end_time:[23,3,1,""],environment_name:[23,3,1,""],host_name:[23,3,1,""],runtime_directory:[23,3,1,""],set_runtime_directory:[23,2,1,""],set_working_directory:[23,2,1,""],start_time:[23,3,1,""],working_directory:[23,3,1,""]},"cpl_core.environment.application_environment_abc":{ApplicationEnvironmentABC:[23,1,1,""]},"cpl_core.environment.application_environment_abc.ApplicationEnvironmentABC":{application_name:[23,3,1,""],customer:[23,3,1,""],date_time_now:[23,3,1,""],end_time:[23,3,1,""],environment_name:[23,3,1,""],host_name:[23,3,1,""],runtime_directory:[23,3,1,""],set_runtime_directory:[23,2,1,""],set_working_directory:[23,2,1,""],start_time:[23,3,1,""],working_directory:[23,3,1,""]},"cpl_core.environment.environment_name_enum":{EnvironmentNameEnum:[23,1,1,""]},"cpl_core.environment.environment_name_enum.EnvironmentNameEnum":{development:[23,4,1,""],production:[23,4,1,""],staging:[23,4,1,""],testing:[23,4,1,""]},"cpl_core.logging":{logger_abc:[24,0,0,"-"],logger_service:[24,0,0,"-"],logging_level_enum:[24,0,0,"-"],logging_settings:[24,0,0,"-"],logging_settings_name_enum:[24,0,0,"-"]},"cpl_core.logging.logger_abc":{LoggerABC:[24,1,1,""]},"cpl_core.logging.logger_abc.LoggerABC":{debug:[24,2,1,""],error:[24,2,1,""],fatal:[24,2,1,""],header:[24,2,1,""],info:[24,2,1,""],trace:[24,2,1,""],warn:[24,2,1,""]},"cpl_core.logging.logger_service":{Logger:[24,1,1,""]},"cpl_core.logging.logger_service.Logger":{create:[24,2,1,""],debug:[24,2,1,""],error:[24,2,1,""],fatal:[24,2,1,""],header:[24,2,1,""],info:[24,2,1,""],trace:[24,2,1,""],warn:[24,2,1,""]},"cpl_core.logging.logging_level_enum":{LoggingLevelEnum:[24,1,1,""]},"cpl_core.logging.logging_level_enum.LoggingLevelEnum":{DEBUG:[24,4,1,""],ERROR:[24,4,1,""],FATAL:[24,4,1,""],INFO:[24,4,1,""],OFF:[24,4,1,""],TRACE:[24,4,1,""],WARN:[24,4,1,""]},"cpl_core.logging.logging_settings":{LoggingSettings:[24,1,1,""]},"cpl_core.logging.logging_settings.LoggingSettings":{console:[24,3,1,""],filename:[24,3,1,""],from_dict:[24,2,1,""],level:[24,3,1,""],path:[24,3,1,""]},"cpl_core.logging.logging_settings_name_enum":{LoggingSettingsNameEnum:[24,1,1,""]},"cpl_core.logging.logging_settings_name_enum.LoggingSettingsNameEnum":{console_level:[24,4,1,""],file_level:[24,4,1,""],filename:[24,4,1,""],path:[24,4,1,""]},"cpl_core.mailing":{email:[25,0,0,"-"],email_client_abc:[25,0,0,"-"],email_client_service:[25,0,0,"-"],email_client_settings:[25,0,0,"-"],email_client_settings_name_enum:[25,0,0,"-"]},"cpl_core.mailing.email":{EMail:[25,1,1,""]},"cpl_core.mailing.email.EMail":{add_header:[25,2,1,""],add_receiver:[25,2,1,""],body:[25,3,1,""],check_mail:[25,2,1,""],get_content:[25,2,1,""],header:[25,3,1,""],header_list:[25,3,1,""],receiver:[25,3,1,""],receiver_list:[25,3,1,""],subject:[25,3,1,""],transceiver:[25,3,1,""]},"cpl_core.mailing.email_client_abc":{EMailClientABC:[25,1,1,""]},"cpl_core.mailing.email_client_abc.EMailClientABC":{connect:[25,2,1,""],send_mail:[25,2,1,""]},"cpl_core.mailing.email_client_service":{EMailClient:[25,1,1,""]},"cpl_core.mailing.email_client_service.EMailClient":{connect:[25,2,1,""],create:[25,2,1,""],login:[25,2,1,""],send_mail:[25,2,1,""]},"cpl_core.mailing.email_client_settings":{EMailClientSettings:[25,1,1,""]},"cpl_core.mailing.email_client_settings.EMailClientSettings":{credentials:[25,3,1,""],from_dict:[25,2,1,""],host:[25,3,1,""],port:[25,3,1,""],user_name:[25,3,1,""]},"cpl_core.mailing.email_client_settings_name_enum":{EMailClientSettingsNameEnum:[25,1,1,""]},"cpl_core.mailing.email_client_settings_name_enum.EMailClientSettingsNameEnum":{credentials:[25,4,1,""],host:[25,4,1,""],port:[25,4,1,""],user_name:[25,4,1,""]},"cpl_core.time":{time_format_settings:[26,0,0,"-"],time_format_settings_names_enum:[26,0,0,"-"]},"cpl_core.time.time_format_settings":{TimeFormatSettings:[26,1,1,""]},"cpl_core.time.time_format_settings.TimeFormatSettings":{date_format:[26,3,1,""],date_time_format:[26,3,1,""],date_time_log_format:[26,3,1,""],from_dict:[26,2,1,""],time_format:[26,3,1,""]},"cpl_core.time.time_format_settings_names_enum":{TimeFormatSettingsNamesEnum:[26,1,1,""]},"cpl_core.time.time_format_settings_names_enum.TimeFormatSettingsNamesEnum":{date_format:[26,4,1,""],date_time_format:[26,4,1,""],date_time_log_format:[26,4,1,""],time_format:[26,4,1,""]},"cpl_core.utils":{credential_manager:[27,0,0,"-"],pip:[27,0,0,"-"],string:[27,0,0,"-"]},"cpl_core.utils.credential_manager":{CredentialManager:[27,1,1,""]},"cpl_core.utils.credential_manager.CredentialManager":{build_string:[27,2,1,""],decrypt:[27,2,1,""],encrypt:[27,2,1,""]},"cpl_core.utils.pip":{Pip:[27,1,1,""]},"cpl_core.utils.pip.Pip":{get_executable:[27,2,1,""],get_outdated:[27,2,1,""],get_package:[27,2,1,""],install:[27,2,1,""],reset_executable:[27,2,1,""],set_executable:[27,2,1,""],uninstall:[27,2,1,""]},"cpl_core.utils.string":{String:[27,1,1,""]},"cpl_core.utils.string.String":{convert_to_camel_case:[27,2,1,""],convert_to_snake_case:[27,2,1,""],first_to_lower:[27,2,1,""],first_to_upper:[27,2,1,""],random_string:[27,2,1,""]},"cpl_query.exceptions":{ArgumentNoneException:[29,5,1,""],ExceptionArgument:[29,1,1,""],IndexOutOfRangeException:[29,5,1,""],InvalidTypeException:[29,5,1,""],WrongTypeException:[29,5,1,""]},"cpl_query.exceptions.ExceptionArgument":{func:[29,4,1,""],index:[29,4,1,""],list:[29,4,1,""],type:[29,4,1,""],value:[29,4,1,""]},"cpl_query.extension":{iterable_abc:[30,0,0,"-"],list:[30,0,0,"-"],ordered_iterable_abc:[30,0,0,"-"]},"cpl_query.extension.iterable_abc":{IterableABC:[30,1,1,""]},"cpl_query.extension.iterable_abc.IterableABC":{all:[30,2,1,""],any:[30,2,1,""],append:[30,2,1,""],average:[30,2,1,""],contains:[30,2,1,""],count:[30,2,1,""],distinct:[30,2,1,""],element_at:[30,2,1,""],element_at_or_default:[30,2,1,""],extend:[30,2,1,""],first:[30,2,1,""],first_or_default:[30,2,1,""],for_each:[30,2,1,""],last:[30,2,1,""],last_or_default:[30,2,1,""],max:[30,2,1,""],min:[30,2,1,""],order_by:[30,2,1,""],order_by_descending:[30,2,1,""],reverse:[30,2,1,""],single:[30,2,1,""],single_or_default:[30,2,1,""],skip:[30,2,1,""],skip_last:[30,2,1,""],sum:[30,2,1,""],take:[30,2,1,""],take_last:[30,2,1,""],to_list:[30,2,1,""],type:[30,3,1,""],where:[30,2,1,""]},"cpl_query.extension.list":{List:[30,1,1,""]},"cpl_query.extension.ordered_iterable_abc":{OrderedIterableABC:[30,1,1,""]},"cpl_query.extension.ordered_iterable_abc.OrderedIterableABC":{then_by:[30,2,1,""],then_by_descending:[30,2,1,""]},"cpl_query.tests":{iterable_test:[31,0,0,"-"],models:[31,0,0,"-"],query_test:[31,0,0,"-"],tester:[31,0,0,"-"]},"cpl_query.tests.iterable_test":{IterableTest:[31,1,1,""]},"cpl_query.tests.iterable_test.IterableTest":{setUp:[31,2,1,""],test_append:[31,2,1,""]},"cpl_query.tests.models":{Address:[31,1,1,""],User:[31,1,1,""]},"cpl_query.tests.query_test":{QueryTest:[31,1,1,""]},"cpl_query.tests.query_test.QueryTest":{setUp:[31,2,1,""],test_all:[31,2,1,""],test_any:[31,2,1,""],test_avg:[31,2,1,""],test_contains:[31,2,1,""],test_count:[31,2,1,""],test_distinct:[31,2,1,""],test_element_at:[31,2,1,""],test_element_at_or_default:[31,2,1,""],test_first:[31,2,1,""],test_first_or_default:[31,2,1,""],test_for_each:[31,2,1,""],test_last:[31,2,1,""],test_last_or_default:[31,2,1,""],test_max:[31,2,1,""],test_min:[31,2,1,""],test_order_by:[31,2,1,""],test_order_by_descending:[31,2,1,""],test_reverse:[31,2,1,""],test_single:[31,2,1,""],test_single_or_default:[31,2,1,""],test_skip:[31,2,1,""],test_skip_last:[31,2,1,""],test_sum:[31,2,1,""],test_take:[31,2,1,""],test_take_last:[31,2,1,""],test_then_by:[31,2,1,""],test_then_by_descending:[31,2,1,""],test_where:[31,2,1,""]},"cpl_query.tests.tester":{Tester:[31,1,1,""]},"cpl_query.tests.tester.Tester":{create:[31,2,1,""],start:[31,2,1,""]},cpl_query:{exceptions:[29,0,0,"-"],tests:[31,0,0,"-"]}},objnames:{"0":["py","module","Python module"],"1":["py","class","Python class"],"2":["py","method","Python method"],"3":["py","property","Python property"],"4":["py","attribute","Python attribute"],"5":["py","exception","Python exception"]},objtypes:{"0":"py:module","1":"py:class","2":"py:method","3":"py:property","4":"py:attribute","5":"py:exception"},terms:{"0":[22,24,36],"1":[22,24,36],"14":[20,21],"2":[22,24,36],"3":24,"4":24,"5":[24,36],"6":24,"8":13,"9":[20,21],"abstract":[2,16,17,20,21,22,23,24,25,30],"byte":27,"case":[13,27,31,36],"char":[18,27],"class":[2,16,17,18,19,20,21,22,23,24,25,26,27,29,30,31],"default":[18,37],"do":[33,36],"enum":[2,17,18,19,22,23,24,25,26,29],"float":30,"function":[18,27,30,36],"import":[13,36],"int":[18,25,27,30,36],"new":[6,13,14,18,35,36,37],"public":13,"return":[17,18,22,25,30,36],"short":[3,6],"static":[17,25,27],"transient":22,"true":17,"while":13,A:[0,5,13],As:13,Be:13,By:13,For:13,IN:30,If:[0,5,8,13,37],In:[6,13,36],Such:13,That:13,The:[1,2,4,5,6,7,8,10,13,22,25,27,33,34,36,37],These:33,To:[6,13,36,37],With:6,__init__:[20,21,36],__main__:36,__name__:36,_func:30,_iterableabc__iter:30,_iterableabc__object:30,abc:[2,16,17,18,20,21,22,23,24,25,30],abl:13,about:[33,37],absolut:6,accept:13,activ:18,ad:[0,13],add:[5,6,13,14,17,22,25,35,36],add_configur:17,add_console_argu:17,add_db_context:22,add_environment_vari:17,add_head:25,add_json_fil:17,add_log:22,add_receiv:25,add_scop:22,add_singleton:22,add_transi:22,addit:[6,13],additional_argu:17,address:[25,31],agre:13,alia:6,alias:[6,17],all:[1,7,12,13,30],allow:13,alreadi:[13,36,37],also:[36,37],an:[1,6,7,17,18,19,22,23,24,25,26,29,36,37],ani:[6,18,30],api:[13,33,34,35],app:[1,6,16,32,33,34,35,36],append:30,appli:13,applic:[5,9,15,18,23,24,25,33,34,35,36,37],application_abc:[15,35],application_build:[15,35],application_builder_abc:[15,35],application_environ:[15,35],application_environment_abc:[15,16,17,24,25,35],application_extension_abc:16,application_nam:23,applicationabc:16,applicationbuild:16,applicationbuilderabc:16,applicationenviron:23,applicationenvironmentabc:[16,17,23,24,25],applicationextensionabc:16,appropri:13,appset:[16,36],ar:[6,7,13],arg:[16,18,21,27,29],argument:[1,5,6,7,14,17,18,27,29,35],argument_error_funct:17,argumentnoneexcept:29,artifact:6,ascend:30,ascii_lett:36,ascii_lowercas:36,ascii_uppercas:36,ask:13,attribut:[17,19,24,25,26],auth_plugin:19,authplugin:19,automat:13,avail:[3,6,13],averag:30,b:[1,6,13],back:[13,18],background:18,background_color:18,background_color_enum:[15,35],backgroundcolorenum:18,banner:18,base64:27,base:[2,16,17,18,19,20,21,22,23,24,25,26,27,29,30,31,36],basic:[14,35,36,37],been:13,befor:[13,18,31],behavior:13,better:13,bit:13,blue:18,bodi:25,bool:[17,18,19,25,30],branch:13,build:[6,7,14,16,27,35,36,37],build_servic:22,build_service_provid:22,build_str:27,call:[0,8,16,18],callabl:[17,18,22,30],camel:27,camelcas:27,can:[0,1,6,7,8,13,33,37],case_sensit:19,casesensit:19,cd:[6,37],chang:[6,9,13,21,36],channel:13,charact:18,check:25,check_mail:25,checkout:13,chnage:37,choic:36,citizen:13,classmethod:[18,27],clear:18,cli:[12,32,33,34,35,36],close:[13,18],code:[36,37],codebas:13,collect:[17,18,22,30],color:18,color_reset:18,command:[0,1,3,5,7,8,13,14,27,35,37],commandnameoralia:6,commit:13,common:[33,34],commun:13,complex:[30,33,34],config:[16,22],configmodel:2,configur:[15,16,19,22,24,25,26,35],configuration_abc:[15,16,22,35],configuration_model_abc:[15,19,24,25,26,35],configuration_variable_name_enum:[15,35],configurationabc:[16,17,22],configurationmodelabc:[17,19,24,25,26],configurationvariablenameenum:17,configure_configur:16,configure_servic:16,confirm:13,connect:[15,19,21,25,35],connection_str:[19,20,21],connectionstr:19,consid:13,consist:13,consol:[1,3,5,6,7,15,17,24,32,35,36],console_argu:[15,35],console_cal:[15,35],console_level:24,consoleargu:17,consolecal:18,consoleloglevel:24,contain:[16,30],content:[14,32,35],context:[15,19,22,35,37],continu:36,contributor:13,convert:[17,24,25,26,27],convert_to_camel_cas:27,convert_to_snake_cas:27,coordin:[13,18],copi:1,core:[20,21],count:[13,30],cpl:[6,14,20,21,22,32,37],cpl_core:[7,15,35,36,37],cpl_queri:[28,35],craft:13,creat:[6,7,13,16,22,24,25,27,31,32,33,34,35],credenti:[19,25,27],credential_manag:[15,35],credentialmanag:27,current:[6,23],cursor:18,cursor_background_color:18,cursor_foreground_color:18,custom:[16,17,23],cyan:18,d:13,data:7,databas:[15,22,35],database_connect:[15,19,35],database_connection_abc:[15,19,35],database_context:[15,19,35],database_context_abc:[15,19,22,35],database_model:[15,35],database_set:[15,20,21,22,35],database_settings_name_enum:[15,35],databaseconnect:20,databaseconnectionabc:20,databasecontext:21,databasecontextabc:[21,22],databaseset:[19,20,21,22],databasesettingsnameenum:19,date_format:26,date_time_format:26,date_time_log_format:26,date_time_now:23,dateformat:26,datetim:23,datetimeformat:26,datetimelogformat:26,db_context:22,db_context_typ:22,db_set:22,de:[13,37],debug:24,declin:37,decod:27,decrypt:27,def:36,defin:[6,17,37],delet:8,deped:4,depend:[6,11,36],dependency_inject:[15,16,35],descend:30,describ:13,descript:[6,14,35],descriptor:22,design:13,desktop:[33,34],detail:33,determin:13,develop:[6,13,23,33,34,36,37],dict:[17,18,19,24,25,26],directli:[1,13],directori:[1,6,7,23,36],disabl:18,discuss:13,dist:[6,7],distinct:30,doc:[20,21],document:13,doesn:13,don:[13,36],done:36,duplic:13,e:25,each:6,echo:19,edit:13,edraft:[13,37],edraft_d:[20,21],effici:[33,34],effort:13,either:6,element:[18,30],element_at:30,element_at_or_default:30,elif:36,email:[15,35],email_client_abc:[15,35],email_client_servic:[15,35],email_client_set:[15,35],email_client_settings_name_enum:[15,35],emailcli:25,emailclientabc:25,emailclientset:25,emailclientsettingsnameenum:25,emul:36,en:[20,21],enabl:[18,36],encod:[19,27],encrypt:27,end:[18,24,30],end_tim:23,engin:[20,21],enough:13,ensur:13,enter:37,enterpris:[33,34],entri:[16,18],enumer:[17,18,19,22,23,24,25,26,29],env:[16,20,21,24],environ:[15,16,17,24,25,32,35],environment_nam:23,environment_name_enum:[15,35],environmentnameenum:23,error:[17,18,24],essenti:[13,36],even:13,everyth:33,ex:24,except:[24,28,35],exceptionargu:29,execut:[1,6,7,27],exercis:31,exist:13,exit:[18,36],explor:36,extend:30,extens:[16,28,35],extra:[27,37],extract:13,fatal:24,featur:37,file:[1,2,6,7,8,9,13,17,37],file_level:24,fileloglevel:24,filenam:24,find:13,first:[6,13,27,30,33,34],first_or_default:30,first_to_low:27,first_to_upp:27,fix:13,fixtur:31,fixup:13,folder:36,follow:[6,13,36,37],for_each:30,fore:37,foreground:18,foreground_color:18,foreground_color_enum:[15,35],foregroundcolorenum:18,fork:13,format:[6,24,26],forth:13,found:17,from:[0,6,7,8,10,12,13,16,17,19,20,21,30,33,34,36],from_dict:[17,19,24,25,26],full:36,func:[29,30],g:[2,6],gener:[5,6,7,14,35,36,37],generate_password:36,get:[27,33,34,35,37],get_configur:17,get_cont:25,get_execut:27,get_outd:27,get_packag:27,get_servic:22,git:13,git_sh:[20,21],gitea:13,give:13,given:[0,1,4,6,7,10,17,18,19,22,27],go:[6,13,33],good:13,great:33,green:18,grei:18,guid:13,h:[3,6],ha:[0,18],handl:[18,27],hard:13,have:[6,13,36,37],haven:13,head:13,header:[18,24,25],header_background_color:18,header_foreground_color:18,header_list:25,hear:13,hello:[36,37],help:[6,13,14,33,34,35],here:[13,37],hold:18,home:[20,21],hook:31,host:25,host_nam:23,html:[20,21],http:[20,21,37],i:[4,6,36],id:36,immedi:6,implement:[13,22,30],includ:[1,13,37],index:[27,29,30,36,37],indexoutofrangeexcept:29,info:[13,24],inform:[13,24,37],initi:[5,32,35],inject:36,input:[18,36],instal:[6,12,14,27,32,35,36],instanc:[16,22],instance_typ:22,interact:18,intern:22,introduc:36,invalid:[17,29],invalidtypeexcept:29,investig:13,is_value_token_opt:17,isol:13,issus:13,iter:30,iterable_abc:[28,35],iterableabc:30,iterabletest:31,its:[6,13],join:36,json:[7,17,36,37],keep:13,kei:37,key_typ:17,keyword:18,known:17,kwarg:18,languag:[14,35],larger:13,last:[18,30],last_or_default:30,launch:37,learn:[33,34,37],len:36,length:[18,27,36],letter:36,level:24,lib:[20,21,37],librari:[1,5,6,7,32,33,34,35],licens:36,lifetim:22,like:[13,36],line:[13,18,36],list:[3,6,12,17,18,22,25,27,28,29,35],live:37,load:16,local:[27,32,35],log:[15,25,35],logfil:24,logger:[22,24,25],logger_abc:[15,25,35],logger_servic:[15,35],loggerabc:[24,25],logging_level_enum:[15,35],logging_set:[15,35],logging_settings_name_enum:[15,35],logginglevelenum:24,loggingset:24,loggingsettingsnameenum:24,login:25,look:36,love:13,lower:[27,36],magenta:18,mail:[15,35],mail_set:25,main:[16,36],maintain:13,major:13,make:[13,37],manag:13,master:13,max:30,mayb:13,md:36,meant:[33,34],member:13,menu:[18,32,35],messag:[3,18,24],method:[13,31],methodnam:31,might:13,min:30,mind:13,minim:13,mit:13,modul:[20,21],more:[13,37],most:[6,36,37],msg_len:18,must:[0,1,6,8,13],my:[6,13,37],n:[5,6,36,37],name:[0,1,2,5,6,7,8,17,23,24,27,31,37],navig:37,need:[13,36,37],next:[18,32,35],nextcloud_sven:[20,21],none:[17,18,22,24,25,27,29,30,31],note:13,nr:31,number:30,object:[16,17,18,22,25,27,30,31],occur:17,occurr:30,off:24,often:13,on_blu:18,on_cyan:18,on_default:18,on_green:18,on_grei:18,on_magenta:18,on_r:18,on_whit:18,on_yellow:18,one:13,onli:36,open:[13,36,37],option:[6,13,17,18,22,24,25,27,30,36],option_background_color:18,option_foreground_color:18,optionalsarg:6,order:[13,30],order_bi:30,order_by_descend:30,ordered_iterable_abc:[28,35],orderediterableabc:30,orderedlist:30,org:[20,21],origin:13,orm:[20,21],otherwis:[0,8],ouput:36,our:13,out:[13,29,36,37],outdat:27,outlin:13,output:[1,6,7,17,18,36,37],outsid:13,overview:[14,35,37],own:6,p:[6,7],packag:[4,5,6,10,12,20,21,27,32,33,34,35,36],page:33,parent:6,password:36,patch:13,path:[0,1,7,8,14,17,23,24,35,37],pep:13,pip:[4,10,12,15,35,36,37],place:[17,30],platform:[33,34],pleas:13,point:[13,16,18],port:25,posit:18,possibl:13,pr:13,prefix:[6,17],prepar:[1,6,7,13,16],prerequisit:[32,35],press:37,prevent:13,print:[18,36],problem:13,proce:13,process:13,product:23,program:24,project:[0,1,4,6,7,8,10,11,13,14,32,35,37],projectmain:36,prompt:37,properti:[17,18,19,20,21,22,23,24,25,26,30],propos:13,provid:[13,16,22,36,37],publish:[1,6,14,35,37],push:13,py:[6,7,20,21,27,36],pycharm:36,pyhton:37,python3:[20,21],python:[1,13,27,33,34,36,37],queri:[33,34,35],querytest:31,question:13,quickli:13,r:[6,8],random:[27,36],random_str:27,rang:[29,36],re:13,read:[17,18,36],read_lin:18,readi:[13,37],readili:13,readm:36,realli:13,receiv:25,receiver_list:25,red:18,refer:[0,8,33,34,35],referenc:0,rel:[14,35],relat:13,remov:[0,6,7,14,35],replac:27,repo:13,repositori:13,repres:[18,19,23,25],represent:[20,21,22,24,25,26],reproduc:13,reproduct:13,requir:13,requiredarg:6,reserv:13,reset:[18,27],reset_cursor_posit:18,reset_execut:27,restart:[6,9,37],result:[25,27],revers:30,right:13,rm:13,root:6,run:[1,5,16,18,27,36,37],runtest:31,runtim:23,runtime_directori:23,s:[6,9,13,32,35],same:6,sampl:36,save:[13,17,21],save_chang:21,scenario:13,schemat:[14,35],schreibtisch:[20,21],scope:22,search:[13,17,22],search_typ:17,section:36,see:[5,13,20,21,36,37],select:[18,36],send:[13,25],send_mail:25,serv:6,server:[6,25,33,34,37],servic:[2,16,22,24,25,36],service_collect:[15,35],service_collection_abc:[15,16,35],service_descriptor:[15,35],service_lifetime_enum:[15,35],service_provid:[15,35],service_provider_abc:[15,16,35],service_typ:22,servicecollect:22,servicecollectionabc:[16,22],servicedescriptor:22,servicelifetimeenum:22,serviceprovid:22,serviceproviderabc:[16,22],session:[20,21],set:[2,16,17,18,19,22,23,24,25,26,27,31,32,35,36],set_background_color:18,set_cursor_posit:18,set_execut:27,set_foreground_color:18,set_hold_back:18,set_runtime_directori:23,set_working_directori:23,setup:[6,7,31,34,37],sh:[13,37],sh_cpl:[13,20,21,37],should:[17,36,37],show:[3,18],shown:[6,17,37],significantli:13,similar:37,simpl:[5,33,34,37],singl:30,single_or_default:30,singleton:22,site:[20,21],size:13,skip:30,skip_last:30,small:13,snake:27,snake_cas:27,so:[13,37],some:6,sometim:13,soon:13,sort:30,sourc:[0,1,7,13,27,36,37],specifi:[0,6,8,17],spinner:18,spinner_background_color:18,spinner_foreground_color:18,spinner_thread:[15,35],spinnerthread:18,sqlalchemi:[20,21],src:36,stage:23,standard:27,start:[6,14,31,33,34,35],start_tim:23,startup:16,startup_abc:[15,35],startupabc:16,statement:6,stderr:27,stdout:27,step:13,stop:18,stop_spin:18,store:17,str:[0,1,2,3,4,5,7,8,10,17,18,19,20,21,23,24,25,26,27,36],street:31,string:[15,18,20,21,24,25,35,36],style:13,subject:25,submodul:[15,35],subprocess:27,success:37,successfulli:13,sum:30,suppli:6,sure:13,sven:[20,21],syntax:[14,35],system:27,t:[13,30,36],tabl:[14,18,27,32,35],take:[6,17,30],take_last:30,target:[0,1],tb:18,team:13,termin:[6,18,36,37],test:[13,23,36],test_al:31,test_ani:31,test_append:31,test_avg:31,test_contain:31,test_count:31,test_distinct:31,test_element_at:31,test_element_at_or_default:31,test_first:31,test_first_or_default:31,test_for_each:31,test_last:31,test_last_or_default:31,test_max:31,test_min:31,test_order_bi:31,test_order_by_descend:31,test_revers:31,test_singl:31,test_single_or_default:31,test_skip:31,test_skip_last:31,test_sum:31,test_tak:31,test_take_last:31,test_then_bi:31,test_then_by_descend:31,test_wher:31,testcas:31,text:18,text_background_color:18,text_foreground_color:18,than:13,thank:13,them:1,themselv:13,then_bi:30,then_by_descend:30,thi:[3,13,16,33,34,36,37],those:37,thread:[2,18],through:36,throughout:13,thrown:24,time:[13,15,24,35],time_format:[24,26],time_format_set:[15,24,35],time_format_settings_names_enum:[15,35],timeformat:26,timeformatset:[24,26],timeformatsettingsnamesenum:26,to_list:[17,30],todai:13,token:17,topic:13,trace:24,traceback:18,tracker:13,transceiv:25,tree:24,tutori:[36,37],type:[0,1,2,3,4,7,8,10,14,16,17,22,29,30,35],u:[6,11],ui:[6,10],ultim:13,under:13,understand:[13,33,34,36,37],unexpect:29,unfortun:13,uninstal:[6,14,27,35],union:[17,18,22,30],unit:13,unittest:31,up:[31,32,35],updat:[6,13,14,35],upfront:13,upper:[27,36],url:[27,37],us:[0,1,6,7,8,13,16,18,25,27,33,34,36,37],use_extens:16,use_startup:16,user:[31,36],user_nam:25,usernam:25,util:[15,35],v:[6,12],valid:[25,36],valu:[0,1,2,3,4,5,7,8,10,17,18,19,22,23,24,25,26,29,30],value_token:17,variabl:[17,27],ve:36,version:[6,14,35],via:[4,10,13],vs:36,wa:[17,37],walk:36,want:[13,36],warn:24,watch:37,we:[13,36],wealth:13,welcom:36,well:13,what:[32,35],when:[18,29],where:30,whether:17,which:[0,6,17,18,27,37],white:18,who:13,window:37,within:[1,6,13],without:[4,6,13],work:[6,13,23],workaround:13,workflow:[14,35],working_directori:23,workspac:[0,1,5,6,8,32,35],world:[36,37],would:13,write:[13,18,24],write_at:18,write_lin:[18,36],write_line_at:18,wrongtypeexcept:29,x:18,y:[18,36],yellow:18,you:[0,1,6,8,13,33,34,36,37],your:[4,6,9,13,33,34,37]},titles:["cpl add","cpl build","cpl generate","cpl help","cpl install","cpl new","CLI Overview and Command Reference","cpl publish","cpl remove","cpl start","cpl uninstall","cpl update","cpl version","Contributing to CPL","CLI Reference","API Reference","cpl_core.application","cpl_core.configuration","cpl_core.console","cpl_core.database","cpl_core.database.connection","cpl_core.database.context","cpl_core.dependency_injection","cpl_core.environment","cpl_core.logging","cpl_core.mailing","cpl_core.time","cpl_core.utils","Query Reference","cpl_query.exceptions","cpl_query.extension","cpl_query.tests package","Getting started","Introduction to the CPL Docs","Introduction to the CPL Docs","cpl","Getting started with CPL","Setting up the local environment and workspace"],titleterms:{"new":5,add:0,address:13,an:13,api:15,app:37,applic:16,application_abc:16,application_build:16,application_builder_abc:16,application_environ:23,application_environment_abc:23,argument:[0,2,3,4,8,10],background_color_enum:18,basic:6,bug:13,build:1,cli:[6,14,37],code:13,command:6,configur:17,configuration_abc:17,configuration_model_abc:17,configuration_variable_name_enum:17,connect:20,consol:[18,37],console_argu:17,console_cal:18,content:[0,1,2,4,5,6,7,8,10,31,36,37],context:21,contribut:13,cpl:[0,1,2,3,4,5,7,8,9,10,11,12,13,33,34,35,36],cpl_core:[16,17,18,19,20,21,22,23,24,25,26,27],cpl_queri:[29,30,31],creat:[36,37],credential_manag:27,databas:[19,20,21],database_connect:20,database_connection_abc:20,database_context:21,database_context_abc:21,database_model:19,database_set:19,database_settings_name_enum:19,dependency_inject:22,descript:[0,1,2,3,4,5,7,8,10],doc:[33,34],email:25,email_client_abc:25,email_client_servic:25,email_client_set:25,email_client_settings_name_enum:25,environ:[23,37],environment_name_enum:23,except:29,explor:34,extens:30,featur:13,feedback:13,foreground_color_enum:18,found:13,gener:2,get:[32,36],guidelin:13,help:3,initi:37,instal:[4,37],introduct:[33,34],issu:13,iterable_abc:30,iterable_test:31,languag:6,librari:37,licens:13,list:30,local:37,log:24,logger_abc:24,logger_servic:24,logging_level_enum:24,logging_set:24,logging_settings_name_enum:24,mail:25,manual:33,menu:36,model:31,modul:31,next:[36,37],ordered_iterable_abc:30,overview:6,packag:[31,37],path:6,pip:27,prerequisit:[36,37],project:[5,36],publish:7,pull:13,queri:28,query_test:31,refer:[6,14,15,28],rel:6,remov:8,request:13,review:13,rule:13,s:[36,37],schemat:[2,6],service_collect:22,service_collection_abc:22,service_descriptor:22,service_lifetime_enum:22,service_provid:22,service_provider_abc:22,set:37,spinner_thread:18,start:[9,32,36,37],startup_abc:16,string:27,submiss:13,submit:13,submodul:[19,31],syntax:6,tabl:[6,36,37],test:31,tester:31,time:26,time_format_set:26,time_format_settings_names_enum:26,type:5,uninstal:10,up:37,updat:11,util:27,version:12,what:[36,37],workflow:6,workspac:37}}) \ No newline at end of file diff --git a/src/cpl_query/extension/__init__.py b/src/cpl_query/extension/__init__.py index 477e856c..0ddc1604 100644 --- a/src/cpl_query/extension/__init__.py +++ b/src/cpl_query/extension/__init__.py @@ -20,11 +20,11 @@ __version__ = '2021.10.0.post1' from collections import namedtuple # imports: -from iterable_abc import IterableABC -from iterable import Iterable -from list import List -from ordered_iterable_abc import OrderedIterableABC -from ordered_iterable import OrderedIterable +from .iterable_abc import IterableABC +from .iterable import Iterable +from .list import List +from .ordered_iterable_abc import OrderedIterableABC +from .ordered_iterable import OrderedIterable VersionInfo = namedtuple('VersionInfo', 'major minor micro') version_info = VersionInfo(major='2021', minor='10', micro='0.post1') diff --git a/src/cpl_query/extension/iterable.py b/src/cpl_query/extension/iterable.py index 524d5164..b57b7774 100644 --- a/src/cpl_query/extension/iterable.py +++ b/src/cpl_query/extension/iterable.py @@ -1,23 +1,26 @@ -from typing import Optional, Callable, Union +from typing import Callable, Optional, Union -from cpl_query.extension.ordered_iterable_abc import OrderedIterableABC -from .._query.all import all_query -from .._query.any import any_query -from .._query.avg import avg_query -from .._query.contains import contains_query -from .._query.count import count_query -from .._query.distinct import distinct_query -from .._query.element_at import element_at_query, element_at_or_default_query -from .._query.first_last import first_or_default_query, first_query, last_or_default_query, last_query -from .._query.for_each import for_each_query -from .._query.max_min import max_query, min_query -from .._query.order_by import order_by_query, order_by_descending_query -from .._query.reverse import reverse_query -from .._query.single import single_query, single_or_default_query -from .._query.skip_take import skip_query, skip_last_query, take_query, take_last_query -from .._query.sum import sum_query -from .._query.where import where_query +from cpl_query._query.all import all_query +from cpl_query._query.any import any_query +from cpl_query._query.avg import avg_query +from cpl_query._query.contains import contains_query +from cpl_query._query.count import count_query +from cpl_query._query.distinct import distinct_query +from cpl_query._query.element_at import (element_at_or_default_query, + element_at_query) +from cpl_query._query.first_last import (first_or_default_query, first_query, + last_or_default_query, last_query) +from cpl_query._query.for_each import for_each_query +from cpl_query._query.max_min import max_query, min_query +from cpl_query._query.order_by import order_by_descending_query, order_by_query +from cpl_query._query.reverse import reverse_query +from cpl_query._query.single import single_or_default_query, single_query +from cpl_query._query.skip_take import (skip_last_query, skip_query, + take_last_query, take_query) +from cpl_query._query.sum import sum_query +from cpl_query._query.where import where_query from cpl_query.extension.iterable_abc import IterableABC +from cpl_query.extension.ordered_iterable_abc import OrderedIterableABC class Iterable(IterableABC): diff --git a/src/cpl_query/extension/list.py b/src/cpl_query/extension/list.py index 8c4fd7a4..a99ca58f 100644 --- a/src/cpl_query/extension/list.py +++ b/src/cpl_query/extension/list.py @@ -1,8 +1,8 @@ -from iterable import Iterable +from cpl_query.extension.iterable import Iterable class List(Iterable): - r"""Implementation of :class: `cpl_query.extension.Iterable` + r"""Implementation of :class: `cpl_query.extension.iterable.Iterable` """ def __init__(self, t: type = None, values: list = None): diff --git a/src/cpl_query/extension/ordered_iterable.py b/src/cpl_query/extension/ordered_iterable.py index f3149915..3481f082 100644 --- a/src/cpl_query/extension/ordered_iterable.py +++ b/src/cpl_query/extension/ordered_iterable.py @@ -1,8 +1,8 @@ from collections import Callable -from iterable import Iterable -from .._query.order_by import then_by_query, then_by_descending_query -from ordered_iterable_abc import OrderedIterableABC +from cpl_query._query.order_by import then_by_descending_query, then_by_query +from cpl_query.extension.iterable import Iterable +from cpl_query.extension.ordered_iterable_abc import OrderedIterableABC class OrderedIterable(Iterable, OrderedIterableABC): diff --git a/src/cpl_query/extension/ordered_iterable_abc.py b/src/cpl_query/extension/ordered_iterable_abc.py index c0de7503..7cab7e62 100644 --- a/src/cpl_query/extension/ordered_iterable_abc.py +++ b/src/cpl_query/extension/ordered_iterable_abc.py @@ -1,7 +1,7 @@ from abc import abstractmethod from collections import Callable -from iterable_abc import IterableABC +from cpl_query.extension.iterable_abc import IterableABC class OrderedIterableABC(IterableABC):