You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
// remove the tail starting with End (non-negative)// Head is the substring starting from Arr[0]// Tail is the rest of it// therefore cut when Head['length'] is End// notice the Head/Tail here are not the same as the Head/Tail in my caller (Slice3<>).typeCut<Arrextendsnumber[],Endextendsnumber,Headextendsnumber[],Tailextendsnumber[],Rextendsnumber[]=[]>=EndextendsHead['length']
? R
: Tailextends[infer A1extendsnumber, ...infer Textendsnumber[]]
? Cut<Arr,End,[...Head,A1],T,[...R,A1]>
: [];// Start and End are non-negative// find the substring starting at Start and pass to Cut<> to remove tail// Head is a substring starting from Arr[0], growing from []// Tail is the rest of Arr[], starting with the whole array// The final result is a left$() of TailtypeSlice3<Arrextendsnumber[],Startextendsnumber=0,Endextendsnumber=Arr['length'],Headextendsnumber[]=[],Tailextendsnumber[]=Arr>=StartextendsHead['length']
? Cut<Arr,End,Head,Tail>
: Tailextends[infer A1extendsnumber, ...infer Textendsnumber[]]
? Slice3<Arr,Start,End,[...Head,A1],T>
: [];// convert negative length to positive equivalent// Input: Length > 0 (negative sign already removed)// Output: Arr['length'] - LengthtypeN2P<Arrextendsnumber[],Lengthextendsnumber,Rextendsnumber[]=[],Lextendsunknown[]=[]>=Arrextends[...infer Textendsnumber[], infer A9extendsnumber]
? LengthextendsR['length']
? Arr['length']
: N2P<T,Length,[A9, ...R]>
: L['length'];// handle negative indexes to always return a non-negative index// leave positive indexes untouchedtypeUnNeg<Arrextendsnumber[],Lengthextendsnumber>= `${Length}` extends `-${infer Sextendsnumber}`
? N2P<Arr,S>
: Length;typeSlice<Arrextendsnumber[],Startextendsnumber=0,Endextendsnumber=Arr['length'],Headextendsnumber[]=[],Tailextendsnumber[]=Arr>=Slice3<Arr,UnNeg<Arr,Start>,UnNeg<Arr,End>,Head,Tail>// your answers
The text was updated successfully, but these errors were encountered:
The text was updated successfully, but these errors were encountered: