PowerShell modules in TypeScript
TypeScript implementations of 18 PowerShell standard library functions across 1 module. Each function is individually importable and tree-shakeable.
string- contains
- endswith
- indexof
- insert
- lastindexof
- length
- padleft
- padright
- remove
- replace
- split
- startswith
- substring
- tolower
- toupper
- trim
- trimend
- trimstart
We have 18 PowerShell functions so far - help us add more
Got a rainy Sunday afternoon and a taste for a porting puzzle?
- Get inspiration from PowerShell docs.
- Click "New file" in the appropriate folder on GitHub. This will fork the project to your account, directly add the file to it, and send a Pull Request to us.
We will then review it. If it's useful to the project and in line with our contributing guidelines your work will become part of Locutus and you'll be automatically credited in the authors section accordingly.
Upstream Surface Inventory 18/485 shipped · 199 next 4%
Locutus tracks 10 upstream namespaces for PowerShell and sorts them into what is already shipped, what we still want, what we intentionally keep, and what still needs a decision.
This inventory now tracks a broader slice of official .NET core surfaces that are idiomatic in PowerShell, using docs-backed catalogs and excluding the wider .NET ecosystem.
Shipped (18)
Next
Most System.String methods are strong plain-value portability targets.
charscomparecompareordinalcomparetoconcatcopycopytocreateemptyenumeraterunesequalsformatgetenumeratorgethashcodegetpinnablereferencegettypecodeindexofanyinternisinternedisnormalizedisnulloremptyisnullorwhitespacejoinlastindexofanynormalizeop_equalityop_implicitop_inequalityreplacelineendingsStringtochararraytolowerinvarianttostringtoupperinvarianttrycopyto
Explicit non-goals (1)
-
cloneClone adds little value for immutable JS strings.
System.Math static methods
Next
Scalar math helpers are strong plain-value portability targets for PowerShell.
absacosacoshasinasinhatanatan2atanhbigmulbitdecrementbitincrementcbrtceilingclampcopysigncoscoshdivremeexpfloorfusedmultiplyaddieeeremainderilogbloglog10log2maxmaxmagnitudeminminmagnitudepipowreciprocalestimatereciprocalsqrtestimateroundscalebsignsinsincossinhsqrttantanhtautruncate
System.Char static methods
Next
Character classification and case helpers are strong plain-value portability targets.
comparetoconvertfromutf32converttoutf32equalsgethashcodegettypecodeisasciiisasciidigitisasciihexdigitisasciihexdigitlowerisasciihexdigitupperisasciiletterisasciiletterlowerisasciiletterordigitisasciiletterupperisbetweeniscontrolisdigitishighsurrogateisletterisletterordigitislowerislowsurrogateisnumberispunctuationisseparatorissurrogateissurrogatepairissymbolisupperiswhitespacemaxvalueminvalueparsetolowertolowerinvarianttostringtouppertoupperinvarianttryparse
Numeric codepoint classification has a clean plain-value contract.
getnumericvalue
Explicit non-goals (1)
-
getunicodecategory.NET enum return values do not map cleanly onto one stable Locutus contract yet.
System.Convert static methods
Next
Scalar conversion helpers are strong PowerShell portability targets.
dbnullfrombase64chararrayfrombase64stringfromhexstringisdbnulltobase64chararraytobase64stringtobooleantobytetochartodatetimetodecimaltodoubletohexstringtohexstringlowertoint16toint32toint64tosbytetosingletostringtouint16touint32touint64tryfrombase64charstryfrombase64stringtrytobase64charstrytohexstringtrytohexstringlower
Explicit non-goals (2)
-
changetypeType-descriptor-driven conversion depends on host runtime type metadata. -
gettypecodeEnum-style runtime type codes are not a stable plain-value portability target.
System.Version static and instance methods
Next
Version parsing and comparison helpers are strong plain-value portability targets.
buildclonecomparetoequalsgethashcodemajormajorrevisionminorminorrevisionop_equalityop_greaterthanop_greaterthanorequalop_inequalityop_lessthanop_lessthanorequalparserevisiontostringtryformattryparseVersion
System.TimeSpan static and instance methods
Next
Duration comparison has a clean plain-value contract.
compare
Duration construction from scalars has a clean plain-value contract.
fromdaysfromhoursfrommillisecondsfromminutesfromseconds
Duration parsing has a clean plain-value contract.
parse
Exact duration parsing has a clean plain-value contract.
parseexact
Explicit non-goals (68)
-
addTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
comparetoTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
daysTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
divideTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
durationTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
equalsTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
frommicrosecondsTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
fromticksTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
gethashcodeTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
hoursTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
hoursperdayTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
maxvalueTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
microsecondsTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
microsecondsperdayTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
microsecondsperhourTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
microsecondspermillisecondTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
microsecondsperminuteTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
microsecondspersecondTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
millisecondsTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
millisecondsperdayTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
millisecondsperhourTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
millisecondsperminuteTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
millisecondspersecondTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
minutesTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
minutesperdayTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
minutesperhourTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
minvalueTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
multiplyTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
nanosecondsTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
nanosecondspertickTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
negateTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
op_additionTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
op_divisionTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
op_equalityTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
op_greaterthanTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
op_greaterthanorequalTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
op_inequalityTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
op_lessthanTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
op_lessthanorequalTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
op_multiplyTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
op_subtractionTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
op_unarynegationTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
op_unaryplusTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
secondsTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
secondsperdayTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
secondsperhourTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
secondsperminuteTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
subtractTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
ticksTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
ticksperdayTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
ticksperhourTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
tickspermicrosecondTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
tickspermillisecondTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
ticksperminuteTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
tickspersecondTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
TimeSpanTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
tostringTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
totaldaysTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
totalhoursTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
totalmicrosecondsTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
totalmillisecondsTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
totalminutesTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
totalnanosecondsTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
totalsecondsTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
tryformatTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
tryparseTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
tryparseexactTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default. -
zeroTimeSpan struct APIs mix duration values with richer struct semantics than one stable plain-value contract by default.
System.Uri static and instance methods
Next
URI classification helpers have a clean plain-value contract.
checkhostname
URL escaping is a strong plain-value portability target.
escapedatastringescapeuristring
URI character predicates have a clean plain-value contract.
ishexdigit
URI encoding predicates have a clean plain-value contract.
ishexencoding
URL unescaping is a strong plain-value portability target.
unescapedatastring
Explicit non-goals (72)
-
absolutepathMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
absoluteuriMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
authorityMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
canonicalizeMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
checkschemenameMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
checksecurityMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
compareMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
dnssafehostMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
equalsMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
escapeMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
escapestringMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
fragmentMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
fromhexMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
getcomponentsMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
gethashcodeMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
getleftpartMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
getobjectdataMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
hexescapeMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
hexunescapeMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
hostMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
hostnametypeMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
idnhostMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
isabsoluteuriMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
isbadfilesystemcharacterMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
isbaseofMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
isdefaultportMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
isexcludedcharacterMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
isfileMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
isloopbackMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
isreservedcharacterMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
isuncMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
iswellformedoriginalstringMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
iswellformeduristringMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
localpathMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
makerelativeMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
makerelativeuriMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
op_equalityMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
op_inequalityMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
originalstringMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
parseMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
pathandqueryMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
portMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
queryMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
schemeMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
schemedelimiterMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
segmentsMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
tostringMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
trycreateMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
tryescapedatastringMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
tryformatMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
tryunescapedatastringMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
unescapeMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
UriMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
urischemedataMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
urischemefileMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
urischemeftpMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
urischemeftpsMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
urischemegopherMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
urischemehttpMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
urischemehttpsMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
urischememailtoMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
urischemenetpipeMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
urischemenettcpMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
urischemenewsMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
urischemenntpMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
urischemesftpMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
urischemesshMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
urischemetelnetMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
urischemewsMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
urischemewssMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
userescapedMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract. -
userinfoMost Uri APIs expose rich object/stateful semantics rather than one stable plain-value contract.
System.DateTime static and instance methods
Next
Date ordering has a clean plain-value contract.
compare
Calendar math has a clean plain-value contract.
daysinmonth
Leap-year checks have a clean plain-value contract.
isleapyear
String-to-date parsing is a useful portability target.
parse
Exact string-to-date parsing is a useful portability target.
parseexact
Explicit non-goals (67)
-
addTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
adddaysTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
addhoursTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
addmicrosecondsTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
addmillisecondsTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
addminutesTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
addmonthsTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
addsecondsTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
addticksTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
addyearsTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
comparetoTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
dateTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
DateTimeTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
dayTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
dayofweekTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
dayofyearTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
deconstructTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
equalsTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
frombinaryTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
fromfiletimeTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
fromfiletimeutcTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
fromoadateTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
getdatetimeformatsTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
gethashcodeTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
gettypecodeTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
hourTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
isdaylightsavingtimeTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
kindTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
maxvalueTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
microsecondTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
millisecondTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
minuteTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
minvalueTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
monthTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
nanosecondTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
nowTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
op_additionTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
op_equalityTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
op_greaterthanTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
op_greaterthanorequalTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
op_inequalityTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
op_lessthanTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
op_lessthanorequalTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
op_subtractionTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
secondTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
specifykindTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
subtractTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
ticksTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
timeofdayTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
tobinaryTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
todayTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
tofiletimeTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
tofiletimeutcTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
tolocaltimeTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
tolongdatestringTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
tolongtimestringTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
tooadateTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
toshortdatestringTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
toshorttimestringTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
tostringTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
touniversaltimeTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
tryformatTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
tryparseTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
tryparseexactTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
unixepochTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
utcnowTimezone-aware date objects do not fit Locutus' current plain-value model by default. -
yearTimezone-aware date objects do not fit Locutus' current plain-value model by default.
System.Guid static and instance methods
Next
GUID parsing from strings has a clean plain-value contract.
parse
Exact GUID parsing has a clean plain-value contract.
parseexact
GUID formatting has a clean plain-string contract.
tostring
Guarded GUID parsing has a clean plain-value contract.
tryparsetryparseexact
Explicit non-goals (19)
-
allbitssetMost Guid APIs expose struct/object semantics rather than one direct plain-value contract. -
comparetoMost Guid APIs expose struct/object semantics rather than one direct plain-value contract. -
createversion7Most Guid APIs expose struct/object semantics rather than one direct plain-value contract. -
emptyStruct constants are not plain-value portability targets. -
equalsMost Guid APIs expose struct/object semantics rather than one direct plain-value contract. -
gethashcodeMost Guid APIs expose struct/object semantics rather than one direct plain-value contract. -
GuidMost Guid APIs expose struct/object semantics rather than one direct plain-value contract. -
newguidRandom GUID generation is lower-value than deterministic portability work. -
op_equalityMost Guid APIs expose struct/object semantics rather than one direct plain-value contract. -
op_greaterthanMost Guid APIs expose struct/object semantics rather than one direct plain-value contract. -
op_greaterthanorequalMost Guid APIs expose struct/object semantics rather than one direct plain-value contract. -
op_inequalityMost Guid APIs expose struct/object semantics rather than one direct plain-value contract. -
op_lessthanMost Guid APIs expose struct/object semantics rather than one direct plain-value contract. -
op_lessthanorequalMost Guid APIs expose struct/object semantics rather than one direct plain-value contract. -
tobytearrayMost Guid APIs expose struct/object semantics rather than one direct plain-value contract. -
tryformatMost Guid APIs expose struct/object semantics rather than one direct plain-value contract. -
trywritebytesMost Guid APIs expose struct/object semantics rather than one direct plain-value contract. -
variantMost Guid APIs expose struct/object semantics rather than one direct plain-value contract. -
versionMost Guid APIs expose struct/object semantics rather than one direct plain-value contract.
System.Array static methods
Next
Search helpers over plain arrays have a clean plain-value contract.
binarysearchindexoflastindexof
Explicit non-goals (38)
-
asreadonlyArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
clearArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
cloneArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
constrainedcopyArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
convertallArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
copyArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
copytoArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
createinstanceArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
createinstancefromarraytypeArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
emptyArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
existsArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
fillArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
findArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
findallArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
findindexArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
findlastArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
findlastindexArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
foreachArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
getenumeratorArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
getlengthArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
getlonglengthArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
getlowerboundArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
getupperboundArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
getvalueArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
initializeArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
isfixedsizeArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
isreadonlyArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
issynchronizedArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
lengthArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
longlengthArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
maxlengthArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
rankArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
resizeArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
reverseArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
setvalueArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
sortArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
syncrootArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model. -
trueforallArray reflection and mutable runtime-array helpers do not map cleanly to Locutus' value-only model.