1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495969798991001011021031041051061071081091101111121131141151161171181191201211221231241251261271281291301311321331341351361371381391401411421431441451461471481491501511521531541551561571581591601611621631641651661671681691701711721731741751761771781791801811821831841851861871881891901911921931941951961971981992002012022032042052062072082092102112122132142152162172182192202212222232242252262272282292302312322332342352362372382392402412422432442452462472482492502512522532542552562572582592602612622632642652662672682692702712722732742752762772782792802812822832842852862872882892902912922932942952962972982993003013023033043053063073083093103113123133143153163173183193203213223233243253263273283293303313323333343353363373383393403413423433443453463473483493503513523533543553563573583593603613623633643653663673683693703713723733743753763773783793803813823833843853863873883893903913923933943953963973983994004014024034044054064074084094104114124134144154164174184194204214224234244254264274284294304314324334344354364374384394404414424434444454464474484494504514524534544554564574584594604614624634644654664674684694704714724734744754764774784794804814824834844854864874884894904914924934944954964974984995005015025035045055065075085095105115125135145155165175185195205215225235245255265275285295305315325335345355365375385395405415425435445455465475485495505515525535545555565575585595605615625635645655665675685695705715725735745755765775785795805815825835845855865875885895905915925935945955965975985996006016026036046056066076086096106116126136146156166176186196206216226236246256266276286296306316326336346356366376386396406416426436446456466476486496506516526536546556566576586596606616626636646656666676686696706716726736746756766776786796806816826836846856866876886896906916926936946956966976986997007017027037047057067077087097107117127137147157167177187197207217227237247257267277287297307317327337347357367377387397407417427437447457467477487497507517527537547557567577587597607617627637647657667677687697707717727737747757767777787797807817827837847857867877887897907917927937947957967977987998008018028038048058068078088098108118128138148158168178188198208218228238248258268278288298308318328338348358368378388398408418428438448458468478488498508518528538548558568578588598608618628638648658668678688698708718728738748758768778788798808818828838848858868878888898908918928938948958968978988999009019029039049059069079089099109119129139149159169179189199209219229239249259269279289299309319329339349359369379389399409419429439449459469479489499509519529539549559569579589599609619629639649659669679689699709719729739749759769779789799809819829839849859869879889899909919929939949959969979989991000100110021003100410051006100710081009101010111012101310141015101610171018101910201021102210231024102510261027102810291030103110321033103410351036103710381039104010411042104310441045104610471048104910501051105210531054105510561057105810591060106110621063106410651066106710681069107010711072107310741075107610771078107910801081108210831084108510861087108810891090109110921093109410951096109710981099110011011102110311041105110611071108110911101111111211131114111511161117111811191120112111221123112411251126112711281129113011311132113311341135113611371138113911401141114211431144114511461147114811491150115111521153115411551156115711581159116011611162116311641165116611671168116911701171117211731174117511761177117811791180118111821183118411851186118711881189119011911192119311941195119611971198119912001201120212031204120512061207120812091210121112121213121412151216121712181219122012211222122312241225122612271228122912301231123212331234123512361237123812391240124112421243124412451246124712481249125012511252125312541255125612571258125912601261126212631264126512661267126812691270127112721273127412751276127712781279128012811282128312841285128612871288128912901291129212931294129512961297129812991300130113021303130413051306130713081309131013111312131313141315131613171318131913201321132213231324132513261327132813291330133113321333133413351336133713381339134013411342134313441345134613471348134913501351135213531354135513561357135813591360136113621363136413651366136713681369137013711372137313741375137613771378137913801381138213831384138513861387138813891390139113921393139413951396139713981399140014011402140314041405140614071408140914101411141214131414141514161417141814191420142114221423142414251426142714281429143014311432143314341435143614371438143914401441144214431444144514461447144814491450145114521453145414551456145714581459146014611462146314641465146614671468146914701471147214731474147514761477147814791480148114821483148414851486148714881489149014911492149314941495149614971498149915001501150215031504150515061507150815091510151115121513151415151516151715181519152015211522152315241525152615271528152915301531153215331534153515361537153815391540154115421543154415451546154715481549155015511552155315541555155615571558155915601561156215631564156515661567156815691570157115721573157415751576157715781579158015811582158315841585158615871588158915901591159215931594159515961597159815991600160116021603160416051606160716081609161016111612161316141615161616171618161916201621162216231624162516261627162816291630163116321633163416351636163716381639164016411642164316441645164616471648164916501651165216531654165516561657165816591660166116621663166416651666166716681669167016711672167316741675167616771678167916801681168216831684168516861687168816891690169116921693169416951696169716981699170017011702170317041705170617071708170917101711171217131714171517161717171817191720172117221723172417251726172717281729173017311732173317341735173617371738173917401741174217431744174517461747174817491750175117521753175417551756175717581759176017611762176317641765176617671768176917701771177217731774177517761777177817791780178117821783178417851786178717881789179017911792179317941795179617971798179918001801180218031804180518061807180818091810181118121813181418151816181718181819182018211822182318241825182618271828182918301831183218331834183518361837183818391840184118421843184418451846184718481849185018511852185318541855185618571858185918601861186218631864186518661867186818691870187118721873187418751876187718781879188018811882188318841885188618871888188918901891189218931894189518961897189818991900190119021903190419051906190719081909191019111912191319141915191619171918191919201921192219231924192519261927192819291930193119321933193419351936193719381939194019411942194319441945194619471948194919501951195219531954195519561957195819591960196119621963196419651966196719681969197019711972197319741975197619771978197919801981198219831984198519861987198819891990199119921993199419951996199719981999200020012002200320042005200620072008200920102011201220132014201520162017201820192020202120222023202420252026202720282029203020312032203320342035203620372038203920402041204220432044204520462047204820492050205120522053205420552056205720582059206020612062206320642065206620672068206920702071207220732074207520762077207820792080208120822083208420852086208720882089209020912092209320942095209620972098209921002101210221032104210521062107210821092110211121122113211421152116211721182119212021212122212321242125212621272128212921302131213221332134213521362137213821392140214121422143214421452146214721482149215021512152215321542155215621572158215921602161216221632164216521662167216821692170217121722173217421752176217721782179218021812182218321842185218621872188218921902191219221932194219521962197219821992200220122022203220422052206220722082209221022112212221322142215221622172218221922202221222222232224222522262227222822292230223122322233223422352236223722382239224022412242224322442245224622472248224922502251225222532254225522562257225822592260226122622263226422652266226722682269227022712272227322742275227622772278227922802281228222832284228522862287228822892290229122922293229422952296229722982299230023012302230323042305230623072308230923102311231223132314231523162317231823192320232123222323232423252326232723282329233023312332233323342335233623372338233923402341234223432344234523462347234823492350235123522353235423552356235723582359236023612362236323642365236623672368236923702371237223732374237523762377237823792380238123822383238423852386238723882389239023912392239323942395239623972398239924002401240224032404240524062407240824092410241124122413241424152416241724182419242024212422242324242425242624272428242924302431243224332434243524362437243824392440244124422443244424452446244724482449245024512452245324542455245624572458245924602461246224632464246524662467246824692470247124722473247424752476247724782479248024812482248324842485248624872488248924902491249224932494249524962497249824992500250125022503250425052506250725082509251025112512251325142515251625172518251925202521252225232524252525262527252825292530253125322533253425352536253725382539254025412542254325442545254625472548254925502551255225532554255525562557255825592560256125622563256425652566256725682569257025712572257325742575257625772578257925802581258225832584258525862587258825892590259125922593259425952596259725982599260026012602260326042605260626072608260926102611261226132614261526162617261826192620262126222623262426252626262726282629263026312632263326342635263626372638263926402641264226432644264526462647264826492650265126522653265426552656265726582659266026612662266326642665266626672668266926702671267226732674267526762677267826792680268126822683268426852686268726882689269026912692269326942695269626972698269927002701270227032704270527062707270827092710271127122713271427152716271727182719272027212722272327242725272627272728272927302731273227332734273527362737273827392740274127422743274427452746274727482749275027512752275327542755275627572758275927602761276227632764276527662767276827692770277127722773277427752776277727782779278027812782278327842785278627872788278927902791279227932794279527962797279827992800280128022803280428052806280728082809281028112812281328142815281628172818281928202821282228232824282528262827282828292830283128322833283428352836283728382839284028412842284328442845284628472848284928502851285228532854285528562857285828592860286128622863286428652866286728682869287028712872287328742875287628772878287928802881288228832884288528862887288828892890289128922893289428952896289728982899290029012902290329042905290629072908290929102911291229132914291529162917291829192920292129222923292429252926292729282929293029312932293329342935293629372938293929402941294229432944294529462947294829492950295129522953295429552956295729582959296029612962296329642965296629672968296929702971297229732974297529762977297829792980298129822983298429852986298729882989299029912992299329942995299629972998299930003001300230033004300530063007300830093010301130123013301430153016301730183019302030213022302330243025302630273028302930303031303230333034303530363037303830393040304130423043304430453046304730483049305030513052305330543055305630573058305930603061306230633064306530663067306830693070307130723073307430753076307730783079308030813082308330843085308630873088308930903091309230933094309530963097309830993100310131023103310431053106310731083109311031113112311331143115311631173118311931203121312231233124312531263127312831293130313131323133313431353136313731383139314031413142314331443145314631473148314931503151315231533154315531563157315831593160316131623163316431653166316731683169317031713172317331743175317631773178317931803181318231833184318531863187318831893190319131923193319431953196319731983199320032013202320332043205320632073208320932103211321232133214321532163217321832193220322132223223322432253226322732283229323032313232323332343235323632373238323932403241324232433244324532463247324832493250325132523253325432553256325732583259326032613262326332643265326632673268326932703271327232733274327532763277327832793280328132823283328432853286328732883289329032913292329332943295329632973298329933003301330233033304330533063307330833093310331133123313331433153316331733183319332033213322332333243325332633273328332933303331333233333334333533363337333833393340334133423343334433453346334733483349335033513352335333543355335633573358335933603361336233633364336533663367336833693370337133723373337433753376337733783379338033813382338333843385338633873388338933903391339233933394339533963397339833993400340134023403340434053406340734083409341034113412341334143415341634173418341934203421342234233424342534263427342834293430343134323433343434353436343734383439344034413442344334443445344634473448344934503451345234533454345534563457345834593460346134623463346434653466346734683469347034713472347334743475347634773478347934803481348234833484348534863487348834893490349134923493349434953496349734983499350035013502350335043505350635073508350935103511351235133514351535163517351835193520352135223523352435253526352735283529353035313532353335343535353635373538353935403541354235433544354535463547354835493550355135523553355435553556355735583559356035613562356335643565356635673568356935703571357235733574357535763577357835793580358135823583358435853586358735883589359035913592359335943595359635973598359936003601360236033604360536063607360836093610361136123613361436153616361736183619362036213622362336243625362636273628362936303631363236333634363536363637363836393640364136423643364436453646364736483649365036513652365336543655365636573658365936603661366236633664366536663667366836693670367136723673367436753676367736783679368036813682368336843685368636873688368936903691369236933694369536963697369836993700370137023703370437053706370737083709371037113712371337143715371637173718371937203721372237233724372537263727372837293730373137323733373437353736373737383739374037413742374337443745374637473748374937503751375237533754375537563757375837593760376137623763376437653766376737683769377037713772377337743775377637773778377937803781378237833784378537863787378837893790379137923793379437953796379737983799380038013802380338043805380638073808380938103811381238133814381538163817381838193820382138223823382438253826382738283829383038313832383338343835383638373838383938403841384238433844384538463847384838493850385138523853385438553856385738583859386038613862386338643865386638673868386938703871387238733874387538763877387838793880388138823883388438853886388738883889389038913892389338943895389638973898389939003901390239033904390539063907390839093910391139123913391439153916391739183919392039213922392339243925392639273928392939303931393239333934393539363937393839393940394139423943394439453946394739483949395039513952395339543955395639573958395939603961396239633964396539663967396839693970397139723973397439753976397739783979398039813982398339843985398639873988398939903991399239933994399539963997399839994000400140024003400440054006400740084009401040114012401340144015401640174018401940204021402240234024402540264027402840294030403140324033403440354036403740384039404040414042404340444045404640474048404940504051405240534054405540564057405840594060406140624063406440654066406740684069407040714072407340744075407640774078407940804081408240834084408540864087408840894090409140924093409440954096409740984099410041014102410341044105410641074108410941104111411241134114411541164117411841194120412141224123412441254126412741284129413041314132413341344135413641374138413941404141414241434144414541464147414841494150415141524153415441554156415741584159416041614162416341644165416641674168416941704171417241734174417541764177417841794180418141824183418441854186418741884189419041914192419341944195419641974198419942004201420242034204420542064207420842094210421142124213421442154216421742184219422042214222422342244225422642274228422942304231423242334234423542364237423842394240424142424243424442454246424742484249425042514252425342544255425642574258425942604261426242634264426542664267426842694270427142724273427442754276427742784279428042814282428342844285428642874288428942904291429242934294429542964297429842994300430143024303430443054306430743084309431043114312431343144315431643174318431943204321432243234324432543264327432843294330433143324333433443354336433743384339434043414342434343444345434643474348434943504351435243534354435543564357435843594360436143624363436443654366436743684369437043714372437343744375437643774378437943804381438243834384438543864387438843894390439143924393439443954396439743984399440044014402440344044405440644074408440944104411441244134414441544164417441844194420442144224423442444254426442744284429443044314432443344344435443644374438443944404441444244434444444544464447444844494450445144524453445444554456445744584459446044614462446344644465446644674468446944704471447244734474447544764477447844794480448144824483448444854486448744884489449044914492449344944495449644974498449945004501450245034504450545064507450845094510451145124513451445154516451745184519452045214522452345244525452645274528452945304531453245334534453545364537453845394540454145424543454445454546454745484549455045514552455345544555455645574558455945604561456245634564456545664567456845694570457145724573457445754576457745784579458045814582458345844585458645874588458945904591459245934594459545964597459845994600460146024603460446054606460746084609461046114612461346144615461646174618461946204621462246234624462546264627462846294630463146324633463446354636463746384639464046414642464346444645464646474648464946504651465246534654465546564657465846594660466146624663466446654666466746684669467046714672467346744675467646774678467946804681468246834684468546864687468846894690469146924693469446954696469746984699470047014702470347044705470647074708470947104711471247134714471547164717471847194720472147224723472447254726472747284729473047314732473347344735473647374738473947404741474247434744474547464747474847494750475147524753475447554756475747584759476047614762476347644765476647674768476947704771477247734774477547764777477847794780478147824783478447854786478747884789479047914792479347944795479647974798479948004801480248034804480548064807480848094810481148124813481448154816481748184819482048214822482348244825482648274828482948304831483248334834483548364837483848394840484148424843484448454846484748484849485048514852485348544855485648574858485948604861486248634864486548664867486848694870487148724873487448754876487748784879488048814882488348844885488648874888488948904891489248934894489548964897489848994900490149024903490449054906490749084909491049114912491349144915491649174918491949204921492249234924492549264927492849294930493149324933493449354936493749384939494049414942494349444945494649474948494949504951495249534954495549564957495849594960496149624963496449654966496749684969497049714972497349744975497649774978497949804981498249834984498549864987498849894990499149924993499449954996499749984999500050015002500350045005500650075008500950105011501250135014501550165017501850195020502150225023502450255026502750285029503050315032503350345035503650375038503950405041504250435044504550465047504850495050505150525053505450555056505750585059506050615062506350645065506650675068506950705071507250735074507550765077507850795080508150825083508450855086508750885089509050915092509350945095509650975098509951005101510251035104510551065107510851095110511151125113511451155116511751185119512051215122512351245125512651275128512951305131513251335134513551365137513851395140514151425143514451455146514751485149515051515152515351545155515651575158515951605161516251635164516551665167516851695170517151725173517451755176517751785179518051815182518351845185518651875188518951905191519251935194519551965197519851995200520152025203520452055206520752085209521052115212521352145215521652175218521952205221522252235224522552265227522852295230523152325233523452355236523752385239524052415242524352445245524652475248524952505251525252535254525552565257525852595260526152625263526452655266526752685269527052715272527352745275527652775278527952805281528252835284528552865287528852895290529152925293529452955296529752985299530053015302530353045305530653075308530953105311531253135314531553165317531853195320532153225323532453255326532753285329533053315332533353345335533653375338533953405341534253435344534553465347534853495350535153525353535453555356535753585359536053615362536353645365536653675368536953705371537253735374537553765377537853795380538153825383538453855386538753885389539053915392539353945395539653975398539954005401540254035404540554065407540854095410541154125413541454155416541754185419542054215422542354245425542654275428542954305431543254335434543554365437543854395440544154425443544454455446544754485449545054515452545354545455545654575458545954605461546254635464546554665467546854695470547154725473547454755476547754785479548054815482548354845485548654875488548954905491549254935494549554965497549854995500550155025503550455055506550755085509551055115512551355145515551655175518551955205521552255235524552555265527552855295530553155325533553455355536553755385539554055415542554355445545554655475548554955505551555255535554555555565557555855595560556155625563556455655566556755685569557055715572557355745575557655775578557955805581558255835584558555865587558855895590559155925593559455955596559755985599560056015602560356045605560656075608560956105611561256135614561556165617561856195620562156225623562456255626562756285629563056315632563356345635563656375638563956405641564256435644564556465647564856495650565156525653565456555656565756585659566056615662566356645665566656675668566956705671567256735674567556765677567856795680568156825683568456855686568756885689569056915692569356945695569656975698569957005701570257035704570557065707570857095710571157125713571457155716571757185719572057215722572357245725572657275728572957305731573257335734573557365737573857395740574157425743574457455746574757485749575057515752575357545755575657575758575957605761576257635764576557665767576857695770577157725773577457755776577757785779578057815782578357845785578657875788578957905791579257935794579557965797579857995800580158025803580458055806580758085809581058115812581358145815581658175818581958205821582258235824582558265827582858295830583158325833583458355836583758385839584058415842584358445845584658475848584958505851585258535854585558565857585858595860586158625863586458655866586758685869587058715872587358745875587658775878587958805881588258835884588558865887588858895890589158925893589458955896589758985899590059015902590359045905590659075908590959105911591259135914591559165917591859195920592159225923592459255926592759285929593059315932593359345935593659375938593959405941594259435944594559465947594859495950595159525953595459555956595759585959596059615962596359645965596659675968596959705971597259735974597559765977597859795980598159825983598459855986598759885989599059915992599359945995599659975998599960006001600260036004600560066007600860096010601160126013601460156016601760186019602060216022602360246025602660276028602960306031603260336034603560366037603860396040604160426043604460456046604760486049605060516052605360546055605660576058605960606061606260636064606560666067606860696070607160726073607460756076607760786079608060816082608360846085608660876088608960906091609260936094609560966097609860996100610161026103610461056106610761086109611061116112611361146115611661176118611961206121612261236124612561266127612861296130613161326133613461356136613761386139614061416142614361446145614661476148614961506151615261536154615561566157615861596160616161626163616461656166616761686169617061716172617361746175617661776178617961806181618261836184618561866187618861896190619161926193619461956196619761986199620062016202620362046205620662076208620962106211621262136214621562166217621862196220622162226223622462256226622762286229623062316232623362346235623662376238623962406241624262436244624562466247624862496250625162526253625462556256625762586259626062616262626362646265626662676268626962706271627262736274627562766277627862796280628162826283628462856286628762886289629062916292629362946295629662976298629963006301630263036304630563066307630863096310631163126313631463156316631763186319632063216322632363246325632663276328632963306331633263336334633563366337633863396340634163426343634463456346634763486349635063516352635363546355635663576358635963606361636263636364636563666367636863696370637163726373 |
- <?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="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.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.ArrayPoolBufferWriter`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.ArrayPoolBufferWriter`1"/> instance.
- </remarks>
- </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.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.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="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>
- <inheritdoc/>
- <inheritdoc/>
- </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="M:CommunityToolkit.HighPerformance.ArrayPoolExtensions.EnsureCapacity``1(System.Buffers.ArrayPool{``0},``0[]@,System.Int32,System.Boolean)">
- <summary>
- Ensures that when the method returns <paramref name="array"/> is not null and is at least <paramref name="capacity"/> in length.
- Contents of <paramref name="array"/> are not copied if a new array is rented.
- </summary>
- <typeparam name="T">The type of items into the target array given as input.</typeparam>
- <param name="pool">The target <see cref="T:System.Buffers.ArrayPool`1"/> instance used to rent and/or return the array.</param>
- <param name="array">The rented <typeparamref name="T"/> array to ensure capacity for, or <see langword="null"/> to rent a new array.</param>
- <param name="capacity">The minimum length of <paramref name="array"/> when the method returns.</param>
- <param name="clearArray">Indicates whether the contents of the array should be cleared if returned to the pool.</param>
- <exception cref="T:System.ArgumentOutOfRangeException">Thrown when <paramref name="capacity"/> 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="M:CommunityToolkit.HighPerformance.ArrayPoolExtensions.ThrowArgumentOutOfRangeExceptionForNegativeArrayCapacity">
- <summary>
- Throws an <see cref="T:System.ArgumentOutOfRangeException"/> when the "capacity" parameter is negative.
- </summary>
- </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.ArgumentException">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.ArgumentException">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.ArgumentException">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.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.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"/>, or <c>-1</c>.</returns>
- </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"/>, or <c>-1</c>.</returns>
- </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="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.UnsafeLock"/> 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="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.ReadAsync(System.IO.Stream,System.Memory{System.Byte},System.Threading.CancellationToken)">
- <summary>
- Asynchronously reads a sequence of bytes from a given <see cref="T:System.IO.Stream"/> instance.
- </summary>
- <param name="stream">The source <see cref="T:System.IO.Stream"/> to read data from.</param>
- <param name="buffer">The destination <see cref="T:System.Memory`1"/> to write data to.</param>
- <param name="cancellationToken">The optional <see cref="T:System.Threading.CancellationToken"/> for the operation.</param>
- <returns>A <see cref="T:System.Threading.Tasks.ValueTask"/> representing the operation being performed.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.StreamExtensions.WriteAsync(System.IO.Stream,System.ReadOnlyMemory{System.Byte},System.Threading.CancellationToken)">
- <summary>
- Asynchronously writes a sequence of bytes to a given <see cref="T:System.IO.Stream"/> instance.
- </summary>
- <param name="stream">The destination <see cref="T:System.IO.Stream"/> to write data to.</param>
- <param name="buffer">The source <see cref="T:System.ReadOnlyMemory`1"/> to read data from.</param>
- <param name="cancellationToken">The optional <see cref="T:System.Threading.CancellationToken"/> for the operation.</param>
- <returns>A <see cref="T:System.Threading.Tasks.ValueTask"/> representing the operation being performed.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.StreamExtensions.Read(System.IO.Stream,System.Span{System.Byte})">
- <summary>
- Reads a sequence of bytes from a given <see cref="T:System.IO.Stream"/> instance.
- </summary>
- <param name="stream">The source <see cref="T:System.IO.Stream"/> to read data from.</param>
- <param name="buffer">The target <see cref="T:System.Span`1"/> to write data to.</param>
- <returns>The number of bytes that have been read.</returns>
- </member>
- <member name="M:CommunityToolkit.HighPerformance.StreamExtensions.Write(System.IO.Stream,System.ReadOnlySpan{System.Byte})">
- <summary>
- Writes a sequence of bytes to a given <see cref="T:System.IO.Stream"/> instance.
- </summary>
- <param name="stream">The destination <see cref="T:System.IO.Stream"/> to write data to.</param>
- <param name="buffer">The source <see cref="T:System.Span`1"/> to read data from.</param>
- </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.IO.EndOfStreamException">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.ThrowEndOfStreamException">
- <summary>
- Throws an <see cref="T:System.IO.EndOfStreamException"/> 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://learn.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.RoundUpToPowerOf2(System.UInt32)">
- <summary>
- Round the given integral value up to a power of 2.
- </summary>
- <param name="value">The value.</param>
- <returns>
- The smallest power of 2 which is greater than or equal to <paramref name="value"/>.
- If <paramref name="value"/> is 0 or the result overflows, returns 0.
- </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>
- <inheritdoc/>
- </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>
- <inheritdoc/>
- <inheritdoc/>
- <inheritdoc/>
- <inheritdoc/>
- <inheritdoc/>
- <inheritdoc/>
- </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 byte 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.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 the current instance.
- </exception>
- <returns>A new <see cref="T:CommunityToolkit.HighPerformance.Memory2D`1"/> instance representing a slice of the current one.</returns>
- <remarks>See additional remarks in the <see cref="M:CommunityToolkit.HighPerformance.Span2D`1.Slice(System.Int32,System.Int32,System.Int32,System.Int32)"/> docs.</remarks>
- </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 non-primitive (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 byte 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.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 the current instance.
- </exception>
- <returns>A new <see cref="T:CommunityToolkit.HighPerformance.ReadOnlyMemory2D`1"/> instance representing a slice of the current one.</returns>
- <remarks>See additional remarks in the <see cref="M:CommunityToolkit.HighPerformance.Span2D`1.Slice(System.Int32,System.Int32,System.Int32,System.Int32)"/> docs.</remarks>
- </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 non-primitive (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/>
- </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.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 the current instance.
- </exception>
- <returns>A new <see cref="T:CommunityToolkit.HighPerformance.ReadOnlySpan2D`1"/> instance representing a slice of the current one.</returns>
- <remarks>See additional remarks in the <see cref="M:CommunityToolkit.HighPerformance.Span2D`1.Slice(System.Int32,System.Int32,System.Int32,System.Int32)"/> docs.</remarks>
- </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>
- Implicitly 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>
- Implicitly 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/>
- </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.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 the current instance.
- </exception>
- <returns>A new <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance representing a slice of the current one.</returns>
- <remarks>
- <para>
- Contrary to <see cref="M:System.Span`1.Slice(System.Int32,System.Int32)"/>, this method will throw an <see cref="T:System.ArgumentOutOfRangeException"/>
- if attempting to perform a slice operation that would result in either axes being 0. That is, trying to call
- <see cref="M:CommunityToolkit.HighPerformance.Span2D`1.Slice(System.Int32,System.Int32,System.Int32,System.Int32)"/> as eg. <c>Slice(row: 1, column: 0, height: 0, width: 2)</c> on an instance
- that has 1 row and 2 columns will throw, rather than returning a new <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> instance with 0 rows and
- 2 columns. For contrast, trying to eg. call <c>Slice(start: 1, length: 0)</c> on a <see cref="T:System.Span`1"/> instance of
- length 1 would return a span of length 0, with the internal reference being set to right past the end of the memory.
- </para>
- <para>
- This is by design, and it is due to the internal memory layout that <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/> has. That is, in the case
- of <see cref="T:System.Span`1"/>, the only edge case scenario would be to obtain a new span of size 0, referencing the very end
- of the backing object (eg. an array or a <see cref="T:System.String"/> instance). In that case, the GC can correctly track things.
- With <see cref="T:CommunityToolkit.HighPerformance.Span2D`1"/>, on the other hand, it would be possible to slice an instance with a sizeof 0 in either axis,
- but with the computed starting reference pointing well past the end of the internal memory area. Such a behavior would not
- be valid if the reference was pointing to a managed object, and it would cause memory corruptions (ie. "GC holes").
- </para>
- <para>
- If you specifically need to be able to obtain empty values from slicing past the valid range, consider performing the range
- validation yourself (ie. through some helper method), and then only invoking <see cref="M:CommunityToolkit.HighPerformance.Span2D`1.Slice(System.Int32,System.Int32,System.Int32,System.Int32)"/> once the
- parameters are in the accepted range. Otherwise, consider returning another return explicitly, such as <see cref="P:CommunityToolkit.HighPerformance.Span2D`1.Empty"/>.
- </para>
- </remarks>
- </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>
- Implicitly 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.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/>
- </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>
- <inheritdoc/>
- <inheritdoc/>
- </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/>
- </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="P:CommunityToolkit.HighPerformance.Streams.ArrayOwner.Memory">
- <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="P:CommunityToolkit.HighPerformance.Streams.ISpanOwner.Memory">
- <summary>
- Gets a <see cref="T:System.Memory`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>
- <member name="P:CommunityToolkit.HighPerformance.Streams.MemoryManagerOwner.Memory">
- <inheritdoc/>
- </member>
- <member name="T:System.Runtime.CompilerServices.SkipLocalsInitAttribute">
- <summary>
- Used to indicate to the compiler that the <c>.locals init</c> flag should not be set in method headers.
- </summary>
- </member>
- </members>
- </doc>
|