123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578157915801581158215831584158515861587158815891590159115921593159415951596159715981599160016011602160316041605160616071608160916101611161216131614161516161617161816191620162116221623162416251626162716281629163016311632163316341635163616371638163916401641164216431644164516461647164816491650165116521653165416551656165716581659166016611662166316641665166616671668166916701671167216731674167516761677167816791680168116821683168416851686168716881689169016911692169316941695169616971698169917001701170217031704170517061707170817091710171117121713171417151716171717181719172017211722172317241725172617271728172917301731173217331734173517361737173817391740174117421743174417451746174717481749175017511752175317541755175617571758175917601761176217631764176517661767176817691770177117721773177417751776177717781779178017811782178317841785178617871788178917901791179217931794179517961797179817991800180118021803180418051806180718081809181018111812181318141815181618171818181918201821182218231824182518261827182818291830183118321833183418351836183718381839184018411842184318441845184618471848184918501851185218531854185518561857185818591860186118621863186418651866186718681869187018711872187318741875187618771878187918801881188218831884188518861887188818891890189118921893189418951896189718981899190019011902190319041905190619071908190919101911191219131914191519161917191819191920192119221923192419251926192719281929193019311932193319341935193619371938193919401941194219431944194519461947194819491950195119521953195419551956195719581959196019611962196319641965196619671968196919701971197219731974197519761977197819791980198119821983198419851986198719881989199019911992199319941995199619971998199920002001200220032004200520062007200820092010201120122013201420152016201720182019202020212022202320242025202620272028202920302031203220332034203520362037203820392040204120422043204420452046204720482049205020512052205320542055205620572058205920602061206220632064206520662067206820692070207120722073207420752076207720782079208020812082208320842085208620872088208920902091209220932094209520962097209820992100210121022103210421052106210721082109211021112112211321142115211621172118211921202121212221232124212521262127212821292130213121322133213421352136213721382139214021412142214321442145214621472148214921502151215221532154215521562157215821592160216121622163216421652166216721682169217021712172217321742175217621772178217921802181218221832184218521862187218821892190219121922193219421952196219721982199220022012202220322042205220622072208220922102211221222132214221522162217221822192220222122222223222422252226222722282229223022312232223322342235223622372238223922402241224222432244224522462247224822492250225122522253225422552256225722582259226022612262226322642265226622672268226922702271227222732274227522762277227822792280228122822283228422852286228722882289229022912292229322942295229622972298229923002301230223032304230523062307230823092310231123122313231423152316231723182319232023212322232323242325232623272328232923302331233223332334233523362337233823392340234123422343234423452346234723482349235023512352235323542355235623572358235923602361236223632364236523662367236823692370237123722373237423752376237723782379238023812382238323842385238623872388238923902391239223932394239523962397239823992400240124022403240424052406240724082409241024112412241324142415241624172418241924202421242224232424242524262427242824292430243124322433243424352436243724382439244024412442244324442445244624472448244924502451245224532454245524562457245824592460246124622463246424652466246724682469247024712472247324742475247624772478247924802481248224832484248524862487248824892490249124922493249424952496249724982499250025012502250325042505250625072508250925102511251225132514251525162517251825192520252125222523252425252526252725282529253025312532253325342535253625372538253925402541254225432544254525462547254825492550255125522553255425552556255725582559256025612562256325642565256625672568256925702571257225732574257525762577257825792580258125822583258425852586258725882589259025912592259325942595259625972598259926002601260226032604260526062607260826092610261126122613261426152616261726182619262026212622262326242625262626272628262926302631263226332634263526362637263826392640264126422643264426452646264726482649265026512652265326542655265626572658265926602661266226632664266526662667266826692670267126722673267426752676267726782679268026812682268326842685268626872688268926902691269226932694269526962697269826992700270127022703270427052706270727082709271027112712271327142715271627172718271927202721272227232724272527262727272827292730273127322733273427352736273727382739274027412742274327442745274627472748274927502751275227532754275527562757275827592760276127622763276427652766276727682769277027712772277327742775277627772778277927802781278227832784278527862787278827892790279127922793279427952796279727982799280028012802280328042805280628072808280928102811281228132814281528162817281828192820282128222823282428252826282728282829283028312832283328342835283628372838283928402841284228432844284528462847284828492850285128522853285428552856285728582859286028612862286328642865286628672868286928702871287228732874287528762877287828792880288128822883288428852886288728882889289028912892289328942895289628972898289929002901290229032904290529062907290829092910291129122913291429152916291729182919292029212922292329242925292629272928292929302931293229332934293529362937293829392940294129422943294429452946294729482949295029512952295329542955295629572958295929602961296229632964296529662967296829692970297129722973297429752976297729782979298029812982298329842985298629872988298929902991299229932994299529962997299829993000300130023003300430053006300730083009301030113012301330143015301630173018301930203021302230233024302530263027302830293030303130323033303430353036303730383039304030413042304330443045304630473048304930503051305230533054305530563057305830593060306130623063306430653066306730683069307030713072307330743075307630773078307930803081308230833084308530863087308830893090309130923093309430953096309730983099310031013102310331043105310631073108310931103111311231133114311531163117311831193120312131223123312431253126312731283129313031313132313331343135313631373138313931403141314231433144314531463147314831493150315131523153315431553156315731583159316031613162316331643165316631673168316931703171317231733174317531763177317831793180318131823183318431853186318731883189319031913192319331943195319631973198319932003201320232033204320532063207320832093210321132123213321432153216321732183219322032213222322332243225322632273228322932303231323232333234323532363237323832393240324132423243324432453246324732483249325032513252325332543255325632573258325932603261326232633264326532663267326832693270327132723273327432753276327732783279328032813282328332843285328632873288328932903291329232933294329532963297329832993300330133023303330433053306330733083309331033113312331333143315331633173318331933203321332233233324332533263327332833293330333133323333333433353336333733383339334033413342334333443345334633473348334933503351335233533354335533563357335833593360336133623363336433653366336733683369337033713372337333743375337633773378337933803381338233833384338533863387338833893390339133923393339433953396339733983399340034013402340334043405340634073408340934103411341234133414341534163417341834193420342134223423342434253426342734283429343034313432343334343435343634373438343934403441344234433444344534463447344834493450345134523453345434553456345734583459346034613462346334643465346634673468346934703471347234733474347534763477347834793480348134823483348434853486348734883489349034913492349334943495349634973498349935003501350235033504350535063507350835093510351135123513351435153516351735183519352035213522352335243525352635273528352935303531353235333534353535363537353835393540354135423543354435453546354735483549355035513552355335543555355635573558355935603561356235633564356535663567356835693570357135723573357435753576357735783579358035813582358335843585358635873588358935903591359235933594359535963597359835993600360136023603360436053606360736083609361036113612361336143615361636173618361936203621362236233624362536263627362836293630363136323633363436353636363736383639364036413642364336443645364636473648364936503651365236533654365536563657365836593660366136623663366436653666366736683669367036713672367336743675367636773678367936803681368236833684368536863687368836893690369136923693369436953696369736983699370037013702370337043705370637073708370937103711371237133714371537163717371837193720372137223723372437253726372737283729373037313732373337343735373637373738373937403741374237433744374537463747374837493750375137523753375437553756375737583759376037613762376337643765376637673768376937703771377237733774377537763777377837793780378137823783378437853786378737883789379037913792379337943795379637973798379938003801380238033804380538063807380838093810381138123813381438153816381738183819382038213822382338243825382638273828382938303831383238333834383538363837383838393840384138423843384438453846384738483849385038513852385338543855385638573858385938603861386238633864386538663867386838693870387138723873387438753876387738783879388038813882388338843885388638873888388938903891389238933894389538963897389838993900390139023903390439053906390739083909391039113912391339143915391639173918391939203921392239233924392539263927392839293930393139323933393439353936393739383939394039413942394339443945394639473948394939503951395239533954395539563957395839593960396139623963396439653966396739683969397039713972397339743975397639773978397939803981398239833984398539863987398839893990399139923993399439953996399739983999400040014002400340044005400640074008400940104011401240134014401540164017401840194020402140224023402440254026402740284029403040314032403340344035403640374038403940404041404240434044404540464047404840494050405140524053405440554056405740584059406040614062406340644065406640674068406940704071407240734074407540764077407840794080408140824083408440854086408740884089409040914092409340944095409640974098409941004101410241034104410541064107410841094110411141124113411441154116411741184119412041214122412341244125412641274128412941304131413241334134413541364137413841394140414141424143414441454146414741484149415041514152415341544155415641574158415941604161416241634164416541664167416841694170417141724173417441754176417741784179418041814182418341844185418641874188418941904191419241934194419541964197419841994200420142024203420442054206420742084209421042114212421342144215421642174218421942204221422242234224422542264227422842294230423142324233423442354236423742384239424042414242424342444245424642474248424942504251425242534254425542564257425842594260426142624263426442654266426742684269427042714272427342744275427642774278427942804281428242834284428542864287428842894290429142924293429442954296429742984299430043014302430343044305430643074308430943104311431243134314431543164317431843194320432143224323432443254326432743284329433043314332433343344335433643374338433943404341434243434344434543464347434843494350435143524353435443554356435743584359436043614362436343644365436643674368436943704371437243734374437543764377437843794380438143824383438443854386438743884389439043914392439343944395439643974398439944004401440244034404440544064407440844094410441144124413441444154416441744184419442044214422442344244425442644274428442944304431443244334434443544364437443844394440444144424443444444454446444744484449445044514452445344544455445644574458445944604461446244634464446544664467446844694470447144724473447444754476447744784479448044814482448344844485448644874488448944904491449244934494449544964497449844994500450145024503450445054506450745084509451045114512451345144515451645174518451945204521452245234524452545264527452845294530453145324533453445354536453745384539454045414542454345444545454645474548454945504551455245534554455545564557455845594560456145624563456445654566456745684569457045714572457345744575457645774578457945804581458245834584458545864587458845894590459145924593459445954596459745984599460046014602460346044605460646074608460946104611461246134614461546164617461846194620462146224623462446254626462746284629463046314632463346344635463646374638463946404641464246434644464546464647464846494650465146524653465446554656465746584659466046614662466346644665466646674668466946704671467246734674467546764677467846794680468146824683468446854686468746884689469046914692469346944695469646974698469947004701470247034704470547064707470847094710471147124713471447154716471747184719472047214722472347244725472647274728472947304731473247334734473547364737473847394740474147424743474447454746474747484749475047514752475347544755475647574758475947604761476247634764476547664767476847694770477147724773477447754776477747784779478047814782478347844785478647874788478947904791479247934794479547964797479847994800480148024803480448054806480748084809481048114812481348144815481648174818481948204821482248234824482548264827482848294830483148324833483448354836483748384839484048414842484348444845484648474848484948504851485248534854485548564857485848594860486148624863486448654866486748684869487048714872487348744875487648774878487948804881488248834884488548864887488848894890489148924893489448954896489748984899490049014902490349044905490649074908490949104911491249134914491549164917491849194920492149224923492449254926492749284929493049314932493349344935493649374938493949404941494249434944494549464947494849494950495149524953495449554956495749584959496049614962496349644965496649674968496949704971497249734974497549764977497849794980498149824983498449854986498749884989499049914992499349944995499649974998499950005001500250035004500550065007500850095010501150125013501450155016501750185019502050215022502350245025502650275028502950305031503250335034503550365037503850395040504150425043504450455046504750485049505050515052505350545055505650575058505950605061506250635064506550665067506850695070507150725073507450755076507750785079508050815082508350845085508650875088508950905091509250935094509550965097509850995100510151025103510451055106510751085109511051115112511351145115511651175118511951205121512251235124512551265127512851295130513151325133513451355136513751385139514051415142514351445145514651475148514951505151515251535154515551565157515851595160516151625163516451655166516751685169517051715172517351745175517651775178517951805181518251835184518551865187518851895190519151925193519451955196519751985199520052015202520352045205520652075208520952105211521252135214521552165217521852195220522152225223522452255226522752285229523052315232523352345235523652375238523952405241524252435244524552465247524852495250525152525253525452555256525752585259526052615262526352645265526652675268526952705271527252735274527552765277527852795280528152825283528452855286528752885289529052915292529352945295529652975298529953005301530253035304530553065307530853095310531153125313531453155316531753185319532053215322532353245325532653275328532953305331533253335334533553365337533853395340534153425343534453455346534753485349535053515352535353545355535653575358535953605361536253635364536553665367536853695370537153725373537453755376537753785379538053815382538353845385538653875388538953905391539253935394539553965397539853995400540154025403540454055406540754085409541054115412541354145415541654175418541954205421542254235424542554265427542854295430543154325433543454355436543754385439544054415442544354445445544654475448544954505451545254535454545554565457545854595460546154625463546454655466546754685469547054715472547354745475547654775478547954805481548254835484548554865487548854895490549154925493549454955496549754985499550055015502550355045505550655075508550955105511551255135514551555165517551855195520552155225523552455255526552755285529553055315532553355345535553655375538553955405541554255435544554555465547554855495550555155525553555455555556555755585559556055615562556355645565556655675568556955705571557255735574557555765577557855795580558155825583558455855586558755885589559055915592559355945595559655975598559956005601560256035604560556065607560856095610561156125613561456155616561756185619562056215622562356245625562656275628562956305631563256335634563556365637563856395640564156425643564456455646564756485649565056515652565356545655565656575658565956605661566256635664566556665667566856695670567156725673567456755676567756785679568056815682568356845685568656875688568956905691569256935694569556965697569856995700570157025703570457055706570757085709571057115712571357145715571657175718571957205721572257235724572557265727572857295730573157325733573457355736573757385739574057415742574357445745574657475748574957505751575257535754575557565757575857595760576157625763576457655766576757685769577057715772577357745775577657775778577957805781578257835784578557865787578857895790579157925793579457955796579757985799580058015802580358045805580658075808580958105811581258135814581558165817581858195820582158225823582458255826582758285829583058315832583358345835583658375838583958405841584258435844584558465847584858495850585158525853585458555856585758585859586058615862586358645865586658675868586958705871587258735874587558765877587858795880588158825883588458855886588758885889589058915892589358945895589658975898589959005901590259035904590559065907590859095910591159125913591459155916591759185919592059215922592359245925592659275928592959305931593259335934593559365937593859395940594159425943594459455946594759485949595059515952595359545955595659575958595959605961596259635964596559665967596859695970597159725973597459755976597759785979598059815982598359845985598659875988598959905991599259935994599559965997599859996000600160026003600460056006600760086009601060116012601360146015601660176018601960206021602260236024602560266027602860296030603160326033603460356036603760386039604060416042604360446045604660476048604960506051605260536054605560566057605860596060606160626063606460656066606760686069607060716072607360746075607660776078607960806081608260836084608560866087608860896090609160926093609460956096609760986099610061016102610361046105610661076108610961106111611261136114611561166117611861196120612161226123612461256126612761286129613061316132613361346135613661376138613961406141614261436144614561466147614861496150615161526153615461556156615761586159616061616162616361646165616661676168616961706171617261736174617561766177617861796180618161826183618461856186618761886189619061916192619361946195619661976198619962006201620262036204620562066207620862096210621162126213621462156216621762186219622062216222622362246225622662276228622962306231623262336234623562366237623862396240624162426243624462456246624762486249625062516252625362546255625662576258625962606261626262636264626562666267626862696270627162726273627462756276627762786279628062816282628362846285628662876288628962906291629262936294629562966297629862996300630163026303630463056306630763086309631063116312631363146315631663176318631963206321632263236324632563266327632863296330633163326333633463356336633763386339634063416342634363446345634663476348634963506351635263536354635563566357635863596360636163626363636463656366636763686369637063716372637363746375637663776378637963806381638263836384638563866387638863896390639163926393639463956396639763986399640064016402640364046405640664076408640964106411641264136414641564166417641864196420642164226423642464256426642764286429643064316432643364346435643664376438643964406441644264436444644564466447644864496450645164526453645464556456645764586459646064616462646364646465646664676468646964706471647264736474647564766477647864796480648164826483648464856486648764886489649064916492649364946495649664976498649965006501650265036504650565066507650865096510651165126513651465156516651765186519652065216522652365246525652665276528652965306531653265336534653565366537653865396540654165426543654465456546654765486549655065516552655365546555655665576558655965606561656265636564656565666567656865696570657165726573657465756576657765786579658065816582658365846585658665876588658965906591659265936594 |
- <?xml version="1.0"?>
- <doc>
- <assembly>
- <name>CommunityToolkit.HighPerformance</name>
- </assembly>
- <members>
- <member name="T:CommunityToolkit.HighPerformance.Box`1">
- <summary>
- A <see langword="class"/> that represents a boxed <typeparamref name="T"/> value on the managed heap.
- This is a "shadow" type that can be used in place of a non-generic <see cref="T:System.Object"/> reference to a
- boxed value type, to make the code more expressive and reduce the chances of errors.
- Consider this example:
- <code>
- object obj = 42;
-
- // Manual, error prone unboxing
- int sum = (int)obj + 1;
- </code>
- In this example, it is not possible to know in advance what type is actually being boxed in a given
- <see cref="T:System.Object"/> instance, making the code less robust at build time. The <see cref="T:CommunityToolkit.HighPerformance.Box`1"/>
- type can be used as a drop-in replacement in this case, like so:
- <code>
- Box<int> box = 42;
-
- // Build-time validation, automatic unboxing
- int sum = box.Value + 1;
- </code>
- This type can also be useful when dealing with large custom value types that are also boxed, as
- it allows to retrieve a mutable reference to the boxing value. This means that a given boxed
- value can be mutated in-place, instead of having to allocate a new updated boxed instance.
- </summary>
- <typeparam name="T">The type of value being boxed.</typeparam>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Box`1.#ctor">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Box`1"/> class.
- </summary>
- <remarks>
- This constructor is never used, it is only declared in order to mark it with
- the <see langword="private"/> visibility modifier and prevent direct use.
- </remarks>
- <exception cref="T:System.InvalidOperationException">Always thrown when this constructor is used (eg. from reflection).</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Box`1.GetFrom(System.Object)">
- <summary>
- Returns a <see cref="T:CommunityToolkit.HighPerformance.Box`1"/> reference from the input <see cref="T:System.Object"/> instance.
- </summary>
- <param name="obj">The input <see cref="T:System.Object"/> instance, representing a boxed <typeparamref name="T"/> value.</param>
- <returns>A <see cref="T:CommunityToolkit.HighPerformance.Box`1"/> reference pointing to <paramref name="obj"/>.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Box`1.DangerousGetFrom(System.Object)">
- <summary>
- Returns a <see cref="T:CommunityToolkit.HighPerformance.Box`1"/> reference from the input <see cref="T:System.Object"/> instance.
- </summary>
- <param name="obj">The input <see cref="T:System.Object"/> instance, representing a boxed <typeparamref name="T"/> value.</param>
- <returns>A <see cref="T:CommunityToolkit.HighPerformance.Box`1"/> reference pointing to <paramref name="obj"/>.</returns>
- <remarks>
- This method doesn't check the actual type of <paramref name="obj"/>, so it is responsibility of the caller
- to ensure it actually represents a boxed <typeparamref name="T"/> value and not some other instance.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Box`1.TryGetFrom(System.Object,CommunityToolkit.HighPerformance.Box{`0}@)">
- <summary>
- Tries to get a <see cref="T:CommunityToolkit.HighPerformance.Box`1"/> reference from an input <see cref="T:System.Object"/> representing a boxed <typeparamref name="T"/> value.
- </summary>
- <param name="obj">The input <see cref="T:System.Object"/> instance to check.</param>
- <param name="box">The resulting <see cref="T:CommunityToolkit.HighPerformance.Box`1"/> reference, if <paramref name="obj"/> was a boxed <typeparamref name="T"/> value.</param>
- <returns><see langword="true"/> if a <see cref="T:CommunityToolkit.HighPerformance.Box`1"/> instance was retrieved correctly, <see langword="false"/> otherwise.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Box`1.op_Implicit(CommunityToolkit.HighPerformance.Box{`0})~`0">
- <summary>
- Implicitly gets the <typeparamref name="T"/> value from a given <see cref="T:CommunityToolkit.HighPerformance.Box`1"/> instance.
- </summary>
- <param name="box">The input <see cref="T:CommunityToolkit.HighPerformance.Box`1"/> instance.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Box`1.op_Implicit(`0)~CommunityToolkit.HighPerformance.Box{`0}">
- <summary>
- Implicitly creates a new <see cref="T:CommunityToolkit.HighPerformance.Box`1"/> instance from a given <typeparamref name="T"/> value.
- </summary>
- <param name="value">The input <typeparamref name="T"/> value to wrap.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Box`1.ToString">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Box`1.Equals(System.Object)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Box`1.GetHashCode">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Box`1.ThrowInvalidCastExceptionForGetFrom">
- <summary>
- Throws an <see cref="T:System.InvalidCastException"/> when a cast from an invalid <see cref="T:System.Object"/> is attempted.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.BoxExtensions">
- <summary>
- Helpers for working with the <see cref="T:CommunityToolkit.HighPerformance.Box`1"/> type.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.BoxExtensions.GetReference``1(CommunityToolkit.HighPerformance.Box{``0})">
- <summary>
- Gets a <typeparamref name="T"/> reference from a <see cref="T:CommunityToolkit.HighPerformance.Box`1"/> instance.
- </summary>
- <typeparam name="T">The type of reference to retrieve.</typeparam>
- <param name="box">The input <see cref="T:CommunityToolkit.HighPerformance.Box`1"/> instance.</param>
- <returns>A <typeparamref name="T"/> reference to the boxed value within <paramref name="box"/>.</returns>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1">
- <summary>
- Represents a heap-based, array-backed output sink into which <typeparamref name="T"/> data can be written.
- </summary>
- <typeparam name="T">The type of items to write to the current instance.</typeparam>
- <remarks>
- This is a custom <see cref="T:System.Buffers.IBufferWriter`1"/> implementation that replicates the
- functionality and API surface of the array-based buffer writer available in
- .NET Standard 2.1, with the main difference being the fact that in this case
- the arrays in use are rented from the shared <see cref="T:System.Buffers.ArrayPool`1"/> instance,
- and that <see cref="T:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1"/> is also available on .NET Standard 2.0.
- </remarks>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.DefaultInitialBufferSize">
- <summary>
- The default buffer size to use to expand empty arrays.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.pool">
- <summary>
- The <see cref="T:System.Buffers.ArrayPool`1"/> instance used to rent <see cref="F:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.array"/>.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.array">
- <summary>
- The underlying <typeparamref name="T"/> array.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.index">
- <summary>
- The starting offset within <see cref="F:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.array"/>.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.#ctor">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1"/> class.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.#ctor(System.Buffers.ArrayPool{`0})">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1"/> class.
- </summary>
- <param name="pool">The <see cref="T:System.Buffers.ArrayPool`1"/> instance to use.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.#ctor(System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1"/> class.
- </summary>
- <param name="initialCapacity">The minimum capacity with which to initialize the underlying buffer.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when <paramref name="initialCapacity"/> is not valid.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.#ctor(System.Buffers.ArrayPool{`0},System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1"/> class.
- </summary>
- <param name="pool">The <see cref="T:System.Buffers.ArrayPool`1"/> instance to use.</param>
- <param name="initialCapacity">The minimum capacity with which to initialize the underlying buffer.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when <paramref name="initialCapacity"/> is not valid.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.Finalize">
- <summary>
- Finalizes an instance of the <see cref="T:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1"/> class.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.System#Buffers#IMemoryOwner{T}#Memory">
- <inheritdoc/>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.WrittenMemory">
- <inheritdoc/>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.WrittenSpan">
- <inheritdoc/>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.WrittenCount">
- <inheritdoc/>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.Capacity">
- <inheritdoc/>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.FreeCapacity">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.Clear">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.Advance(System.Int32)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.GetMemory(System.Int32)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.GetSpan(System.Int32)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.CheckBufferAndEnsureCapacity(System.Int32)">
- <summary>
- Ensures that <see cref="F:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.array"/> has enough free space to contain a given number of new items.
- </summary>
- <param name="sizeHint">The minimum number of items to ensure space for in <see cref="F:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.array"/>.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.ResizeBuffer(System.Int32)">
- <summary>
- Resizes <see cref="F:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.array"/> to ensure it can fit the specified number of new items.
- </summary>
- <param name="sizeHint">The minimum number of items to ensure space for in <see cref="F:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.array"/>.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.Dispose">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.ToString">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.ThrowArgumentOutOfRangeExceptionForNegativeCount">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the requested count is negative.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.ThrowArgumentOutOfRangeExceptionForNegativeSizeHint">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the size hint is negative.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.ThrowArgumentExceptionForAdvancedTooFar">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the requested count is negative.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.ThrowObjectDisposedException">
- <summary>
- Throws an <see cref="T:System.ObjectDisposedException"/> when <see cref="F:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1.array"/> is <see langword="null"/>.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Buffers.AllocationMode">
- <summary>
- An <see langword="enum"/> that indicates a mode to use when allocating buffers.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.AllocationMode.Default">
- <summary>
- The default allocation mode for pooled memory (rented buffers are not cleared).
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.AllocationMode.Clear">
- <summary>
- Clear pooled buffers when renting them.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Buffers.IBuffer`1">
- <summary>
- An interface that expands <see cref="T:System.Buffers.IBufferWriter`1"/> with the ability to also inspect
- the written data, and to reset the underlying buffer to write again from the start.
- </summary>
- <typeparam name="T">The type of items in the current buffer.</typeparam>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Buffers.IBuffer`1.WrittenMemory">
- <summary>
- Gets the data written to the underlying buffer so far, as a <see cref="T:System.ReadOnlyMemory`1"/>.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Buffers.IBuffer`1.WrittenSpan">
- <summary>
- Gets the data written to the underlying buffer so far, as a <see cref="T:System.ReadOnlySpan`1"/>.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Buffers.IBuffer`1.WrittenCount">
- <summary>
- Gets the amount of data written to the underlying buffer so far.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Buffers.IBuffer`1.Capacity">
- <summary>
- Gets the total amount of space within the underlying buffer.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Buffers.IBuffer`1.FreeCapacity">
- <summary>
- Gets the amount of space available that can still be written into without forcing the underlying buffer to grow.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.IBuffer`1.Clear">
- <summary>
- Clears the data written to the underlying buffer.
- </summary>
- <remarks>
- You must clear the <see cref="T:CommunityToolkit.HighPerformance.Buffers.IBuffer`1"/> instance before trying to re-use it.
- </remarks>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Buffers.Internals.ArrayMemoryManager`2">
- <summary>
- A custom <see cref="T:System.Buffers.MemoryManager`1"/> that casts data from a <typeparamref name="TFrom"/> array, to <typeparamref name="TTo"/> values.
- </summary>
- <typeparam name="TFrom">The source type of items to read.</typeparam>
- <typeparam name="TTo">The target type to cast the source items to.</typeparam>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.Internals.ArrayMemoryManager`2.array">
- <summary>
- The source <typeparamref name="TFrom"/> array to read data from.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.Internals.ArrayMemoryManager`2.offset">
- <summary>
- The starting offset within <see name="array"/>.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.Internals.ArrayMemoryManager`2.length">
- <summary>
- The original used length for <see name="array"/>.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.ArrayMemoryManager`2.#ctor(`0[],System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Buffers.Internals.ArrayMemoryManager`2"/> class.
- </summary>
- <param name="array">The source <typeparamref name="TFrom"/> array to read data from.</param>
- <param name="offset">The starting offset within <paramref name="array"/>.</param>
- <param name="length">The original used length for <paramref name="array"/>.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.ArrayMemoryManager`2.GetSpan">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.ArrayMemoryManager`2.Pin(System.Int32)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.ArrayMemoryManager`2.Unpin">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.ArrayMemoryManager`2.Dispose(System.Boolean)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.ArrayMemoryManager`2.GetMemory``1(System.Int32,System.Int32)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.ArrayMemoryManager`2.ThrowArgumentOutOfRangeExceptionForInvalidIndex">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the target index for <see cref="M:CommunityToolkit.HighPerformance.Buffers.Internals.ArrayMemoryManager`2.Pin(System.Int32)"/> is invalid.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Buffers.Internals.Interfaces.IMemoryManager">
- <summary>
- An interface for a <see cref="T:System.Buffers.MemoryManager`1"/> instance that can reinterpret its underlying data.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.Interfaces.IMemoryManager.GetMemory``1(System.Int32,System.Int32)">
- <summary>
- Creates a new <see cref="T:System.Memory`1"/> that reinterprets the underlying data for the current instance.
- </summary>
- <typeparam name="T">The target type to cast the items to.</typeparam>
- <param name="offset">The starting offset within the data store.</param>
- <param name="length">The original used length for the data store.</param>
- <returns>A new <see cref="T:System.Memory`1"/> instance of the specified type, reinterpreting the current items.</returns>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Buffers.Internals.ProxyMemoryManager`2">
- <summary>
- A custom <see cref="T:System.Buffers.MemoryManager`1"/> that casts data from a <see cref="T:System.Buffers.MemoryManager`1"/> of <typeparamref name="TFrom"/>, to <typeparamref name="TTo"/> values.
- </summary>
- <typeparam name="TFrom">The source type of items to read.</typeparam>
- <typeparam name="TTo">The target type to cast the source items to.</typeparam>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.Internals.ProxyMemoryManager`2.memoryManager">
- <summary>
- The source <see cref="T:System.Buffers.MemoryManager`1"/> to read data from.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.Internals.ProxyMemoryManager`2.offset">
- <summary>
- The starting offset within <see name="memoryManager"/>.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.Internals.ProxyMemoryManager`2.length">
- <summary>
- The original used length for <see name="memoryManager"/>.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.ProxyMemoryManager`2.#ctor(System.Buffers.MemoryManager{`0},System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Buffers.Internals.ProxyMemoryManager`2"/> class.
- </summary>
- <param name="memoryManager">The source <see cref="T:System.Buffers.MemoryManager`1"/> to read data from.</param>
- <param name="offset">The starting offset within <paramref name="memoryManager"/>.</param>
- <param name="length">The original used length for <paramref name="memoryManager"/>.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.ProxyMemoryManager`2.GetSpan">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.ProxyMemoryManager`2.Pin(System.Int32)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.ProxyMemoryManager`2.Unpin">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.ProxyMemoryManager`2.Dispose(System.Boolean)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.ProxyMemoryManager`2.GetMemory``1(System.Int32,System.Int32)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.ProxyMemoryManager`2.ThrowArgumentExceptionForInvalidIndex">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the target index for <see cref="M:CommunityToolkit.HighPerformance.Buffers.Internals.ProxyMemoryManager`2.Pin(System.Int32)"/> is invalid.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.ProxyMemoryManager`2.ThrowArgumentExceptionForInvalidAlignment">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when <see cref="M:CommunityToolkit.HighPerformance.Buffers.Internals.ProxyMemoryManager`2.Pin(System.Int32)"/> receives an invalid target index.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Buffers.Internals.RawObjectMemoryManager`1">
- <summary>
- A custom <see cref="T:System.Buffers.MemoryManager`1"/> that can wrap arbitrary <see cref="T:System.Object"/> instances.
- </summary>
- <typeparam name="T">The type of elements in the target memory area.</typeparam>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.Internals.RawObjectMemoryManager`1.instance">
- <summary>
- The target <see cref="T:System.Object"/> instance.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.Internals.RawObjectMemoryManager`1.offset">
- <summary>
- The initial offset within <see cref="F:CommunityToolkit.HighPerformance.Buffers.Internals.RawObjectMemoryManager`1.instance"/>.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.Internals.RawObjectMemoryManager`1.length">
- <summary>
- The length of the target memory area.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.RawObjectMemoryManager`1.#ctor(System.Object,System.IntPtr,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Buffers.Internals.RawObjectMemoryManager`1"/> class.
- </summary>
- <param name="instance">The target <see cref="T:System.Object"/> instance.</param>
- <param name="offset">The starting offset within <paramref name="instance"/>.</param>
- <param name="length">The usable length within <paramref name="instance"/>.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.RawObjectMemoryManager`1.GetSpan">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.RawObjectMemoryManager`1.Pin(System.Int32)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.RawObjectMemoryManager`1.Unpin">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.RawObjectMemoryManager`1.Dispose(System.Boolean)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.RawObjectMemoryManager`1.ThrowArgumentOutOfRangeExceptionForInvalidElementIndex">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the input index for <see cref="M:CommunityToolkit.HighPerformance.Buffers.Internals.RawObjectMemoryManager`1.Pin(System.Int32)"/> is not valid.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Buffers.Internals.StringMemoryManager`1">
- <summary>
- A custom <see cref="T:System.Buffers.MemoryManager`1"/> that casts data from a <see cref="T:System.String"/> to <typeparamref name="TTo"/> values.
- </summary>
- <typeparam name="TTo">The target type to cast the source characters to.</typeparam>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.Internals.StringMemoryManager`1.text">
- <summary>
- The source <see cref="T:System.String"/> to read data from.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.Internals.StringMemoryManager`1.offset">
- <summary>
- The starting offset within <see name="array"/>.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.Internals.StringMemoryManager`1.length">
- <summary>
- The original used length for <see name="array"/>.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.StringMemoryManager`1.#ctor(System.String,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Buffers.Internals.StringMemoryManager`1"/> class.
- </summary>
- <param name="text">The source <see cref="T:System.String"/> to read data from.</param>
- <param name="offset">The starting offset within <paramref name="text"/>.</param>
- <param name="length">The original used length for <paramref name="text"/>.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.StringMemoryManager`1.GetSpan">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.StringMemoryManager`1.Pin(System.Int32)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.StringMemoryManager`1.Unpin">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.StringMemoryManager`1.Dispose(System.Boolean)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.StringMemoryManager`1.GetMemory``1(System.Int32,System.Int32)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Internals.StringMemoryManager`1.ThrowArgumentOutOfRangeExceptionForInvalidIndex">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the target index for <see cref="M:CommunityToolkit.HighPerformance.Buffers.Internals.StringMemoryManager`1.Pin(System.Int32)"/> is invalid.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Buffers.MemoryBufferWriter`1">
- <summary>
- Represents an output sink into which <typeparamref name="T"/> data can be written, backed by a <see cref="T:System.Memory`1"/> instance.
- </summary>
- <typeparam name="T">The type of items to write to the current instance.</typeparam>
- <remarks>
- This is a custom <see cref="T:System.Buffers.IBufferWriter`1"/> implementation that wraps a <see cref="T:System.Memory`1"/> instance.
- It can be used to bridge APIs consuming an <see cref="T:System.Buffers.IBufferWriter`1"/> with existing <see cref="T:System.Memory`1"/>
- instances (or objects that can be converted to a <see cref="T:System.Memory`1"/>), to ensure the data is written directly
- to the intended buffer, with no possibility of doing additional allocations or expanding the available capacity.
- </remarks>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.MemoryBufferWriter`1.memory">
- <summary>
- The underlying <see cref="T:System.Memory`1"/> instance.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.MemoryBufferWriter`1.index">
- <summary>
- The starting offset within <see cref="F:CommunityToolkit.HighPerformance.Buffers.MemoryBufferWriter`1.memory"/>.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.MemoryBufferWriter`1.#ctor(System.Memory{`0})">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Buffers.MemoryBufferWriter`1"/> class.
- </summary>
- <param name="memory">The target <see cref="T:System.Memory`1"/> instance to write to.</param>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Buffers.MemoryBufferWriter`1.WrittenMemory">
- <inheritdoc/>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Buffers.MemoryBufferWriter`1.WrittenSpan">
- <inheritdoc/>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Buffers.MemoryBufferWriter`1.WrittenCount">
- <inheritdoc/>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Buffers.MemoryBufferWriter`1.Capacity">
- <inheritdoc/>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Buffers.MemoryBufferWriter`1.FreeCapacity">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.MemoryBufferWriter`1.Clear">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.MemoryBufferWriter`1.Advance(System.Int32)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.MemoryBufferWriter`1.GetMemory(System.Int32)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.MemoryBufferWriter`1.GetSpan(System.Int32)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.MemoryBufferWriter`1.ValidateSizeHint(System.Int32)">
- <summary>
- Validates the requested size for either <see cref="M:CommunityToolkit.HighPerformance.Buffers.MemoryBufferWriter`1.GetMemory(System.Int32)"/> or <see cref="M:CommunityToolkit.HighPerformance.Buffers.MemoryBufferWriter`1.GetSpan(System.Int32)"/>.
- </summary>
- <param name="sizeHint">The minimum number of items to ensure space for in <see cref="F:CommunityToolkit.HighPerformance.Buffers.MemoryBufferWriter`1.memory"/>.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.MemoryBufferWriter`1.ToString">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.MemoryBufferWriter`1.ThrowArgumentOutOfRangeExceptionForNegativeCount">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the requested count is negative.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.MemoryBufferWriter`1.ThrowArgumentOutOfRangeExceptionForNegativeSizeHint">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the size hint is negative.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.MemoryBufferWriter`1.ThrowArgumentExceptionForAdvancedTooFar">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the requested count is negative.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.MemoryBufferWriter`1.ThrowArgumentExceptionForCapacityExceeded">
- <summary>
- Throws an <see cref="T:System.ArgumentException"/> when the requested size exceeds the capacity.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1">
- <summary>
- An <see cref="T:System.Buffers.IMemoryOwner`1"/> implementation with an embedded length and a fast <see cref="T:System.Span`1"/> accessor.
- </summary>
- <typeparam name="T">The type of items to store in the current instance.</typeparam>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.start">
- <summary>
- The starting offset within <see cref="F:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.array"/>.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.length">
- <summary>
- The usable length within <see cref="F:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.array"/> (starting from <see cref="F:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.start"/>).
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.pool">
- <summary>
- The <see cref="T:System.Buffers.ArrayPool`1"/> instance used to rent <see cref="F:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.array"/>.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.array">
- <summary>
- The underlying <typeparamref name="T"/> array.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.#ctor(System.Int32,System.Buffers.ArrayPool{`0},CommunityToolkit.HighPerformance.Buffers.AllocationMode)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1"/> class with the specified parameters.
- </summary>
- <param name="length">The length of the new memory buffer to use.</param>
- <param name="pool">The <see cref="T:System.Buffers.ArrayPool`1"/> instance to use.</param>
- <param name="mode">Indicates the allocation mode to use for the new buffer to rent.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.#ctor(System.Int32,System.Int32,System.Buffers.ArrayPool{`0},`0[])">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1"/> class with the specified parameters.
- </summary>
- <param name="start">The starting offset within <paramref name="array"/>.</param>
- <param name="length">The length of the array to use.</param>
- <param name="pool">The <see cref="T:System.Buffers.ArrayPool`1"/> instance currently in use.</param>
- <param name="array">The input <typeparamref name="T"/> array to use.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.Finalize">
- <summary>
- Finalizes an instance of the <see cref="T:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1"/> class.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.Empty">
- <summary>
- Gets an empty <see cref="T:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1"/> instance.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.Allocate(System.Int32)">
- <summary>
- Creates a new <see cref="T:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1"/> instance with the specified parameters.
- </summary>
- <param name="size">The length of the new memory buffer to use.</param>
- <returns>A <see cref="T:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1"/> instance of the requested length.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when <paramref name="size"/> is not valid.</exception>
- <remarks>This method is just a proxy for the <see langword="private"/> constructor, for clarity.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.Allocate(System.Int32,System.Buffers.ArrayPool{`0})">
- <summary>
- Creates a new <see cref="T:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1"/> instance with the specified parameters.
- </summary>
- <param name="size">The length of the new memory buffer to use.</param>
- <param name="pool">The <see cref="T:System.Buffers.ArrayPool`1"/> instance currently in use.</param>
- <returns>A <see cref="T:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1"/> instance of the requested length.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when <paramref name="size"/> is not valid.</exception>
- <remarks>This method is just a proxy for the <see langword="private"/> constructor, for clarity.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.Allocate(System.Int32,CommunityToolkit.HighPerformance.Buffers.AllocationMode)">
- <summary>
- Creates a new <see cref="T:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1"/> instance with the specified parameters.
- </summary>
- <param name="size">The length of the new memory buffer to use.</param>
- <param name="mode">Indicates the allocation mode to use for the new buffer to rent.</param>
- <returns>A <see cref="T:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1"/> instance of the requested length.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when <paramref name="size"/> is not valid.</exception>
- <remarks>This method is just a proxy for the <see langword="private"/> constructor, for clarity.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.Allocate(System.Int32,System.Buffers.ArrayPool{`0},CommunityToolkit.HighPerformance.Buffers.AllocationMode)">
- <summary>
- Creates a new <see cref="T:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1"/> instance with the specified parameters.
- </summary>
- <param name="size">The length of the new memory buffer to use.</param>
- <param name="pool">The <see cref="T:System.Buffers.ArrayPool`1"/> instance currently in use.</param>
- <param name="mode">Indicates the allocation mode to use for the new buffer to rent.</param>
- <returns>A <see cref="T:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1"/> instance of the requested length.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when <paramref name="size"/> is not valid.</exception>
- <remarks>This method is just a proxy for the <see langword="private"/> constructor, for clarity.</remarks>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.Length">
- <summary>
- Gets the number of items in the current instance
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.Memory">
- <inheritdoc/>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.Span">
- <summary>
- Gets a <see cref="T:System.Span`1"/> wrapping the memory belonging to the current instance.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.DangerousGetReference">
- <summary>
- Returns a reference to the first element within the current instance, with no bounds check.
- </summary>
- <returns>A reference to the first element within the current instance.</returns>
- <exception cref="T:System.ObjectDisposedException">Thrown when the buffer in use has already been disposed.</exception>
- <remarks>
- This method does not perform bounds checks on the underlying buffer, but does check whether
- the buffer itself has been disposed or not. This check should not be removed, and it's also
- the reason why the method to get a reference at a specified offset is not present.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.DangerousGetArray">
- <summary>
- Gets an <see cref="T:System.ArraySegment`1"/> instance wrapping the underlying <typeparamref name="T"/> array in use.
- </summary>
- <returns>An <see cref="T:System.ArraySegment`1"/> instance wrapping the underlying <typeparamref name="T"/> array in use.</returns>
- <exception cref="T:System.ObjectDisposedException">Thrown when the buffer in use has already been disposed.</exception>
- <remarks>
- This method is meant to be used when working with APIs that only accept an array as input, and should be used with caution.
- In particular, the returned array is rented from an array pool, and it is responsibility of the caller to ensure that it's
- not used after the current <see cref="T:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1"/> instance is disposed. Doing so is considered undefined behavior,
- as the same array might be in use within another <see cref="T:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1"/> instance.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.Slice(System.Int32,System.Int32)">
- <summary>
- Slices the buffer currently in use and returns a new <see cref="T:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1"/> instance.
- </summary>
- <param name="start">The starting offset within the current buffer.</param>
- <param name="length">The length of the buffer to use.</param>
- <returns>A new <see cref="T:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1"/> instance using the target range of items.</returns>
- <exception cref="T:System.ObjectDisposedException">Thrown when the buffer in use has already been disposed.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when <paramref name="start"/> or <paramref name="length"/> are not valid.</exception>
- <remarks>
- Using this method will dispose the current instance, and should only be used when an oversized
- buffer is rented and then adjusted in size, to avoid having to rent a new buffer of the new
- size and copy the previous items into the new one, or needing an additional variable/field
- to manually handle to track the used range within a given <see cref="T:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1"/> instance.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.Dispose">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.ToString">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.ThrowObjectDisposedException">
- <summary>
- Throws an <see cref="T:System.ObjectDisposedException"/> when <see cref="F:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.array"/> is <see langword="null"/>.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.ThrowInvalidOffsetException">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the <see cref="F:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.start"/> is invalid.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.ThrowInvalidLengthException">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the <see cref="F:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1.length"/> is invalid.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1">
- <summary>
- A stack-only type with the ability to rent a buffer of a specified length and getting a <see cref="T:System.Span`1"/> from it.
- This type mirrors <see cref="T:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1"/> but without allocations and with further optimizations.
- As this is a stack-only type, it relies on the duck-typed <see cref="T:System.IDisposable"/> pattern introduced with C# 8.
- It should be used like so:
- <code>
- using (SpanOwner<byte> buffer = SpanOwner<byte>.Allocate(1024))
- {
- // Use the buffer here...
- }
- </code>
- As soon as the code leaves the scope of that <see langword="using"/> block, the underlying buffer will automatically
- be disposed. The APIs in <see cref="T:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1"/> rely on this pattern for extra performance, eg. they don't perform
- the additional checks that are done in <see cref="T:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1"/> to ensure that the buffer hasn't been disposed
- before returning a <see cref="T:System.Memory`1"/> or <see cref="T:System.Span`1"/> instance from it.
- As such, this type should always be used with a <see langword="using"/> block or expression.
- Not doing so will cause the underlying buffer not to be returned to the shared pool.
- </summary>
- <typeparam name="T">The type of items to store in the current instance.</typeparam>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1.length">
- <summary>
- The usable length within <see cref="F:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1.array"/>.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1.pool">
- <summary>
- The <see cref="T:System.Buffers.ArrayPool`1"/> instance used to rent <see cref="F:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1.array"/>.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1.array">
- <summary>
- The underlying <typeparamref name="T"/> array.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1.#ctor(System.Int32,System.Buffers.ArrayPool{`0},CommunityToolkit.HighPerformance.Buffers.AllocationMode)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1"/> struct with the specified parameters.
- </summary>
- <param name="length">The length of the new memory buffer to use.</param>
- <param name="pool">The <see cref="T:System.Buffers.ArrayPool`1"/> instance to use.</param>
- <param name="mode">Indicates the allocation mode to use for the new buffer to rent.</param>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1.Empty">
- <summary>
- Gets an empty <see cref="T:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1"/> instance.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1.Allocate(System.Int32)">
- <summary>
- Creates a new <see cref="T:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1"/> instance with the specified parameters.
- </summary>
- <param name="size">The length of the new memory buffer to use.</param>
- <returns>A <see cref="T:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1"/> instance of the requested length.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when <paramref name="size"/> is not valid.</exception>
- <remarks>This method is just a proxy for the <see langword="private"/> constructor, for clarity.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1.Allocate(System.Int32,System.Buffers.ArrayPool{`0})">
- <summary>
- Creates a new <see cref="T:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1"/> instance with the specified parameters.
- </summary>
- <param name="size">The length of the new memory buffer to use.</param>
- <param name="pool">The <see cref="T:System.Buffers.ArrayPool`1"/> instance to use.</param>
- <returns>A <see cref="T:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1"/> instance of the requested length.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when <paramref name="size"/> is not valid.</exception>
- <remarks>This method is just a proxy for the <see langword="private"/> constructor, for clarity.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1.Allocate(System.Int32,CommunityToolkit.HighPerformance.Buffers.AllocationMode)">
- <summary>
- Creates a new <see cref="T:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1"/> instance with the specified parameters.
- </summary>
- <param name="size">The length of the new memory buffer to use.</param>
- <param name="mode">Indicates the allocation mode to use for the new buffer to rent.</param>
- <returns>A <see cref="T:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1"/> instance of the requested length.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when <paramref name="size"/> is not valid.</exception>
- <remarks>This method is just a proxy for the <see langword="private"/> constructor, for clarity.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1.Allocate(System.Int32,System.Buffers.ArrayPool{`0},CommunityToolkit.HighPerformance.Buffers.AllocationMode)">
- <summary>
- Creates a new <see cref="T:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1"/> instance with the specified parameters.
- </summary>
- <param name="size">The length of the new memory buffer to use.</param>
- <param name="pool">The <see cref="T:System.Buffers.ArrayPool`1"/> instance to use.</param>
- <param name="mode">Indicates the allocation mode to use for the new buffer to rent.</param>
- <returns>A <see cref="T:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1"/> instance of the requested length.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when <paramref name="size"/> is not valid.</exception>
- <remarks>This method is just a proxy for the <see langword="private"/> constructor, for clarity.</remarks>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1.Length">
- <summary>
- Gets the number of items in the current instance
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1.Span">
- <summary>
- Gets a <see cref="T:System.Span`1"/> wrapping the memory belonging to the current instance.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1.DangerousGetReference">
- <summary>
- Returns a reference to the first element within the current instance, with no bounds check.
- </summary>
- <returns>A reference to the first element within the current instance.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1.DangerousGetArray">
- <summary>
- Gets an <see cref="T:System.ArraySegment`1"/> instance wrapping the underlying <typeparamref name="T"/> array in use.
- </summary>
- <returns>An <see cref="T:System.ArraySegment`1"/> instance wrapping the underlying <typeparamref name="T"/> array in use.</returns>
- <remarks>
- This method is meant to be used when working with APIs that only accept an array as input, and should be used with caution.
- In particular, the returned array is rented from an array pool, and it is responsibility of the caller to ensure that it's
- not used after the current <see cref="T:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1"/> instance is disposed. Doing so is considered undefined behavior,
- as the same array might be in use within another <see cref="T:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1"/> instance.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1.Dispose">
- <summary>
- Implements the duck-typed <see cref="M:System.IDisposable.Dispose"/> method.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1.ToString">
- <inheritdoc/>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Buffers.StringPool">
- <summary>
- A configurable pool for <see cref="T:System.String"/> instances. This can be used to minimize allocations
- when creating multiple <see cref="T:System.String"/> instances from buffers of <see cref="T:System.Char"/> values.
- The <see cref="M:CommunityToolkit.HighPerformance.Buffers.StringPool.GetOrAdd(System.ReadOnlySpan{System.Char})"/> method provides a best-effort alternative to just creating
- a new <see cref="T:System.String"/> instance every time, in order to minimize the number of duplicated instances.
- The <see cref="T:CommunityToolkit.HighPerformance.Buffers.StringPool"/> type will internally manage a highly efficient priority queue for the
- cached <see cref="T:System.String"/> instances, so that when the full capacity is reached, the least frequently
- used values will be automatically discarded to leave room for new values to cache.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.StringPool.DefaultSize">
- <summary>
- The size used by default by the parameterless constructor.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.StringPool.MinimumSize">
- <summary>
- The minimum size for <see cref="T:CommunityToolkit.HighPerformance.Buffers.StringPool"/> instances.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.StringPool.maps">
- <summary>
- The current array of <see cref="T:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap"/> instances in use.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.StringPool.numberOfMaps">
- <summary>
- The total number of maps in use.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.StringPool.#ctor">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Buffers.StringPool"/> class.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.StringPool.#ctor(System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Buffers.StringPool"/> class.
- </summary>
- <param name="minimumSize">The minimum size for the pool to create.</param>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Buffers.StringPool.Shared">
- <summary>
- Gets the shared <see cref="T:CommunityToolkit.HighPerformance.Buffers.StringPool"/> instance.
- </summary>
- <remarks>
- The shared pool provides a singleton, reusable <see cref="T:CommunityToolkit.HighPerformance.Buffers.StringPool"/> instance that
- can be accessed directly, and that pools <see cref="T:System.String"/> instances for the entire
- process. Since <see cref="T:CommunityToolkit.HighPerformance.Buffers.StringPool"/> is thread-safe, the shared instance can be used
- concurrently by multiple threads without the need for manual synchronization.
- </remarks>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Buffers.StringPool.Size">
- <summary>
- Gets the total number of <see cref="T:System.String"/> that can be stored in the current instance.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.StringPool.Add(System.String)">
- <summary>
- Stores a <see cref="T:System.String"/> instance in the internal cache.
- </summary>
- <param name="value">The input <see cref="T:System.String"/> instance to cache.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.StringPool.GetOrAdd(System.String)">
- <summary>
- Gets a cached <see cref="T:System.String"/> instance matching the input content, or stores the input one.
- </summary>
- <param name="value">The input <see cref="T:System.String"/> instance with the contents to use.</param>
- <returns>A <see cref="T:System.String"/> instance with the contents of <paramref name="value"/>, cached if possible.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.StringPool.GetOrAdd(System.ReadOnlySpan{System.Char})">
- <summary>
- Gets a cached <see cref="T:System.String"/> instance matching the input content, or creates a new one.
- </summary>
- <param name="span">The input <see cref="T:System.ReadOnlySpan`1"/> with the contents to use.</param>
- <returns>A <see cref="T:System.String"/> instance with the contents of <paramref name="span"/>, cached if possible.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.StringPool.GetOrAdd(System.ReadOnlySpan{System.Byte},System.Text.Encoding)">
- <summary>
- Gets a cached <see cref="T:System.String"/> instance matching the input content (converted to Unicode), or creates a new one.
- </summary>
- <param name="span">The input <see cref="T:System.ReadOnlySpan`1"/> with the contents to use, in a specified encoding.</param>
- <param name="encoding">The <see cref="T:System.Text.Encoding"/> instance to use to decode the contents of <paramref name="span"/>.</param>
- <returns>A <see cref="T:System.String"/> instance with the contents of <paramref name="span"/>, cached if possible.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.StringPool.TryGet(System.ReadOnlySpan{System.Char},System.String@)">
- <summary>
- Tries to get a cached <see cref="T:System.String"/> instance matching the input content, if present.
- </summary>
- <param name="span">The input <see cref="T:System.ReadOnlySpan`1"/> with the contents to use.</param>
- <param name="value">The resulting cached <see cref="T:System.String"/> instance, if present</param>
- <returns>Whether or not the target <see cref="T:System.String"/> instance was found.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.StringPool.Reset">
- <summary>
- Resets the current instance and its associated maps.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap">
- <summary>
- A configurable map containing a group of cached <see cref="T:System.String"/> instances.
- </summary>
- <remarks>
- Instances of this type are stored in an array within <see cref="T:CommunityToolkit.HighPerformance.Buffers.StringPool"/> and they are
- always accessed by reference - essentially as if this type had been a class. The type is
- also private, so there's no risk for users to directly access it and accidentally copy an
- instance, which would lead to bugs due to values becoming out of sync with the internal state
- (that is, because instances would be copied by value, so primitive fields would not be shared).
- The reason why we're using a struct here is to remove an indirection level and improve cache
- locality when accessing individual buckets from the methods in the <see cref="T:CommunityToolkit.HighPerformance.Buffers.StringPool"/> type.
- </remarks>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.EndOfList">
- <summary>
- The index representing the end of a given list.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.buckets">
- <summary>
- The array of 1-based indices for the <see cref="T:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.MapEntry"/> items stored in <see cref="F:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.mapEntries"/>.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.mapEntries">
- <summary>
- The array of currently cached entries (ie. the lists for each hash group).
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.heapEntries">
- <summary>
- The array of priority values associated to each item stored in <see cref="F:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.mapEntries"/>.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.count">
- <summary>
- The current number of items stored in the map.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.timestamp">
- <summary>
- The current incremental timestamp for the items stored in <see cref="F:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.heapEntries"/>.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.MapEntry">
- <summary>
- A type representing a map entry, ie. a node in a given list.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.MapEntry.HashCode">
- <summary>
- The precomputed hashcode for <see cref="F:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.MapEntry.Value"/>.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.MapEntry.Value">
- <summary>
- The <see cref="T:System.String"/> instance cached in this entry.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.MapEntry.NextIndex">
- <summary>
- The 0-based index for the next node in the current list.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.MapEntry.HeapIndex">
- <summary>
- The 0-based index for the heap entry corresponding to the current node.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.HeapEntry">
- <summary>
- A type representing a heap entry, used to associate priority to each item.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.HeapEntry.Timestamp">
- <summary>
- The timestamp for the current entry (ie. the priority for the item).
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.HeapEntry.MapIndex">
- <summary>
- The 0-based index for the map entry corresponding to the current item.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.#ctor(System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap"/> struct.
- </summary>
- <param name="capacity">The fixed capacity of the current map.</param>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.SyncRoot">
- <summary>
- Gets an <see cref="T:System.Object"/> that can be used to synchronize access to the current instance.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.Add(System.String,System.Int32)">
- <summary>
- Implements <see cref="M:CommunityToolkit.HighPerformance.Buffers.StringPool.Add(System.String)"/> for the current instance.
- </summary>
- <param name="value">The input <see cref="T:System.String"/> instance to cache.</param>
- <param name="hashcode">The precomputed hashcode for <paramref name="value"/>.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.GetOrAdd(System.String,System.Int32)">
- <summary>
- Implements <see cref="M:CommunityToolkit.HighPerformance.Buffers.StringPool.GetOrAdd(System.String)"/> for the current instance.
- </summary>
- <param name="value">The input <see cref="T:System.String"/> instance with the contents to use.</param>
- <param name="hashcode">The precomputed hashcode for <paramref name="value"/>.</param>
- <returns>A <see cref="T:System.String"/> instance with the contents of <paramref name="value"/>.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.GetOrAdd(System.ReadOnlySpan{System.Char},System.Int32)">
- <summary>
- Implements <see cref="M:CommunityToolkit.HighPerformance.Buffers.StringPool.GetOrAdd(System.ReadOnlySpan{System.Char})"/> for the current instance.
- </summary>
- <param name="span">The input <see cref="T:System.ReadOnlySpan`1"/> with the contents to use.</param>
- <param name="hashcode">The precomputed hashcode for <paramref name="span"/>.</param>
- <returns>A <see cref="T:System.String"/> instance with the contents of <paramref name="span"/>, cached if possible.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.TryGet(System.ReadOnlySpan{System.Char},System.Int32,System.String@)">
- <summary>
- Implements <see cref="M:CommunityToolkit.HighPerformance.Buffers.StringPool.TryGet(System.ReadOnlySpan{System.Char},System.String@)"/> for the current instance.
- </summary>
- <param name="span">The input <see cref="T:System.ReadOnlySpan`1"/> with the contents to use.</param>
- <param name="hashcode">The precomputed hashcode for <paramref name="span"/>.</param>
- <param name="value">The resulting cached <see cref="T:System.String"/> instance, if present</param>
- <returns>Whether or not the target <see cref="T:System.String"/> instance was found.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.Reset">
- <summary>
- Resets the current instance and throws away all the cached values.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.TryGet(System.ReadOnlySpan{System.Char},System.Int32)">
- <summary>
- Tries to get a target <see cref="T:System.String"/> instance, if it exists, and returns a reference to it.
- </summary>
- <param name="span">The input <see cref="T:System.ReadOnlySpan`1"/> with the contents to use.</param>
- <param name="hashcode">The precomputed hashcode for <paramref name="span"/>.</param>
- <returns>A reference to the slot where the target <see cref="T:System.String"/> instance could be.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.Insert(System.String,System.Int32)">
- <summary>
- Inserts a new <see cref="T:System.String"/> instance in the current map, freeing up a space if needed.
- </summary>
- <param name="value">The new <see cref="T:System.String"/> instance to store.</param>
- <param name="hashcode">The precomputed hashcode for <paramref name="value"/>.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.Remove(System.Int32,System.Int32)">
- <summary>
- Removes a specified <see cref="T:System.String"/> instance from the map to free up one slot.
- </summary>
- <param name="hashcode">The precomputed hashcode of the instance to remove.</param>
- <param name="mapIndex">The index of the target map node to remove.</param>
- <remarks>The input <see cref="T:System.String"/> instance needs to already exist in the map.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.UpdateTimestamp(System.Int32@)">
- <summary>
- Updates the timestamp of a heap node at the specified index (which is then synced back).
- </summary>
- <param name="heapIndex">The index of the target heap node to update.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.StringPool.FixedSizePriorityMap.UpdateAllTimestamps">
- <summary>
- Updates the timestamp of all the current heap nodes in incrementing order.
- The heap is always guaranteed to be complete binary tree, so when it contains
- a given number of nodes, those are all contiguous from the start of the array.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.StringPool.GetHashCode(System.ReadOnlySpan{System.Char})">
- <summary>
- Gets the (positive) hashcode for a given <see cref="T:System.ReadOnlySpan`1"/> instance.
- </summary>
- <param name="span">The input <see cref="T:System.ReadOnlySpan`1"/> instance.</param>
- <returns>The hashcode for <paramref name="span"/>.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.StringPool.ThrowArgumentOutOfRangeException">
- <summary>
- Throws an <see cref="T:System.ArgumentException"/> when the requested size exceeds the capacity.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Buffers.Views.MemoryDebugView`1">
- <summary>
- A debug proxy used to display items in a 1D layout.
- </summary>
- <typeparam name="T">The type of items to display.</typeparam>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Views.MemoryDebugView`1.#ctor(CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter{`0})">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Buffers.Views.MemoryDebugView`1"/> class with the specified parameters.
- </summary>
- <param name="arrayPoolBufferWriter">The input <see cref="T:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1"/> instance with the items to display.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Views.MemoryDebugView`1.#ctor(CommunityToolkit.HighPerformance.Buffers.MemoryBufferWriter{`0})">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Buffers.Views.MemoryDebugView`1"/> class with the specified parameters.
- </summary>
- <param name="memoryBufferWriter">The input <see cref="T:CommunityToolkit.HighPerformance.Buffers.MemoryBufferWriter`1"/> instance with the items to display.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Views.MemoryDebugView`1.#ctor(CommunityToolkit.HighPerformance.Buffers.MemoryOwner{`0})">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Buffers.Views.MemoryDebugView`1"/> class with the specified parameters.
- </summary>
- <param name="memoryOwner">The input <see cref="T:CommunityToolkit.HighPerformance.Buffers.MemoryOwner`1"/> instance with the items to display.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Buffers.Views.MemoryDebugView`1.#ctor(CommunityToolkit.HighPerformance.Buffers.SpanOwner{`0})">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Buffers.Views.MemoryDebugView`1"/> class with the specified parameters.
- </summary>
- <param name="spanOwner">The input <see cref="T:CommunityToolkit.HighPerformance.Buffers.SpanOwner`1"/> instance with the items to display.</param>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Buffers.Views.MemoryDebugView`1.Items">
- <summary>
- Gets the items to display for the current instance
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1">
- <summary>
- A <see langword="ref"/> <see langword="struct"/> that iterates readonly items from arbitrary memory locations.
- </summary>
- <typeparam name="T">The type of items to enumerate.</typeparam>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1.span">
- <summary>
- The <see cref="T:System.ReadOnlySpan`1"/> instance pointing to the first item in the target memory area.
- </summary>
- <remarks>The <see cref="P:System.ReadOnlySpan`1.Length"/> field maps to the total available length.</remarks>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1.step">
- <summary>
- The distance between items in the sequence to enumerate.
- </summary>
- <remarks>The distance refers to <typeparamref name="T"/> items, not byte offset.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1.#ctor(System.ReadOnlySpan{`0},System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1"/> struct.
- </summary>
- <param name="span">The <see cref="T:System.ReadOnlySpan`1"/> instance pointing to the first item in the target memory area.</param>
- <param name="step">The distance between items in the sequence to enumerate.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1.#ctor(`0@,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1"/> struct.
- </summary>
- <param name="reference">A reference to the first item of the sequence.</param>
- <param name="length">The number of items in the sequence.</param>
- <param name="step">The distance between items in the sequence to enumerate.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1.DangerousCreate(`0@,System.Int32,System.Int32)">
- <summary>
- Creates a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1"/> struct with the specified parameters.
- </summary>
- <param name="value">The reference to the first <typeparamref name="T"/> item to map.</param>
- <param name="length">The number of items in the sequence.</param>
- <param name="step">The distance between items in the sequence to enumerate.</param>
- <returns>A <see cref="T:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1"/> instance with the specified parameters.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when one of the parameters are negative.</exception>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1.Length">
- <summary>
- Gets the total available length for the sequence.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1.Item(System.Int32)">
- <summary>
- Gets the element at the specified zero-based index.
- </summary>
- <param name="index">The zero-based index of the element.</param>
- <returns>A reference to the element at the specified index.</returns>
- <exception cref="T:System.IndexOutOfRangeException">
- Thrown when <paramref name="index"/> is invalid.
- </exception>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1.Item(System.Index)">
- <summary>
- Gets the element at the specified zero-based index.
- </summary>
- <param name="index">The zero-based index of the element.</param>
- <returns>A reference to the element at the specified index.</returns>
- <exception cref="T:System.IndexOutOfRangeException">
- Thrown when <paramref name="index"/> is invalid.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1.GetEnumerator">
- <inheritdoc cref="M:System.Collections.IEnumerable.GetEnumerator"/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1.CopyTo(CommunityToolkit.HighPerformance.Enumerables.RefEnumerable{`0})">
- <summary>
- Copies the contents of this <see cref="T:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1"/> into a destination <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> instance.
- </summary>
- <param name="destination">The destination <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> instance.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when <paramref name="destination"/> is shorter than the source <see cref="T:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1"/> instance.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1.TryCopyTo(CommunityToolkit.HighPerformance.Enumerables.RefEnumerable{`0})">
- <summary>
- Attempts to copy the current <see cref="T:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1"/> instance to a destination <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/>.
- </summary>
- <param name="destination">The target <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> of the copy operation.</param>
- <returns>Whether or not the operation was successful.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1.CopyTo(System.Span{`0})">
- <summary>
- Copies the contents of this <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> into a destination <see cref="T:System.Span`1"/> instance.
- </summary>
- <param name="destination">The destination <see cref="T:System.Span`1"/> instance.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when <paramref name="destination"/> is shorter than the source <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> instance.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1.TryCopyTo(System.Span{`0})">
- <summary>
- Attempts to copy the current <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> instance to a destination <see cref="T:System.Span`1"/>.
- </summary>
- <param name="destination">The target <see cref="T:System.Span`1"/> of the copy operation.</param>
- <returns>Whether or not the operation was successful.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1.ToArray">
- <inheritdoc cref="M:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.ToArray"/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1.op_Implicit(CommunityToolkit.HighPerformance.Enumerables.RefEnumerable{`0})~CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable{`0}">
- <summary>
- Implicitly converts a <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> instance into a <see cref="T:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1"/> one.
- </summary>
- <param name="enumerable">The input <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> instance.</param>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1.Enumerator">
- <summary>
- A custom enumerator type to traverse items within a <see cref="T:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1"/> instance.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1.Enumerator.span">
- <inheritdoc cref="F:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1.span"/>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1.Enumerator.step">
- <inheritdoc cref="F:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1.step"/>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1.Enumerator.position">
- <summary>
- The current position in the sequence.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1.Enumerator.#ctor(System.ReadOnlySpan{`0},System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1.Enumerator"/> struct.
- </summary>
- <param name="span">The <see cref="T:System.ReadOnlySpan`1"/> instance with the info on the items to traverse.</param>
- <param name="step">The distance between items in the sequence to enumerate.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1.Enumerator.MoveNext">
- <inheritdoc cref="M:System.Collections.IEnumerator.MoveNext"/>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1.Enumerator.Current">
- <inheritdoc cref="P:System.Collections.Generic.IEnumerator`1.Current"/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1.ThrowArgumentOutOfRangeExceptionForLength">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the "length" parameter is invalid.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1.ThrowArgumentOutOfRangeExceptionForStep">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the "step" parameter is invalid.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1.ThrowArgumentExceptionForDestinationTooShort">
- <summary>
- Throws an <see cref="T:System.ArgumentException"/> when the target span is too short.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanEnumerable`1">
- <summary>
- A <see langword="ref"/> <see langword="struct"/> that enumerates the items in a given <see cref="T:System.ReadOnlySpan`1"/> instance.
- </summary>
- <typeparam name="T">The type of items to enumerate.</typeparam>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanEnumerable`1.span">
- <summary>
- The source <see cref="T:System.ReadOnlySpan`1"/> instance.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanEnumerable`1.index">
- <summary>
- The current index within <see cref="F:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanEnumerable`1.span"/>.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanEnumerable`1.#ctor(System.ReadOnlySpan{`0})">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanEnumerable`1"/> struct.
- </summary>
- <param name="span">The source <see cref="T:System.ReadOnlySpan`1"/> instance.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanEnumerable`1.GetEnumerator">
- <summary>
- Implements the duck-typed <see cref="M:System.Collections.Generic.IEnumerable`1.GetEnumerator"/> method.
- </summary>
- <returns>An <see cref="T:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanEnumerable`1"/> instance targeting the current <see cref="T:System.ReadOnlySpan`1"/> value.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanEnumerable`1.MoveNext">
- <summary>
- Implements the duck-typed <see cref="M:System.Collections.IEnumerator.MoveNext"/> method.
- </summary>
- <returns><see langword="true"/> whether a new element is available, <see langword="false"/> otherwise</returns>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanEnumerable`1.Current">
- <summary>
- Gets the duck-typed <see cref="P:System.Collections.Generic.IEnumerator`1.Current"/> property.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanEnumerable`1.Item">
- <summary>
- An item from a source <see cref="T:System.Span`1"/> instance.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanEnumerable`1.Item.span">
- <summary>
- The source <see cref="T:System.ReadOnlySpan`1"/> instance.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanEnumerable`1.Item.#ctor(`0@,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanEnumerable`1.Item"/> struct.
- </summary>
- <param name="value">A reference to the target value.</param>
- <param name="index">The index of the target value.</param>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanEnumerable`1.Item.Value">
- <summary>
- Gets the reference to the current value.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanEnumerable`1.Item.Index">
- <summary>
- Gets the current index.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanTokenizer`1">
- <summary>
- A <see langword="ref"/> <see langword="struct"/> that tokenizes a given <see cref="T:System.ReadOnlySpan`1"/> instance.
- </summary>
- <typeparam name="T">The type of items to enumerate.</typeparam>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanTokenizer`1.span">
- <summary>
- The source <see cref="T:System.ReadOnlySpan`1"/> instance.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanTokenizer`1.separator">
- <summary>
- The separator item to use.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanTokenizer`1.start">
- <summary>
- The current initial offset.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanTokenizer`1.end">
- <summary>
- The current final offset.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanTokenizer`1.#ctor(System.ReadOnlySpan{`0},`0)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanTokenizer`1"/> struct.
- </summary>
- <param name="span">The source <see cref="T:System.ReadOnlySpan`1"/> instance.</param>
- <param name="separator">The separator item to use.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanTokenizer`1.GetEnumerator">
- <summary>
- Implements the duck-typed <see cref="M:System.Collections.Generic.IEnumerable`1.GetEnumerator"/> method.
- </summary>
- <returns>An <see cref="T:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanTokenizer`1"/> instance targeting the current <see cref="T:System.ReadOnlySpan`1"/> value.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanTokenizer`1.MoveNext">
- <summary>
- Implements the duck-typed <see cref="M:System.Collections.IEnumerator.MoveNext"/> method.
- </summary>
- <returns><see langword="true"/> whether a new element is available, <see langword="false"/> otherwise</returns>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanTokenizer`1.Current">
- <summary>
- Gets the duck-typed <see cref="P:System.Collections.Generic.IEnumerator`1.Current"/> property.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1">
- <summary>
- A <see langword="ref"/> <see langword="struct"/> that iterates items from arbitrary memory locations.
- </summary>
- <typeparam name="T">The type of items to enumerate.</typeparam>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.Span">
- <summary>
- The <see cref="T:System.Span`1"/> instance pointing to the first item in the target memory area.
- </summary>
- <remarks>The <see cref="P:System.Span`1.Length"/> field maps to the total available length.</remarks>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.Step">
- <summary>
- The distance between items in the sequence to enumerate.
- </summary>
- <remarks>The distance refers to <typeparamref name="T"/> items, not byte offset.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.#ctor(`0@,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> struct.
- </summary>
- <param name="reference">A reference to the first item of the sequence.</param>
- <param name="length">The number of items in the sequence.</param>
- <param name="step">The distance between items in the sequence to enumerate.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.DangerousCreate(`0@,System.Int32,System.Int32)">
- <summary>
- Creates a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> struct with the specified parameters.
- </summary>
- <param name="value">The reference to the first <typeparamref name="T"/> item to map.</param>
- <param name="length">The number of items in the sequence.</param>
- <param name="step">The distance between items in the sequence to enumerate.</param>
- <returns>A <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> instance with the specified parameters.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when one of the parameters are negative.</exception>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.Length">
- <summary>
- Gets the total available length for the sequence.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.Item(System.Int32)">
- <summary>
- Gets the element at the specified zero-based index.
- </summary>
- <param name="index">The zero-based index of the element.</param>
- <returns>A reference to the element at the specified index.</returns>
- <exception cref="T:System.IndexOutOfRangeException">
- Thrown when <paramref name="index"/> is invalid.
- </exception>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.Item(System.Index)">
- <summary>
- Gets the element at the specified zero-based index.
- </summary>
- <param name="index">The zero-based index of the element.</param>
- <returns>A reference to the element at the specified index.</returns>
- <exception cref="T:System.IndexOutOfRangeException">
- Thrown when <paramref name="index"/> is invalid.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.GetEnumerator">
- <inheritdoc cref="M:System.Collections.IEnumerable.GetEnumerator"/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.Clear">
- <summary>
- Clears the contents of the current <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> instance.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.CopyTo(CommunityToolkit.HighPerformance.Enumerables.RefEnumerable{`0})">
- <summary>
- Copies the contents of this <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> into a destination <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> instance.
- </summary>
- <param name="destination">The destination <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> instance.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when <paramref name="destination"/> is shorter than the source <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> instance.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.TryCopyTo(CommunityToolkit.HighPerformance.Enumerables.RefEnumerable{`0})">
- <summary>
- Attempts to copy the current <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> instance to a destination <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/>.
- </summary>
- <param name="destination">The target <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> of the copy operation.</param>
- <returns>Whether or not the operation was successful.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.CopyTo(System.Span{`0})">
- <summary>
- Copies the contents of this <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> into a destination <see cref="T:System.Span`1"/> instance.
- </summary>
- <param name="destination">The destination <see cref="T:System.Span`1"/> instance.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when <paramref name="destination"/> is shorter than the source <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> instance.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.TryCopyTo(System.Span{`0})">
- <summary>
- Attempts to copy the current <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> instance to a destination <see cref="T:System.Span`1"/>.
- </summary>
- <param name="destination">The target <see cref="T:System.Span`1"/> of the copy operation.</param>
- <returns>Whether or not the operation was successful.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.CopyFrom(System.ReadOnlySpan{`0})">
- <summary>
- Copies the contents of a source <see cref="T:System.ReadOnlySpan`1"/> into the current <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> instance.
- </summary>
- <param name="source">The source <see cref="T:System.ReadOnlySpan`1"/> instance.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when the current <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> is shorter than the source <see cref="T:System.ReadOnlySpan`1"/> instance.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.TryCopyFrom(System.ReadOnlySpan{`0})">
- <summary>
- Attempts to copy the source <see cref="T:System.ReadOnlySpan`1"/> into the current <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> instance.
- </summary>
- <param name="source">The source <see cref="T:System.ReadOnlySpan`1"/> instance.</param>
- <returns>Whether or not the operation was successful.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.Fill(`0)">
- <summary>
- Fills the elements of this <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> with a specified value.
- </summary>
- <param name="value">The value to assign to each element of the <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> instance.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.ToArray">
- <summary>
- Returns a <typeparamref name="T"/> array with the values in the target row.
- </summary>
- <returns>A <typeparamref name="T"/> array with the values in the target row.</returns>
- <remarks>
- This method will allocate a new <typeparamref name="T"/> array, so only
- use it if you really need to copy the target items in a new memory location.
- </remarks>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.Enumerator">
- <summary>
- A custom enumerator type to traverse items within a <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> instance.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.Enumerator.span">
- <inheritdoc cref="F:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.Span"/>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.Enumerator.step">
- <inheritdoc cref="F:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.Step"/>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.Enumerator.position">
- <summary>
- The current position in the sequence.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.Enumerator.#ctor(System.Span{`0},System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.Enumerator"/> struct.
- </summary>
- <param name="span">The <see cref="T:System.Span`1"/> instance with the info on the items to traverse.</param>
- <param name="step">The distance between items in the sequence to enumerate.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.Enumerator.MoveNext">
- <inheritdoc cref="M:System.Collections.IEnumerator.MoveNext"/>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.Enumerator.Current">
- <inheritdoc cref="P:System.Collections.Generic.IEnumerator`1.Current"/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.ThrowArgumentOutOfRangeExceptionForLength">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the "length" parameter is invalid.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.ThrowArgumentOutOfRangeExceptionForStep">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the "step" parameter is invalid.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1.ThrowArgumentExceptionForDestinationTooShort">
- <summary>
- Throws an <see cref="T:System.ArgumentException"/> when the target span is too short.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Enumerables.SpanEnumerable`1">
- <summary>
- A <see langword="ref"/> <see langword="struct"/> that enumerates the items in a given <see cref="T:System.Span`1"/> instance.
- </summary>
- <typeparam name="T">The type of items to enumerate.</typeparam>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Enumerables.SpanEnumerable`1.span">
- <summary>
- The source <see cref="T:System.Span`1"/> instance.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Enumerables.SpanEnumerable`1.index">
- <summary>
- The current index within <see cref="F:CommunityToolkit.HighPerformance.Enumerables.SpanEnumerable`1.span"/>.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.SpanEnumerable`1.#ctor(System.Span{`0})">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Enumerables.SpanEnumerable`1"/> struct.
- </summary>
- <param name="span">The source <see cref="T:System.Span`1"/> instance.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.SpanEnumerable`1.GetEnumerator">
- <summary>
- Implements the duck-typed <see cref="M:System.Collections.Generic.IEnumerable`1.GetEnumerator"/> method.
- </summary>
- <returns>An <see cref="T:CommunityToolkit.HighPerformance.Enumerables.SpanEnumerable`1"/> instance targeting the current <see cref="T:System.Span`1"/> value.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.SpanEnumerable`1.MoveNext">
- <summary>
- Implements the duck-typed <see cref="M:System.Collections.IEnumerator.MoveNext"/> method.
- </summary>
- <returns><see langword="true"/> whether a new element is available, <see langword="false"/> otherwise</returns>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Enumerables.SpanEnumerable`1.Current">
- <summary>
- Gets the duck-typed <see cref="P:System.Collections.Generic.IEnumerator`1.Current"/> property.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Enumerables.SpanEnumerable`1.Item">
- <summary>
- An item from a source <see cref="T:System.Span`1"/> instance.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Enumerables.SpanEnumerable`1.Item.span">
- <summary>
- The source <see cref="T:System.Span`1"/> instance.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.SpanEnumerable`1.Item.#ctor(`0@,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Enumerables.SpanEnumerable`1.Item"/> struct.
- </summary>
- <param name="value">A reference to the target value.</param>
- <param name="index">The index of the target value.</param>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Enumerables.SpanEnumerable`1.Item.Value">
- <summary>
- Gets the reference to the current value.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Enumerables.SpanEnumerable`1.Item.Index">
- <summary>
- Gets the current index.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Enumerables.SpanTokenizer`1">
- <summary>
- A <see langword="ref"/> <see langword="struct"/> that tokenizes a given <see cref="T:System.Span`1"/> instance.
- </summary>
- <typeparam name="T">The type of items to enumerate.</typeparam>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Enumerables.SpanTokenizer`1.span">
- <summary>
- The source <see cref="T:System.Span`1"/> instance.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Enumerables.SpanTokenizer`1.separator">
- <summary>
- The separator item to use.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Enumerables.SpanTokenizer`1.start">
- <summary>
- The current initial offset.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Enumerables.SpanTokenizer`1.end">
- <summary>
- The current final offset.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.SpanTokenizer`1.#ctor(System.Span{`0},`0)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Enumerables.SpanTokenizer`1"/> struct.
- </summary>
- <param name="span">The source <see cref="T:System.Span`1"/> instance.</param>
- <param name="separator">The separator item to use.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.SpanTokenizer`1.GetEnumerator">
- <summary>
- Implements the duck-typed <see cref="M:System.Collections.Generic.IEnumerable`1.GetEnumerator"/> method.
- </summary>
- <returns>An <see cref="T:CommunityToolkit.HighPerformance.Enumerables.SpanTokenizer`1"/> instance targeting the current <see cref="T:System.Span`1"/> value.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Enumerables.SpanTokenizer`1.MoveNext">
- <summary>
- Implements the duck-typed <see cref="M:System.Collections.IEnumerator.MoveNext"/> method.
- </summary>
- <returns><see langword="true"/> whether a new element is available, <see langword="false"/> otherwise</returns>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Enumerables.SpanTokenizer`1.Current">
- <summary>
- Gets the duck-typed <see cref="P:System.Collections.Generic.IEnumerator`1.Current"/> property.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.ArrayExtensions">
- <summary>
- Helpers for working with the <see cref="T:System.Array"/> type.
- </summary>
- <summary>
- Helpers for working with the <see cref="T:System.Array"/> type.
- </summary>
- <summary>
- Helpers for working with the <see cref="T:System.Array"/> type.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.DangerousGetReference``1(``0[])">
- <summary>
- Returns a reference to the first element within a given <typeparamref name="T"/> array, with no bounds checks.
- </summary>
- <typeparam name="T">The type of elements in the input <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The input <typeparamref name="T"/> array instance.</param>
- <returns>A reference to the first element within <paramref name="array"/>, or the location it would have used, if <paramref name="array"/> is empty.</returns>
- <remarks>This method doesn't do any bounds checks, therefore it is responsibility of the caller to perform checks in case the returned value is dereferenced.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.DangerousGetReferenceAt``1(``0[],System.Int32)">
- <summary>
- Returns a reference to an element at a specified index within a given <typeparamref name="T"/> array, with no bounds checks.
- </summary>
- <typeparam name="T">The type of elements in the input <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The input <typeparamref name="T"/> array instance.</param>
- <param name="i">The index of the element to retrieve within <paramref name="array"/>.</param>
- <returns>A reference to the element within <paramref name="array"/> at the index specified by <paramref name="i"/>.</returns>
- <remarks>This method doesn't do any bounds checks, therefore it is responsibility of the caller to ensure the <paramref name="i"/> parameter is valid.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.Count``1(``0[],``0)">
- <summary>
- Counts the number of occurrences of a given value into a target <typeparamref name="T"/> array instance.
- </summary>
- <typeparam name="T">The type of items in the input <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The input <typeparamref name="T"/> array instance.</param>
- <param name="value">The <typeparamref name="T"/> value to look for.</param>
- <returns>The number of occurrences of <paramref name="value"/> in <paramref name="array"/>.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.Enumerate``1(``0[])">
- <summary>
- Enumerates the items in the input <typeparamref name="T"/> array instance, as pairs of reference/index values.
- This extension should be used directly within a <see langword="foreach"/> loop:
- <code>
- int[] numbers = new[] { 1, 2, 3, 4, 5, 6, 7 };
-
- foreach (var item in numbers.Enumerate())
- {
- // Access the index and value of each item here...
- int index = item.Index;
- ref int value = ref item.Value;
- }
- </code>
- The compiler will take care of properly setting up the <see langword="foreach"/> loop with the type returned from this method.
- </summary>
- <typeparam name="T">The type of items to enumerate.</typeparam>
- <param name="array">The source <typeparamref name="T"/> array to enumerate.</param>
- <returns>A wrapper type that will handle the reference/index enumeration for <paramref name="array"/>.</returns>
- <remarks>The returned <see cref="T:CommunityToolkit.HighPerformance.Enumerables.SpanEnumerable`1"/> value shouldn't be used directly: use this extension in a <see langword="foreach"/> loop.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.Tokenize``1(``0[],``0)">
- <summary>
- Tokenizes the values in the input <typeparamref name="T"/> array instance using a specified separator.
- This extension should be used directly within a <see langword="foreach"/> loop:
- <code>
- char[] text = "Hello, world!".ToCharArray();
-
- foreach (var token in text.Tokenize(','))
- {
- // Access the tokens here...
- }
- </code>
- The compiler will take care of properly setting up the <see langword="foreach"/> loop with the type returned from this method.
- </summary>
- <typeparam name="T">The type of items in the <typeparamref name="T"/> array to tokenize.</typeparam>
- <param name="array">The source <typeparamref name="T"/> array to tokenize.</param>
- <param name="separator">The separator <typeparamref name="T"/> item to use.</param>
- <returns>A wrapper type that will handle the tokenization for <paramref name="array"/>.</returns>
- <remarks>The returned <see cref="T:CommunityToolkit.HighPerformance.Enumerables.SpanTokenizer`1"/> value shouldn't be used directly: use this extension in a <see langword="foreach"/> loop.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.GetDjb2HashCode``1(``0[])">
- <summary>
- Gets a content hash from the input <typeparamref name="T"/> array instance using the Djb2 algorithm.
- For more info, see the documentation for <see cref="M:CommunityToolkit.HighPerformance.ReadOnlySpanExtensions.GetDjb2HashCode``1(System.ReadOnlySpan{``0})"/>.
- </summary>
- <typeparam name="T">The type of items in the input <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The input <typeparamref name="T"/> array instance.</param>
- <returns>The Djb2 value for the input <typeparamref name="T"/> array instance.</returns>
- <remarks>The Djb2 hash is fully deterministic and with no random components.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.IsCovariant``1(``0[])">
- <summary>
- Checks whether or not a given <typeparamref name="T"/> array is covariant.
- </summary>
- <typeparam name="T">The type of items in the input <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The input <typeparamref name="T"/> array instance.</param>
- <returns>Whether or not <paramref name="array"/> is covariant.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.ThrowOverflowException">
- <summary>
- Throws an <see cref="T:System.OverflowException"/> when the "column" parameter is invalid.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.DangerousGetReference``1(``0[0:,0:])">
- <summary>
- Returns a reference to the first element within a given 2D <typeparamref name="T"/> array, with no bounds checks.
- </summary>
- <typeparam name="T">The type of elements in the input 2D <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The input <typeparamref name="T"/> array instance.</param>
- <returns>A reference to the first element within <paramref name="array"/>, or the location it would have used, if <paramref name="array"/> is empty.</returns>
- <remarks>This method doesn't do any bounds checks, therefore it is responsibility of the caller to perform checks in case the returned value is dereferenced.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.DangerousGetReferenceAt``1(``0[0:,0:],System.Int32,System.Int32)">
- <summary>
- Returns a reference to an element at a specified coordinate within a given 2D <typeparamref name="T"/> array, with no bounds checks.
- </summary>
- <typeparam name="T">The type of elements in the input 2D <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The input 2D <typeparamref name="T"/> array instance.</param>
- <param name="i">The vertical index of the element to retrieve within <paramref name="array"/>.</param>
- <param name="j">The horizontal index of the element to retrieve within <paramref name="array"/>.</param>
- <returns>A reference to the element within <paramref name="array"/> at the coordinate specified by <paramref name="i"/> and <paramref name="j"/>.</returns>
- <remarks>
- This method doesn't do any bounds checks, therefore it is responsibility of the caller to ensure the <paramref name="i"/>
- and <paramref name="j"/> parameters are valid. Furthermore, this extension will ignore the lower bounds for the input
- array, and will just assume that the input index is 0-based. It is responsibility of the caller to adjust the input
- indices to account for the actual lower bounds, if the input array has either axis not starting at 0.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.GetRow``1(``0[0:,0:],System.Int32)">
- <summary>
- Returns a <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> over a row in a given 2D <typeparamref name="T"/> array instance.
- </summary>
- <typeparam name="T">The type of elements in the input 2D <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The input <typeparamref name="T"/> array instance.</param>
- <param name="row">The target row to retrieve (0-based index).</param>
- <returns>A <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> with the items from the target row within <paramref name="array"/>.</returns>
- <remarks>The returned <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> value shouldn't be used directly: use this extension in a <see langword="foreach"/> loop.</remarks>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when one of the input parameters is out of range.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.GetColumn``1(``0[0:,0:],System.Int32)">
- <summary>
- Returns a <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> that returns the items from a given column in a given 2D <typeparamref name="T"/> array instance.
- This extension should be used directly within a <see langword="foreach"/> loop:
- <code>
- int[,] matrix =
- {
- { 1, 2, 3 },
- { 4, 5, 6 },
- { 7, 8, 9 }
- };
-
- foreach (ref int number in matrix.GetColumn(1))
- {
- // Access the current number by reference here...
- }
- </code>
- The compiler will take care of properly setting up the <see langword="foreach"/> loop with the type returned from this method.
- </summary>
- <typeparam name="T">The type of elements in the input 2D <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The input <typeparamref name="T"/> array instance.</param>
- <param name="column">The target column to retrieve (0-based index).</param>
- <returns>A wrapper type that will handle the column enumeration for <paramref name="array"/>.</returns>
- <remarks>The returned <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> value shouldn't be used directly: use this extension in a <see langword="foreach"/> loop.</remarks>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when one of the input parameters is out of range.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.AsSpan2D``1(``0[0:,0:])">
- <summary>
- Creates a new <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> over an input 2D <typeparamref name="T"/> array.
- </summary>
- <typeparam name="T">The type of elements in the input 2D <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The input 2D <typeparamref name="T"/> array instance.</param>
- <returns>A <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance with the values of <paramref name="array"/>.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.AsSpan2D``1(``0[0:,0:],System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Creates a new <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> over an input 2D <typeparamref name="T"/> array.
- </summary>
- <typeparam name="T">The type of elements in the input 2D <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The input 2D <typeparamref name="T"/> array instance.</param>
- <param name="row">The target row to map within <paramref name="array"/>.</param>
- <param name="column">The target column to map within <paramref name="array"/>.</param>
- <param name="height">The height to map within <paramref name="array"/>.</param>
- <param name="width">The width to map within <paramref name="array"/>.</param>
- <exception cref="T:System.ArrayTypeMismatchException">
- Thrown when <paramref name="array"/> doesn't match <typeparamref name="T"/>.
- </exception>
- <exception cref="T:System.ArgumentException">
- Thrown when either <paramref name="height"/>, <paramref name="width"/> or <paramref name="height"/>
- are negative or not within the bounds that are valid for <paramref name="array"/>.
- </exception>
- <returns>A <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance with the values of <paramref name="array"/>.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.AsMemory2D``1(``0[0:,0:])">
- <summary>
- Creates a new <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> over an input 2D <typeparamref name="T"/> array.
- </summary>
- <typeparam name="T">The type of elements in the input 2D <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The input 2D <typeparamref name="T"/> array instance.</param>
- <returns>A <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> instance with the values of <paramref name="array"/>.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.AsMemory2D``1(``0[0:,0:],System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Creates a new <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> over an input 2D <typeparamref name="T"/> array.
- </summary>
- <typeparam name="T">The type of elements in the input 2D <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The input 2D <typeparamref name="T"/> array instance.</param>
- <param name="row">The target row to map within <paramref name="array"/>.</param>
- <param name="column">The target column to map within <paramref name="array"/>.</param>
- <param name="height">The height to map within <paramref name="array"/>.</param>
- <param name="width">The width to map within <paramref name="array"/>.</param>
- <exception cref="T:System.ArrayTypeMismatchException">
- Thrown when <paramref name="array"/> doesn't match <typeparamref name="T"/>.
- </exception>
- <exception cref="T:System.ArgumentException">
- Thrown when either <paramref name="height"/>, <paramref name="width"/> or <paramref name="height"/>
- are negative or not within the bounds that are valid for <paramref name="array"/>.
- </exception>
- <returns>A <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> instance with the values of <paramref name="array"/>.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.GetRowSpan``1(``0[0:,0:],System.Int32)">
- <summary>
- Returns a <see cref="T:System.Span`1"/> over a row in a given 2D <typeparamref name="T"/> array instance.
- </summary>
- <typeparam name="T">The type of elements in the input 2D <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The input <typeparamref name="T"/> array instance.</param>
- <param name="row">The target row to retrieve (0-based index).</param>
- <returns>A <see cref="T:System.Span`1"/> with the items from the target row within <paramref name="array"/>.</returns>
- <exception cref="T:System.ArrayTypeMismatchException">Thrown when <paramref name="array"/> doesn't match <typeparamref name="T"/>.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when <paramref name="row"/> is invalid.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.GetRowMemory``1(``0[0:,0:],System.Int32)">
- <summary>
- Returns a <see cref="T:System.Memory`1"/> over a row in a given 2D <typeparamref name="T"/> array instance.
- </summary>
- <typeparam name="T">The type of elements in the input 2D <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The input <typeparamref name="T"/> array instance.</param>
- <param name="row">The target row to retrieve (0-based index).</param>
- <returns>A <see cref="T:System.Memory`1"/> with the items from the target row within <paramref name="array"/>.</returns>
- <exception cref="T:System.ArrayTypeMismatchException">Thrown when <paramref name="array"/> doesn't match <typeparamref name="T"/>.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when <paramref name="row"/> is invalid.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.AsMemory``1(``0[0:,0:])">
- <summary>
- Creates a new <see cref="T:System.Memory`1"/> over an input 2D <typeparamref name="T"/> array.
- </summary>
- <typeparam name="T">The type of elements in the input 2D <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The input 2D <typeparamref name="T"/> array instance.</param>
- <returns>A <see cref="T:System.Memory`1"/> instance with the values of <paramref name="array"/>.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.AsSpan``1(``0[0:,0:])">
- <summary>
- Creates a new <see cref="T:System.Span`1"/> over an input 2D <typeparamref name="T"/> array.
- </summary>
- <typeparam name="T">The type of elements in the input 2D <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The input 2D <typeparamref name="T"/> array instance.</param>
- <returns>A <see cref="T:System.Span`1"/> instance with the values of <paramref name="array"/>.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.Count``1(``0[0:,0:],``0)">
- <summary>
- Counts the number of occurrences of a given value into a target 2D <typeparamref name="T"/> array instance.
- </summary>
- <typeparam name="T">The type of items in the input 2D <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The input 2D <typeparamref name="T"/> array instance.</param>
- <param name="value">The <typeparamref name="T"/> value to look for.</param>
- <returns>The number of occurrences of <paramref name="value"/> in <paramref name="array"/>.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.GetDjb2HashCode``1(``0[0:,0:])">
- <summary>
- Gets a content hash from the input 2D <typeparamref name="T"/> array instance using the Djb2 algorithm.
- For more info, see the documentation for <see cref="M:CommunityToolkit.HighPerformance.ReadOnlySpanExtensions.GetDjb2HashCode``1(System.ReadOnlySpan{``0})"/>.
- </summary>
- <typeparam name="T">The type of items in the input 2D <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The input 2D <typeparamref name="T"/> array instance.</param>
- <returns>The Djb2 value for the input 2D <typeparamref name="T"/> array instance.</returns>
- <remarks>The Djb2 hash is fully deterministic and with no random components.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.IsCovariant``1(``0[0:,0:])">
- <summary>
- Checks whether or not a given <typeparamref name="T"/> array is covariant.
- </summary>
- <typeparam name="T">The type of items in the input <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The input <typeparamref name="T"/> array instance.</param>
- <returns>Whether or not <paramref name="array"/> is covariant.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.ThrowArrayTypeMismatchException">
- <summary>
- Throws an <see cref="T:System.ArrayTypeMismatchException"/> when using an array of an invalid type.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.ThrowArgumentOutOfRangeExceptionForRow">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the "row" parameter is invalid.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.ThrowArgumentOutOfRangeExceptionForColumn">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the "column" parameter is invalid.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.DangerousGetReference``1(``0[0:,0:,0:])">
- <summary>
- Returns a reference to the first element within a given 3D <typeparamref name="T"/> array, with no bounds checks.
- </summary>
- <typeparam name="T">The type of elements in the input 3D <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The input <typeparamref name="T"/> array instance.</param>
- <returns>A reference to the first element within <paramref name="array"/>, or the location it would have used, if <paramref name="array"/> is empty.</returns>
- <remarks>This method doesn't do any bounds checks, therefore it is responsibility of the caller to perform checks in case the returned value is dereferenced.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.DangerousGetReferenceAt``1(``0[0:,0:,0:],System.Int32,System.Int32,System.Int32)">
- <summary>
- Returns a reference to an element at a specified coordinate within a given 3D <typeparamref name="T"/> array, with no bounds checks.
- </summary>
- <typeparam name="T">The type of elements in the input 3D <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The input 2D <typeparamref name="T"/> array instance.</param>
- <param name="i">The depth index of the element to retrieve within <paramref name="array"/>.</param>
- <param name="j">The vertical index of the element to retrieve within <paramref name="array"/>.</param>
- <param name="k">The horizontal index of the element to retrieve within <paramref name="array"/>.</param>
- <returns>A reference to the element within <paramref name="array"/> at the coordinate specified by <paramref name="i"/> and <paramref name="j"/>.</returns>
- <remarks>
- This method doesn't do any bounds checks, therefore it is responsibility of the caller to ensure the <paramref name="i"/>
- and <paramref name="j"/> parameters are valid. Furthermore, this extension will ignore the lower bounds for the input
- array, and will just assume that the input index is 0-based. It is responsibility of the caller to adjust the input
- indices to account for the actual lower bounds, if the input array has either axis not starting at 0.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.AsMemory``1(``0[0:,0:,0:])">
- <summary>
- Creates a new <see cref="T:System.Memory`1"/> over an input 3D <typeparamref name="T"/> array.
- </summary>
- <typeparam name="T">The type of elements in the input 3D <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The input 3D <typeparamref name="T"/> array instance.</param>
- <returns>A <see cref="T:System.Memory`1"/> instance with the values of <paramref name="array"/>.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.AsSpan``1(``0[0:,0:,0:])">
- <summary>
- Creates a new <see cref="T:System.Span`1"/> over an input 3D <typeparamref name="T"/> array.
- </summary>
- <typeparam name="T">The type of elements in the input 3D <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The input 3D <typeparamref name="T"/> array instance.</param>
- <returns>A <see cref="T:System.Span`1"/> instance with the values of <paramref name="array"/>.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.AsSpan``1(``0[0:,0:,0:],System.Int32)">
- <summary>
- Creates a new instance of the <see cref="T:System.Span`1"/> struct wrapping a layer in a 3D array.
- </summary>
- <typeparam name="T">The type of elements in the input 3D <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The given 3D array to wrap.</param>
- <param name="depth">The target layer to map within <paramref name="array"/>.</param>
- <exception cref="T:System.ArrayTypeMismatchException">Thrown when <paramref name="array"/> doesn't match <typeparamref name="T"/>.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when <paramref name="depth"/> is invalid.</exception>
- <returns>A <see cref="T:System.Span`1"/> instance wrapping the target layer within <paramref name="array"/>.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.AsMemory``1(``0[0:,0:,0:],System.Int32)">
- <summary>
- Creates a new instance of the <see cref="T:System.Memory`1"/> struct wrapping a layer in a 3D array.
- </summary>
- <typeparam name="T">The type of elements in the input 3D <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The given 3D array to wrap.</param>
- <param name="depth">The target layer to map within <paramref name="array"/>.</param>
- <exception cref="T:System.ArrayTypeMismatchException">Thrown when <paramref name="array"/> doesn't match <typeparamref name="T"/>.</exception>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when <paramref name="depth"/> is invalid.</exception>
- <returns>A <see cref="T:System.Memory`1"/> instance wrapping the target layer within <paramref name="array"/>.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.AsSpan2D``1(``0[0:,0:,0:],System.Int32)">
- <summary>
- Creates a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> struct wrapping a layer in a 3D array.
- </summary>
- <typeparam name="T">The type of elements in the input 3D <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The given 3D array to wrap.</param>
- <param name="depth">The target layer to map within <paramref name="array"/>.</param>
- <exception cref="T:System.ArrayTypeMismatchException">
- Thrown when <paramref name="array"/> doesn't match <typeparamref name="T"/>.
- </exception>
- <exception cref="T:System.ArgumentException">Thrown when either <paramref name="depth"/> is invalid.</exception>
- <returns>A <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance wrapping the target layer within <paramref name="array"/>.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.AsMemory2D``1(``0[0:,0:,0:],System.Int32)">
- <summary>
- Creates a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> struct wrapping a layer in a 3D array.
- </summary>
- <typeparam name="T">The type of elements in the input 3D <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The given 3D array to wrap.</param>
- <param name="depth">The target layer to map within <paramref name="array"/>.</param>
- <exception cref="T:System.ArrayTypeMismatchException">
- Thrown when <paramref name="array"/> doesn't match <typeparamref name="T"/>.
- </exception>
- <exception cref="T:System.ArgumentException">Thrown when either <paramref name="depth"/> is invalid.</exception>
- <returns>A <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> instance wrapping the target layer within <paramref name="array"/>.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.Count``1(``0[0:,0:,0:],``0)">
- <summary>
- Counts the number of occurrences of a given value into a target 3D <typeparamref name="T"/> array instance.
- </summary>
- <typeparam name="T">The type of items in the input 3D <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The input 3D <typeparamref name="T"/> array instance.</param>
- <param name="value">The <typeparamref name="T"/> value to look for.</param>
- <returns>The number of occurrences of <paramref name="value"/> in <paramref name="array"/>.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.GetDjb2HashCode``1(``0[0:,0:,0:])">
- <summary>
- Gets a content hash from the input 3D <typeparamref name="T"/> array instance using the Djb2 algorithm.
- For more info, see the documentation for <see cref="M:CommunityToolkit.HighPerformance.ReadOnlySpanExtensions.GetDjb2HashCode``1(System.ReadOnlySpan{``0})"/>.
- </summary>
- <typeparam name="T">The type of items in the input 3D <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The input 3D <typeparamref name="T"/> array instance.</param>
- <returns>The Djb2 value for the input 3D <typeparamref name="T"/> array instance.</returns>
- <remarks>The Djb2 hash is fully deterministic and with no random components.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.IsCovariant``1(``0[0:,0:,0:])">
- <summary>
- Checks whether or not a given <typeparamref name="T"/> array is covariant.
- </summary>
- <typeparam name="T">The type of items in the input <typeparamref name="T"/> array instance.</typeparam>
- <param name="array">The input <typeparamref name="T"/> array instance.</param>
- <returns>Whether or not <paramref name="array"/> is covariant.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayExtensions.ThrowArgumentOutOfRangeExceptionForDepth">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the "depth" parameter is invalid.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.ArrayPoolBufferWriterExtensions">
- <summary>
- Helpers for working with the <see cref="T:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1"/> type.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayPoolBufferWriterExtensions.AsStream(CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter{System.Byte})">
- <summary>
- Returns a <see cref="T:System.IO.Stream"/> that can be used to write to a target an <see cref="T:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1"/> of <see cref="T:System.Byte"/> instance.
- </summary>
- <param name="writer">The target <see cref="T:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1"/> instance.</param>
- <returns>A <see cref="T:System.IO.Stream"/> wrapping <paramref name="writer"/> and writing data to its underlying buffer.</returns>
- <remarks>The returned <see cref="T:System.IO.Stream"/> can only be written to and does not support seeking.</remarks>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.ArrayPoolExtensions">
- <summary>
- Helpers for working with the <see cref="T:System.Buffers.ArrayPool`1"/> type.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ArrayPoolExtensions.Resize``1(System.Buffers.ArrayPool{``0},``0[]@,System.Int32,System.Boolean)">
- <summary>
- Changes the number of elements of a rented one-dimensional array to the specified new size.
- </summary>
- <typeparam name="T">The type of items into the target array to resize.</typeparam>
- <param name="pool">The target <see cref="T:System.Buffers.ArrayPool`1"/> instance to use to resize the array.</param>
- <param name="array">The rented <typeparamref name="T"/> array to resize, or <see langword="null"/> to create a new array.</param>
- <param name="newSize">The size of the new array.</param>
- <param name="clearArray">Indicates whether the contents of the array should be cleared before reuse.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when <paramref name="newSize"/> is less than 0.</exception>
- <remarks>When this method returns, the caller must not use any references to the old array anymore.</remarks>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.BoolExtensions">
- <summary>
- Helpers for working with the <see cref="T:System.Boolean"/> type.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.BoolExtensions.ToByte(System.Boolean)">
- <summary>
- Converts the given <see cref="T:System.Boolean"/> value into a <see cref="T:System.Byte"/>.
- </summary>
- <param name="flag">The input value to convert.</param>
- <returns>1 if <paramref name="flag"/> is <see langword="true"/>, 0 otherwise.</returns>
- <remarks>This method does not contain branching instructions.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.BoolExtensions.ToBitwiseMask32(System.Boolean)">
- <summary>
- Converts the given <see cref="T:System.Boolean"/> value to an <see cref="T:System.Int32"/> mask with
- all bits representing the value of the input flag (either 0xFFFFFFFF or 0x00000000).
- </summary>
- <param name="flag">The input value to convert.</param>
- <returns>0xFFFFFFFF if <paramref name="flag"/> is <see langword="true"/>, 0x00000000 otherwise.</returns>
- <remarks>
- This method does not contain branching instructions, and it is only guaranteed to work with
- <see cref="T:System.Boolean"/> values being either 0 or 1. Operations producing a <see cref="T:System.Boolean"/> result,
- such as numerical comparisons, always result in a valid value. If the <see cref="T:System.Boolean"/> value is
- produced by fields with a custom <see cref="T:System.Runtime.InteropServices.FieldOffsetAttribute"/>,
- or by using <see cref="M:System.Runtime.CompilerServices.Unsafe.As``1(System.Object)"/> or other unsafe APIs to directly manipulate the underlying
- data though, it is responsibility of the caller to ensure the validity of the provided value.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.BoolExtensions.ToBitwiseMask64(System.Boolean)">
- <summary>
- Converts the given <see cref="T:System.Boolean"/> value to a <see cref="T:System.Int64"/> mask with
- all bits representing the value of the input flag (either all 1s or 0s).
- </summary>
- <param name="flag">The input value to convert.</param>
- <returns>All 1s if <paramref name="flag"/> is <see langword="true"/>, all 0s otherwise.</returns>
- <remarks>This method does not contain branching instructions. See additional note in <see cref="M:CommunityToolkit.HighPerformance.BoolExtensions.ToBitwiseMask32(System.Boolean)"/>.</remarks>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.HashCodeExtensions">
- <summary>
- Helpers for working with the <see cref="T:System.HashCode"/> type.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.HashCodeExtensions.Add``1(System.HashCode@,System.ReadOnlySpan{``0})">
- <summary>
- Adds a sequence of <typeparamref name="T"/> values to the hash code.
- </summary>
- <typeparam name="T">The type of elements in the input <see cref="T:System.ReadOnlySpan`1"/> instance.</typeparam>
- <param name="hashCode">The input <see cref="T:System.HashCode"/> instance.</param>
- <param name="span">The input <see cref="T:System.ReadOnlySpan`1"/> instance.</param>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.IBufferWriterExtensions">
- <summary>
- Helpers for working with the <see cref="T:System.Buffers.IBufferWriter`1"/> type.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.IBufferWriterExtensions.AsStream(System.Buffers.IBufferWriter{System.Byte})">
- <summary>
- Returns a <see cref="T:System.IO.Stream"/> that can be used to write to a target an <see cref="T:System.Buffers.IBufferWriter`1"/> of <see cref="T:System.Byte"/> instance.
- </summary>
- <param name="writer">The target <see cref="T:System.Buffers.IBufferWriter`1"/> instance.</param>
- <returns>A <see cref="T:System.IO.Stream"/> wrapping <paramref name="writer"/> and writing data to its underlying buffer.</returns>
- <remarks>The returned <see cref="T:System.IO.Stream"/> can only be written to and does not support seeking.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.IBufferWriterExtensions.Write``1(System.Buffers.IBufferWriter{System.Byte},``0)">
- <summary>
- Writes a value of a specified type into a target <see cref="T:System.Buffers.IBufferWriter`1"/> instance.
- </summary>
- <typeparam name="T">The type of value to write.</typeparam>
- <param name="writer">The target <see cref="T:System.Buffers.IBufferWriter`1"/> instance to write to.</param>
- <param name="value">The input value to write to <paramref name="writer"/>.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown if <paramref name="writer"/> reaches the end.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.IBufferWriterExtensions.Write``1(System.Buffers.IBufferWriter{``0},``0)">
- <summary>
- Writes a value of a specified type into a target <see cref="T:System.Buffers.IBufferWriter`1"/> instance.
- </summary>
- <typeparam name="T">The type of value to write.</typeparam>
- <param name="writer">The target <see cref="T:System.Buffers.IBufferWriter`1"/> instance to write to.</param>
- <param name="value">The input value to write to <paramref name="writer"/>.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown if <paramref name="writer"/> reaches the end.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.IBufferWriterExtensions.Write``1(System.Buffers.IBufferWriter{System.Byte},System.ReadOnlySpan{``0})">
- <summary>
- Writes a series of items of a specified type into a target <see cref="T:System.Buffers.IBufferWriter`1"/> instance.
- </summary>
- <typeparam name="T">The type of value to write.</typeparam>
- <param name="writer">The target <see cref="T:System.Buffers.IBufferWriter`1"/> instance to write to.</param>
- <param name="span">The input <see cref="T:System.ReadOnlySpan`1"/> to write to <paramref name="writer"/>.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown if <paramref name="writer"/> reaches the end.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.IBufferWriterExtensions.ThrowArgumentExceptionForEndOfBuffer">
- <summary>
- Throws an <see cref="T:System.ArgumentException"/> when trying to write too many bytes to the target writer.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.IMemoryOwnerExtensions">
- <summary>
- Helpers for working with the <see cref="T:System.Buffers.IMemoryOwner`1"/> type.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.IMemoryOwnerExtensions.AsStream(System.Buffers.IMemoryOwner{System.Byte})">
- <summary>
- Returns a <see cref="T:System.IO.Stream"/> wrapping the contents of the given <see cref="T:System.Buffers.IMemoryOwner`1"/> of <see cref="T:System.Byte"/> instance.
- </summary>
- <param name="memoryOwner">The input <see cref="T:System.Buffers.IMemoryOwner`1"/> of <see cref="T:System.Byte"/> instance.</param>
- <returns>A <see cref="T:System.IO.Stream"/> wrapping the data within <paramref name="memoryOwner"/>.</returns>
- <remarks>
- The caller does not need to track the lifetime of the input <see cref="T:System.Buffers.IMemoryOwner`1"/> of <see cref="T:System.Byte"/>
- instance, as the returned <see cref="T:System.IO.Stream"/> will take care of disposing that buffer when it is closed.
- </remarks>
- <exception cref="T:System.ArgumentException">Thrown when <paramref name="memoryOwner"/> has an invalid data store.</exception>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.ListExtensions">
- <summary>
- Helpers for working with the <see cref="T:System.Collections.Generic.List`1"/> type.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ListExtensions.AsSpan``1(System.Collections.Generic.List{``0})">
- <summary>
- Creates a new <see cref="T:System.Span`1"/> over an input <see cref="T:System.Collections.Generic.List`1"/> instance.
- </summary>
- <typeparam name="T">The type of elements in the input <see cref="T:System.Collections.Generic.List`1"/> instance.</typeparam>
- <param name="list">The input <see cref="T:System.Collections.Generic.List`1"/> instance.</param>
- <returns>A <see cref="T:System.Span`1"/> instance with the values of <paramref name="list"/>.</returns>
- <remarks>
- Note that the returned <see cref="T:System.Span`1"/> is only guaranteed to be valid as long as the items within
- <paramref name="list"/> are not modified. Doing so might cause the <see cref="T:System.Collections.Generic.List`1"/> to swap its
- internal buffer, causing the returned <see cref="T:System.Span`1"/> to become out of date. That means that in this
- scenario, the <see cref="T:System.Span`1"/> would end up wrapping an array no longer in use. Always make sure to use
- the returned <see cref="T:System.Span`1"/> while the target <see cref="T:System.Collections.Generic.List`1"/> is not modified.
- </remarks>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.MemoryExtensions">
- <summary>
- Helpers for working with the <see cref="T:System.Memory`1"/> type.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.MemoryExtensions.AsMemory2D``1(System.Memory{``0},System.Int32,System.Int32)">
- <summary>
- Returns a <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> instance wrapping the underlying data for the given <see cref="T:System.Memory`1"/> instance.
- </summary>
- <typeparam name="T">The type of items in the input <see cref="T:System.Memory`1"/> instance.</typeparam>
- <param name="memory">The input <see cref="T:System.Memory`1"/> instance.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <returns>The resulting <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> instance.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException">
- Thrown when one of the input parameters is out of range.
- </exception>
- <exception cref="T:System.ArgumentException">
- Thrown when the requested area is outside of bounds for <paramref name="memory"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.MemoryExtensions.AsMemory2D``1(System.Memory{``0},System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Returns a <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> instance wrapping the underlying data for the given <see cref="T:System.Memory`1"/> instance.
- </summary>
- <typeparam name="T">The type of items in the input <see cref="T:System.Memory`1"/> instance.</typeparam>
- <param name="memory">The input <see cref="T:System.Memory`1"/> instance.</param>
- <param name="offset">The initial offset within <paramref name="memory"/>.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <param name="pitch">The pitch in the resulting 2D area.</param>
- <returns>The resulting <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> instance.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException">
- Thrown when one of the input parameters is out of range.
- </exception>
- <exception cref="T:System.ArgumentException">
- Thrown when the requested area is outside of bounds for <paramref name="memory"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.MemoryExtensions.AsBytes``1(System.Memory{``0})">
- <summary>
- Casts a <see cref="T:System.Memory`1"/> of one primitive type <typeparamref name="T"/> to <see cref="T:System.Memory`1"/> of bytes.
- </summary>
- <typeparam name="T">The type if items in the source <see cref="T:System.Memory`1"/>.</typeparam>
- <param name="memory">The source <see cref="T:System.Memory`1"/>, of type <typeparamref name="T"/>.</param>
- <returns>A <see cref="T:System.Memory`1"/> of bytes.</returns>
- <exception cref="T:System.OverflowException">
- Thrown if the <see cref="P:System.Memory`1.Length"/> property of the new <see cref="T:System.Memory`1"/> would exceed <see cref="F:System.Int32.MaxValue"/>.
- </exception>
- <exception cref="T:System.ArgumentException">Thrown when the data store of <paramref name="memory"/> is not supported.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.MemoryExtensions.Cast``2(System.Memory{``0})">
- <summary>
- Casts a <see cref="T:System.Memory`1"/> of one primitive type <typeparamref name="TFrom"/> to another primitive type <typeparamref name="TTo"/>.
- </summary>
- <typeparam name="TFrom">The type of items in the source <see cref="T:System.Memory`1"/>.</typeparam>
- <typeparam name="TTo">The type of items in the destination <see cref="T:System.Memory`1"/>.</typeparam>
- <param name="memory">The source <see cref="T:System.Memory`1"/>, of type <typeparamref name="TFrom"/>.</param>
- <returns>A <see cref="T:System.Memory`1"/> of type <typeparamref name="TTo"/></returns>
- <exception cref="T:System.ArgumentException">Thrown when the data store of <paramref name="memory"/> is not supported.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.MemoryExtensions.AsStream(System.Memory{System.Byte})">
- <summary>
- Returns a <see cref="T:System.IO.Stream"/> wrapping the contents of the given <see cref="T:System.Memory`1"/> of <see cref="T:System.Byte"/> instance.
- </summary>
- <param name="memory">The input <see cref="T:System.Memory`1"/> of <see cref="T:System.Byte"/> instance.</param>
- <returns>A <see cref="T:System.IO.Stream"/> wrapping the data within <paramref name="memory"/>.</returns>
- <remarks>
- Since this method only receives a <see cref="T:System.Memory`1"/> instance, which does not track
- the lifetime of its underlying buffer, it is responsibility of the caller to manage that.
- In particular, the caller must ensure that the target buffer is not disposed as long
- as the returned <see cref="T:System.IO.Stream"/> is in use, to avoid unexpected issues.
- </remarks>
- <exception cref="T:System.ArgumentException">Thrown when <paramref name="memory"/> has an invalid data store.</exception>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Extensions.NullableExtensions">
- <summary>
- Helpers for working with the <see cref="T:System.Nullable`1"/> type.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Extensions.NullableExtensions.DangerousGetValueOrDefaultReference``1(System.Nullable{``0}@)">
- <summary>
- Returns a reference to the value of the input <see cref="T:System.Nullable`1"/> instance, regardless of whether
- the <see cref="P:System.Nullable`1.HasValue"/> property is returning <see langword="true"/> or not. If that is not
- the case, this method will still return a reference to the underlying <see langword="default"/> value.
- </summary>
- <typeparam name="T">The type of the underlying value</typeparam>
- <param name="value">The <see cref="T:System.Nullable`1"/></param>
- <returns>A reference to the underlying value from the input <see cref="T:System.Nullable`1"/> instance.</returns>
- <remarks>
- Note that attempting to mutate the returned reference will not change the value returned by <see cref="P:System.Nullable`1.HasValue"/>.
- That means that reassigning the value of an empty instance will not make <see cref="P:System.Nullable`1.HasValue"/> return <see langword="true"/>.
- </remarks>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Extensions.NullableExtensions.RawNullableData`1">
- <summary>
- Mapping type that reflects the internal layout of the <see cref="T:System.Nullable`1"/> type.
- See https://github.com/dotnet/runtime/blob/master/src/libraries/System.Private.CoreLib/src/System/Nullable.cs.
- </summary>
- <typeparam name="T">The value type wrapped by the current instance.</typeparam>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.ReadOnlyMemoryExtensions">
- <summary>
- Helpers for working with the <see cref="T:System.ReadOnlyMemory`1"/> type.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemoryExtensions.AsMemory2D``1(System.ReadOnlyMemory{``0},System.Int32,System.Int32)">
- <summary>
- Returns a <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> instance wrapping the underlying data for the given <see cref="T:System.ReadOnlyMemory`1"/> instance.
- </summary>
- <typeparam name="T">The type of items in the input <see cref="T:System.ReadOnlyMemory`1"/> instance.</typeparam>
- <param name="memory">The input <see cref="T:System.ReadOnlyMemory`1"/> instance.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <returns>The resulting <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> instance.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException">
- Thrown when one of the input parameters is out of range.
- </exception>
- <exception cref="T:System.ArgumentException">
- Thrown when the requested area is outside of bounds for <paramref name="memory"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemoryExtensions.AsMemory2D``1(System.ReadOnlyMemory{``0},System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Returns a <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> instance wrapping the underlying data for the given <see cref="T:System.ReadOnlyMemory`1"/> instance.
- </summary>
- <typeparam name="T">The type of items in the input <see cref="T:System.ReadOnlyMemory`1"/> instance.</typeparam>
- <param name="memory">The input <see cref="T:System.ReadOnlyMemory`1"/> instance.</param>
- <param name="offset">The initial offset within <paramref name="memory"/>.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <param name="pitch">The pitch in the resulting 2D area.</param>
- <returns>The resulting <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> instance.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException">
- Thrown when one of the input parameters is out of range.
- </exception>
- <exception cref="T:System.ArgumentException">
- Thrown when the requested area is outside of bounds for <paramref name="memory"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemoryExtensions.AsBytes``1(System.ReadOnlyMemory{``0})">
- <summary>
- Casts a <see cref="T:System.ReadOnlyMemory`1"/> of one primitive type <typeparamref name="T"/> to <see cref="T:System.ReadOnlyMemory`1"/> of bytes.
- </summary>
- <typeparam name="T">The type if items in the source <see cref="T:System.ReadOnlyMemory`1"/>.</typeparam>
- <param name="memory">The source <see cref="T:System.ReadOnlyMemory`1"/>, of type <typeparamref name="T"/>.</param>
- <returns>A <see cref="T:System.ReadOnlyMemory`1"/> of bytes.</returns>
- <exception cref="T:System.OverflowException">
- Thrown if the <see cref="P:System.ReadOnlyMemory`1.Length"/> property of the new <see cref="T:System.ReadOnlyMemory`1"/> would exceed <see cref="F:System.Int32.MaxValue"/>.
- </exception>
- <exception cref="T:System.ArgumentException">Thrown when the data store of <paramref name="memory"/> is not supported.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemoryExtensions.Cast``2(System.ReadOnlyMemory{``0})">
- <summary>
- Casts a <see cref="T:System.ReadOnlyMemory`1"/> of one primitive type <typeparamref name="TFrom"/> to another primitive type <typeparamref name="TTo"/>.
- </summary>
- <typeparam name="TFrom">The type of items in the source <see cref="T:System.ReadOnlyMemory`1"/>.</typeparam>
- <typeparam name="TTo">The type of items in the destination <see cref="T:System.ReadOnlyMemory`1"/>.</typeparam>
- <param name="memory">The source <see cref="T:System.ReadOnlyMemory`1"/>, of type <typeparamref name="TFrom"/>.</param>
- <returns>A <see cref="T:System.ReadOnlyMemory`1"/> of type <typeparamref name="TTo"/></returns>
- <exception cref="T:System.ArgumentException">Thrown when the data store of <paramref name="memory"/> is not supported.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemoryExtensions.AsStream(System.ReadOnlyMemory{System.Byte})">
- <summary>
- Returns a <see cref="T:System.IO.Stream"/> wrapping the contents of the given <see cref="T:System.ReadOnlyMemory`1"/> of <see cref="T:System.Byte"/> instance.
- </summary>
- <param name="memory">The input <see cref="T:System.ReadOnlyMemory`1"/> of <see cref="T:System.Byte"/> instance.</param>
- <returns>A <see cref="T:System.IO.Stream"/> wrapping the data within <paramref name="memory"/>.</returns>
- <remarks>
- Since this method only receives a <see cref="T:System.Memory`1"/> instance, which does not track
- the lifetime of its underlying buffer, it is responsibility of the caller to manage that.
- In particular, the caller must ensure that the target buffer is not disposed as long
- as the returned <see cref="T:System.IO.Stream"/> is in use, to avoid unexpected issues.
- </remarks>
- <exception cref="T:System.ArgumentException">Thrown when <paramref name="memory"/> has an invalid data store.</exception>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.ReadOnlySpanExtensions">
- <summary>
- Helpers for working with the <see cref="T:System.ReadOnlySpan`1"/> type.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpanExtensions.DangerousGetReference``1(System.ReadOnlySpan{``0})">
- <summary>
- Returns a reference to the first element within a given <see cref="T:System.ReadOnlySpan`1"/>, with no bounds checks.
- </summary>
- <typeparam name="T">The type of elements in the input <see cref="T:System.ReadOnlySpan`1"/> instance.</typeparam>
- <param name="span">The input <see cref="T:System.ReadOnlySpan`1"/> instance.</param>
- <returns>A reference to the first element within <paramref name="span"/>.</returns>
- <remarks>This method doesn't do any bounds checks, therefore it is responsibility of the caller to perform checks in case the returned value is dereferenced.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpanExtensions.DangerousGetReferenceAt``1(System.ReadOnlySpan{``0},System.Int32)">
- <summary>
- Returns a reference to an element at a specified index within a given <see cref="T:System.ReadOnlySpan`1"/>, with no bounds checks.
- </summary>
- <typeparam name="T">The type of elements in the input <see cref="T:System.ReadOnlySpan`1"/> instance.</typeparam>
- <param name="span">The input <see cref="T:System.ReadOnlySpan`1"/> instance.</param>
- <param name="i">The index of the element to retrieve within <paramref name="span"/>.</param>
- <returns>A reference to the element within <paramref name="span"/> at the index specified by <paramref name="i"/>.</returns>
- <remarks>This method doesn't do any bounds checks, therefore it is responsibility of the caller to ensure the <paramref name="i"/> parameter is valid.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpanExtensions.DangerousGetReferenceAt``1(System.ReadOnlySpan{``0},System.IntPtr)">
- <summary>
- Returns a reference to an element at a specified index within a given <see cref="T:System.ReadOnlySpan`1"/>, with no bounds checks.
- </summary>
- <typeparam name="T">The type of elements in the input <see cref="T:System.ReadOnlySpan`1"/> instance.</typeparam>
- <param name="span">The input <see cref="T:System.ReadOnlySpan`1"/> instance.</param>
- <param name="i">The index of the element to retrieve within <paramref name="span"/>.</param>
- <returns>A reference to the element within <paramref name="span"/> at the index specified by <paramref name="i"/>.</returns>
- <remarks>This method doesn't do any bounds checks, therefore it is responsibility of the caller to ensure the <paramref name="i"/> parameter is valid.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpanExtensions.DangerousGetLookupReferenceAt``1(System.ReadOnlySpan{``0},System.Int32)">
- <summary>
- Returns a reference to the first element within a given <see cref="T:System.ReadOnlySpan`1"/>, clamping the input index in the valid range.
- If the <paramref name="i"/> parameter exceeds the length of <paramref name="span"/>, it will be clamped to 0.
- Therefore, the returned reference will always point to a valid element within <paramref name="span"/>, assuming it is not empty.
- This method is specifically meant to efficiently index lookup tables, especially if they point to constant data.
- Consider this example where a lookup table is used to validate whether a given character is within a specific set:
- <code>
- public static ReadOnlySpan<bool> ValidSetLookupTable => new bool[]
- {
- false, true, true, true, true, true, false, true,
- false, false, true, false, true, false, true, false,
- true, false, false, true, false, false, false, false,
- false, false, false, false, true, true, false, true
- };
-
- int ch = Console.Read();
- bool isValid = ValidSetLookupTable.DangerousGetLookupReference(ch);
- </code>
- Even if the input index is outside the range of the lookup table, being clamped to 0, it will
- just cause the value 0 to be returned in this case, which is functionally the same for the check
- being performed. This extension can easily be used whenever the first position in a lookup
- table being referenced corresponds to a falsey value, like in this case.
- Additionally, the example above leverages a compiler optimization introduced with C# 7.3,
- which allows <see cref="T:System.ReadOnlySpan`1"/> instances pointing to compile-time constant data
- to be directly mapped to the static .text section in the final assembly: the array being
- created in code will never actually be allocated, and the <see cref="T:System.ReadOnlySpan`1"/> will
- just point to constant data. Note that this only works for blittable values that are not
- dependent on the byte endianness of the system, like <see cref="T:System.Byte"/> or <see cref="T:System.Boolean"/>.
- For more info, see <see href="https://vcsjones.dev/2019/02/01/csharp-readonly-span-bytes-static/"/>.
- </summary>
- <typeparam name="T">The type of elements in the input <see cref="T:System.ReadOnlySpan`1"/> instance.</typeparam>
- <param name="span">The input <see cref="T:System.ReadOnlySpan`1"/> instance.</param>
- <param name="i">The index of the element to retrieve within <paramref name="span"/>.</param>
- <returns>
- A reference to the element within <paramref name="span"/> at the index specified by <paramref name="i"/>,
- or a reference to the first element within <paramref name="span"/> if <paramref name="i"/> was not a valid index.
- </returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpanExtensions.AsSpan2D``1(System.ReadOnlySpan{``0},System.Int32,System.Int32)">
- <summary>
- Returns a <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance wrapping the underlying data for the given <see cref="T:System.ReadOnlySpan`1"/> instance.
- </summary>
- <typeparam name="T">The type of items in the input <see cref="T:System.ReadOnlySpan`1"/> instance.</typeparam>
- <param name="span">The input <see cref="T:System.ReadOnlySpan`1"/> instance.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <returns>The resulting <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException">
- Thrown when one of the input parameters is out of range.
- </exception>
- <exception cref="T:System.ArgumentException">
- Thrown when the requested area is outside of bounds for <paramref name="span"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpanExtensions.AsSpan2D``1(System.ReadOnlySpan{``0},System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Returns a <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance wrapping the underlying data for the given <see cref="T:System.ReadOnlySpan`1"/> instance.
- </summary>
- <typeparam name="T">The type of items in the input <see cref="T:System.ReadOnlySpan`1"/> instance.</typeparam>
- <param name="span">The input <see cref="T:System.ReadOnlySpan`1"/> instance.</param>
- <param name="offset">The initial offset within <paramref name="span"/>.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <param name="pitch">The pitch in the resulting 2D area.</param>
- <returns>The resulting <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException">
- Thrown when one of the input parameters is out of range.
- </exception>
- <exception cref="T:System.ArgumentException">
- Thrown when the requested area is outside of bounds for <paramref name="span"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpanExtensions.IndexOf``1(System.ReadOnlySpan{``0},``0@)">
- <summary>
- Gets the index of an element of a given <see cref="T:System.ReadOnlySpan`1"/> from its reference.
- </summary>
- <typeparam name="T">The type if items in the input <see cref="T:System.ReadOnlySpan`1"/>.</typeparam>
- <param name="span">The input <see cref="T:System.ReadOnlySpan`1"/> to calculate the index for.</param>
- <param name="value">The reference to the target item to get the index for.</param>
- <returns>The index of <paramref name="value"/> within <paramref name="span"/>.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown if <paramref name="value"/> does not belong to <paramref name="span"/>.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpanExtensions.Count``1(System.ReadOnlySpan{``0},``0)">
- <summary>
- Counts the number of occurrences of a given value into a target <see cref="T:System.ReadOnlySpan`1"/> instance.
- </summary>
- <typeparam name="T">The type of items in the input <see cref="T:System.ReadOnlySpan`1"/> instance.</typeparam>
- <param name="span">The input <see cref="T:System.ReadOnlySpan`1"/> instance to read.</param>
- <param name="value">The <typeparamref name="T"/> value to look for.</param>
- <returns>The number of occurrences of <paramref name="value"/> in <paramref name="span"/>.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpanExtensions.AsBytes``1(System.ReadOnlySpan{``0})">
- <summary>
- Casts a <see cref="T:System.ReadOnlySpan`1"/> of one primitive type <typeparamref name="T"/> to <see cref="T:System.ReadOnlySpan`1"/> of bytes.
- </summary>
- <typeparam name="T">The type if items in the source <see cref="T:System.ReadOnlySpan`1"/>.</typeparam>
- <param name="span">The source slice, of type <typeparamref name="T"/>.</param>
- <returns>A <see cref="T:System.ReadOnlySpan`1"/> of bytes.</returns>
- <exception cref="T:System.OverflowException">
- Thrown if the <see cref="P:System.ReadOnlySpan`1.Length"/> property of the new <see cref="T:System.ReadOnlySpan`1"/> would exceed <see cref="F:System.Int32.MaxValue"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpanExtensions.Cast``2(System.ReadOnlySpan{``0})">
- <summary>
- Casts a <see cref="T:System.ReadOnlySpan`1"/> of one primitive type <typeparamref name="TFrom"/> to another primitive type <typeparamref name="TTo"/>.
- </summary>
- <typeparam name="TFrom">The type of items in the source <see cref="T:System.ReadOnlySpan`1"/>.</typeparam>
- <typeparam name="TTo">The type of items in the destination <see cref="T:System.ReadOnlySpan`1"/>.</typeparam>
- <param name="span">The source slice, of type <typeparamref name="TFrom"/>.</param>
- <returns>A <see cref="T:System.ReadOnlySpan`1"/> of type <typeparamref name="TTo"/></returns>
- <remarks>
- Supported only for platforms that support misaligned memory access or when the memory block is aligned by other means.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpanExtensions.Enumerate``1(System.ReadOnlySpan{``0})">
- <summary>
- Enumerates the items in the input <see cref="T:System.ReadOnlySpan`1"/> instance, as pairs of value/index values.
- This extension should be used directly within a <see langword="foreach"/> loop:
- <code>
- ReadOnlySpan<string> words = new[] { "Hello", ", ", "world", "!" };
-
- foreach (var item in words.Enumerate())
- {
- // Access the index and value of each item here...
- int index = item.Index;
- string value = item.Value;
- }
- </code>
- The compiler will take care of properly setting up the <see langword="foreach"/> loop with the type returned from this method.
- </summary>
- <typeparam name="T">The type of items to enumerate.</typeparam>
- <param name="span">The source <see cref="T:System.ReadOnlySpan`1"/> to enumerate.</param>
- <returns>A wrapper type that will handle the value/index enumeration for <paramref name="span"/>.</returns>
- <remarks>The returned <see cref="T:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanEnumerable`1"/> value shouldn't be used directly: use this extension in a <see langword="foreach"/> loop.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpanExtensions.Tokenize``1(System.ReadOnlySpan{``0},``0)">
- <summary>
- Tokenizes the values in the input <see cref="T:System.ReadOnlySpan`1"/> instance using a specified separator.
- This extension should be used directly within a <see langword="foreach"/> loop:
- <code>
- ReadOnlySpan<char> text = "Hello, world!";
-
- foreach (var token in text.Tokenize(','))
- {
- // Access the tokens here...
- }
- </code>
- The compiler will take care of properly setting up the <see langword="foreach"/> loop with the type returned from this method.
- </summary>
- <typeparam name="T">The type of items in the <see cref="T:System.ReadOnlySpan`1"/> to tokenize.</typeparam>
- <param name="span">The source <see cref="T:System.ReadOnlySpan`1"/> to tokenize.</param>
- <param name="separator">The separator <typeparamref name="T"/> item to use.</param>
- <returns>A wrapper type that will handle the tokenization for <paramref name="span"/>.</returns>
- <remarks>The returned <see cref="T:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanTokenizer`1"/> value shouldn't be used directly: use this extension in a <see langword="foreach"/> loop.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpanExtensions.GetDjb2HashCode``1(System.ReadOnlySpan{``0})">
- <summary>
- Gets a content hash from the input <see cref="T:System.ReadOnlySpan`1"/> instance using the Djb2 algorithm.
- It was designed by <see href="https://en.wikipedia.org/wiki/Daniel_J._Bernstein">Daniel J. Bernstein</see> and is a
- <see href="https://en.wikipedia.org/wiki/List_of_hash_functions#Non-cryptographic_hash_functions">non-cryptographic has function</see>.
- The main advantages of this algorithm are a good distribution of the resulting hash codes, which results in a relatively low
- number of collisions, while at the same time being particularly fast to process, making it suitable for quickly hashing
- even long sequences of values. For the reference implementation, see: <see href="http://www.cse.yorku.ca/~oz/hash.html"/>.
- For details on the used constants, see the details provided in this StackOverflow answer (as well as the accepted one):
- <see href="https://stackoverflow.com/questions/10696223/reason-for-5381-number-in-djb-hash-function/13809282#13809282"/>.
- Additionally, a comparison between some common hashing algorithms can be found in the reply to this StackExchange question:
- <see href="https://softwareengineering.stackexchange.com/questions/49550/which-hashing-algorithm-is-best-for-uniqueness-and-speed"/>.
- Note that the exact implementation is slightly different in this method when it is not called on a sequence of <see cref="T:System.Byte"/>
- values: in this case the <see cref="M:System.Object.GetHashCode"/> method will be invoked for each <typeparamref name="T"/> value in
- the provided <see cref="T:System.ReadOnlySpan`1"/> instance, and then those values will be combined using the Djb2 algorithm.
- </summary>
- <typeparam name="T">The type of items in the input <see cref="T:System.ReadOnlySpan`1"/> instance.</typeparam>
- <param name="span">The input <see cref="T:System.ReadOnlySpan`1"/> instance.</param>
- <returns>The Djb2 value for the input <see cref="T:System.ReadOnlySpan`1"/> instance.</returns>
- <remarks>The Djb2 hash is fully deterministic and with no random components.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpanExtensions.CopyTo``1(System.ReadOnlySpan{``0},CommunityToolkit.HighPerformance.Enumerables.RefEnumerable{``0})">
- <summary>
- Copies the contents of a given <see cref="T:System.ReadOnlySpan`1"/> into destination <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> instance.
- </summary>
- <typeparam name="T">The type of items in the input <see cref="T:System.ReadOnlySpan`1"/> instance.</typeparam>
- <param name="span">The input <see cref="T:System.ReadOnlySpan`1"/> instance.</param>
- <param name="destination">The <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> instance to copy items into.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when the destination <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> is shorter than the source <see cref="T:System.ReadOnlySpan`1"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpanExtensions.TryCopyTo``1(System.ReadOnlySpan{``0},CommunityToolkit.HighPerformance.Enumerables.RefEnumerable{``0})">
- <summary>
- Attempts to copy the contents of a given <see cref="T:System.ReadOnlySpan`1"/> into destination <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> instance.
- </summary>
- <typeparam name="T">The type of items in the input <see cref="T:System.ReadOnlySpan`1"/> instance.</typeparam>
- <param name="span">The input <see cref="T:System.ReadOnlySpan`1"/> instance.</param>
- <param name="destination">The <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> instance to copy items into.</param>
- <returns>Whether or not the operation was successful.</returns>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.SpanExtensions">
- <summary>
- Helpers for working with the <see cref="T:System.Span`1"/> type.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.SpanExtensions.DangerousGetReference``1(System.Span{``0})">
- <summary>
- Returns a reference to the first element within a given <see cref="T:System.Span`1"/>, with no bounds checks.
- </summary>
- <typeparam name="T">The type of elements in the input <see cref="T:System.Span`1"/> instance.</typeparam>
- <param name="span">The input <see cref="T:System.Span`1"/> instance.</param>
- <returns>A reference to the first element within <paramref name="span"/>.</returns>
- <remarks>This method doesn't do any bounds checks, therefore it is responsibility of the caller to perform checks in case the returned value is dereferenced.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.SpanExtensions.DangerousGetReferenceAt``1(System.Span{``0},System.Int32)">
- <summary>
- Returns a reference to an element at a specified index within a given <see cref="T:System.Span`1"/>, with no bounds checks.
- </summary>
- <typeparam name="T">The type of elements in the input <see cref="T:System.Span`1"/> instance.</typeparam>
- <param name="span">The input <see cref="T:System.Span`1"/> instance.</param>
- <param name="i">The index of the element to retrieve within <paramref name="span"/>.</param>
- <returns>A reference to the element within <paramref name="span"/> at the index specified by <paramref name="i"/>.</returns>
- <remarks>This method doesn't do any bounds checks, therefore it is responsibility of the caller to ensure the <paramref name="i"/> parameter is valid.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.SpanExtensions.DangerousGetReferenceAt``1(System.Span{``0},System.IntPtr)">
- <summary>
- Returns a reference to an element at a specified index within a given <see cref="T:System.Span`1"/>, with no bounds checks.
- </summary>
- <typeparam name="T">The type of elements in the input <see cref="T:System.Span`1"/> instance.</typeparam>
- <param name="span">The input <see cref="T:System.Span`1"/> instance.</param>
- <param name="i">The index of the element to retrieve within <paramref name="span"/>.</param>
- <returns>A reference to the element within <paramref name="span"/> at the index specified by <paramref name="i"/>.</returns>
- <remarks>This method doesn't do any bounds checks, therefore it is responsibility of the caller to ensure the <paramref name="i"/> parameter is valid.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.SpanExtensions.AsSpan2D``1(System.Span{``0},System.Int32,System.Int32)">
- <summary>
- Returns a <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance wrapping the underlying data for the given <see cref="T:System.Span`1"/> instance.
- </summary>
- <typeparam name="T">The type of items in the input <see cref="T:System.Span`1"/> instance.</typeparam>
- <param name="span">The input <see cref="T:System.Span`1"/> instance.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <returns>The resulting <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException">
- Thrown when one of the input parameters is out of range.
- </exception>
- <exception cref="T:System.ArgumentException">
- Thrown when the requested area is outside of bounds for <paramref name="span"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.SpanExtensions.AsSpan2D``1(System.Span{``0},System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Returns a <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance wrapping the underlying data for the given <see cref="T:System.Span`1"/> instance.
- </summary>
- <typeparam name="T">The type of items in the input <see cref="T:System.Span`1"/> instance.</typeparam>
- <param name="span">The input <see cref="T:System.Span`1"/> instance.</param>
- <param name="offset">The initial offset within <paramref name="span"/>.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <param name="pitch">The pitch in the resulting 2D area.</param>
- <returns>The resulting <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException">
- Thrown when one of the input parameters is out of range.
- </exception>
- <exception cref="T:System.ArgumentException">
- Thrown when the requested area is outside of bounds for <paramref name="span"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.SpanExtensions.AsBytes``1(System.Span{``0})">
- <summary>
- Casts a <see cref="T:System.Span`1"/> of one primitive type <typeparamref name="T"/> to <see cref="T:System.Span`1"/> of bytes.
- </summary>
- <typeparam name="T">The type if items in the source <see cref="T:System.Span`1"/>.</typeparam>
- <param name="span">The source slice, of type <typeparamref name="T"/>.</param>
- <returns>A <see cref="T:System.Span`1"/> of bytes.</returns>
- <exception cref="T:System.OverflowException">
- Thrown if the <see cref="P:System.Span`1.Length"/> property of the new <see cref="T:System.Span`1"/> would exceed <see cref="F:System.Int32.MaxValue"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.SpanExtensions.Cast``2(System.Span{``0})">
- <summary>
- Casts a <see cref="T:System.Span`1"/> of one primitive type <typeparamref name="TFrom"/> to another primitive type <typeparamref name="TTo"/>.
- </summary>
- <typeparam name="TFrom">The type of items in the source <see cref="T:System.Span`1"/>.</typeparam>
- <typeparam name="TTo">The type of items in the destination <see cref="T:System.Span`1"/>.</typeparam>
- <param name="span">The source slice, of type <typeparamref name="TFrom"/>.</param>
- <returns>A <see cref="T:System.Span`1"/> of type <typeparamref name="TTo"/></returns>
- <remarks>
- Supported only for platforms that support misaligned memory access or when the memory block is aligned by other means.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.SpanExtensions.IndexOf``1(System.Span{``0},``0@)">
- <summary>
- Gets the index of an element of a given <see cref="T:System.Span`1"/> from its reference.
- </summary>
- <typeparam name="T">The type if items in the input <see cref="T:System.Span`1"/>.</typeparam>
- <param name="span">The input <see cref="T:System.Span`1"/> to calculate the index for.</param>
- <param name="value">The reference to the target item to get the index for.</param>
- <returns>The index of <paramref name="value"/> within <paramref name="span"/>.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown if <paramref name="value"/> does not belong to <paramref name="span"/>.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.SpanExtensions.Count``1(System.Span{``0},``0)">
- <summary>
- Counts the number of occurrences of a given value into a target <see cref="T:System.Span`1"/> instance.
- </summary>
- <typeparam name="T">The type of items in the input <see cref="T:System.Span`1"/> instance.</typeparam>
- <param name="span">The input <see cref="T:System.Span`1"/> instance to read.</param>
- <param name="value">The <typeparamref name="T"/> value to look for.</param>
- <returns>The number of occurrences of <paramref name="value"/> in <paramref name="span"/>.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.SpanExtensions.Enumerate``1(System.Span{``0})">
- <summary>
- Enumerates the items in the input <see cref="T:System.Span`1"/> instance, as pairs of reference/index values.
- This extension should be used directly within a <see langword="foreach"/> loop:
- <code>
- Span<int> numbers = new[] { 1, 2, 3, 4, 5, 6, 7 };
-
- foreach (var item in numbers.Enumerate())
- {
- // Access the index and value of each item here...
- int index = item.Index;
- ref int value = ref item.Value;
- }
- </code>
- The compiler will take care of properly setting up the <see langword="foreach"/> loop with the type returned from this method.
- </summary>
- <typeparam name="T">The type of items to enumerate.</typeparam>
- <param name="span">The source <see cref="T:System.Span`1"/> to enumerate.</param>
- <returns>A wrapper type that will handle the reference/index enumeration for <paramref name="span"/>.</returns>
- <remarks>The returned <see cref="T:CommunityToolkit.HighPerformance.Enumerables.SpanEnumerable`1"/> value shouldn't be used directly: use this extension in a <see langword="foreach"/> loop.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.SpanExtensions.Tokenize``1(System.Span{``0},``0)">
- <summary>
- Tokenizes the values in the input <see cref="T:System.Span`1"/> instance using a specified separator.
- This extension should be used directly within a <see langword="foreach"/> loop:
- <code>
- Span<char> text = "Hello, world!".ToCharArray();
-
- foreach (var token in text.Tokenize(','))
- {
- // Access the tokens here...
- }
- </code>
- The compiler will take care of properly setting up the <see langword="foreach"/> loop with the type returned from this method.
- </summary>
- <typeparam name="T">The type of items in the <see cref="T:System.Span`1"/> to tokenize.</typeparam>
- <param name="span">The source <see cref="T:System.Span`1"/> to tokenize.</param>
- <param name="separator">The separator <typeparamref name="T"/> item to use.</param>
- <returns>A wrapper type that will handle the tokenization for <paramref name="span"/>.</returns>
- <remarks>The returned <see cref="T:CommunityToolkit.HighPerformance.Enumerables.SpanTokenizer`1"/> value shouldn't be used directly: use this extension in a <see langword="foreach"/> loop.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.SpanExtensions.GetDjb2HashCode``1(System.Span{``0})">
- <summary>
- Gets a content hash from the input <see cref="T:System.Span`1"/> instance using the Djb2 algorithm.
- For more info, see the documentation for <see cref="M:CommunityToolkit.HighPerformance.ReadOnlySpanExtensions.GetDjb2HashCode``1(System.ReadOnlySpan{``0})"/>.
- </summary>
- <typeparam name="T">The type of items in the input <see cref="T:System.Span`1"/> instance.</typeparam>
- <param name="span">The input <see cref="T:System.Span`1"/> instance.</param>
- <returns>The Djb2 value for the input <see cref="T:System.Span`1"/> instance.</returns>
- <remarks>The Djb2 hash is fully deterministic and with no random components.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.SpanExtensions.CopyTo``1(System.Span{``0},CommunityToolkit.HighPerformance.Enumerables.RefEnumerable{``0})">
- <summary>
- Copies the contents of a given <see cref="T:System.Span`1"/> into destination <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> instance.
- </summary>
- <typeparam name="T">The type of items in the input <see cref="T:System.Span`1"/> instance.</typeparam>
- <param name="span">The input <see cref="T:System.Span`1"/> instance.</param>
- <param name="destination">The <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> instance to copy items into.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when the destination <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> is shorter than the source <see cref="T:System.Span`1"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.SpanExtensions.TryCopyTo``1(System.Span{``0},CommunityToolkit.HighPerformance.Enumerables.RefEnumerable{``0})">
- <summary>
- Attempts to copy the contents of a given <see cref="T:System.Span`1"/> into destination <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> instance.
- </summary>
- <typeparam name="T">The type of items in the input <see cref="T:System.Span`1"/> instance.</typeparam>
- <param name="span">The input <see cref="T:System.Span`1"/> instance.</param>
- <param name="destination">The <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> instance to copy items into.</param>
- <returns>Whether or not the operation was successful.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.SpanExtensions.ThrowArgumentOutOfRangeExceptionForInvalidReference">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the given reference is out of range.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.SpinLockExtensions">
- <summary>
- Helpers for working with the <see cref="T:System.Threading.SpinLock"/> type.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.SpinLockExtensions.Enter(System.Threading.SpinLock*)">
- <summary>
- Enters a specified <see cref="T:System.Threading.SpinLock"/> instance and returns a wrapper to use to release the lock.
- This extension should be used though a <see langword="using"/> block or statement:
- <code>
- SpinLock spinLock = new SpinLock();
-
- using (SpinLockExtensions.Enter(&spinLock))
- {
- // Thread-safe code here...
- }
- </code>
- The compiler will take care of releasing the SpinLock when the code goes out of that <see langword="using"/> scope.
- </summary>
- <param name="spinLock">A pointer to the target <see cref="T:System.Threading.SpinLock"/> to use</param>
- <returns>A wrapper type that will release <paramref name="spinLock"/> when its <see cref="M:System.IDisposable.Dispose"/> method is called.</returns>
- <remarks>The returned <see cref="T:CommunityToolkit.HighPerformance.SpinLockExtensions.UnsafeLock"/> value shouldn't be used directly: use this extension in a <see langword="using"/> block or statement.</remarks>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.SpinLockExtensions.UnsafeLock">
- <summary>
- A <see langword="struct"/> that is used to enter and hold a <see cref="T:System.Threading.SpinLock"/> through a <see langword="using"/> block or statement.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.SpinLockExtensions.UnsafeLock.spinLock">
- <summary>
- The <see cref="T:System.Threading.SpinLock"/>* pointer to the target <see cref="T:System.Threading.SpinLock"/> value to use.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.SpinLockExtensions.UnsafeLock.lockTaken">
- <summary>
- A value indicating whether or not the lock is taken by this <see cref="T:CommunityToolkit.HighPerformance.SpinLockExtensions.Lock"/> instance.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.SpinLockExtensions.UnsafeLock.#ctor(System.Threading.SpinLock*)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.SpinLockExtensions.UnsafeLock"/> struct.
- </summary>
- <param name="spinLock">The target <see cref="T:System.Threading.SpinLock"/> to use.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.SpinLockExtensions.UnsafeLock.Dispose">
- <summary>
- Implements the duck-typed <see cref="M:System.IDisposable.Dispose"/> method and releases the current <see cref="T:System.Threading.SpinLock"/> instance.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.SpinLockExtensions.Enter(System.Threading.SpinLock@)">
- <summary>
- Enters a specified <see cref="T:System.Threading.SpinLock"/> instance and returns a wrapper to use to release the lock.
- This extension should be used though a <see langword="using"/> block or statement:
- <code>
- SpinLock spinLock = new SpinLock();
-
- using (spinLock.Enter())
- {
- // Thread-safe code here...
- }
- </code>
- The compiler will take care of releasing the SpinLock when the code goes out of that <see langword="using"/> scope.
- </summary>
- <param name="spinLock">The target <see cref="T:System.Threading.SpinLock"/> to use</param>
- <returns>A wrapper type that will release <paramref name="spinLock"/> when its <see cref="M:System.IDisposable.Dispose"/> method is called.</returns>
- <remarks>The returned <see cref="T:CommunityToolkit.HighPerformance.SpinLockExtensions.Lock"/> value shouldn't be used directly: use this extension in a <see langword="using"/> block or statement.</remarks>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.SpinLockExtensions.Lock">
- <summary>
- A <see langword="struct"/> that is used to enter and hold a <see cref="T:System.Threading.SpinLock"/> through a <see langword="using"/> block or statement.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.SpinLockExtensions.Lock.spinLock">
- <summary>
- The <see cref="T:CommunityToolkit.HighPerformance.Ref`1"/> instance pointing to the target <see cref="T:System.Threading.SpinLock"/> value to use.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.SpinLockExtensions.Lock.lockTaken">
- <summary>
- A value indicating whether or not the lock is taken by this <see cref="T:CommunityToolkit.HighPerformance.SpinLockExtensions.Lock"/> instance.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.SpinLockExtensions.Lock.#ctor(System.Threading.SpinLock@)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.SpinLockExtensions.Lock"/> struct.
- </summary>
- <param name="spinLock">The target <see cref="T:System.Threading.SpinLock"/> to use.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.SpinLockExtensions.Lock.Dispose">
- <summary>
- Implements the duck-typed <see cref="M:System.IDisposable.Dispose"/> method and releases the current <see cref="T:System.Threading.SpinLock"/> instance.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.StreamExtensions">
- <summary>
- Helpers for working with the <see cref="T:System.IO.Stream"/> type.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.StreamExtensions.Read``1(System.IO.Stream)">
- <summary>
- Reads a value of a specified type from a source <see cref="T:System.IO.Stream"/> instance.
- </summary>
- <typeparam name="T">The type of value to read.</typeparam>
- <param name="stream">The source <see cref="T:System.IO.Stream"/> instance to read from.</param>
- <returns>The <typeparamref name="T"/> value read from <paramref name="stream"/>.</returns>
- <exception cref="T:System.InvalidOperationException">Thrown if <paramref name="stream"/> reaches the end.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.StreamExtensions.Write``1(System.IO.Stream,``0@)">
- <summary>
- Writes a value of a specified type into a target <see cref="T:System.IO.Stream"/> instance.
- </summary>
- <typeparam name="T">The type of value to write.</typeparam>
- <param name="stream">The target <see cref="T:System.IO.Stream"/> instance to write to.</param>
- <param name="value">The input value to write to <paramref name="stream"/>.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.StreamExtensions.ThrowInvalidOperationExceptionForEndOfStream">
- <summary>
- Throws an <see cref="T:System.InvalidOperationException"/> when <see cref="M:CommunityToolkit.HighPerformance.StreamExtensions.Read``1(System.IO.Stream)"/> fails.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.StringExtensions">
- <summary>
- Helpers for working with the <see cref="T:System.String"/> type.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.StringExtensions.DangerousGetReference(System.String)">
- <summary>
- Returns a reference to the first element within a given <see cref="T:System.String"/>, with no bounds checks.
- </summary>
- <param name="text">The input <see cref="T:System.String"/> instance.</param>
- <returns>A reference to the first element within <paramref name="text"/>, or the location it would have used, if <paramref name="text"/> is empty.</returns>
- <remarks>This method doesn't do any bounds checks, therefore it is responsibility of the caller to perform checks in case the returned value is dereferenced.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.StringExtensions.DangerousGetReferenceAt(System.String,System.Int32)">
- <summary>
- Returns a reference to an element at a specified index within a given <see cref="T:System.String"/>, with no bounds checks.
- </summary>
- <param name="text">The input <see cref="T:System.String"/> instance.</param>
- <param name="i">The index of the element to retrieve within <paramref name="text"/>.</param>
- <returns>A reference to the element within <paramref name="text"/> at the index specified by <paramref name="i"/>.</returns>
- <remarks>This method doesn't do any bounds checks, therefore it is responsibility of the caller to ensure the <paramref name="i"/> parameter is valid.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.StringExtensions.Count(System.String,System.Char)">
- <summary>
- Counts the number of occurrences of a given character into a target <see cref="T:System.String"/> instance.
- </summary>
- <param name="text">The input <see cref="T:System.String"/> instance to read.</param>
- <param name="c">The character to look for.</param>
- <returns>The number of occurrences of <paramref name="c"/> in <paramref name="text"/>.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.StringExtensions.Enumerate(System.String)">
- <summary>
- Enumerates the items in the input <see cref="T:System.String"/> instance, as pairs of value/index values.
- This extension should be used directly within a <see langword="foreach"/> loop:
- <code>
- string text = "Hello, world!";
-
- foreach (var item in text.Enumerate())
- {
- // Access the index and value of each item here...
- int index = item.Index;
- char value = item.Value;
- }
- </code>
- The compiler will take care of properly setting up the <see langword="foreach"/> loop with the type returned from this method.
- </summary>
- <param name="text">The source <see cref="T:System.String"/> to enumerate.</param>
- <returns>A wrapper type that will handle the value/index enumeration for <paramref name="text"/>.</returns>
- <remarks>The returned <see cref="T:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanEnumerable`1"/> value shouldn't be used directly: use this extension in a <see langword="foreach"/> loop.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.StringExtensions.Tokenize(System.String,System.Char)">
- <summary>
- Tokenizes the values in the input <see cref="T:System.String"/> instance using a specified separator.
- This extension should be used directly within a <see langword="foreach"/> loop:
- <code>
- string text = "Hello, world!";
-
- foreach (var token in text.Tokenize(','))
- {
- // Access the tokens here...
- }
- </code>
- The compiler will take care of properly setting up the <see langword="foreach"/> loop with the type returned from this method.
- </summary>
- <param name="text">The source <see cref="T:System.String"/> to tokenize.</param>
- <param name="separator">The separator character to use.</param>
- <returns>A wrapper type that will handle the tokenization for <paramref name="text"/>.</returns>
- <remarks>The returned <see cref="T:CommunityToolkit.HighPerformance.Enumerables.ReadOnlySpanTokenizer`1"/> value shouldn't be used directly: use this extension in a <see langword="foreach"/> loop.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.StringExtensions.GetDjb2HashCode(System.String)">
- <summary>
- Gets a content hash from the input <see cref="T:System.String"/> instance using the Djb2 algorithm.
- For more info, see the documentation for <see cref="M:CommunityToolkit.HighPerformance.ReadOnlySpanExtensions.GetDjb2HashCode``1(System.ReadOnlySpan{``0})"/>.
- </summary>
- <param name="text">The source <see cref="T:System.String"/> to enumerate.</param>
- <returns>The Djb2 value for the input <see cref="T:System.String"/> instance.</returns>
- <remarks>The Djb2 hash is fully deterministic and with no random components.</remarks>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Helpers.BitHelper">
- <summary>
- Helpers to perform bit operations on numeric types.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.HasFlag(System.UInt32,System.Int32)">
- <summary>
- Checks whether or not a given bit is set.
- </summary>
- <param name="value">The input <see cref="T:System.UInt32"/> value.</param>
- <param name="n">The position of the bit to check (in [0, 31] range).</param>
- <returns>Whether or not the n-th bit is set.</returns>
- <remarks>
- This method doesn't validate <paramref name="n"/> against the valid range.
- If the parameter is not valid, the result will just be inconsistent.
- Additionally, no conditional branches are used to retrieve the flag.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.HasLookupFlag(System.UInt32,System.Int32,System.Int32)">
- <summary>
- Checks whether or not a given bit is set in a given bitwise lookup table.
- This method provides a branchless, register-based (with no memory accesses) way to
- check whether a given value is valid, according to a precomputed lookup table.
- It is similar in behavior to <see cref="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.HasFlag(System.UInt32,System.Int32)"/>, with the main difference
- being that this method will also validate the input <paramref name="x"/> parameter, and
- will always return <see langword="false"/> if it falls outside of the expected interval.
- Additionally, this method accepts a <paramref name="min"/> parameter, which is used to
- decrement the input parameter <paramref name="x"/> to ensure that the range of accepted
- values fits within the available 32 bits of the lookup table in use.
- For more info on this optimization technique, see <see href="https://egorbo.com/llvm-range-checks.html"/>.
- Here is how the code from the link above would be implemented using this method:
- <code>
- bool IsReservedCharacter(char c)
- {
- return BitHelper.HasLookupFlag(314575237u, c, 36);
- }
- </code>
- The resulted assembly is virtually identical, with the added optimization that the one
- produced by <see cref="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.HasLookupFlag(System.UInt32,System.Int32,System.Int32)"/> has no conditional branches at all.
- </summary>
- <param name="table">The input lookup table to use.</param>
- <param name="x">The input value to check.</param>
- <param name="min">The minimum accepted value for <paramref name="x"/> (defaults to 0).</param>
- <returns>Whether or not the corresponding flag for <paramref name="x"/> is set in <paramref name="table"/>.</returns>
- <remarks>
- For best results, as shown in the sample code, both <paramref name="table"/> and <paramref name="min"/>
- should be compile-time constants, so that the JIT compiler will be able to produce more efficient code.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.HasZeroByte(System.UInt32)">
- <summary>
- Checks whether the given value has any bytes that are set to 0.
- That is, given a <see cref="T:System.UInt32"/> value, which has a total of 4 bytes,
- it checks whether any of those have all the bits set to 0.
- </summary>
- <param name="value">The input value to check.</param>
- <returns>Whether <paramref name="value"/> has any bytes set to 0.</returns>
- <remarks>
- This method contains no branches.
- For more background on this subject, see <see href="https://graphics.stanford.edu/~seander/bithacks.html#ZeroInWord"/>.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.HasZeroByte(System.UInt64)">
- <summary>
- Checks whether the given value has any bytes that are set to 0.
- This method mirrors <see cref="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.HasZeroByte(System.UInt32)"/>, but with <see cref="T:System.UInt64"/> values.
- </summary>
- <param name="value">The input value to check.</param>
- <returns>Whether <paramref name="value"/> has any bytes set to 0.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.HasByteEqualTo(System.UInt32,System.Byte)">
- <summary>
- Checks whether a byte in the input <see cref="T:System.UInt32"/> value matches a target value.
- </summary>
- <param name="value">The input value to check.</param>
- <param name="target">The target byte to look for.</param>
- <returns>Whether <paramref name="value"/> has any bytes set to <paramref name="target"/>.</returns>
- <remarks>
- This method contains no branches.
- For more info, see <see href="https://graphics.stanford.edu/~seander/bithacks.html#ZeroInWord"/>.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.HasByteEqualTo(System.UInt64,System.Byte)">
- <summary>
- Checks whether a byte in the input <see cref="T:System.UInt32"/> value matches a target value.
- This method mirrors <see cref="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.HasByteEqualTo(System.UInt32,System.Byte)"/>, but with <see cref="T:System.UInt64"/> values.
- </summary>
- <param name="value">The input value to check.</param>
- <param name="target">The target byte to look for.</param>
- <returns>Whether <paramref name="value"/> has any bytes set to <paramref name="target"/>.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.SetFlag(System.UInt32@,System.Int32,System.Boolean)">
- <summary>
- Sets a bit to a specified value.
- </summary>
- <param name="value">The target <see cref="T:System.UInt32"/> value.</param>
- <param name="n">The position of the bit to set or clear (in [0, 31] range).</param>
- <param name="flag">The value to assign to the target bit.</param>
- <remarks>
- Just like <see cref="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.HasFlag(System.UInt32,System.Int32)"/>, this method doesn't validate <paramref name="n"/>
- and does not contain branching instructions, so it's well suited for use in tight loops as well.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.SetFlag(System.UInt32,System.Int32,System.Boolean)">
- <summary>
- Sets a bit to a specified value.
- </summary>
- <param name="value">The input <see cref="T:System.UInt32"/> value.</param>
- <param name="n">The position of the bit to set or clear (in [0, 31] range).</param>
- <param name="flag">The value to assign to the target bit.</param>
- <returns>An <see cref="T:System.UInt32"/> value equal to <paramref name="value"/> except for the <paramref name="n"/>-th bit.</returns>
- <remarks>
- Just like <see cref="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.HasFlag(System.UInt32,System.Int32)"/>, this method doesn't validate <paramref name="n"/>
- and does not contain branching instructions, so it's well suited for use in tight loops as well.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.ExtractRange(System.UInt32,System.Byte,System.Byte)">
- <summary>
- Extracts a bit field range from a given value.
- </summary>
- <param name="value">The input <see cref="T:System.UInt32"/> value.</param>
- <param name="start">The initial index of the range to extract (in [0, 31] range).</param>
- <param name="length">The length of the range to extract (depends on <paramref name="start"/>).</param>
- <returns>The value of the extracted range within <paramref name="value"/>.</returns>
- <remarks>
- This method doesn't validate <paramref name="start"/> and <paramref name="length"/>.
- If either parameter is not valid, the result will just be inconsistent. The method
- should not be used to set all the bits at once, and it is not guaranteed to work in
- that case, which would just be equivalent to assigning the <see cref="T:System.UInt32"/> value.
- Additionally, no conditional branches are used to retrieve the range.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.SetRange(System.UInt32@,System.Byte,System.Byte,System.UInt32)">
- <summary>
- Sets a bit field range within a target value.
- </summary>
- <param name="value">The target <see cref="T:System.UInt32"/> value.</param>
- <param name="start">The initial index of the range to extract (in [0, 31] range).</param>
- <param name="length">The length of the range to extract (depends on <paramref name="start"/>).</param>
- <param name="flags">The input flags to insert in the target range.</param>
- <remarks>
- Just like <see cref="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.ExtractRange(System.UInt32,System.Byte,System.Byte)"/>, this method doesn't validate the parameters
- and does not contain branching instructions, so it's well suited for use in tight loops as well.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.SetRange(System.UInt32,System.Byte,System.Byte,System.UInt32)">
- <summary>
- Sets a bit field range within a target value.
- </summary>
- <param name="value">The initial <see cref="T:System.UInt32"/> value.</param>
- <param name="start">The initial index of the range to extract (in [0, 31] range).</param>
- <param name="length">The length of the range to extract (depends on <paramref name="start"/>).</param>
- <param name="flags">The input flags to insert in the target range.</param>
- <returns>The updated bit field value after setting the specified range.</returns>
- <remarks>
- Just like <see cref="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.ExtractRange(System.UInt32,System.Byte,System.Byte)"/>, this method doesn't validate the parameters
- and does not contain branching instructions, so it's well suited for use in tight loops as well.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.HasFlag(System.UInt64,System.Int32)">
- <summary>
- Checks whether or not a given bit is set.
- </summary>
- <param name="value">The input <see cref="T:System.UInt64"/> value.</param>
- <param name="n">The position of the bit to check (in [0, 63] range).</param>
- <returns>Whether or not the n-th bit is set.</returns>
- <remarks>
- This method doesn't validate <paramref name="n"/> against the valid range.
- If the parameter is not valid, the result will just be inconsistent.
- Additionally, no conditional branches are used to retrieve the flag.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.HasLookupFlag(System.UInt64,System.Int32,System.Int32)">
- <summary>
- Checks whether or not a given bit is set in a given bitwise lookup table.
- For more info, check the XML docs of the <see cref="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.HasLookupFlag(System.UInt32,System.Int32,System.Int32)"/> overload.
- </summary>
- <param name="table">The input lookup table to use.</param>
- <param name="x">The input value to check.</param>
- <param name="min">The minimum accepted value for <paramref name="x"/> (defaults to 0).</param>
- <returns>Whether or not the corresponding flag for <paramref name="x"/> is set in <paramref name="table"/>.</returns>
- <remarks>
- For best results, as shown in the sample code, both <paramref name="table"/> and <paramref name="min"/>
- should be compile-time constants, so that the JIT compiler will be able to produce more efficient code.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.SetFlag(System.UInt64@,System.Int32,System.Boolean)">
- <summary>
- Sets a bit to a specified value.
- </summary>
- <param name="value">The target <see cref="T:System.UInt64"/> value.</param>
- <param name="n">The position of the bit to set or clear (in [0, 63] range).</param>
- <param name="flag">The value to assign to the target bit.</param>
- <remarks>
- Just like <see cref="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.HasFlag(System.UInt64,System.Int32)"/>, this method doesn't validate <paramref name="n"/>
- and does not contain branching instructions, so it's well suited for use in tight loops as well.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.SetFlag(System.UInt64,System.Int32,System.Boolean)">
- <summary>
- Sets a bit to a specified value.
- </summary>
- <param name="value">The input <see cref="T:System.UInt64"/> value.</param>
- <param name="n">The position of the bit to set or clear (in [0, 63] range).</param>
- <param name="flag">The value to assign to the target bit.</param>
- <returns>An <see cref="T:System.UInt64"/> value equal to <paramref name="value"/> except for the <paramref name="n"/>-th bit.</returns>
- <remarks>
- Just like <see cref="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.HasFlag(System.UInt64,System.Int32)"/>, this method doesn't validate <paramref name="n"/>
- and does not contain branching instructions, so it's well suited for use in tight loops as well.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.ExtractRange(System.UInt64,System.Byte,System.Byte)">
- <summary>
- Extracts a bit field range from a given value.
- </summary>
- <param name="value">The input <see cref="T:System.UInt64"/> value.</param>
- <param name="start">The initial index of the range to extract (in [0, 63] range).</param>
- <param name="length">The length of the range to extract (depends on <paramref name="start"/>).</param>
- <returns>The value of the extracted range within <paramref name="value"/>.</returns>
- <remarks>
- This method doesn't validate <paramref name="start"/> and <paramref name="length"/>.
- If either parameter is not valid, the result will just be inconsistent. The method
- should not be used to set all the bits at once, and it is not guaranteed to work in
- that case, which would just be equivalent to assigning the <see cref="T:System.UInt64"/> value.
- Additionally, no conditional branches are used to retrieve the range.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.SetRange(System.UInt64@,System.Byte,System.Byte,System.UInt64)">
- <summary>
- Sets a bit field range within a target value.
- </summary>
- <param name="value">The target <see cref="T:System.UInt64"/> value.</param>
- <param name="start">The initial index of the range to extract (in [0, 63] range).</param>
- <param name="length">The length of the range to extract (depends on <paramref name="start"/>).</param>
- <param name="flags">The input flags to insert in the target range.</param>
- <remarks>
- Just like <see cref="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.ExtractRange(System.UInt64,System.Byte,System.Byte)"/>, this method doesn't validate the parameters
- and does not contain branching instructions, so it's well suited for use in tight loops as well.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.SetRange(System.UInt64,System.Byte,System.Byte,System.UInt64)">
- <summary>
- Sets a bit field range within a target value.
- </summary>
- <param name="value">The initial <see cref="T:System.UInt64"/> value.</param>
- <param name="start">The initial index of the range to extract (in [0, 63] range).</param>
- <param name="length">The length of the range to extract (depends on <paramref name="start"/>).</param>
- <param name="flags">The input flags to insert in the target range.</param>
- <returns>The updated bit field value after setting the specified range.</returns>
- <remarks>
- Just like <see cref="M:CommunityToolkit.HighPerformance.Helpers.BitHelper.ExtractRange(System.UInt64,System.Byte,System.Byte)"/>, this method doesn't validate the parameters
- and does not contain branching instructions, so it's well suited for use in tight loops as well.
- </remarks>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Helpers.HashCode`1">
- <summary>
- Combines the hash code of sequences of <typeparamref name="T"/> values into a single hash code.
- </summary>
- <typeparam name="T">The type of values to hash.</typeparam>
- <remarks>
- The hash codes returned by the <see cref="M:CommunityToolkit.HighPerformance.Helpers.HashCode`1.Combine(System.ReadOnlySpan{`0})"/> method are only guaranteed to be repeatable for
- the current execution session, just like with the available <see cref="T:System.HashCode"/> APIs.In other words,
- hashing the same <see cref="T:System.ReadOnlySpan`1"/> collection multiple times in the same process will always
- result in the same hash code, while the same collection being hashed again from another process
- (or another instance of the same process) is not guaranteed to result in the same final value.
- For more info, see <see href="https://docs.microsoft.com/en-us/dotnet/api/system.object.gethashcode#remarks"/>.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.HashCode`1.Combine(System.ReadOnlySpan{`0})">
- <summary>
- Gets a content hash from the input <see cref="T:System.ReadOnlySpan`1"/> instance using the xxHash32 algorithm.
- </summary>
- <param name="span">The input <see cref="T:System.ReadOnlySpan`1"/> instance</param>
- <returns>The xxHash32 value for the input <see cref="T:System.ReadOnlySpan`1"/> instance</returns>
- <remarks>The xxHash32 is only guaranteed to be deterministic within the scope of a single app execution</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.HashCode`1.CombineValues(System.ReadOnlySpan{`0})">
- <summary>
- Gets a content hash from the input <see cref="T:System.ReadOnlySpan`1"/> instance.
- </summary>
- <param name="span">The input <see cref="T:System.ReadOnlySpan`1"/> instance</param>
- <returns>The hash code for the input <see cref="T:System.ReadOnlySpan`1"/> instance</returns>
- <remarks>The returned hash code is not processed through <see cref="T:System.HashCode"/> APIs.</remarks>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Helpers.Internals.BitOperations">
- <summary>
- Utility methods for intrinsic bit-twiddling operations. The methods use hardware intrinsics
- when available on the underlying platform, otherwise they use optimized software fallbacks.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.Internals.BitOperations.RoundUpPowerOfTwo(System.Int32)">
- <summary>
- Rounds up an <see cref="T:System.Int32"/> value to a power of 2.
- </summary>
- <param name="x">The input value to round up.</param>
- <returns>The smallest power of two greater than or equal to <paramref name="x"/>.</returns>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Helpers.Internals.RefEnumerableHelper">
- <summary>
- Helpers to process sequences of values by reference with a given step.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.Internals.RefEnumerableHelper.Clear``1(``0@,System.IntPtr,System.IntPtr)">
- <summary>
- Clears a target memory area.
- </summary>
- <typeparam name="T">The type of values to clear.</typeparam>
- <param name="r0">A <typeparamref name="T"/> reference to the start of the memory area.</param>
- <param name="length">The number of items in the memory area.</param>
- <param name="step">The number of items between each consecutive target value.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.Internals.RefEnumerableHelper.CopyTo``1(``0@,``0@,System.IntPtr,System.IntPtr)">
- <summary>
- Copies a sequence of discontiguous items from one memory area to another.
- </summary>
- <typeparam name="T">The type of items to copy.</typeparam>
- <param name="sourceRef">The source reference to copy from.</param>
- <param name="destinationRef">The target reference to copy to.</param>
- <param name="length">The total number of items to copy.</param>
- <param name="sourceStep">The step between consecutive items in the memory area pointed to by <paramref name="sourceRef"/>.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.Internals.RefEnumerableHelper.CopyTo``1(``0@,``0@,System.IntPtr,System.IntPtr,System.IntPtr)">
- <summary>
- Copies a sequence of discontiguous items from one memory area to another.
- </summary>
- <typeparam name="T">The type of items to copy.</typeparam>
- <param name="sourceRef">The source reference to copy from.</param>
- <param name="destinationRef">The target reference to copy to.</param>
- <param name="length">The total number of items to copy.</param>
- <param name="sourceStep">The step between consecutive items in the memory area pointed to by <paramref name="sourceRef"/>.</param>
- <param name="destinationStep">The step between consecutive items in the memory area pointed to by <paramref name="destinationRef"/>.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.Internals.RefEnumerableHelper.CopyFrom``1(``0@,``0@,System.IntPtr,System.IntPtr)">
- <summary>
- Copies a sequence of discontiguous items from one memory area to another. This mirrors
- <see cref="M:CommunityToolkit.HighPerformance.Helpers.Internals.RefEnumerableHelper.CopyTo``1(``0@,``0@,System.IntPtr,System.IntPtr)"/>, but <paramref name="sourceStep"/> refers to <paramref name="destinationRef"/> instead.
- </summary>
- <typeparam name="T">The type of items to copy.</typeparam>
- <param name="sourceRef">The source reference to copy from.</param>
- <param name="destinationRef">The target reference to copy to.</param>
- <param name="length">The total number of items to copy.</param>
- <param name="sourceStep">The step between consecutive items in the memory area pointed to by <paramref name="sourceRef"/>.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.Internals.RefEnumerableHelper.Fill``1(``0@,System.IntPtr,System.IntPtr,``0)">
- <summary>
- Fills a target memory area.
- </summary>
- <typeparam name="T">The type of values to fill.</typeparam>
- <param name="r0">A <typeparamref name="T"/> reference to the start of the memory area.</param>
- <param name="length">The number of items in the memory area.</param>
- <param name="step">The number of items between each consecutive target value.</param>
- <param name="value">The value to assign to every item in the target memory area.</param>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Helpers.Internals.RuntimeHelpers">
- <summary>
- A helper class that with utility methods for dealing with references, and other low-level details.
- It also contains some APIs that act as polyfills for .NET Standard 2.0 and below.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.Internals.RuntimeHelpers.ConvertLength``2(System.Int32)">
- <summary>
- Converts a length of items from one size to another (rounding towards zero).
- </summary>
- <typeparam name="TFrom">The source type of items.</typeparam>
- <typeparam name="TTo">The target type of items.</typeparam>
- <param name="length">The input length to convert.</param>
- <returns>The converted length for the specified argument and types.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.Internals.RuntimeHelpers.GetArrayNativeLength``1(``0[])">
- <summary>
- Gets the length of a given array as a native integer.
- </summary>
- <typeparam name="T">The type of values in the array.</typeparam>
- <param name="array">The input <see cref="T:System.Array"/> instance.</param>
- <returns>The total length of <paramref name="array"/> as a native integer.</returns>
- <remarks>
- This method is needed because this expression is not inlined correctly if the target array
- is only visible as a non-generic <see cref="T:System.Array"/> instance, because the C# compiler will
- not be able to emit the <see langword="ldlen"/> opcode instead of calling the right method.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.Internals.RuntimeHelpers.GetArrayNativeLength(System.Array)">
- <summary>
- Gets the length of a given array as a native integer.
- </summary>
- <param name="array">The input <see cref="T:System.Array"/> instance.</param>
- <returns>The total length of <paramref name="array"/> as a native integer.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.Internals.RuntimeHelpers.GetArrayDataByteOffset``1">
- <summary>
- Gets the byte offset to the first <typeparamref name="T"/> element in a SZ array.
- </summary>
- <typeparam name="T">The type of values in the array.</typeparam>
- <returns>The byte offset to the first <typeparamref name="T"/> element in a SZ array.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.Internals.RuntimeHelpers.GetArray2DDataByteOffset``1">
- <summary>
- Gets the byte offset to the first <typeparamref name="T"/> element in a 2D array.
- </summary>
- <typeparam name="T">The type of values in the array.</typeparam>
- <returns>The byte offset to the first <typeparamref name="T"/> element in a 2D array.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.Internals.RuntimeHelpers.GetArray3DDataByteOffset``1">
- <summary>
- Gets the byte offset to the first <typeparamref name="T"/> element in a 3D array.
- </summary>
- <typeparam name="T">The type of values in the array.</typeparam>
- <returns>The byte offset to the first <typeparamref name="T"/> element in a 3D array.</returns>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Helpers.Internals.RuntimeHelpers.TypeInfo`1">
- <summary>
- A private generic class to preload type info for arbitrary runtime types.
- </summary>
- <typeparam name="T">The type to load info for.</typeparam>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Helpers.Internals.RuntimeHelpers.TypeInfo`1.ArrayDataByteOffset">
- <summary>
- The byte offset to the first <typeparamref name="T"/> element in a SZ array.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Helpers.Internals.RuntimeHelpers.TypeInfo`1.Array2DDataByteOffset">
- <summary>
- The byte offset to the first <typeparamref name="T"/> element in a 2D array.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Helpers.Internals.RuntimeHelpers.TypeInfo`1.Array3DDataByteOffset">
- <summary>
- The byte offset to the first <typeparamref name="T"/> element in a 3D array.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.Internals.RuntimeHelpers.TypeInfo`1.MeasureArrayDataByteOffset">
- <summary>
- Computes the value for <see cref="F:CommunityToolkit.HighPerformance.Helpers.Internals.RuntimeHelpers.TypeInfo`1.ArrayDataByteOffset"/>.
- </summary>
- <returns>The value of <see cref="F:CommunityToolkit.HighPerformance.Helpers.Internals.RuntimeHelpers.TypeInfo`1.ArrayDataByteOffset"/> for the current runtime.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.Internals.RuntimeHelpers.TypeInfo`1.MeasureArray2DDataByteOffset">
- <summary>
- Computes the value for <see cref="F:CommunityToolkit.HighPerformance.Helpers.Internals.RuntimeHelpers.TypeInfo`1.Array2DDataByteOffset"/>.
- </summary>
- <returns>The value of <see cref="F:CommunityToolkit.HighPerformance.Helpers.Internals.RuntimeHelpers.TypeInfo`1.Array2DDataByteOffset"/> for the current runtime.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.Internals.RuntimeHelpers.TypeInfo`1.MeasureArray3DDataByteOffset">
- <summary>
- Computes the value for <see cref="F:CommunityToolkit.HighPerformance.Helpers.Internals.RuntimeHelpers.TypeInfo`1.Array3DDataByteOffset"/>.
- </summary>
- <returns>The value of <see cref="F:CommunityToolkit.HighPerformance.Helpers.Internals.RuntimeHelpers.TypeInfo`1.Array3DDataByteOffset"/> for the current runtime.</returns>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Helpers.Internals.SpanHelper">
- <summary>
- Helpers to process sequences of values by reference.
- </summary>
- <summary>
- Helpers to process sequences of values by reference.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.Internals.SpanHelper.Count``1(``0@,System.IntPtr,``0)">
- <summary>
- Counts the number of occurrences of a given value into a target search space.
- </summary>
- <param name="r0">A <typeparamref name="T"/> reference to the start of the search space.</param>
- <param name="length">The number of items in the search space.</param>
- <param name="value">The <typeparamref name="T"/> value to look for.</param>
- <typeparam name="T">The type of value to look for.</typeparam>
- <returns>The number of occurrences of <paramref name="value"/> in the search space</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.Internals.SpanHelper.CountSequential``1(``0@,System.IntPtr,``0)">
- <summary>
- Implements <see cref="M:CommunityToolkit.HighPerformance.Helpers.Internals.SpanHelper.Count``1(``0@,System.IntPtr,``0)"/> with a sequential search.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.Internals.SpanHelper.CountSimd``1(``0@,System.IntPtr,``0)">
- <summary>
- Implements <see cref="M:CommunityToolkit.HighPerformance.Helpers.Internals.SpanHelper.Count``1(``0@,System.IntPtr,``0)"/> with a vectorized search.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.Internals.SpanHelper.GetUpperBound``1">
- <summary>
- Gets the upper bound for partial sums with a given <typeparamref name="T"/> parameter.
- </summary>
- <typeparam name="T">The type argument currently in use.</typeparam>
- <returns>The native <see cref="T:System.Int32"/> value representing the upper bound.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.Internals.SpanHelper.CastToNativeInt``1(``0)">
- <summary>
- Casts a value of a given type to a native <see cref="T:System.Int32"/>.
- </summary>
- <typeparam name="T">The input type to cast.</typeparam>
- <param name="value">The input <typeparamref name="T"/> value to cast to native <see cref="T:System.Int32"/>.</param>
- <returns>The native <see cref="T:System.Int32"/> cast of <paramref name="value"/>.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.Internals.SpanHelper.GetDjb2HashCode``1(``0@,System.IntPtr)">
- <summary>
- Calculates the djb2 hash for the target sequence of items of a given type.
- </summary>
- <typeparam name="T">The type of items to hash.</typeparam>
- <param name="r0">The reference to the target memory area to hash.</param>
- <param name="length">The number of items to hash.</param>
- <returns>The Djb2 value for the input sequence of items.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.Internals.SpanHelper.GetDjb2LikeByteHash(System.Byte@,System.IntPtr)">
- <summary>
- Gets a content hash from a given memory area.
- </summary>
- <param name="r0">A <see cref="T:System.Byte"/> reference to the start of the memory area.</param>
- <param name="length">The size in bytes of the memory area.</param>
- <returns>The hash code for the contents of the source memory area.</returns>
- <remarks>
- While this method is similar to <see cref="M:CommunityToolkit.HighPerformance.Helpers.Internals.SpanHelper.GetDjb2HashCode``1(``0@,System.IntPtr)"/> and can in some cases
- produce the same output for a given memory area, it is not guaranteed to always be that way.
- This is because this method can use SIMD instructions if possible, which can cause a computed
- hash to differ for the same data, if processed on different machines with different CPU features.
- The advantage of this method is that when SIMD instructions are available, it performs much
- faster than <see cref="M:CommunityToolkit.HighPerformance.Helpers.Internals.SpanHelper.GetDjb2HashCode``1(``0@,System.IntPtr)"/>, as it can parallelize much of the workload.
- </remarks>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Helpers.ObjectMarshal">
- <summary>
- Helpers for working with <see cref="T:System.Object"/> instances.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ObjectMarshal.DangerousGetObjectDataByteOffset``1(System.Object,``0@)">
- <summary>
- Calculates the byte offset to a specific field within a given <see cref="T:System.Object"/>.
- </summary>
- <typeparam name="T">The type of field being referenced.</typeparam>
- <param name="obj">The input <see cref="T:System.Object"/> hosting the target field.</param>
- <param name="data">A reference to a target field of type <typeparamref name="T"/> within <paramref name="obj"/>.</param>
- <returns>
- The <see cref="T:System.IntPtr"/> value representing the offset to the target field from the start of the object data
- for the parameter <paramref name="obj"/>. The offset is in relation to the first usable byte after the method table.
- </returns>
- <remarks>The input parameters are not validated, and it's responsibility of the caller to ensure that
- the <paramref name="data"/> reference is actually pointing to a memory location within <paramref name="obj"/>.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ObjectMarshal.DangerousGetObjectDataReferenceAt``1(System.Object,System.IntPtr)">
- <summary>
- Gets a <typeparamref name="T"/> reference to data within a given <see cref="T:System.Object"/> at a specified offset.
- </summary>
- <typeparam name="T">The type of reference to retrieve.</typeparam>
- <param name="obj">The input <see cref="T:System.Object"/> hosting the target field.</param>
- <param name="offset">The input byte offset for the <typeparamref name="T"/> reference to retrieve.</param>
- <returns>A <typeparamref name="T"/> reference at a specified offset within <paramref name="obj"/>.</returns>
- <remarks>
- None of the input arguments is validated, and it is responsibility of the caller to ensure they are valid.
- In particular, using an invalid offset might cause the retrieved reference to be misaligned with the
- desired data, which would break the type system. Or, if the offset causes the retrieved reference to point
- to a memory location outside of the input <see cref="T:System.Object"/> instance, that might lead to runtime crashes.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ObjectMarshal.TryUnbox``1(System.Object,``0@)">
- <summary>
- Tries to get a boxed <typeparamref name="T"/> value from an input <see cref="T:System.Object"/> instance.
- </summary>
- <typeparam name="T">The type of value to try to unbox.</typeparam>
- <param name="obj">The input <see cref="T:System.Object"/> instance to check.</param>
- <param name="value">The resulting <typeparamref name="T"/> value, if <paramref name="obj"/> was in fact a boxed <typeparamref name="T"/> value.</param>
- <returns><see langword="true"/> if a <typeparamref name="T"/> value was retrieved correctly, <see langword="false"/> otherwise.</returns>
- <remarks>
- This extension behaves just like the following method:
- <code>
- public static bool TryUnbox<T>(object obj, out T value)
- {
- if (obj is T)
- {
- value = (T)obj;
-
- return true;
- }
-
- value = default;
-
- return false;
- }
- </code>
- But in a more efficient way, and with the ability to also assign the unboxed value
- directly on an existing T variable, which is not possible with the code above.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ObjectMarshal.DangerousUnbox``1(System.Object)">
- <summary>
- Unboxes a <typeparamref name="T"/> value from an input <see cref="T:System.Object"/> instance.
- </summary>
- <typeparam name="T">The type of value to unbox.</typeparam>
- <param name="obj">The input <see cref="T:System.Object"/> instance, representing a boxed <typeparamref name="T"/> value.</param>
- <returns>The <typeparamref name="T"/> value boxed in <paramref name="obj"/>.</returns>
- <exception cref="T:System.InvalidCastException">Thrown when <paramref name="obj"/> is not of type <typeparamref name="T"/>.</exception>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Helpers.ParallelHelper">
- <summary>
- Helpers to work with parallel code in a highly optimized manner.
- </summary>
- <summary>
- Helpers to work with parallel code in a highly optimized manner.
- </summary>
- <summary>
- Helpers to work with parallel code in a highly optimized manner.
- </summary>
- <summary>
- Helpers to work with parallel code in a highly optimized manner.
- </summary>
- <summary>
- Helpers to work with parallel code in a highly optimized manner.
- </summary>
- <summary>
- Helpers to work with parallel code in a highly optimized manner.
- </summary>
- <summary>
- Helpers to work with parallel code in a highly optimized manner.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.For``1(System.Range)">
- <summary>
- Executes a specified action in an optimized parallel loop.
- </summary>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IAction"/>) to invoke for each iteration index.</typeparam>
- <param name="range">The iteration range.</param>
- <remarks>None of the bounds of <paramref name="range"/> can start from an end.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.For``1(System.Range,System.Int32)">
- <summary>
- Executes a specified action in an optimized parallel loop.
- </summary>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IAction"/>) to invoke for each iteration index.</typeparam>
- <param name="range">The iteration range.</param>
- <param name="minimumActionsPerThread">
- The minimum number of actions to run per individual thread. Set to 1 if all invocations
- should be parallelized, or to a greater number if each individual invocation is fast
- enough that it is more efficient to set a lower bound per each running thread.
- </param>
- <remarks>None of the bounds of <paramref name="range"/> can start from an end.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.For``1(System.Range,``0@)">
- <summary>
- Executes a specified action in an optimized parallel loop.
- </summary>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IAction"/>) to invoke for each iteration index.</typeparam>
- <param name="range">The iteration range.</param>
- <param name="action">The <typeparamref name="TAction"/> instance representing the action to invoke.</param>
- <remarks>None of the bounds of <paramref name="range"/> can start from an end.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.For``1(System.Range,``0@,System.Int32)">
- <summary>
- Executes a specified action in an optimized parallel loop.
- </summary>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IAction"/>) to invoke for each iteration index.</typeparam>
- <param name="range">The iteration range.</param>
- <param name="action">The <typeparamref name="TAction"/> instance representing the action to invoke.</param>
- <param name="minimumActionsPerThread">
- The minimum number of actions to run per individual thread. Set to 1 if all invocations
- should be parallelized, or to a greater number if each individual invocation is fast
- enough that it is more efficient to set a lower bound per each running thread.
- </param>
- <remarks>None of the bounds of <paramref name="range"/> can start from an end.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.For``1(System.Int32,System.Int32)">
- <summary>
- Executes a specified action in an optimized parallel loop.
- </summary>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IAction"/>) to invoke for each iteration index.</typeparam>
- <param name="start">The starting iteration index.</param>
- <param name="end">The final iteration index (exclusive).</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.For``1(System.Int32,System.Int32,System.Int32)">
- <summary>
- Executes a specified action in an optimized parallel loop.
- </summary>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IAction"/>) to invoke for each iteration index.</typeparam>
- <param name="start">The starting iteration index.</param>
- <param name="end">The final iteration index (exclusive).</param>
- <param name="minimumActionsPerThread">
- The minimum number of actions to run per individual thread. Set to 1 if all invocations
- should be parallelized, or to a greater number if each individual invocation is fast
- enough that it is more efficient to set a lower bound per each running thread.
- </param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.For``1(System.Int32,System.Int32,``0@)">
- <summary>
- Executes a specified action in an optimized parallel loop.
- </summary>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IAction"/>) to invoke for each iteration index.</typeparam>
- <param name="start">The starting iteration index.</param>
- <param name="end">The final iteration index (exclusive).</param>
- <param name="action">The <typeparamref name="TAction"/> instance representing the action to invoke.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.For``1(System.Int32,System.Int32,``0@,System.Int32)">
- <summary>
- Executes a specified action in an optimized parallel loop.
- </summary>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IAction"/>) to invoke for each iteration index.</typeparam>
- <param name="start">The starting iteration index.</param>
- <param name="end">The final iteration index (exclusive).</param>
- <param name="action">The <typeparamref name="TAction"/> instance representing the action to invoke.</param>
- <param name="minimumActionsPerThread">
- The minimum number of actions to run per individual thread. Set to 1 if all invocations
- should be parallelized, or to a greater number if each individual invocation is fast
- enough that it is more efficient to set a lower bound per each running thread.
- </param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.ActionInvoker`1.Invoke(System.Int32)">
- <summary>
- Processes the batch of actions at a specified index
- </summary>
- <param name="i">The index of the batch to process</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.For2D``1(System.Range,System.Range)">
- <summary>
- Executes a specified action in an optimized parallel loop.
- </summary>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IAction2D"/>) to invoke for each pair of iteration indices.</typeparam>
- <param name="i">The <see cref="T:System.Range"/> value indicating the iteration range for the outer loop.</param>
- <param name="j">The <see cref="T:System.Range"/> value indicating the iteration range for the inner loop.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.For2D``1(System.Range,System.Range,System.Int32)">
- <summary>
- Executes a specified action in an optimized parallel loop.
- </summary>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IAction2D"/>) to invoke for each pair of iteration indices.</typeparam>
- <param name="i">The <see cref="T:System.Range"/> value indicating the iteration range for the outer loop.</param>
- <param name="j">The <see cref="T:System.Range"/> value indicating the iteration range for the inner loop.</param>
- <param name="minimumActionsPerThread">
- The minimum number of actions to run per individual thread. Set to 1 if all invocations
- should be parallelized, or to a greater number if each individual invocation is fast
- enough that it is more efficient to set a lower bound per each running thread.
- </param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.For2D``1(System.Range,System.Range,``0@)">
- <summary>
- Executes a specified action in an optimized parallel loop.
- </summary>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IAction2D"/>) to invoke for each pair of iteration indices.</typeparam>
- <param name="i">The <see cref="T:System.Range"/> value indicating the iteration range for the outer loop.</param>
- <param name="j">The <see cref="T:System.Range"/> value indicating the iteration range for the inner loop.</param>
- <param name="action">The <typeparamref name="TAction"/> instance representing the action to invoke.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.For2D``1(System.Range,System.Range,``0@,System.Int32)">
- <summary>
- Executes a specified action in an optimized parallel loop.
- </summary>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IAction2D"/>) to invoke for each pair of iteration indices.</typeparam>
- <param name="i">The <see cref="T:System.Range"/> value indicating the iteration range for the outer loop.</param>
- <param name="j">The <see cref="T:System.Range"/> value indicating the iteration range for the inner loop.</param>
- <param name="action">The <typeparamref name="TAction"/> instance representing the action to invoke.</param>
- <param name="minimumActionsPerThread">
- The minimum number of actions to run per individual thread. Set to 1 if all invocations
- should be parallelized, or to a greater number if each individual invocation is fast
- enough that it is more efficient to set a lower bound per each running thread.
- </param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.For2D``1(System.Drawing.Rectangle)">
- <summary>
- Executes a specified action in an optimized parallel loop.
- </summary>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IAction2D"/>) to invoke for each pair of iteration indices.</typeparam>
- <param name="area">The <see cref="T:System.Drawing.Rectangle"/> value indicating the 2D iteration area to use.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.For2D``1(System.Drawing.Rectangle,System.Int32)">
- <summary>
- Executes a specified action in an optimized parallel loop.
- </summary>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IAction2D"/>) to invoke for each pair of iteration indices.</typeparam>
- <param name="area">The <see cref="T:System.Drawing.Rectangle"/> value indicating the 2D iteration area to use.</param>
- <param name="minimumActionsPerThread">
- The minimum number of actions to run per individual thread. Set to 1 if all invocations
- should be parallelized, or to a greater number if each individual invocation is fast
- enough that it is more efficient to set a lower bound per each running thread.
- </param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.For2D``1(System.Drawing.Rectangle,``0@)">
- <summary>
- Executes a specified action in an optimized parallel loop.
- </summary>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IAction2D"/>) to invoke for each pair of iteration indices.</typeparam>
- <param name="area">The <see cref="T:System.Drawing.Rectangle"/> value indicating the 2D iteration area to use.</param>
- <param name="action">The <typeparamref name="TAction"/> instance representing the action to invoke.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.For2D``1(System.Drawing.Rectangle,``0@,System.Int32)">
- <summary>
- Executes a specified action in an optimized parallel loop.
- </summary>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IAction2D"/>) to invoke for each pair of iteration indices.</typeparam>
- <param name="area">The <see cref="T:System.Drawing.Rectangle"/> value indicating the 2D iteration area to use.</param>
- <param name="action">The <typeparamref name="TAction"/> instance representing the action to invoke.</param>
- <param name="minimumActionsPerThread">
- The minimum number of actions to run per individual thread. Set to 1 if all invocations
- should be parallelized, or to a greater number if each individual invocation is fast
- enough that it is more efficient to set a lower bound per each running thread.
- </param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.For2D``1(System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Executes a specified action in an optimized parallel loop.
- </summary>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IAction2D"/>) to invoke for each pair of iteration indices.</typeparam>
- <param name="top">The starting iteration value for the outer loop.</param>
- <param name="bottom">The final iteration value for the outer loop (exclusive).</param>
- <param name="left">The starting iteration value for the inner loop.</param>
- <param name="right">The final iteration value for the inner loop (exclusive).</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.For2D``1(System.Int32,System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Executes a specified action in an optimized parallel loop.
- </summary>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IAction2D"/>) to invoke for each pair of iteration indices.</typeparam>
- <param name="top">The starting iteration value for the outer loop.</param>
- <param name="bottom">The final iteration value for the outer loop (exclusive).</param>
- <param name="left">The starting iteration value for the inner loop.</param>
- <param name="right">The final iteration value for the inner loop (exclusive).</param>
- <param name="minimumActionsPerThread">
- The minimum number of actions to run per individual thread. Set to 1 if all invocations
- should be parallelized, or to a greater number if each individual invocation is fast
- enough that it is more efficient to set a lower bound per each running thread.
- </param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.For2D``1(System.Int32,System.Int32,System.Int32,System.Int32,``0@)">
- <summary>
- Executes a specified action in an optimized parallel loop.
- </summary>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IAction2D"/>) to invoke for each pair of iteration indices.</typeparam>
- <param name="top">The starting iteration value for the outer loop.</param>
- <param name="bottom">The final iteration value for the outer loop (exclusive).</param>
- <param name="left">The starting iteration value for the inner loop.</param>
- <param name="right">The final iteration value for the inner loop (exclusive).</param>
- <param name="action">The <typeparamref name="TAction"/> instance representing the action to invoke.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.For2D``1(System.Int32,System.Int32,System.Int32,System.Int32,``0@,System.Int32)">
- <summary>
- Executes a specified action in an optimized parallel loop.
- </summary>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IAction2D"/>) to invoke for each pair of iteration indices.</typeparam>
- <param name="top">The starting iteration value for the outer loop.</param>
- <param name="bottom">The final iteration value for the outer loop (exclusive).</param>
- <param name="left">The starting iteration value for the inner loop.</param>
- <param name="right">The final iteration value for the inner loop (exclusive).</param>
- <param name="action">The <typeparamref name="TAction"/> instance representing the action to invoke.</param>
- <param name="minimumActionsPerThread">
- The minimum number of actions to run per individual thread. Set to 1 if all invocations
- should be parallelized, or to a greater number if each individual invocation is fast
- enough that it is more efficient to set a lower bound per each running thread.
- </param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.Action2DInvoker`1.Invoke(System.Int32)">
- <summary>
- Processes the batch of actions at a specified index
- </summary>
- <param name="i">The index of the batch to process</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.ForEach``2(System.ReadOnlyMemory{``0})">
- <summary>
- Executes a specified action in an optimized parallel loop over the input data.
- </summary>
- <typeparam name="TItem">The type of items to iterate over.</typeparam>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IInAction`1"/> of <typeparamref name="TItem"/>) to invoke over each item.</typeparam>
- <param name="memory">The input <see cref="T:System.ReadOnlyMemory`1"/> representing the data to process.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.ForEach``2(System.ReadOnlyMemory{``0},System.Int32)">
- <summary>
- Executes a specified action in an optimized parallel loop over the input data.
- </summary>
- <typeparam name="TItem">The type of items to iterate over.</typeparam>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IInAction`1"/> of <typeparamref name="TItem"/>) to invoke over each item.</typeparam>
- <param name="memory">The input <see cref="T:System.ReadOnlyMemory`1"/> representing the data to process.</param>
- <param name="minimumActionsPerThread">
- The minimum number of actions to run per individual thread. Set to 1 if all invocations
- should be parallelized, or to a greater number if each individual invocation is fast
- enough that it is more efficient to set a lower bound per each running thread.
- </param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.ForEach``2(System.ReadOnlyMemory{``0},``1@)">
- <summary>
- Executes a specified action in an optimized parallel loop over the input data.
- </summary>
- <typeparam name="TItem">The type of items to iterate over.</typeparam>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IInAction`1"/> of <typeparamref name="TItem"/>) to invoke over each item.</typeparam>
- <param name="memory">The input <see cref="T:System.ReadOnlyMemory`1"/> representing the data to process.</param>
- <param name="action">The <typeparamref name="TAction"/> instance representing the action to invoke.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.ForEach``2(System.ReadOnlyMemory{``0},``1@,System.Int32)">
- <summary>
- Executes a specified action in an optimized parallel loop over the input data.
- </summary>
- <typeparam name="TItem">The type of items to iterate over.</typeparam>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IInAction`1"/> of <typeparamref name="TItem"/>) to invoke over each item.</typeparam>
- <param name="memory">The input <see cref="T:System.ReadOnlyMemory`1"/> representing the data to process.</param>
- <param name="action">The <typeparamref name="TAction"/> instance representing the action to invoke.</param>
- <param name="minimumActionsPerThread">
- The minimum number of actions to run per individual thread. Set to 1 if all invocations
- should be parallelized, or to a greater number if each individual invocation is fast
- enough that it is more efficient to set a lower bound per each running thread.
- </param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.InActionInvoker`2.Invoke(System.Int32)">
- <summary>
- Processes the batch of actions at a specified index
- </summary>
- <param name="i">The index of the batch to process</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.ForEach``2(CommunityToolkit.HighPerformance.ReadOnlyMemory2D{``0})">
- <summary>
- Executes a specified action in an optimized parallel loop over the input data.
- </summary>
- <typeparam name="TItem">The type of items to iterate over.</typeparam>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IInAction`1"/> of <typeparamref name="TItem"/>) to invoke over each item.</typeparam>
- <param name="memory">The input <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> representing the data to process.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.ForEach``2(CommunityToolkit.HighPerformance.ReadOnlyMemory2D{``0},System.Int32)">
- <summary>
- Executes a specified action in an optimized parallel loop over the input data.
- </summary>
- <typeparam name="TItem">The type of items to iterate over.</typeparam>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IInAction`1"/> of <typeparamref name="TItem"/>) to invoke over each item.</typeparam>
- <param name="memory">The input <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> representing the data to process.</param>
- <param name="minimumActionsPerThread">
- The minimum number of actions to run per individual thread. Set to 1 if all invocations
- should be parallelized, or to a greater number if each individual invocation is fast
- enough that it is more efficient to set a lower bound per each running thread.
- </param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.ForEach``2(CommunityToolkit.HighPerformance.ReadOnlyMemory2D{``0},``1@)">
- <summary>
- Executes a specified action in an optimized parallel loop over the input data.
- </summary>
- <typeparam name="TItem">The type of items to iterate over.</typeparam>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IInAction`1"/> of <typeparamref name="TItem"/>) to invoke over each item.</typeparam>
- <param name="memory">The input <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> representing the data to process.</param>
- <param name="action">The <typeparamref name="TAction"/> instance representing the action to invoke.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.ForEach``2(CommunityToolkit.HighPerformance.ReadOnlyMemory2D{``0},``1@,System.Int32)">
- <summary>
- Executes a specified action in an optimized parallel loop over the input data.
- </summary>
- <typeparam name="TItem">The type of items to iterate over.</typeparam>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IInAction`1"/> of <typeparamref name="TItem"/>) to invoke over each item.</typeparam>
- <param name="memory">The input <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> representing the data to process.</param>
- <param name="action">The <typeparamref name="TAction"/> instance representing the action to invoke.</param>
- <param name="minimumActionsPerThread">
- The minimum number of actions to run per individual thread. Set to 1 if all invocations
- should be parallelized, or to a greater number if each individual invocation is fast
- enough that it is more efficient to set a lower bound per each running thread.
- </param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.InActionInvokerWithReadOnlyMemory2D`2.Invoke(System.Int32)">
- <summary>
- Processes the batch of actions at a specified index
- </summary>
- <param name="i">The index of the batch to process</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.ForEach``2(System.Memory{``0})">
- <summary>
- Executes a specified action in an optimized parallel loop over the input data.
- </summary>
- <typeparam name="TItem">The type of items to iterate over.</typeparam>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IRefAction`1"/> of <typeparamref name="TItem"/>) to invoke over each item.</typeparam>
- <param name="memory">The input <see cref="T:System.Memory`1"/> representing the data to process.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.ForEach``2(System.Memory{``0},System.Int32)">
- <summary>
- Executes a specified action in an optimized parallel loop over the input data.
- </summary>
- <typeparam name="TItem">The type of items to iterate over.</typeparam>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IInAction`1"/> of <typeparamref name="TItem"/>) to invoke over each item.</typeparam>
- <param name="memory">The input <see cref="T:System.Memory`1"/> representing the data to process.</param>
- <param name="minimumActionsPerThread">
- The minimum number of actions to run per individual thread. Set to 1 if all invocations
- should be parallelized, or to a greater number if each individual invocation is fast
- enough that it is more efficient to set a lower bound per each running thread.
- </param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.ForEach``2(System.Memory{``0},``1@)">
- <summary>
- Executes a specified action in an optimized parallel loop over the input data.
- </summary>
- <typeparam name="TItem">The type of items to iterate over.</typeparam>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IInAction`1"/> of <typeparamref name="TItem"/>) to invoke over each item.</typeparam>
- <param name="memory">The input <see cref="T:System.Memory`1"/> representing the data to process.</param>
- <param name="action">The <typeparamref name="TAction"/> instance representing the action to invoke.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.ForEach``2(System.Memory{``0},``1@,System.Int32)">
- <summary>
- Executes a specified action in an optimized parallel loop over the input data.
- </summary>
- <typeparam name="TItem">The type of items to iterate over.</typeparam>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IInAction`1"/> of <typeparamref name="TItem"/>) to invoke over each item.</typeparam>
- <param name="memory">The input <see cref="T:System.Memory`1"/> representing the data to process.</param>
- <param name="action">The <typeparamref name="TAction"/> instance representing the action to invoke.</param>
- <param name="minimumActionsPerThread">
- The minimum number of actions to run per individual thread. Set to 1 if all invocations
- should be parallelized, or to a greater number if each individual invocation is fast
- enough that it is more efficient to set a lower bound per each running thread.
- </param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.RefActionInvoker`2.Invoke(System.Int32)">
- <summary>
- Processes the batch of actions at a specified index
- </summary>
- <param name="i">The index of the batch to process</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.ForEach``2(CommunityToolkit.HighPerformance.Memory2D{``0})">
- <summary>
- Executes a specified action in an optimized parallel loop over the input data.
- </summary>
- <typeparam name="TItem">The type of items to iterate over.</typeparam>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IRefAction`1"/> of <typeparamref name="TItem"/>) to invoke over each item.</typeparam>
- <param name="memory">The input <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> representing the data to process.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.ForEach``2(CommunityToolkit.HighPerformance.Memory2D{``0},System.Int32)">
- <summary>
- Executes a specified action in an optimized parallel loop over the input data.
- </summary>
- <typeparam name="TItem">The type of items to iterate over.</typeparam>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IRefAction`1"/> of <typeparamref name="TItem"/>) to invoke over each item.</typeparam>
- <param name="memory">The input <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> representing the data to process.</param>
- <param name="minimumActionsPerThread">
- The minimum number of actions to run per individual thread. Set to 1 if all invocations
- should be parallelized, or to a greater number if each individual invocation is fast
- enough that it is more efficient to set a lower bound per each running thread.
- </param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.ForEach``2(CommunityToolkit.HighPerformance.Memory2D{``0},``1@)">
- <summary>
- Executes a specified action in an optimized parallel loop over the input data.
- </summary>
- <typeparam name="TItem">The type of items to iterate over.</typeparam>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IRefAction`1"/> of <typeparamref name="TItem"/>) to invoke over each item.</typeparam>
- <param name="memory">The input <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> representing the data to process.</param>
- <param name="action">The <typeparamref name="TAction"/> instance representing the action to invoke.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.ForEach``2(CommunityToolkit.HighPerformance.Memory2D{``0},``1@,System.Int32)">
- <summary>
- Executes a specified action in an optimized parallel loop over the input data.
- </summary>
- <typeparam name="TItem">The type of items to iterate over.</typeparam>
- <typeparam name="TAction">The type of action (implementing <see cref="T:CommunityToolkit.HighPerformance.Helpers.IRefAction`1"/> of <typeparamref name="TItem"/>) to invoke over each item.</typeparam>
- <param name="memory">The input <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> representing the data to process.</param>
- <param name="action">The <typeparamref name="TAction"/> instance representing the action to invoke.</param>
- <param name="minimumActionsPerThread">
- The minimum number of actions to run per individual thread. Set to 1 if all invocations
- should be parallelized, or to a greater number if each individual invocation is fast
- enough that it is more efficient to set a lower bound per each running thread.
- </param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.RefActionInvokerWithReadOnlyMemory2D`2.Invoke(System.Int32)">
- <summary>
- Processes the batch of actions at a specified index
- </summary>
- <param name="i">The index of the batch to process</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.ThrowArgumentOutOfRangeExceptionForInvalidMinimumActionsPerThread">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when an invalid parameter is specified for the minimum actions per thread.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.ThrowArgumentOutOfRangeExceptionForStartGreaterThanEnd">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when an invalid start parameter is specified for 1D loops.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.ThrowArgumentExceptionForRangeIndexFromEnd(System.String)">
- <summary>
- Throws an <see cref="T:System.ArgumentException"/> when a range has an index starting from an end.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.ThrowArgumentOutOfRangeExceptionForTopGreaterThanBottom">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when an invalid top parameter is specified for 2D loops.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.ParallelHelper.ThrowArgumentOutOfRangeExceptionForLeftGreaterThanRight">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when an invalid left parameter is specified for 2D loops.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Helpers.IAction">
- <summary>
- A contract for actions being executed with an input index.
- </summary>
- <remarks>If the <see cref="M:CommunityToolkit.HighPerformance.Helpers.IAction.Invoke(System.Int32)"/> method is small enough, it is highly recommended to mark it with <see cref="F:System.Runtime.CompilerServices.MethodImplOptions.AggressiveInlining"/>.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.IAction.Invoke(System.Int32)">
- <summary>
- Executes the action associated with a specific index.
- </summary>
- <param name="i">The current index for the action to execute.</param>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Helpers.IAction2D">
- <summary>
- A contract for actions being executed with two input indices.
- </summary>
- <remarks>If the <see cref="M:CommunityToolkit.HighPerformance.Helpers.IAction2D.Invoke(System.Int32,System.Int32)"/> method is small enough, it is highly recommended to mark it with <see cref="F:System.Runtime.CompilerServices.MethodImplOptions.AggressiveInlining"/>.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.IAction2D.Invoke(System.Int32,System.Int32)">
- <summary>
- Executes the action associated with two specified indices.
- </summary>
- <param name="i">The first index for the action to execute.</param>
- <param name="j">The second index for the action to execute.</param>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Helpers.IInAction`1">
- <summary>
- A contract for actions being executed on items of a specific type, with readonly access.
- </summary>
- <typeparam name="T">The type of items to process.</typeparam>
- <remarks>If the <see cref="M:CommunityToolkit.HighPerformance.Helpers.IInAction`1.Invoke(`0@)"/> method is small enough, it is highly recommended to mark it with <see cref="F:System.Runtime.CompilerServices.MethodImplOptions.AggressiveInlining"/>.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.IInAction`1.Invoke(`0@)">
- <summary>
- Executes the action on a specified <typeparamref name="T"/> item.
- </summary>
- <param name="item">The current item to process.</param>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Helpers.IRefAction`1">
- <summary>
- A contract for actions being executed on items of a specific type, with side effect.
- </summary>
- <typeparam name="T">The type of items to process.</typeparam>
- <remarks>If the <see cref="M:CommunityToolkit.HighPerformance.Helpers.IRefAction`1.Invoke(`0@)"/> method is small enough, it is highly recommended to mark it with <see cref="F:System.Runtime.CompilerServices.MethodImplOptions.AggressiveInlining"/>.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Helpers.IRefAction`1.Invoke(`0@)">
- <summary>
- Executes the action on a specified <typeparamref name="T"/> item.
- </summary>
- <param name="item">The current item to process.</param>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Memory.Internals.OverflowHelper">
- <summary>
- A helper to validate arithmetic operations for <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> and <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/>.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory.Internals.OverflowHelper.EnsureIsInNativeIntRange(System.Int32,System.Int32,System.Int32)">
- <summary>
- Ensures that the input parameters will not exceed the maximum native int value when indexing.
- </summary>
- <param name="height">The height of the 2D memory area to map.</param>
- <param name="width">The width of the 2D memory area to map.</param>
- <param name="pitch">The pitch of the 2D memory area to map (the distance between each row).</param>
- <exception cref="T:System.OverflowException">Throw when the inputs don't fit in the expected range.</exception>
- <remarks>The input parameters are assumed to always be positive.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory.Internals.OverflowHelper.ComputeInt32Area(System.Int32,System.Int32,System.Int32)">
- <summary>
- Ensures that the input parameters will not exceed <see cref="F:System.Int32.MaxValue"/> when indexing.
- </summary>
- <param name="height">The height of the 2D memory area to map.</param>
- <param name="width">The width of the 2D memory area to map.</param>
- <param name="pitch">The pitch of the 2D memory area to map (the distance between each row).</param>
- <returns>The area resulting from the given parameters.</returns>
- <exception cref="T:System.OverflowException">Throw when the inputs don't fit in the expected range.</exception>
- <remarks>The input parameters are assumed to always be positive.</remarks>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Memory.Internals.ThrowHelper">
- <summary>
- A helper class to throw exceptions for memory types.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory.Internals.ThrowHelper.ThrowArgumentExceptionForManagedType">
- <summary>
- Throws an <see cref="T:System.ArgumentException"/> when using the <see langword="void"/>* constructor with a managed type.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory.Internals.ThrowHelper.ThrowArgumentExceptionForDestinationTooShort">
- <summary>
- Throws an <see cref="T:System.ArgumentException"/> when the target span is too short.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory.Internals.ThrowHelper.ThrowArgumentExceptionForDestinationWithNotSameShape">
- <summary>
- Throws an <see cref="T:System.ArgumentException"/> when the target span does not have the same shape as the source.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory.Internals.ThrowHelper.ThrowArrayTypeMismatchException">
- <summary>
- Throws an <see cref="T:System.ArrayTypeMismatchException"/> when using an array of an invalid type.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory.Internals.ThrowHelper.ThrowArgumentExceptionForUnsupportedType">
- <summary>
- Throws an <see cref="T:System.ArgumentException"/> when using an array of an invalid type.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory.Internals.ThrowHelper.ThrowIndexOutOfRangeException">
- <summary>
- Throws an <see cref="T:System.IndexOutOfRangeException"/> when the a given coordinate is invalid.
- </summary>
- <remarks>
- Throwing <see cref="T:System.IndexOutOfRangeException"/> is technically discouraged in the docs, but
- we're doing that here for consistency with the official <see cref="T:System.Span`1"/> type(s) from the BCL.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory.Internals.ThrowHelper.ThrowArgumentException">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when more than one parameter are invalid.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory.Internals.ThrowHelper.ThrowArgumentOutOfRangeExceptionForDepth">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the "depth" parameter is invalid.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory.Internals.ThrowHelper.ThrowArgumentOutOfRangeExceptionForRow">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the "row" parameter is invalid.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory.Internals.ThrowHelper.ThrowArgumentOutOfRangeExceptionForColumn">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the "column" parameter is invalid.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory.Internals.ThrowHelper.ThrowArgumentOutOfRangeExceptionForOffset">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the "offset" parameter is invalid.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory.Internals.ThrowHelper.ThrowArgumentOutOfRangeExceptionForHeight">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the "height" parameter is invalid.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory.Internals.ThrowHelper.ThrowArgumentOutOfRangeExceptionForWidth">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the "width" parameter is invalid.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory.Internals.ThrowHelper.ThrowArgumentOutOfRangeExceptionForPitch">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the "pitch" parameter is invalid.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Memory.Views.MemoryDebugView2D`1">
- <summary>
- A debug proxy used to display items in a 2D layout.
- </summary>
- <typeparam name="T">The type of items to display.</typeparam>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory.Views.MemoryDebugView2D`1.#ctor(CommunityToolkit.HighPerformance.Memory2D{`0})">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Memory.Views.MemoryDebugView2D`1"/> class with the specified parameters.
- </summary>
- <param name="memory">The input <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> instance with the items to display.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory.Views.MemoryDebugView2D`1.#ctor(CommunityToolkit.HighPerformance.ReadOnlyMemory2D{`0})">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Memory.Views.MemoryDebugView2D`1"/> class with the specified parameters.
- </summary>
- <param name="memory">The input <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> instance with the items to display.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory.Views.MemoryDebugView2D`1.#ctor(CommunityToolkit.HighPerformance.Span2D{`0})">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Memory.Views.MemoryDebugView2D`1"/> class with the specified parameters.
- </summary>
- <param name="span">The input <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance with the items to display.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory.Views.MemoryDebugView2D`1.#ctor(CommunityToolkit.HighPerformance.ReadOnlySpan2D{`0})">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Memory.Views.MemoryDebugView2D`1"/> class with the specified parameters.
- </summary>
- <param name="span">The input <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance with the items to display.</param>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Memory.Views.MemoryDebugView2D`1.Items">
- <summary>
- Gets the items to display for the current instance
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Memory2D`1">
- <summary>
- <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> represents a 2D region of arbitrary memory. It is to <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/>
- what <see cref="T:System.Memory`1"/> is to <see cref="T:System.Span`1"/>. For further details on how the internal layout
- is structured, see the docs for <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/>. The <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> type can wrap arrays
- of any rank, provided that a valid series of parameters for the target memory area(s) are specified.
- </summary>
- <typeparam name="T">The type of items in the current <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> instance.</typeparam>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Memory2D`1.instance">
- <summary>
- The target <see cref="T:System.Object"/> instance, if present.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Memory2D`1.offset">
- <summary>
- The initial offset within <see cref="F:CommunityToolkit.HighPerformance.Memory2D`1.instance"/>.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Memory2D`1.height">
- <summary>
- The height of the specified 2D region.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Memory2D`1.width">
- <summary>
- The width of the specified 2D region.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Memory2D`1.pitch">
- <summary>
- The pitch of the specified 2D region.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory2D`1.#ctor(`0[],System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> struct.
- </summary>
- <param name="array">The target array to wrap.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <exception cref="T:System.ArrayTypeMismatchException">
- Thrown when <paramref name="array"/> doesn't match <typeparamref name="T"/>.
- </exception>
- <exception cref="T:System.ArgumentException">
- Thrown when either <paramref name="height"/> or <paramref name="width"/> are invalid.
- </exception>
- <remarks>The total area must match the length of <paramref name="array"/>.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory2D`1.#ctor(`0[],System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> struct.
- </summary>
- <param name="array">The target array to wrap.</param>
- <param name="offset">The initial offset within <paramref name="array"/>.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <param name="pitch">The pitch in the resulting 2D area.</param>
- <exception cref="T:System.ArrayTypeMismatchException">
- Thrown when <paramref name="array"/> doesn't match <typeparamref name="T"/>.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- Thrown when one of the input parameters is out of range.
- </exception>
- <exception cref="T:System.ArgumentException">
- Thrown when the requested area is outside of bounds for <paramref name="array"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory2D`1.#ctor(`0[0:,0:])">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> struct wrapping a 2D array.
- </summary>
- <param name="array">The given 2D array to wrap.</param>
- <exception cref="T:System.ArrayTypeMismatchException">
- Thrown when <paramref name="array"/> doesn't match <typeparamref name="T"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory2D`1.#ctor(`0[0:,0:],System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> struct wrapping a 2D array.
- </summary>
- <param name="array">The given 2D array to wrap.</param>
- <param name="row">The target row to map within <paramref name="array"/>.</param>
- <param name="column">The target column to map within <paramref name="array"/>.</param>
- <param name="height">The height to map within <paramref name="array"/>.</param>
- <param name="width">The width to map within <paramref name="array"/>.</param>
- <exception cref="T:System.ArrayTypeMismatchException">
- Thrown when <paramref name="array"/> doesn't match <typeparamref name="T"/>.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- Thrown when either <paramref name="height"/>, <paramref name="width"/> or <paramref name="height"/>
- are negative or not within the bounds that are valid for <paramref name="array"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory2D`1.#ctor(`0[0:,0:,0:],System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> struct wrapping a layer in a 3D array.
- </summary>
- <param name="array">The given 3D array to wrap.</param>
- <param name="depth">The target layer to map within <paramref name="array"/>.</param>
- <exception cref="T:System.ArrayTypeMismatchException">
- Thrown when <paramref name="array"/> doesn't match <typeparamref name="T"/>.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when a parameter is invalid.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory2D`1.#ctor(`0[0:,0:,0:],System.Int32,System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> struct wrapping a layer in a 3D array.
- </summary>
- <param name="array">The given 3D array to wrap.</param>
- <param name="depth">The target layer to map within <paramref name="array"/>.</param>
- <param name="row">The target row to map within <paramref name="array"/>.</param>
- <param name="column">The target column to map within <paramref name="array"/>.</param>
- <param name="height">The height to map within <paramref name="array"/>.</param>
- <param name="width">The width to map within <paramref name="array"/>.</param>
- <exception cref="T:System.ArrayTypeMismatchException">
- Thrown when <paramref name="array"/> doesn't match <typeparamref name="T"/>.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when a parameter is invalid.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory2D`1.#ctor(System.Buffers.MemoryManager{`0},System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> struct.
- </summary>
- <param name="memoryManager">The target <see cref="T:System.Buffers.MemoryManager`1"/> to wrap.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when either <paramref name="height"/> or <paramref name="width"/> are invalid.
- </exception>
- <remarks>The total area must match the length of <paramref name="memoryManager"/>.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory2D`1.#ctor(System.Buffers.MemoryManager{`0},System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> struct.
- </summary>
- <param name="memoryManager">The target <see cref="T:System.Buffers.MemoryManager`1"/> to wrap.</param>
- <param name="offset">The initial offset within <paramref name="memoryManager"/>.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <param name="pitch">The pitch in the resulting 2D area.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">
- Thrown when one of the input parameters is out of range.
- </exception>
- <exception cref="T:System.ArgumentException">
- Thrown when the requested area is outside of bounds for <paramref name="memoryManager"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory2D`1.#ctor(System.Memory{`0},System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> struct.
- </summary>
- <param name="memory">The target <see cref="T:System.Memory`1"/> to wrap.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when either <paramref name="height"/> or <paramref name="width"/> are invalid.
- </exception>
- <remarks>The total area must match the length of <paramref name="memory"/>.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory2D`1.#ctor(System.Memory{`0},System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> struct.
- </summary>
- <param name="memory">The target <see cref="T:System.Memory`1"/> to wrap.</param>
- <param name="offset">The initial offset within <paramref name="memory"/>.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <param name="pitch">The pitch in the resulting 2D area.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">
- Thrown when one of the input parameters is out of range.
- </exception>
- <exception cref="T:System.ArgumentException">
- Thrown when the requested area is outside of bounds for <paramref name="memory"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory2D`1.#ctor(System.Object,System.IntPtr,System.Int32,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> struct with the specified parameters.
- </summary>
- <param name="instance">The target <see cref="T:System.Object"/> instance.</param>
- <param name="offset">The initial offset within <see cref="F:CommunityToolkit.HighPerformance.Memory2D`1.instance"/>.</param>
- <param name="height">The height of the 2D memory area to map.</param>
- <param name="width">The width of the 2D memory area to map.</param>
- <param name="pitch">The pitch of the 2D memory area to map.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory2D`1.DangerousCreate(System.Object,`0@,System.Int32,System.Int32,System.Int32)">
- <summary>
- Creates a new <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> instance from an arbitrary object.
- </summary>
- <param name="instance">The <see cref="T:System.Object"/> instance holding the data to map.</param>
- <param name="value">The target reference to point to (it must be within <paramref name="instance"/>).</param>
- <param name="height">The height of the 2D memory area to map.</param>
- <param name="width">The width of the 2D memory area to map.</param>
- <param name="pitch">The pitch of the 2D memory area to map.</param>
- <returns>A <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> instance with the specified parameters.</returns>
- <remarks>The <paramref name="value"/> parameter is not validated, and it's responsibility of the caller to ensure it's valid.</remarks>
- <exception cref="T:System.ArgumentOutOfRangeException">
- Thrown when one of the input parameters is out of range.
- </exception>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Memory2D`1.Empty">
- <summary>
- Gets an empty <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> instance.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Memory2D`1.IsEmpty">
- <summary>
- Gets a value indicating whether the current <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> instance is empty.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Memory2D`1.Length">
- <summary>
- Gets the length of the current <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> instance.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Memory2D`1.Height">
- <summary>
- Gets the height of the underlying 2D memory area.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Memory2D`1.Width">
- <summary>
- Gets the width of the underlying 2D memory area.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Memory2D`1.Span">
- <summary>
- Gets a <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance from the current memory.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Memory2D`1.Item(System.Range,System.Range)">
- <summary>
- Slices the current instance with the specified parameters.
- </summary>
- <param name="rows">The target range of rows to select.</param>
- <param name="columns">The target range of columns to select.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when either <paramref name="rows"/> or <paramref name="columns"/> are invalid.
- </exception>
- <returns>A new <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> instance representing a slice of the current one.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory2D`1.Slice(System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Slices the current instance with the specified parameters.
- </summary>
- <param name="row">The target row to map within the current instance.</param>
- <param name="column">The target column to map within the current instance.</param>
- <param name="height">The height to map within the current instance.</param>
- <param name="width">The width to map within the current instance.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when either <paramref name="height"/>, <paramref name="width"/> or <paramref name="height"/>
- are negative or not within the bounds that are valid for the current instance.
- </exception>
- <returns>A new <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> instance representing a slice of the current one.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory2D`1.CopyTo(System.Memory{`0})">
- <summary>
- Copies the contents of this <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> into a destination <see cref="T:System.Memory`1"/> instance.
- </summary>
- <param name="destination">The destination <see cref="T:System.Memory`1"/> instance.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when <paramref name="destination" /> is shorter than the source <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> instance.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory2D`1.TryCopyTo(System.Memory{`0})">
- <summary>
- Attempts to copy the current <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> instance to a destination <see cref="T:System.Memory`1"/>.
- </summary>
- <param name="destination">The target <see cref="T:System.Memory`1"/> of the copy operation.</param>
- <returns>Whether or not the operation was successful.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory2D`1.CopyTo(CommunityToolkit.HighPerformance.Memory2D{`0})">
- <summary>
- Copies the contents of this <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> into a destination <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> instance.
- For this API to succeed, the target <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> has to have the same shape as the current one.
- </summary>
- <param name="destination">The destination <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> instance.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when <paramref name="destination" /> is shorter than the source <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> instance.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory2D`1.TryCopyTo(CommunityToolkit.HighPerformance.Memory2D{`0})">
- <summary>
- Attempts to copy the current <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> instance to a destination <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/>.
- For this API to succeed, the target <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> has to have the same shape as the current one.
- </summary>
- <param name="destination">The target <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> of the copy operation.</param>
- <returns>Whether or not the operation was successful.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory2D`1.Pin">
- <summary>
- Creates a handle for the memory.
- The GC will not move the memory until the returned <see cref="T:System.Buffers.MemoryHandle"/>
- is disposed, enabling taking and using the memory's address.
- </summary>
- <exception cref="T:System.ArgumentException">
- An instance with nonprimitive (non-blittable) members cannot be pinned.
- </exception>
- <returns>A <see cref="T:System.Buffers.MemoryHandle"/> instance wrapping the pinned handle.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory2D`1.TryGetMemory(System.Memory{`0}@)">
- <summary>
- Tries to get a <see cref="T:System.Memory`1"/> instance, if the underlying buffer is contiguous and small enough.
- </summary>
- <param name="memory">The resulting <see cref="T:System.Memory`1"/>, in case of success.</param>
- <returns>Whether or not <paramref name="memory"/> was correctly assigned.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory2D`1.ToArray">
- <summary>
- Copies the contents of the current <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> instance into a new 2D array.
- </summary>
- <returns>A 2D array containing the data in the current <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> instance.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory2D`1.Equals(System.Object)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory2D`1.Equals(CommunityToolkit.HighPerformance.Memory2D{`0})">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory2D`1.GetHashCode">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory2D`1.ToString">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Memory2D`1.op_Implicit(`0[0:,0:])~CommunityToolkit.HighPerformance.Memory2D{`0}">
- <summary>
- Defines an implicit conversion of an array to a <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/>
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1">
- <summary>
- A readonly version of <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/>.
- </summary>
- <typeparam name="T">The type of items in the current <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> instance.</typeparam>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.instance">
- <summary>
- The target <see cref="T:System.Object"/> instance, if present.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.offset">
- <summary>
- The initial offset within <see cref="F:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.instance"/>.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.height">
- <summary>
- The height of the specified 2D region.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.width">
- <summary>
- The width of the specified 2D region.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.pitch">
- <summary>
- The pitch of the specified 2D region.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.#ctor(System.String,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> struct.
- </summary>
- <param name="text">The target <see cref="T:System.String"/> to wrap.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when either <paramref name="height"/> or <paramref name="width"/> are invalid.
- </exception>
- <remarks>The total area must match the length of <paramref name="text"/>.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.#ctor(System.String,System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> struct.
- </summary>
- <param name="text">The target <see cref="T:System.String"/> to wrap.</param>
- <param name="offset">The initial offset within <paramref name="text"/>.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <param name="pitch">The pitch in the resulting 2D area.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">
- Thrown when one of the input parameters is out of range.
- </exception>
- <exception cref="T:System.ArgumentException">
- Thrown when the requested area is outside of bounds for <paramref name="text"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.#ctor(`0[],System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> struct.
- </summary>
- <param name="array">The target array to wrap.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when either <paramref name="height"/> or <paramref name="width"/> are invalid.
- </exception>
- <remarks>The total area must match the length of <paramref name="array"/>.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.#ctor(`0[],System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> struct.
- </summary>
- <param name="array">The target array to wrap.</param>
- <param name="offset">The initial offset within <paramref name="array"/>.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <param name="pitch">The pitch in the resulting 2D area.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">
- Thrown when one of the input parameters is out of range.
- </exception>
- <exception cref="T:System.ArgumentException">
- Thrown when the requested area is outside of bounds for <paramref name="array"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.#ctor(`0[0:,0:])">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> struct wrapping a 2D array.
- </summary>
- <param name="array">The given 2D array to wrap.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.#ctor(`0[0:,0:],System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> struct wrapping a 2D array.
- </summary>
- <param name="array">The given 2D array to wrap.</param>
- <param name="row">The target row to map within <paramref name="array"/>.</param>
- <param name="column">The target column to map within <paramref name="array"/>.</param>
- <param name="height">The height to map within <paramref name="array"/>.</param>
- <param name="width">The width to map within <paramref name="array"/>.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">
- Thrown when either <paramref name="height"/>, <paramref name="width"/> or <paramref name="height"/>
- are negative or not within the bounds that are valid for <paramref name="array"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.#ctor(`0[0:,0:,0:],System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> struct wrapping a layer in a 3D array.
- </summary>
- <param name="array">The given 3D array to wrap.</param>
- <param name="depth">The target layer to map within <paramref name="array"/>.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when a parameter is invalid.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.#ctor(`0[0:,0:,0:],System.Int32,System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> struct wrapping a layer in a 3D array.
- </summary>
- <param name="array">The given 3D array to wrap.</param>
- <param name="depth">The target layer to map within <paramref name="array"/>.</param>
- <param name="row">The target row to map within <paramref name="array"/>.</param>
- <param name="column">The target column to map within <paramref name="array"/>.</param>
- <param name="height">The height to map within <paramref name="array"/>.</param>
- <param name="width">The width to map within <paramref name="array"/>.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when a parameter is invalid.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.#ctor(System.Buffers.MemoryManager{`0},System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> struct.
- </summary>
- <param name="memoryManager">The target <see cref="T:System.Buffers.MemoryManager`1"/> to wrap.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when either <paramref name="height"/> or <paramref name="width"/> are invalid.
- </exception>
- <remarks>The total area must match the length of <paramref name="memoryManager"/>.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.#ctor(System.Buffers.MemoryManager{`0},System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> struct.
- </summary>
- <param name="memoryManager">The target <see cref="T:System.Buffers.MemoryManager`1"/> to wrap.</param>
- <param name="offset">The initial offset within <paramref name="memoryManager"/>.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <param name="pitch">The pitch in the resulting 2D area.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">
- Thrown when one of the input parameters is out of range.
- </exception>
- <exception cref="T:System.ArgumentException">
- Thrown when the requested area is outside of bounds for <paramref name="memoryManager"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.#ctor(System.ReadOnlyMemory{`0},System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> struct.
- </summary>
- <param name="memory">The target <see cref="T:System.Memory`1"/> to wrap.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when either <paramref name="height"/> or <paramref name="width"/> are invalid.
- </exception>
- <remarks>The total area must match the length of <paramref name="memory"/>.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.#ctor(System.ReadOnlyMemory{`0},System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> struct.
- </summary>
- <param name="memory">The target <see cref="T:System.ReadOnlyMemory`1"/> to wrap.</param>
- <param name="offset">The initial offset within <paramref name="memory"/>.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <param name="pitch">The pitch in the resulting 2D area.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">
- Thrown when one of the input parameters is out of range.
- </exception>
- <exception cref="T:System.ArgumentException">
- Thrown when the requested area is outside of bounds for <paramref name="memory"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.#ctor(System.Object,System.IntPtr,System.Int32,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> struct with the specified parameters.
- </summary>
- <param name="instance">The target <see cref="T:System.Object"/> instance.</param>
- <param name="offset">The initial offset within <see cref="F:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.instance"/>.</param>
- <param name="height">The height of the 2D memory area to map.</param>
- <param name="width">The width of the 2D memory area to map.</param>
- <param name="pitch">The pitch of the 2D memory area to map.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.DangerousCreate(System.Object,`0@,System.Int32,System.Int32,System.Int32)">
- <summary>
- Creates a new <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> instance from an arbitrary object.
- </summary>
- <param name="instance">The <see cref="T:System.Object"/> instance holding the data to map.</param>
- <param name="value">The target reference to point to (it must be within <paramref name="instance"/>).</param>
- <param name="height">The height of the 2D memory area to map.</param>
- <param name="width">The width of the 2D memory area to map.</param>
- <param name="pitch">The pitch of the 2D memory area to map.</param>
- <returns>A <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> instance with the specified parameters.</returns>
- <remarks>The <paramref name="value"/> parameter is not validated, and it's responsibility of the caller to ensure it's valid.</remarks>
- <exception cref="T:System.ArgumentOutOfRangeException">
- Thrown when one of the input parameters is out of range.
- </exception>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.Empty">
- <summary>
- Gets an empty <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> instance.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.IsEmpty">
- <summary>
- Gets a value indicating whether the current <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> instance is empty.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.Length">
- <summary>
- Gets the length of the current <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> instance.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.Height">
- <summary>
- Gets the height of the underlying 2D memory area.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.Width">
- <summary>
- Gets the width of the underlying 2D memory area.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.Span">
- <summary>
- Gets a <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance from the current memory.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.Item(System.Range,System.Range)">
- <summary>
- Slices the current instance with the specified parameters.
- </summary>
- <param name="rows">The target range of rows to select.</param>
- <param name="columns">The target range of columns to select.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when either <paramref name="rows"/> or <paramref name="columns"/> are invalid.
- </exception>
- <returns>A new <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> instance representing a slice of the current one.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.Slice(System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Slices the current instance with the specified parameters.
- </summary>
- <param name="row">The target row to map within the current instance.</param>
- <param name="column">The target column to map within the current instance.</param>
- <param name="height">The height to map within the current instance.</param>
- <param name="width">The width to map within the current instance.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when either <paramref name="height"/>, <paramref name="width"/> or <paramref name="height"/>
- are negative or not within the bounds that are valid for the current instance.
- </exception>
- <returns>A new <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> instance representing a slice of the current one.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.CopyTo(System.Memory{`0})">
- <summary>
- Copies the contents of this <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> into a destination <see cref="T:System.Memory`1"/> instance.
- </summary>
- <param name="destination">The destination <see cref="T:System.Memory`1"/> instance.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when <paramref name="destination" /> is shorter than the source <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> instance.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.TryCopyTo(System.Memory{`0})">
- <summary>
- Attempts to copy the current <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> instance to a destination <see cref="T:System.Memory`1"/>.
- </summary>
- <param name="destination">The target <see cref="T:System.Memory`1"/> of the copy operation.</param>
- <returns>Whether or not the operation was successful.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.CopyTo(CommunityToolkit.HighPerformance.Memory2D{`0})">
- <summary>
- Copies the contents of this <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> into a destination <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> instance.
- For this API to succeed, the target <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> has to have the same shape as the current one.
- </summary>
- <param name="destination">The destination <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> instance.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when <paramref name="destination" /> is shorter than the source <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> instance.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.TryCopyTo(CommunityToolkit.HighPerformance.Memory2D{`0})">
- <summary>
- Attempts to copy the current <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> instance to a destination <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/>.
- For this API to succeed, the target <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> has to have the same shape as the current one.
- </summary>
- <param name="destination">The target <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> of the copy operation.</param>
- <returns>Whether or not the operation was successful.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.Pin">
- <summary>
- Creates a handle for the memory.
- The GC will not move the memory until the returned <see cref="T:System.Buffers.MemoryHandle"/>
- is disposed, enabling taking and using the memory's address.
- </summary>
- <exception cref="T:System.ArgumentException">
- An instance with nonprimitive (non-blittable) members cannot be pinned.
- </exception>
- <returns>A <see cref="T:System.Buffers.MemoryHandle"/> instance wrapping the pinned handle.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.TryGetMemory(System.ReadOnlyMemory{`0}@)">
- <summary>
- Tries to get a <see cref="T:System.ReadOnlyMemory`1"/> instance, if the underlying buffer is contiguous and small enough.
- </summary>
- <param name="memory">The resulting <see cref="T:System.ReadOnlyMemory`1"/>, in case of success.</param>
- <returns>Whether or not <paramref name="memory"/> was correctly assigned.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.ToArray">
- <summary>
- Copies the contents of the current <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> instance into a new 2D array.
- </summary>
- <returns>A 2D array containing the data in the current <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> instance.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.Equals(System.Object)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.Equals(CommunityToolkit.HighPerformance.ReadOnlyMemory2D{`0})">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.GetHashCode">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.ToString">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.op_Implicit(`0[0:,0:])~CommunityToolkit.HighPerformance.ReadOnlyMemory2D{`0}">
- <summary>
- Defines an implicit conversion of an array to a <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/>
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1.op_Implicit(CommunityToolkit.HighPerformance.Memory2D{`0})~CommunityToolkit.HighPerformance.ReadOnlyMemory2D{`0}">
- <summary>
- Defines an implicit conversion of a <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> to a <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/>
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1">
- <summary>
- A readonly version of <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/>.
- </summary>
- <typeparam name="T">The type of items in the current <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance.</typeparam>
- <inheritdoc cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.span">
- <summary>
- The <see cref="T:System.ReadOnlySpan`1"/> instance pointing to the first item in the target memory area.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.width">
- <summary>
- The width of the specified 2D region.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.stride">
- <summary>
- The stride of the specified 2D region.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.#ctor(`0@,System.Int32,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> struct with the specified parameters.
- </summary>
- <param name="value">The reference to the first <typeparamref name="T"/> item to map.</param>
- <param name="height">The height of the 2D memory area to map.</param>
- <param name="width">The width of the 2D memory area to map.</param>
- <param name="pitch">The pitch of the 2D memory area to map (the distance between each row).</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.#ctor(System.Void*,System.Int32,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> struct with the specified parameters.
- </summary>
- <param name="pointer">The pointer to the first <typeparamref name="T"/> item to map.</param>
- <param name="height">The height of the 2D memory area to map.</param>
- <param name="width">The width of the 2D memory area to map.</param>
- <param name="pitch">The pitch of the 2D memory area to map (the distance between each row).</param>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when one of the parameters are negative.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.#ctor(`0[],System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> struct.
- </summary>
- <param name="array">The target array to wrap.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when either <paramref name="height"/> or <paramref name="width"/> are invalid.
- </exception>
- <remarks>The total area must match the length of <paramref name="array"/>.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.#ctor(`0[],System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> struct.
- </summary>
- <param name="array">The target array to wrap.</param>
- <param name="offset">The initial offset within <paramref name="array"/>.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <param name="pitch">The pitch in the resulting 2D area.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">
- Thrown when one of the input parameters is out of range.
- </exception>
- <exception cref="T:System.ArgumentException">
- Thrown when the requested area is outside of bounds for <paramref name="array"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.#ctor(`0[0:,0:])">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> struct wrapping a 2D array.
- </summary>
- <param name="array">The given 2D array to wrap.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.#ctor(`0[0:,0:],System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> struct wrapping a 2D array.
- </summary>
- <param name="array">The given 2D array to wrap.</param>
- <param name="row">The target row to map within <paramref name="array"/>.</param>
- <param name="column">The target column to map within <paramref name="array"/>.</param>
- <param name="height">The height to map within <paramref name="array"/>.</param>
- <param name="width">The width to map within <paramref name="array"/>.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">
- Thrown when either <paramref name="height"/>, <paramref name="width"/> or <paramref name="height"/>
- are negative or not within the bounds that are valid for <paramref name="array"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.#ctor(`0[0:,0:,0:],System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> struct wrapping a layer in a 3D array.
- </summary>
- <param name="array">The given 3D array to wrap.</param>
- <param name="depth">The target layer to map within <paramref name="array"/>.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when a parameter is invalid.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.#ctor(`0[0:,0:,0:],System.Int32,System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> struct wrapping a layer in a 3D array.
- </summary>
- <param name="array">The given 3D array to wrap.</param>
- <param name="depth">The target layer to map within <paramref name="array"/>.</param>
- <param name="row">The target row to map within <paramref name="array"/>.</param>
- <param name="column">The target column to map within <paramref name="array"/>.</param>
- <param name="height">The height to map within <paramref name="array"/>.</param>
- <param name="width">The width to map within <paramref name="array"/>.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when a parameter is invalid.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.#ctor(System.ReadOnlySpan{`0},System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> struct.
- </summary>
- <param name="span">The target <see cref="T:System.ReadOnlySpan`1"/> to wrap.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when either <paramref name="height"/> or <paramref name="width"/> are invalid.
- </exception>
- <remarks>The total area must match the length of <paramref name="span"/>.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.#ctor(System.ReadOnlySpan{`0},System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> struct.
- </summary>
- <param name="span">The target <see cref="T:System.ReadOnlySpan`1"/> to wrap.</param>
- <param name="offset">The initial offset within <paramref name="span"/>.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <param name="pitch">The pitch in the resulting 2D area.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">
- Thrown when one of the input parameters is out of range.
- </exception>
- <exception cref="T:System.ArgumentException">
- Thrown when the requested area is outside of bounds for <paramref name="span"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.DangerousCreate(`0@,System.Int32,System.Int32,System.Int32)">
- <summary>
- Creates a new instance of the <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> struct with the specified parameters.
- </summary>
- <param name="value">The reference to the first <typeparamref name="T"/> item to map.</param>
- <param name="height">The height of the 2D memory area to map.</param>
- <param name="width">The width of the 2D memory area to map.</param>
- <param name="pitch">The pitch of the 2D memory area to map (the distance between each row).</param>
- <returns>A <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance with the specified parameters.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when one of the parameters are negative.</exception>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.Empty">
- <summary>
- Gets an empty <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.IsEmpty">
- <summary>
- Gets a value indicating whether the current <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance is empty.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.Length">
- <summary>
- Gets the length of the current <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.Height">
- <summary>
- Gets the height of the underlying 2D memory area.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.Width">
- <summary>
- Gets the width of the underlying 2D memory area.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.Item(System.Int32,System.Int32)">
- <summary>
- Gets the element at the specified zero-based indices.
- </summary>
- <param name="row">The target row to get the element from.</param>
- <param name="column">The target column to get the element from.</param>
- <returns>A reference to the element at the specified indices.</returns>
- <exception cref="T:System.IndexOutOfRangeException">
- Thrown when either <paramref name="row"/> or <paramref name="column"/> are invalid.
- </exception>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.Item(System.Index,System.Index)">
- <summary>
- Gets the element at the specified zero-based indices.
- </summary>
- <param name="row">The target row to get the element from.</param>
- <param name="column">The target column to get the element from.</param>
- <returns>A reference to the element at the specified indices.</returns>
- <exception cref="T:System.IndexOutOfRangeException">
- Thrown when either <paramref name="row"/> or <paramref name="column"/> are invalid.
- </exception>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.Item(System.Range,System.Range)">
- <summary>
- Slices the current instance with the specified parameters.
- </summary>
- <param name="rows">The target range of rows to select.</param>
- <param name="columns">The target range of columns to select.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when either <paramref name="rows"/> or <paramref name="columns"/> are invalid.
- </exception>
- <returns>A new <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance representing a slice of the current one.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.CopyTo(System.Span{`0})">
- <summary>
- Copies the contents of this <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> into a destination <see cref="T:System.Span`1"/> instance.
- </summary>
- <param name="destination">The destination <see cref="T:System.Span`1"/> instance.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when <paramref name="destination" /> is shorter than the source <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.CopyTo(CommunityToolkit.HighPerformance.Span2D{`0})">
- <summary>
- Copies the contents of this <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> into a destination <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance.
- For this API to succeed, the target <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> has to have the same shape as the current one.
- </summary>
- <param name="destination">The destination <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when <paramref name="destination" /> does not have the same shape as the source <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.TryCopyTo(System.Span{`0})">
- <summary>
- Attempts to copy the current <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance to a destination <see cref="T:System.Span`1"/>.
- </summary>
- <param name="destination">The target <see cref="T:System.Span`1"/> of the copy operation.</param>
- <returns>Whether or not the operation was successful.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.TryCopyTo(CommunityToolkit.HighPerformance.Span2D{`0})">
- <summary>
- Attempts to copy the current <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance to a destination <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/>.
- </summary>
- <param name="destination">The target <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> of the copy operation.</param>
- <returns>Whether or not the operation was successful.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.GetPinnableReference">
- <summary>
- Returns a reference to the 0th element of the <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance. If the current
- instance is empty, returns a <see langword="null"/> reference. It can be used for pinning
- and is required to support the use of span within a fixed statement.
- </summary>
- <returns>A reference to the 0th element, or a <see langword="null"/> reference.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.DangerousGetReference">
- <summary>
- Returns a reference to the first element within the current instance, with no bounds check.
- </summary>
- <returns>A reference to the first element within the current instance.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.DangerousGetReferenceAt(System.Int32,System.Int32)">
- <summary>
- Returns a reference to a specified element within the current instance, with no bounds check.
- </summary>
- <param name="i">The target row to get the element from.</param>
- <param name="j">The target column to get the element from.</param>
- <returns>A reference to the element at the specified indices.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.Slice(System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Slices the current instance with the specified parameters.
- </summary>
- <param name="row">The target row to map within the current instance.</param>
- <param name="column">The target column to map within the current instance.</param>
- <param name="height">The height to map within the current instance.</param>
- <param name="width">The width to map within the current instance.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when either <paramref name="height"/>, <paramref name="width"/> or <paramref name="height"/>
- are negative or not within the bounds that are valid for the current instance.
- </exception>
- <returns>A new <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance representing a slice of the current one.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.GetRowSpan(System.Int32)">
- <summary>
- Gets a <see cref="T:System.ReadOnlySpan`1"/> for a specified row.
- </summary>
- <param name="row">The index of the target row to retrieve.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">Throw when <paramref name="row"/> is out of range.</exception>
- <returns>The resulting row <see cref="T:System.ReadOnlySpan`1"/>.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.TryGetSpan(System.ReadOnlySpan{`0}@)">
- <summary>
- Tries to get a <see cref="T:System.ReadOnlySpan`1"/> instance, if the underlying buffer is contiguous and small enough.
- </summary>
- <param name="span">The resulting <see cref="T:System.ReadOnlySpan`1"/>, in case of success.</param>
- <returns>Whether or not <paramref name="span"/> was correctly assigned.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.ToArray">
- <summary>
- Copies the contents of the current <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance into a new 2D array.
- </summary>
- <returns>A 2D array containing the data in the current <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.Equals(System.Object)">
- <inheritdoc cref="M:System.ReadOnlySpan`1.Equals(System.Object)"/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.GetHashCode">
- <inheritdoc cref="M:System.ReadOnlySpan`1.GetHashCode"/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.ToString">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.op_Equality(CommunityToolkit.HighPerformance.ReadOnlySpan2D{`0},CommunityToolkit.HighPerformance.ReadOnlySpan2D{`0})">
- <summary>
- Checks whether two <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instances are equal.
- </summary>
- <param name="left">The first <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance to compare.</param>
- <param name="right">The second <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance to compare.</param>
- <returns>Whether or not <paramref name="left"/> and <paramref name="right"/> are equal.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.op_Inequality(CommunityToolkit.HighPerformance.ReadOnlySpan2D{`0},CommunityToolkit.HighPerformance.ReadOnlySpan2D{`0})">
- <summary>
- Checks whether two <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instances are not equal.
- </summary>
- <param name="left">The first <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance to compare.</param>
- <param name="right">The second <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance to compare.</param>
- <returns>Whether or not <paramref name="left"/> and <paramref name="right"/> are not equal.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.op_Implicit(`0[0:,0:])~CommunityToolkit.HighPerformance.ReadOnlySpan2D{`0}">
- <summary>
- Implicily converts a given 2D array into a <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance.
- </summary>
- <param name="array">The input 2D array to convert.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.op_Implicit(CommunityToolkit.HighPerformance.Span2D{`0})~CommunityToolkit.HighPerformance.ReadOnlySpan2D{`0}">
- <summary>
- Implicily converts a given <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> into a <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance.
- </summary>
- <param name="span">The input <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> to convert.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.GetRow(System.Int32)">
- <summary>
- Gets an enumerable that traverses items in a specified row.
- </summary>
- <param name="row">The target row to enumerate within the current <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance.</param>
- <returns>A <see cref="T:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1"/> with target items to enumerate.</returns>
- <remarks>The returned <see cref="T:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1"/> value shouldn't be used directly: use this extension in a <see langword="foreach"/> loop.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.GetColumn(System.Int32)">
- <summary>
- Gets an enumerable that traverses items in a specified column.
- </summary>
- <param name="column">The target column to enumerate within the current <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance.</param>
- <returns>A <see cref="T:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1"/> with target items to enumerate.</returns>
- <remarks>The returned <see cref="T:CommunityToolkit.HighPerformance.Enumerables.ReadOnlyRefEnumerable`1"/> value shouldn't be used directly: use this extension in a <see langword="foreach"/> loop.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.GetEnumerator">
- <summary>
- Returns an enumerator for the current <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance.
- </summary>
- <returns>
- An enumerator that can be used to traverse the items in the current <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance
- </returns>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.Enumerator">
- <summary>
- Provides an enumerator for the elements of a <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.Enumerator.span">
- <summary>
- The <see cref="T:System.ReadOnlySpan`1"/> instance pointing to the first item in the target memory area.
- </summary>
- <remarks>Just like in <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/>, the length is the height of the 2D region.</remarks>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.Enumerator.width">
- <summary>
- The width of the specified 2D region.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.Enumerator.stride">
- <summary>
- The stride of the specified 2D region.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.Enumerator.x">
- <summary>
- The current horizontal offset.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.Enumerator.y">
- <summary>
- The current vertical offset.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.Enumerator.#ctor(CommunityToolkit.HighPerformance.ReadOnlySpan2D{`0})">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.Enumerator"/> struct.
- </summary>
- <param name="span">The target <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance to enumerate.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.Enumerator.MoveNext">
- <summary>
- Implements the duck-typed <see cref="M:System.Collections.IEnumerator.MoveNext"/> method.
- </summary>
- <returns><see langword="true"/> whether a new element is available, <see langword="false"/> otherwise</returns>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1.Enumerator.Current">
- <summary>
- Gets the duck-typed <see cref="P:System.Collections.Generic.IEnumerator`1.Current"/> property.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Span2D`1">
- <summary>
- <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> represents a 2D region of arbitrary memory. Like the <see cref="T:System.Span`1"/> type,
- it can point to either managed or native memory, or to memory allocated on the stack. It is type- and memory-safe.
- One key difference with <see cref="T:System.Span`1"/> and arrays is that the underlying buffer for a <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/>
- instance might not be contiguous in memory: this is supported to enable mapping arbitrary 2D regions even if they
- require padding between boundaries of sequential rows. All this logic is handled internally by the <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/>
- type and it is transparent to the user, but note that working over discontiguous buffers has a performance impact.
- </summary>
- <typeparam name="T">The type of items in the current <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance.</typeparam>
- <inheritdoc cref="T:CommunityToolkit.HighPerformance.Span2D`1"/>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Span2D`1.span">
- <summary>
- The <see cref="T:System.Span`1"/> instance pointing to the first item in the target memory area.
- </summary>
- <remarks>
- The <see cref="P:System.Span`1.Length"/> field maps to the height of the 2D region.
- This is done to save 4 bytes in the layout of the <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> type.
- </remarks>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Span2D`1.width">
- <summary>
- The width of the specified 2D region.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Span2D`1.Stride">
- <summary>
- The stride of the specified 2D region.
- </summary>
- <remarks>
- This combines both the width and pitch in a single value so that the indexing
- logic can be simplified (no need to recompute the sum every time) and be faster.
- </remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.#ctor(`0@,System.Int32,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> struct with the specified parameters.
- </summary>
- <param name="value">The reference to the first <typeparamref name="T"/> item to map.</param>
- <param name="height">The height of the 2D memory area to map.</param>
- <param name="width">The width of the 2D memory area to map.</param>
- <param name="pitch">The pitch of the 2D memory area to map (the distance between each row).</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.#ctor(System.Void*,System.Int32,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> struct with the specified parameters.
- </summary>
- <param name="pointer">The pointer to the first <typeparamref name="T"/> item to map.</param>
- <param name="height">The height of the 2D memory area to map.</param>
- <param name="width">The width of the 2D memory area to map.</param>
- <param name="pitch">The pitch of the 2D memory area to map (the distance between each row).</param>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when one of the parameters are negative.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.#ctor(`0[],System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> struct.
- </summary>
- <param name="array">The target array to wrap.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <exception cref="T:System.ArrayTypeMismatchException">
- Thrown when <paramref name="array"/> doesn't match <typeparamref name="T"/>.
- </exception>
- <exception cref="T:System.ArgumentException">
- Thrown when either <paramref name="height"/> or <paramref name="width"/> are invalid.
- </exception>
- <remarks>The total area must match the length of <paramref name="array"/>.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.#ctor(`0[],System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> struct.
- </summary>
- <param name="array">The target array to wrap.</param>
- <param name="offset">The initial offset within <paramref name="array"/>.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <param name="pitch">The pitch in the resulting 2D area.</param>
- <exception cref="T:System.ArrayTypeMismatchException">
- Thrown when <paramref name="array"/> doesn't match <typeparamref name="T"/>.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- Thrown when one of the input parameters is out of range.
- </exception>
- <exception cref="T:System.ArgumentException">
- Thrown when the requested area is outside of bounds for <paramref name="array"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.#ctor(`0[0:,0:])">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> struct wrapping a 2D array.
- </summary>
- <param name="array">The given 2D array to wrap.</param>
- <exception cref="T:System.ArrayTypeMismatchException">
- Thrown when <paramref name="array"/> doesn't match <typeparamref name="T"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.#ctor(`0[0:,0:],System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> struct wrapping a 2D array.
- </summary>
- <param name="array">The given 2D array to wrap.</param>
- <param name="row">The target row to map within <paramref name="array"/>.</param>
- <param name="column">The target column to map within <paramref name="array"/>.</param>
- <param name="height">The height to map within <paramref name="array"/>.</param>
- <param name="width">The width to map within <paramref name="array"/>.</param>
- <exception cref="T:System.ArrayTypeMismatchException">
- Thrown when <paramref name="array"/> doesn't match <typeparamref name="T"/>.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">
- Thrown when either <paramref name="height"/>, <paramref name="width"/> or <paramref name="height"/>
- are negative or not within the bounds that are valid for <paramref name="array"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.#ctor(`0[0:,0:,0:],System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> struct wrapping a layer in a 3D array.
- </summary>
- <param name="array">The given 3D array to wrap.</param>
- <param name="depth">The target layer to map within <paramref name="array"/>.</param>
- <exception cref="T:System.ArrayTypeMismatchException">
- Thrown when <paramref name="array"/> doesn't match <typeparamref name="T"/>.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when a parameter is invalid.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.#ctor(`0[0:,0:,0:],System.Int32,System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> struct wrapping a layer in a 3D array.
- </summary>
- <param name="array">The given 3D array to wrap.</param>
- <param name="depth">The target layer to map within <paramref name="array"/>.</param>
- <param name="row">The target row to map within <paramref name="array"/>.</param>
- <param name="column">The target column to map within <paramref name="array"/>.</param>
- <param name="height">The height to map within <paramref name="array"/>.</param>
- <param name="width">The width to map within <paramref name="array"/>.</param>
- <exception cref="T:System.ArrayTypeMismatchException">
- Thrown when <paramref name="array"/> doesn't match <typeparamref name="T"/>.
- </exception>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when a parameter is invalid.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.#ctor(System.Span{`0},System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> struct.
- </summary>
- <param name="span">The target <see cref="T:System.Span`1"/> to wrap.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when either <paramref name="height"/> or <paramref name="width"/> are invalid.
- </exception>
- <remarks>The total area must match the length of <paramref name="span"/>.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.#ctor(System.Span{`0},System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> struct.
- </summary>
- <param name="span">The target <see cref="T:System.Span`1"/> to wrap.</param>
- <param name="offset">The initial offset within <paramref name="span"/>.</param>
- <param name="height">The height of the resulting 2D area.</param>
- <param name="width">The width of each row in the resulting 2D area.</param>
- <param name="pitch">The pitch in the resulting 2D area.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">
- Thrown when one of the input parameters is out of range.
- </exception>
- <exception cref="T:System.ArgumentException">
- Thrown when the requested area is outside of bounds for <paramref name="span"/>.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.DangerousCreate(`0@,System.Int32,System.Int32,System.Int32)">
- <summary>
- Creates a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> struct with the specified parameters.
- </summary>
- <param name="value">The reference to the first <typeparamref name="T"/> item to map.</param>
- <param name="height">The height of the 2D memory area to map.</param>
- <param name="width">The width of the 2D memory area to map.</param>
- <param name="pitch">The pitch of the 2D memory area to map (the distance between each row).</param>
- <returns>A <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance with the specified parameters.</returns>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when one of the parameters are negative.</exception>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Span2D`1.Empty">
- <summary>
- Gets an empty <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Span2D`1.IsEmpty">
- <summary>
- Gets a value indicating whether the current <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance is empty.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Span2D`1.Length">
- <summary>
- Gets the length of the current <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Span2D`1.Height">
- <summary>
- Gets the height of the underlying 2D memory area.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Span2D`1.Width">
- <summary>
- Gets the width of the underlying 2D memory area.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Span2D`1.Item(System.Int32,System.Int32)">
- <summary>
- Gets the element at the specified zero-based indices.
- </summary>
- <param name="row">The target row to get the element from.</param>
- <param name="column">The target column to get the element from.</param>
- <returns>A reference to the element at the specified indices.</returns>
- <exception cref="T:System.IndexOutOfRangeException">
- Thrown when either <paramref name="row"/> or <paramref name="column"/> are invalid.
- </exception>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Span2D`1.Item(System.Index,System.Index)">
- <summary>
- Gets the element at the specified zero-based indices.
- </summary>
- <param name="row">The target row to get the element from.</param>
- <param name="column">The target column to get the element from.</param>
- <returns>A reference to the element at the specified indices.</returns>
- <exception cref="T:System.IndexOutOfRangeException">
- Thrown when either <paramref name="row"/> or <paramref name="column"/> are invalid.
- </exception>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Span2D`1.Item(System.Range,System.Range)">
- <summary>
- Slices the current instance with the specified parameters.
- </summary>
- <param name="rows">The target range of rows to select.</param>
- <param name="columns">The target range of columns to select.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when either <paramref name="rows"/> or <paramref name="columns"/> are invalid.
- </exception>
- <returns>A new <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance representing a slice of the current one.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.Clear">
- <summary>
- Clears the contents of the current <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.CopyTo(System.Span{`0})">
- <summary>
- Copies the contents of this <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> into a destination <see cref="T:System.Span`1"/> instance.
- </summary>
- <param name="destination">The destination <see cref="T:System.Span`1"/> instance.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when <paramref name="destination" /> is shorter than the source <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.CopyTo(CommunityToolkit.HighPerformance.Span2D{`0})">
- <summary>
- Copies the contents of this <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> into a destination <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance.
- For this API to succeed, the target <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> has to have the same shape as the current one.
- </summary>
- <param name="destination">The destination <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when <paramref name="destination" /> does not have the same shape as the source <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance.
- </exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.TryCopyTo(System.Span{`0})">
- <summary>
- Attempts to copy the current <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance to a destination <see cref="T:System.Span`1"/>.
- </summary>
- <param name="destination">The target <see cref="T:System.Span`1"/> of the copy operation.</param>
- <returns>Whether or not the operation was successful.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.TryCopyTo(CommunityToolkit.HighPerformance.Span2D{`0})">
- <summary>
- Attempts to copy the current <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance to a destination <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/>.
- </summary>
- <param name="destination">The target <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> of the copy operation.</param>
- <returns>Whether or not the operation was successful.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.Fill(`0)">
- <summary>
- Fills the elements of this span with a specified value.
- </summary>
- <param name="value">The value to assign to each element of the <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.GetPinnableReference">
- <summary>
- Returns a reference to the 0th element of the <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance. If the current
- instance is empty, returns a <see langword="null"/> reference. It can be used for pinning
- and is required to support the use of span within a fixed statement.
- </summary>
- <returns>A reference to the 0th element, or a <see langword="null"/> reference.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.DangerousGetReference">
- <summary>
- Returns a reference to the first element within the current instance, with no bounds check.
- </summary>
- <returns>A reference to the first element within the current instance.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.DangerousGetReferenceAt(System.Int32,System.Int32)">
- <summary>
- Returns a reference to a specified element within the current instance, with no bounds check.
- </summary>
- <param name="i">The target row to get the element from.</param>
- <param name="j">The target column to get the element from.</param>
- <returns>A reference to the element at the specified indices.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.Slice(System.Int32,System.Int32,System.Int32,System.Int32)">
- <summary>
- Slices the current instance with the specified parameters.
- </summary>
- <param name="row">The target row to map within the current instance.</param>
- <param name="column">The target column to map within the current instance.</param>
- <param name="height">The height to map within the current instance.</param>
- <param name="width">The width to map within the current instance.</param>
- <exception cref="T:System.ArgumentException">
- Thrown when either <paramref name="height"/>, <paramref name="width"/> or <paramref name="height"/>
- are negative or not within the bounds that are valid for the current instance.
- </exception>
- <returns>A new <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance representing a slice of the current one.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.GetRowSpan(System.Int32)">
- <summary>
- Gets a <see cref="T:System.Span`1"/> for a specified row.
- </summary>
- <param name="row">The index of the target row to retrieve.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">Throw when <paramref name="row"/> is out of range.</exception>
- <returns>The resulting row <see cref="T:System.Span`1"/>.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.TryGetSpan(System.Span{`0}@)">
- <summary>
- Tries to get a <see cref="T:System.Span`1"/> instance, if the underlying buffer is contiguous and small enough.
- </summary>
- <param name="span">The resulting <see cref="T:System.Span`1"/>, in case of success.</param>
- <returns>Whether or not <paramref name="span"/> was correctly assigned.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.ToArray">
- <summary>
- Copies the contents of the current <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance into a new 2D array.
- </summary>
- <returns>A 2D array containing the data in the current <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.Equals(System.Object)">
- <inheritdoc cref="M:System.Span`1.Equals(System.Object)"/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.GetHashCode">
- <inheritdoc cref="M:System.Span`1.GetHashCode"/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.ToString">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.op_Equality(CommunityToolkit.HighPerformance.Span2D{`0},CommunityToolkit.HighPerformance.Span2D{`0})">
- <summary>
- Checks whether two <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instances are equal.
- </summary>
- <param name="left">The first <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance to compare.</param>
- <param name="right">The second <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance to compare.</param>
- <returns>Whether or not <paramref name="left"/> and <paramref name="right"/> are equal.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.op_Inequality(CommunityToolkit.HighPerformance.Span2D{`0},CommunityToolkit.HighPerformance.Span2D{`0})">
- <summary>
- Checks whether two <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instances are not equal.
- </summary>
- <param name="left">The first <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance to compare.</param>
- <param name="right">The second <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance to compare.</param>
- <returns>Whether or not <paramref name="left"/> and <paramref name="right"/> are not equal.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.op_Implicit(`0[0:,0:])~CommunityToolkit.HighPerformance.Span2D{`0}">
- <summary>
- Implicily converts a given 2D array into a <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance.
- </summary>
- <param name="array">The input 2D array to convert.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.GetRow(System.Int32)">
- <summary>
- Gets an enumerable that traverses items in a specified row.
- </summary>
- <param name="row">The target row to enumerate within the current <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance.</param>
- <returns>A <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> with target items to enumerate.</returns>
- <remarks>The returned <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> value shouldn't be used directly: use this extension in a <see langword="foreach"/> loop.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.GetColumn(System.Int32)">
- <summary>
- Gets an enumerable that traverses items in a specified column.
- </summary>
- <param name="column">The target column to enumerate within the current <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance.</param>
- <returns>A <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> with target items to enumerate.</returns>
- <remarks>The returned <see cref="T:CommunityToolkit.HighPerformance.Enumerables.RefEnumerable`1"/> value shouldn't be used directly: use this extension in a <see langword="foreach"/> loop.</remarks>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.GetEnumerator">
- <summary>
- Returns an enumerator for the current <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance.
- </summary>
- <returns>
- An enumerator that can be used to traverse the items in the current <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance
- </returns>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Span2D`1.Enumerator">
- <summary>
- Provides an enumerator for the elements of a <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Span2D`1.Enumerator.span">
- <summary>
- The <see cref="T:System.Span`1"/> instance pointing to the first item in the target memory area.
- </summary>
- <remarks>Just like in <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/>, the length is the height of the 2D region.</remarks>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Span2D`1.Enumerator.width">
- <summary>
- The width of the specified 2D region.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Span2D`1.Enumerator.stride">
- <summary>
- The stride of the specified 2D region.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Span2D`1.Enumerator.x">
- <summary>
- The current horizontal offset.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Span2D`1.Enumerator.y">
- <summary>
- The current vertical offset.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.Enumerator.#ctor(CommunityToolkit.HighPerformance.Span2D{`0})">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Span2D`1.Enumerator"/> struct.
- </summary>
- <param name="span">The target <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance to enumerate.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Span2D`1.Enumerator.MoveNext">
- <summary>
- Implements the duck-typed <see cref="M:System.Collections.IEnumerator.MoveNext"/> method.
- </summary>
- <returns><see langword="true"/> whether a new element is available, <see langword="false"/> otherwise</returns>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Span2D`1.Enumerator.Current">
- <summary>
- Gets the duck-typed <see cref="P:System.Collections.Generic.IEnumerator`1.Current"/> property.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.NullableReadOnlyRef`1">
- <summary>
- A <see langword="struct"/> that can store an optional readonly reference to a value of a specified type.
- </summary>
- <typeparam name="T">The type of value to reference.</typeparam>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.NullableReadOnlyRef`1.span">
- <summary>
- The 1-length <see cref="T:System.ReadOnlySpan`1"/> instance used to track the target <typeparamref name="T"/> value.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.NullableReadOnlyRef`1.#ctor(`0@)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.NullableReadOnlyRef`1"/> struct.
- </summary>
- <param name="value">The readonly reference to the target <typeparamref name="T"/> value.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.NullableReadOnlyRef`1.#ctor(System.ReadOnlySpan{`0})">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.NullableReadOnlyRef`1"/> struct.
- </summary>
- <param name="span">The <see cref="T:System.ReadOnlySpan`1"/> instance to track the target <typeparamref name="T"/> reference.</param>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.NullableReadOnlyRef`1.Null">
- <summary>
- Gets a <see cref="T:CommunityToolkit.HighPerformance.NullableReadOnlyRef`1"/> instance representing a <see langword="null"/> reference.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.NullableReadOnlyRef`1.HasValue">
- <summary>
- Gets a value indicating whether or not the current <see cref="T:CommunityToolkit.HighPerformance.NullableReadOnlyRef`1"/> instance wraps a valid reference that can be accessed.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.NullableReadOnlyRef`1.Value">
- <summary>
- Gets the <typeparamref name="T"/> reference represented by the current <see cref="T:CommunityToolkit.HighPerformance.NullableReadOnlyRef`1"/> instance.
- </summary>
- <exception cref="T:System.InvalidOperationException">Thrown if <see cref="P:CommunityToolkit.HighPerformance.NullableReadOnlyRef`1.HasValue"/> is <see langword="false"/>.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.NullableReadOnlyRef`1.op_Implicit(CommunityToolkit.HighPerformance.Ref{`0})~CommunityToolkit.HighPerformance.NullableReadOnlyRef{`0}">
- <summary>
- Implicitly converts a <see cref="T:CommunityToolkit.HighPerformance.Ref`1"/> instance into a <see cref="T:CommunityToolkit.HighPerformance.NullableReadOnlyRef`1"/> one.
- </summary>
- <param name="reference">The input <see cref="T:CommunityToolkit.HighPerformance.Ref`1"/> instance.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.NullableReadOnlyRef`1.op_Implicit(CommunityToolkit.HighPerformance.ReadOnlyRef{`0})~CommunityToolkit.HighPerformance.NullableReadOnlyRef{`0}">
- <summary>
- Implicitly converts a <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyRef`1"/> instance into a <see cref="T:CommunityToolkit.HighPerformance.NullableReadOnlyRef`1"/> one.
- </summary>
- <param name="reference">The input <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyRef`1"/> instance.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.NullableReadOnlyRef`1.op_Implicit(CommunityToolkit.HighPerformance.NullableRef{`0})~CommunityToolkit.HighPerformance.NullableReadOnlyRef{`0}">
- <summary>
- Implicitly converts a <see cref="T:CommunityToolkit.HighPerformance.NullableRef`1"/> instance into a <see cref="T:CommunityToolkit.HighPerformance.NullableReadOnlyRef`1"/> one.
- </summary>
- <param name="reference">The input <see cref="T:CommunityToolkit.HighPerformance.Ref`1"/> instance.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.NullableReadOnlyRef`1.op_Explicit(CommunityToolkit.HighPerformance.NullableReadOnlyRef{`0})~`0">
- <summary>
- Explicitly gets the <typeparamref name="T"/> value from a given <see cref="T:CommunityToolkit.HighPerformance.NullableReadOnlyRef`1"/> instance.
- </summary>
- <param name="reference">The input <see cref="T:CommunityToolkit.HighPerformance.NullableReadOnlyRef`1"/> instance.</param>
- <exception cref="T:System.InvalidOperationException">Thrown if <see cref="P:CommunityToolkit.HighPerformance.NullableReadOnlyRef`1.HasValue"/> is <see langword="false"/>.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.NullableReadOnlyRef`1.ThrowInvalidOperationException">
- <summary>
- Throws a <see cref="T:System.InvalidOperationException"/> when trying to access <see cref="P:CommunityToolkit.HighPerformance.NullableReadOnlyRef`1.Value"/> for a default instance.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.NullableRef`1">
- <summary>
- A <see langword="struct"/> that can store an optional reference to a value of a specified type.
- </summary>
- <typeparam name="T">The type of value to reference.</typeparam>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.NullableRef`1.Span">
- <summary>
- The 1-length <see cref="T:System.Span`1"/> instance used to track the target <typeparamref name="T"/> value.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.NullableRef`1.#ctor(`0@)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.NullableRef`1"/> struct.
- </summary>
- <param name="value">The reference to the target <typeparamref name="T"/> value.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.NullableRef`1.#ctor(System.Span{`0})">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.NullableRef`1"/> struct.
- </summary>
- <param name="span">The <see cref="T:System.Span`1"/> instance to track the target <typeparamref name="T"/> reference.</param>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.NullableRef`1.Null">
- <summary>
- Gets a <see cref="T:CommunityToolkit.HighPerformance.NullableRef`1"/> instance representing a <see langword="null"/> reference.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.NullableRef`1.HasValue">
- <summary>
- Gets a value indicating whether or not the current <see cref="T:CommunityToolkit.HighPerformance.NullableRef`1"/> instance wraps a valid reference that can be accessed.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.NullableRef`1.Value">
- <summary>
- Gets the <typeparamref name="T"/> reference represented by the current <see cref="T:CommunityToolkit.HighPerformance.NullableRef`1"/> instance.
- </summary>
- <exception cref="T:System.InvalidOperationException">Thrown if <see cref="P:CommunityToolkit.HighPerformance.NullableRef`1.HasValue"/> is <see langword="false"/>.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.NullableRef`1.op_Implicit(CommunityToolkit.HighPerformance.Ref{`0})~CommunityToolkit.HighPerformance.NullableRef{`0}">
- <summary>
- Implicitly converts a <see cref="T:CommunityToolkit.HighPerformance.Ref`1"/> instance into a <see cref="T:CommunityToolkit.HighPerformance.NullableRef`1"/> one.
- </summary>
- <param name="reference">The input <see cref="T:CommunityToolkit.HighPerformance.Ref`1"/> instance.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.NullableRef`1.op_Explicit(CommunityToolkit.HighPerformance.NullableRef{`0})~`0">
- <summary>
- Explicitly gets the <typeparamref name="T"/> value from a given <see cref="T:CommunityToolkit.HighPerformance.NullableRef`1"/> instance.
- </summary>
- <param name="reference">The input <see cref="T:CommunityToolkit.HighPerformance.NullableRef`1"/> instance.</param>
- <exception cref="T:System.InvalidOperationException">Thrown if <see cref="P:CommunityToolkit.HighPerformance.NullableRef`1.HasValue"/> is <see langword="false"/>.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.NullableRef`1.ThrowInvalidOperationException">
- <summary>
- Throws a <see cref="T:System.InvalidOperationException"/> when trying to access <see cref="P:CommunityToolkit.HighPerformance.NullableRef`1.Value"/> for a default instance.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.ReadOnlyRef`1">
- <summary>
- A <see langword="struct"/> that can store a readonly reference to a value of a specified type.
- </summary>
- <typeparam name="T">The type of value to reference.</typeparam>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.ReadOnlyRef`1.Span">
- <summary>
- The 1-length <see cref="T:System.ReadOnlySpan`1"/> instance used to track the target <typeparamref name="T"/> value.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyRef`1.#ctor(`0@)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyRef`1"/> struct.
- </summary>
- <param name="value">The readonly reference to the target <typeparamref name="T"/> value.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyRef`1.#ctor(System.Void*)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyRef`1"/> struct.
- </summary>
- <param name="pointer">The pointer to the target value.</param>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.ReadOnlyRef`1.Value">
- <summary>
- Gets the readonly <typeparamref name="T"/> reference represented by the current <see cref="T:CommunityToolkit.HighPerformance.Ref`1"/> instance.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyRef`1.op_Implicit(CommunityToolkit.HighPerformance.Ref{`0})~CommunityToolkit.HighPerformance.ReadOnlyRef{`0}">
- <summary>
- Implicitly converts a <see cref="T:CommunityToolkit.HighPerformance.Ref`1"/> instance into a <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyRef`1"/> one.
- </summary>
- <param name="reference">The input <see cref="T:CommunityToolkit.HighPerformance.Ref`1"/> instance.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.ReadOnlyRef`1.op_Implicit(CommunityToolkit.HighPerformance.ReadOnlyRef{`0})~`0">
- <summary>
- Implicitly gets the <typeparamref name="T"/> value from a given <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyRef`1"/> instance.
- </summary>
- <param name="reference">The input <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyRef`1"/> instance.</param>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Ref`1">
- <summary>
- A <see langword="struct"/> that can store a reference to a value of a specified type.
- </summary>
- <typeparam name="T">The type of value to reference.</typeparam>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Ref`1.Span">
- <summary>
- The 1-length <see cref="T:System.Span`1"/> instance used to track the target <typeparamref name="T"/> value.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Ref`1.#ctor(`0@)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Ref`1"/> struct.
- </summary>
- <param name="value">The reference to the target <typeparamref name="T"/> value.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Ref`1.#ctor(System.Void*)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Ref`1"/> struct.
- </summary>
- <param name="pointer">The pointer to the target value.</param>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Ref`1.Value">
- <summary>
- Gets the <typeparamref name="T"/> reference represented by the current <see cref="T:CommunityToolkit.HighPerformance.Ref`1"/> instance.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Ref`1.op_Implicit(CommunityToolkit.HighPerformance.Ref{`0})~`0">
- <summary>
- Implicitly gets the <typeparamref name="T"/> value from a given <see cref="T:CommunityToolkit.HighPerformance.Ref`1"/> instance.
- </summary>
- <param name="reference">The input <see cref="T:CommunityToolkit.HighPerformance.Ref`1"/> instance.</param>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Streams.IBufferWriterStream`1">
- <summary>
- A <see cref="T:System.IO.Stream"/> implementation wrapping an <see cref="T:System.Buffers.IBufferWriter`1"/> instance.
- </summary>
- <typeparam name="TWriter">The type of buffer writer to use.</typeparam>
- <inheritdoc cref="T:CommunityToolkit.HighPerformance.Streams.IBufferWriterStream`1"/>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Streams.IBufferWriterStream`1.bufferWriter">
- <summary>
- The target <typeparamref name="TWriter"/> instance to use.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Streams.IBufferWriterStream`1.disposed">
- <summary>
- Indicates whether or not the current instance has been disposed
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.IBufferWriterStream`1.#ctor(`0)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Streams.IBufferWriterStream`1"/> class.
- </summary>
- <param name="bufferWriter">The target <see cref="T:System.Buffers.IBufferWriter`1"/> instance to use.</param>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Streams.IBufferWriterStream`1.CanRead">
- <inheritdoc/>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Streams.IBufferWriterStream`1.CanSeek">
- <inheritdoc/>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Streams.IBufferWriterStream`1.CanWrite">
- <inheritdoc/>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Streams.IBufferWriterStream`1.Length">
- <inheritdoc/>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Streams.IBufferWriterStream`1.Position">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.IBufferWriterStream`1.CopyToAsync(System.IO.Stream,System.Int32,System.Threading.CancellationToken)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.IBufferWriterStream`1.Flush">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.IBufferWriterStream`1.FlushAsync(System.Threading.CancellationToken)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.IBufferWriterStream`1.ReadAsync(System.Byte[],System.Int32,System.Int32,System.Threading.CancellationToken)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.IBufferWriterStream`1.WriteAsync(System.Byte[],System.Int32,System.Int32,System.Threading.CancellationToken)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.IBufferWriterStream`1.Seek(System.Int64,System.IO.SeekOrigin)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.IBufferWriterStream`1.SetLength(System.Int64)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.IBufferWriterStream`1.Read(System.Byte[],System.Int32,System.Int32)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.IBufferWriterStream`1.ReadByte">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.IBufferWriterStream`1.Write(System.Byte[],System.Int32,System.Int32)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.IBufferWriterStream`1.WriteByte(System.Byte)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.IBufferWriterStream`1.Dispose(System.Boolean)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.IBufferWriterStream`1.CopyTo(System.IO.Stream,System.Int32)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.IBufferWriterStream`1.ReadAsync(System.Memory{System.Byte},System.Threading.CancellationToken)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.IBufferWriterStream`1.WriteAsync(System.ReadOnlyMemory{System.Byte},System.Threading.CancellationToken)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.IBufferWriterStream`1.Read(System.Span{System.Byte})">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.IBufferWriterStream`1.Write(System.ReadOnlySpan{System.Byte})">
- <inheritdoc/>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Streams.IMemoryOwnerStream`1">
- <summary>
- A <see cref="T:System.IO.Stream"/> implementation wrapping an <see cref="T:System.Buffers.IMemoryOwner`1"/> of <see cref="T:System.Byte"/> instance.
- </summary>
- <typeparam name="TSource">The type of source to use for the underlying data.</typeparam>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Streams.IMemoryOwnerStream`1.disposable">
- <summary>
- The <see cref="T:System.IDisposable"/> instance currently in use.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.IMemoryOwnerStream`1.#ctor(`0,System.IDisposable)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Streams.IMemoryOwnerStream`1"/> class.
- </summary>
- <param name="source">The input <typeparamref name="TSource"/> instance to use.</param>
- <param name="disposable">The <see cref="T:System.IDisposable"/> instance currently in use.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.IMemoryOwnerStream`1.Dispose(System.Boolean)">
- <inheritdoc/>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Streams.MemoryStream">
- <summary>
- A factory class to produce <see cref="T:CommunityToolkit.HighPerformance.Streams.MemoryStream`1"/> instances.
- </summary>
- <summary>
- A factory class to produce <see cref="T:CommunityToolkit.HighPerformance.Streams.MemoryStream`1"/> instances.
- </summary>
- <summary>
- A factory class to produce <see cref="T:CommunityToolkit.HighPerformance.Streams.MemoryStream`1"/> instances.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream.Create(System.ReadOnlyMemory{System.Byte},System.Boolean)">
- <summary>
- Creates a new <see cref="T:System.IO.Stream"/> from the input <see cref="T:System.ReadOnlyMemory`1"/> of <see cref="T:System.Byte"/> instance.
- </summary>
- <param name="memory">The input <see cref="T:System.ReadOnlyMemory`1"/> instance.</param>
- <param name="isReadOnly">Indicates whether or not <paramref name="memory"/> can be written to.</param>
- <returns>A <see cref="T:System.IO.Stream"/> wrapping the underlying data for <paramref name="memory"/>.</returns>
- <exception cref="T:System.ArgumentException">Thrown when <paramref name="memory"/> has an invalid data store.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream.Create(System.Buffers.IMemoryOwner{System.Byte})">
- <summary>
- Creates a new <see cref="T:System.IO.Stream"/> from the input <see cref="T:System.Buffers.IMemoryOwner`1"/> of <see cref="T:System.Byte"/> instance.
- </summary>
- <param name="memoryOwner">The input <see cref="T:System.Buffers.IMemoryOwner`1"/> instance.</param>
- <returns>A <see cref="T:System.IO.Stream"/> wrapping the underlying data for <paramref name="memoryOwner"/>.</returns>
- <exception cref="T:System.ArgumentException">Thrown when <paramref name="memoryOwner"/> has an invalid data store.</exception>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream.ThrowNotSupportedExceptionForInvalidMemory">
- <summary>
- Throws a <see cref="T:System.ArgumentException"/> when a given <see cref="T:System.Memory`1"/>
- or <see cref="T:System.Buffers.IMemoryOwner`1"/> instance has an unsupported backing store.
- </summary>
- <returns>Nothing, this method always throws.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream.GetNotSupportedException">
- <summary>
- Gets a standard <see cref="T:System.NotSupportedException"/> instance for a stream.
- </summary>
- <returns>A <see cref="T:System.NotSupportedException"/> with the standard text.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream.ThrowNotSupportedException">
- <summary>
- Throws a <see cref="T:System.NotSupportedException"/> when trying to perform a not supported operation.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream.ThrowArgumentExceptionForEndOfStreamOnWrite">
- <summary>
- Throws an <see cref="T:System.ArgumentException"/> when trying to write too many bytes to the target stream.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream.ThrowArgumentExceptionForSeekOrigin">
- <summary>
- Throws an <see cref="T:System.ArgumentException"/> when using an invalid seek mode.
- </summary>
- <returns>Nothing, as this method throws unconditionally.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream.ThrowArgumentOutOfRangeExceptionForPosition">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when setting the <see cref="P:System.IO.Stream.Position"/> property.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream.ThrowArgumentNullExceptionForBuffer">
- <summary>
- Throws an <see cref="T:System.ArgumentNullException"/> when an input buffer is <see langword="null"/>.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream.ThrowArgumentOutOfRangeExceptionForOffset">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the input count is negative.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream.ThrowArgumentOutOfRangeExceptionForCount">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the input count is negative.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream.ThrowArgumentExceptionForLength">
- <summary>
- Throws an <see cref="T:System.ArgumentException"/> when the sum of offset and count exceeds the length of the target buffer.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream.ThrowObjectDisposedException">
- <summary>
- Throws an <see cref="T:System.ObjectDisposedException"/> when using a disposed <see cref="T:System.IO.Stream"/> instance.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream.ValidatePosition(System.Int64,System.Int32)">
- <summary>
- Validates the <see cref="P:System.IO.Stream.Position"/> argument (it needs to be in the [0, length]) range.
- </summary>
- <param name="position">The new <see cref="P:System.IO.Stream.Position"/> value being set.</param>
- <param name="length">The maximum length of the target <see cref="T:System.IO.Stream"/>.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream.ValidateBuffer(System.Byte[],System.Int32,System.Int32)">
- <summary>
- Validates the <see cref="M:System.IO.Stream.Read(System.Byte[],System.Int32,System.Int32)"/> or <see cref="M:System.IO.Stream.Write(System.Byte[],System.Int32,System.Int32)"/> arguments.
- </summary>
- <param name="buffer">The target array.</param>
- <param name="offset">The offset within <paramref name="buffer"/>.</param>
- <param name="count">The number of elements to process within <paramref name="buffer"/>.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream.ValidateCanWrite(System.Boolean)">
- <summary>
- Validates the <see cref="P:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.CanWrite"/> property.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream.ValidateDisposed(System.Boolean)">
- <summary>
- Validates that a given <see cref="T:System.IO.Stream"/> instance hasn't been disposed.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Streams.MemoryStream`1">
- <summary>
- A <see cref="T:System.IO.Stream"/> implementation wrapping a <see cref="T:System.Memory`1"/> or <see cref="T:System.ReadOnlyMemory`1"/> instance.
- </summary>
- <typeparam name="TSource">The type of source to use for the underlying data.</typeparam>
- <remarks>
- This type is not marked as <see langword="sealed"/> so that it can be inherited by
- <see cref="T:CommunityToolkit.HighPerformance.Streams.IMemoryOwnerStream`1"/>, which adds the <see cref="T:System.IDisposable"/> support for
- the wrapped buffer. We're not worried about the performance penalty here caused by the JIT
- not being able to resolve the <see langword="callvirt"/> instruction, as this type is
- only exposed as a <see cref="T:System.IO.Stream"/> anyway, so the generated code would be the same.
- </remarks>
- <inheritdoc cref="T:CommunityToolkit.HighPerformance.Streams.MemoryStream`1"/>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.isReadOnly">
- <summary>
- Indicates whether <see cref="F:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.source"/> can be written to.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.source">
- <summary>
- The <typeparamref name="TSource"/> instance currently in use.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.position">
- <summary>
- The current position within <see cref="F:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.source"/>.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.disposed">
- <summary>
- Indicates whether or not the current instance has been disposed
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.#ctor(`0,System.Boolean)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Streams.MemoryStream`1"/> class.
- </summary>
- <param name="source">The input <typeparamref name="TSource"/> instance to use.</param>
- <param name="isReadOnly">Indicates whether <paramref name="source"/> can be written to.</param>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.CanRead">
- <inheritdoc/>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.CanSeek">
- <inheritdoc/>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.CanWrite">
- <inheritdoc/>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.Length">
- <inheritdoc/>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.Position">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.CopyToAsync(System.IO.Stream,System.Int32,System.Threading.CancellationToken)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.Flush">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.FlushAsync(System.Threading.CancellationToken)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.ReadAsync(System.Byte[],System.Int32,System.Int32,System.Threading.CancellationToken)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.WriteAsync(System.Byte[],System.Int32,System.Int32,System.Threading.CancellationToken)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.Seek(System.Int64,System.IO.SeekOrigin)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.SetLength(System.Int64)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.Read(System.Byte[],System.Int32,System.Int32)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.ReadByte">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.Write(System.Byte[],System.Int32,System.Int32)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.WriteByte(System.Byte)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.Dispose(System.Boolean)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.CopyTo(System.IO.Stream,System.Int32)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.ReadAsync(System.Memory{System.Byte},System.Threading.CancellationToken)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.WriteAsync(System.ReadOnlyMemory{System.Byte},System.Threading.CancellationToken)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.Read(System.Span{System.Byte})">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryStream`1.Write(System.ReadOnlySpan{System.Byte})">
- <inheritdoc/>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Streams.ArrayBufferWriterOwner">
- <summary>
- An <see cref="T:System.Buffers.IBufferWriter`1"/> implementation wrapping an <see cref="T:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1"/> instance.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Streams.ArrayBufferWriterOwner.writer">
- <summary>
- The wrapped <see cref="T:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1"/> array.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.ArrayBufferWriterOwner.#ctor(CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter{System.Byte})">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Streams.ArrayBufferWriterOwner"/> struct.
- </summary>
- <param name="writer">The wrapped <see cref="T:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1"/> instance.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.ArrayBufferWriterOwner.Advance(System.Int32)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.ArrayBufferWriterOwner.GetMemory(System.Int32)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.ArrayBufferWriterOwner.GetSpan(System.Int32)">
- <inheritdoc/>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Streams.ArrayOwner">
- <summary>
- An <see cref="T:CommunityToolkit.HighPerformance.Streams.ISpanOwner"/> implementation wrapping an array.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Streams.ArrayOwner.array">
- <summary>
- The wrapped <see cref="T:System.Byte"/> array.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Streams.ArrayOwner.offset">
- <summary>
- The starting offset within <see cref="F:CommunityToolkit.HighPerformance.Streams.ArrayOwner.array"/>.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Streams.ArrayOwner.length">
- <summary>
- The usable length within <see cref="F:CommunityToolkit.HighPerformance.Streams.ArrayOwner.array"/>.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.ArrayOwner.#ctor(System.Byte[],System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Streams.ArrayOwner"/> struct.
- </summary>
- <param name="array">The wrapped <see cref="T:System.Byte"/> array.</param>
- <param name="offset">The starting offset within <paramref name="array"/>.</param>
- <param name="length">The usable length within <paramref name="array"/>.</param>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Streams.ArrayOwner.Empty">
- <summary>
- Gets an empty <see cref="T:CommunityToolkit.HighPerformance.Streams.ArrayOwner"/> instance.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Streams.ArrayOwner.Length">
- <inheritdoc/>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Streams.ArrayOwner.Span">
- <inheritdoc/>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Streams.IBufferWriterOwner">
- <summary>
- An <see cref="T:System.Buffers.IBufferWriter`1"/> implementation wrapping an <see cref="T:System.Buffers.IBufferWriter`1"/> instance.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Streams.IBufferWriterOwner.writer">
- <summary>
- The wrapped <see cref="T:CommunityToolkit.HighPerformance.Buffers.ArrayPoolBufferWriter`1"/> array.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.IBufferWriterOwner.#ctor(System.Buffers.IBufferWriter{System.Byte})">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Streams.IBufferWriterOwner"/> struct.
- </summary>
- <param name="writer">The wrapped <see cref="T:System.Buffers.IBufferWriter`1"/> instance.</param>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.IBufferWriterOwner.Advance(System.Int32)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.IBufferWriterOwner.GetMemory(System.Int32)">
- <inheritdoc/>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.IBufferWriterOwner.GetSpan(System.Int32)">
- <inheritdoc/>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Streams.ISpanOwner">
- <summary>
- An interface for types acting as sources for <see cref="T:System.Span`1"/> instances.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Streams.ISpanOwner.Length">
- <summary>
- Gets the length of the underlying memory area.
- </summary>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Streams.ISpanOwner.Span">
- <summary>
- Gets a <see cref="T:System.Span`1"/> instance wrapping the underlying memory area.
- </summary>
- </member>
- <member name="T:CommunityToolkit.HighPerformance.Streams.MemoryManagerOwner">
- <summary>
- An <see cref="T:CommunityToolkit.HighPerformance.Streams.ISpanOwner"/> implementation wrapping a <see cref="T:System.Buffers.MemoryManager`1"/> of <see cref="T:System.Byte"/> instance.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Streams.MemoryManagerOwner.memoryManager">
- <summary>
- The wrapped <see cref="T:System.Buffers.MemoryManager`1"/> instance.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Streams.MemoryManagerOwner.offset">
- <summary>
- The starting offset within <see cref="F:CommunityToolkit.HighPerformance.Streams.MemoryManagerOwner.memoryManager"/>.
- </summary>
- </member>
- <member name="F:CommunityToolkit.HighPerformance.Streams.MemoryManagerOwner.length">
- <summary>
- The usable length within <see cref="F:CommunityToolkit.HighPerformance.Streams.MemoryManagerOwner.memoryManager"/>.
- </summary>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.Streams.MemoryManagerOwner.#ctor(System.Buffers.MemoryManager{System.Byte},System.Int32,System.Int32)">
- <summary>
- Initializes a new instance of the <see cref="T:CommunityToolkit.HighPerformance.Streams.MemoryManagerOwner"/> struct.
- </summary>
- <param name="memoryManager">The wrapped <see cref="T:System.Buffers.MemoryManager`1"/> instance.</param>
- <param name="offset">The starting offset within <paramref name="memoryManager"/>.</param>
- <param name="length">The usable length within <paramref name="memoryManager"/>.</param>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Streams.MemoryManagerOwner.Length">
- <inheritdoc/>
- </member>
- <member name="P:CommunityToolkit.HighPerformance.Streams.MemoryManagerOwner.Span">
- <inheritdoc/>
- </member>
- </members>
- </doc>
|