import { getCombinableThese } from "https://deno.land/x/fun@v2.0.0/these.ts";
Module
x/fun/these.ts>getCombinableThese
A collection of algebraic data types, lenses, and schemables based on a light weight higher kinded type implementation. Written for deno.
Latest
benchmarkscontribexamplesscriptstestingapplicablearrayasyncasync_eitherasync_iterablebimappablebooleancombinablecomparablecomposabledecodereitherfailablefilterableflatmappablefnfn_eitherfoldableidentityinitializableiterablejson_schemamapmappablenewtypenilnumberopticoptionpairpredicatepremappablepromiserefinementschemablesetshowablesortablestatestringsyncsync_eitherthesetraversabletreewrappableKindArrayAnyArrayAnyNonEmptyArrayNonEmptyArrayTypeOfApplicableArraybindbindToFilterableArrayFlatmappableArrayFoldableArrayMappableArraytapTraversableArrayWrappableArray_unsafeAppend_unsafeDeleteAt_unsafeInsertAt_unsafeJoin_unsafePrepend_unsafePush_unsafeUpdateAtaltappendapplyarraybinarySearchcombinedeleteAtfilterfilterMapflatmapfoldgetCombinableArraygetComparableArraygetInitializableArraygetShowableArraygetSortableArrayinitinsertinsertAtisEmptyisNonEmptyisOutOfBoundsjoinlookupmapmodifymodifyAtorderedInsertpartitionpartitionMapprependrangesequencesorttraverseupdateupdateAtwrapzipKindAsyncEitherAsyncEitherApplicableAsyncEitherBimappableAsyncEitherbindbindToFailableAsyncEitherParallelFailableAsyncEitherSequentialFlatmappableAsyncEitherParallelFlatmappableAsyncEitherSequentialMappableAsyncEithertapWrappableAsyncEitheraltapplyapplySequentialfailflatmapflatmapFirstfromAsyncfromEithergetCombinableAsyncEithergetInitializableAsyncEitherleftmapmapSecondmatchrecoverrighttryCatchwrapKindAsyncIterableApplicableAsyncIterablebindbindToFilterableAsyncIterableFlatmappableAsyncIterableMappableAsyncIterabletapWrappableAsyncIterableapplyasyncIterableclonecollectdelayfilterfilterMapflatmapfoldforEachfromIterablemappartitionpartitionMaprangerepeatscantaketakeUntiltakeWhilewrapKindAsyncAsyncApplicableAsyncbindbindToFlatmappableAsyncMappableAsynctapWrappableAsyncapplyapplySequentialdelayflatmapfromSyncgetCombinableAsyncgetInitializableAsyncmaptryCatchwrapCombinableBooleanAllCombinableBooleanAnyComparableBooleanconstFalseconstTrueInitializableBooleanAllInitializableBooleanAnyShowableBooleanSortableBooleanandcompareisBooleanmatchnotorsortCombinableAnyCombinableCombineTypeOfconstantdualfirstfromCombinegetCombineAllintercalcatelastmaxminstructtupleComparableKindComparableKindContraComparableCompareTypeOfbooleannumberSchemableComparablestringunknownarrayfromCompareintersectlazyliteralmethodnullablepartialpremapreadonlyrecordstructthunktupleundefinableunionKindDatumDatumInitialLoadingNonePendingRefreshRepleteSomeApplicableDatumbindbindToFilterableDatumFlatmappableDatuminitialMappableDatumpendingtapTraversableDatumWrappableDatumaltapplyconstInitialconstPendingexistsfilterfilterMapflatmapfoldfromNullablegetCombinableDatumgetComparableDatumgetInitializableDatumgetOrElsegetShowableDatumgetSortableDatumisInitialisLoadingisNoneisPendingisRefreshisRepleteisSomemapmatchpartitionpartitionMaprefreshrepletetoLoadingtraversetryCatchwrapKindDecodedKindDecoderKindUnknownDecoderAnyDecoderDecodedDecodeErrorDecoderIndexIntersectionKeyLeafManyPropertyUnionWrap_null_undefinedApplicableDecoderbindbindTobooleanCombinableDecodeErrorComposableDecoderFlatmappableDecodedFlatmappableDecoderMappableDecodernumberoptionalPremappableDecoderrequiredSchemableDecoderstringtapunknownWrappableDecoderaltannotateapplyarrayarrayNcombinecomposedatedimapdrawfailureflatmapfromDecodeErrorfromPredicateidindexErrinitintersectintersectionErrisIndexisIntersectionisKeyisLeafisManyisUnionisWrapjsonkeyErrlazyleafErrliteralmanyErrmapmatchnullablepartialpremaprecordrefinestructsuccesstupleundefinableunionunionErrunwrapwrapwrapErrKindEitherKindRightEitherEitherLeftRightApplicableEitherBimappableEitherbindbindToFailableEitherFlatmappableEitherFoldableEitherMappableEithertapTraversableEitherWrappableEitheraltapplybimapfailflatmapflatmapFirstfoldfromNullablefromPredicategetCombinableEithergetComparableEithergetFilterableEithergetFlatmappableRightgetInitializableEithergetLeftgetOrElsegetRightgetShowableEithergetSortableEitherisLeftisRightleftmapmapSecondmatchrecoverrightswaptraversetryCatchwrapKindFnEitherKindRightFnEitherAnyFnEitherFnEitherApplicableFnEitherBimappableFnEitherbindbindToComposableFnEitherFailableFnEitherFlatmappableFnEitherMappableFnEitherPremappableFnEithertapWrappableFnEitheraltapplybimapcomposedimapfailflatmapfromEitherfromFnfromPredicategetRightFlatmappableididLeftjoinleftmapmapSecondpremaprecoverrighttryCatchwrapKindFnAnyFnFnApplicableFnbindbindToComposableFnFlatmappableFnMappableFnPremappableFntapWrappableFnapplycomposeconstantcurry2dimapflatmapflowhandleThrowididentitymapmemoizeoverpipepremaptodotryCatchtryThunkunaryuncurry2unsafeCoercewrapKindIdentityIdentityApplicableIdentityFlatmappableIdentityMappableIdentityWrappableIdentityapplyflatmapmapwrapInitializableAnyInitializableTypeOfconstantdualgetCombineAllintercalcatestructtupleKindIterableApplicableIterablebindbindToFilterableIterableFlatmappableIterableFoldableIterableMappableIterabletapWrappableIterableapplyclonecollectcombinefilterfilterMapflatmapfoldforEachgetCombinablegetInitializablegetShowableinititerablemappartitionpartitionMaprangerepeatscantaketakeUntiltakeWhilewrapKindJsonBuilderJsonBuilderJsonSchemaJsonSchemaAllOfJsonSchemaAnyOfJsonSchemaArrayJsonSchemaBooleanJsonSchemaDateJsonSchemaDefinitionsJsonSchemaEnumJsonSchemaNullJsonSchemaNumberJsonSchemaObjectJsonSchemaOneOfJsonSchemaRefJsonSchemaStringJsonSchemaUnknownTypeOfapplyflatmapFlatmappableJsonBuildermapSchemableJsonBuildersequenceArraysequenceRecordwraparraybooleandateintersectlazyliteralnullablenumberpartialprintrecordstringstructtupleundefinableunionunknownKindKeyedReadonlyMapKindReadonlyMapKeyOfTypeOfBimappableMapFoldableMapMappableMapbimapcollectdeleteAtelementriesfoldgetCombinablegetComparablegetFlatmappableReadonlyMapgetShowableinitinsertinsertAtisEmptyisSubmapkeyslookuplookupWithKeymapmapSecondmembermodifymodifyAtpopreadonlyMapsingletonsizeupdateupdateAtvaluesAnyNewtypeNewtypeToValuegetCombinablegetComparablegetInitializablegetSortableisoprismKindNilNilApplicableNilbindbindToFilterableNilFlatmappableNilFoldableNilMappableNiltapTraversableNilWrappableNilaltapplyexistsfailfilterfilterMapflatmapfoldfromOptionfromPredicategetCombinableNilgetComparableNilgetInitializableNilgetOrElsegetShowableNilgetSortableNilinitisNilisNotNilmapmatchnilpartitionpartitionMaptoNulltoUndefinedtraversetryCatchwrapCombinableNumberMaxCombinableNumberMinCombinableNumberProductCombinableNumberSumComparableNumberInitializableNumberMaxInitializableNumberMinInitializableNumberProductInitializableNumberSumShowableNumberSortableNumberaddcomparedividesinitNegInfinitOneinitPosInfinitZeroltemodmultiplysortModifierOpticReviewerViewerAffineFoldAffineTagFoldFoldTagIsoLensLensTagPrismRefoldTagarrayfirstleftnilrecordrightsecondsetsometree_unsafeCastaffineFoldatKeyatMapcombineAllcomposecomposeReviewerfilterfoldfromPredicateidimapindexisokeylensmodifiermodifyopticprismproppropsrefoldreplacereviewreviewertraverseviewviewerwrapKindOptionNoneOptionSomeApplicableOptionbindbindToFilterableOptionFlatmappableOptionFoldableOptionMappableOptionnonetapTraversableOptionWrappableOptionaltapplyconstNoneexistsfailfilterfilterMapflatmapfoldfromNullablefromPredicategetCombinableOptiongetComparableOptiongetInitializableOptiongetOrElsegetShowableOptiongetSortableOptioninitisNoneisSomemapmapNullablematchpartitionpartitionMapsometoNulltoUndefinedtraversetryCatchwrapKindPairKindRightPairPairBimappablePairFoldablePairMappablePairTraversablePairbimapdupfirstfoldgetCombinablePairgetComparablePairgetFirstgetInitializablePairgetRightFlatmappablegetSecondgetShowablePairgetSortablePairmapmapSecondmergemergeSecondpairsecondswaptraverseunwrapKindPredicatePredicateandgetCombinableAllgetCombinableAnygetInitializableAllgetInitializableAnynotorpremapKindPromiseAnyPromiseDeferredTypeOfApplicablePromisebindbindToFlatmappablePromiseMappablePromisetapWrappablePromiseabortableallapplycatchErrordeferreddelayfailflatmapgetCombinablePromisegetInitializablePromisemapracerejectresolvethentryCatchwaitwrapKindReadonlyRecordAnyReadonlyRecordNonEmptyRecordReadonlyRecordTypeOfFilterableRecordFoldableRecordMappableRecordTraversableRecordcollapsecollectdeleteAtdeleteAtWithValueentriesfilterfilterMapfoldgetCombinableRecordgetComparableRecordgetInitializableRecordgetShowableRecordinsertinsertAtisSubrecordkeyslookupAtlookupWithKeymapmodifymodifyAtomitpartitionpartitionMappicksequencetraverseupdateupdateAtKindRefinementKindUnknownRefinementAnyRefinementRefinementToInToOutSchemableRefinementandarraybooleancomposefromEitherfromOptionidintersectisArrayisArrayNisRecordlazyliteralnullablenumberorpartialrecordstringstructtupleundefinableunionunknownArraySchemableBooleanSchemableIntersectSchemableLazySchemableLiteralSchemableNullableSchemableNumberSchemablePartialSchemableRecordSchemableSchemableStringSchemableStructSchemableTupleSchemableUndefinableSchemableUnionSchemableUnknownSchemableLiteralSchemaTypeOfschemaKindReadonlySetTypeOfApplicableSetbindbindToFilterableSetFlatmappableSetFoldableSetMappableSettapTraversableSetWrappableSetapplycompactcopyelemelemOfeveryfilterfilterMapflatmapfoldgetCombinableSetgetComparableSetgetInitializableSetgetShowableSetinitintersectionisSubsetjoinmappartitionpartitionMapsetsometraverseunionwrapKindSortableSortableOrderingSortbetweenclampfromCurriedSortfromSortgtgteltltemaxminpremapreversesignstructtrivialtupleKindStateStateApplicableStatebindbindToFlatmappableStateMappableStatetapWrappableStateapplyevaluateexecuteflatmapgetCombinableStategetInitializableStategetsidmapmodifyputstatewrapCombinableStringComparableStringInitializableStringShowableStringSortableStringcombinecompareendsWithincludesinitisEmptyisStringlengthmatchpluralreplaceslicesortsplitstartsWithtesttoLowerCasetoUpperCasetrimtrimEndtrimStartKindSyncEitherKindSyncRightSyncEitherApplicableSyncEitherBimappableSyncEitherbindbindToFailableSyncEitherFlatmappableSyncEitherFoldableSyncEitherMappableSyncEithertapWrappableSyncEitheraltapplyfailflatmapfoldfromEitherfromSyncgetCombinableSyncEithergetFlatmappableSyncRightgetInitializableSyncEitherleftmapmapSecondrecoverrighttryCatchwrapKindSyncSyncApplicableSyncbindbindToFlatmappableSyncFoldableSyncMappableSynctapTraversableSyncWrappableSyncapplyflatmapfoldgetCombinableSyncgetInitializableSyncmaptraversewrapKindRightTheseKindTheseBothLeftRightTheseBimappableTheseFoldableTheseMappableTheseTraversableThesebothfailfoldgetCombinableThesegetFlatmappableRightgetInitializableThesegetShowableTheseisBothisLeftisRightleftmapmapSecondmatchrighttraversewrap
mod.ts (default module)
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
N
array.ts
I
T
T
T
T
v
v
v
v
v
v
v
v
v
v
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
async_either.ts
I
T
v
v
v
v
v
v
v
v
v
v
v
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
async_iterable.ts
I
v
v
v
v
v
v
v
v
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
async.ts
I
T
v
v
v
v
v
v
v
f
f
f
f
f
f
f
f
f
f
boolean.ts
v
v
v
v
v
v
v
v
v
f
f
f
f
f
f
f
combinable.ts
I
T
T
T
f
f
f
f
f
f
f
f
f
f
f
comparable.ts
I
I
I
T
T
v
v
v
v
v
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
datum.ts
I
T
T
T
T
T
T
T
T
v
v
v
v
v
v
v
v
v
v
v
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
decoder.ts
I
I
I
T
T
T
T
T
T
T
T
T
T
T
T
v
v
v
v
v
v
v
v
v
v
v
v
v
v
v
v
v
v
v
v
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
either.ts
I
I
T
T
T
v
v
v
v
v
v
v
v
v
v
v
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
fn_either.ts
I
I
T
T
v
v
v
v
v
v
v
v
v
v
v
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
fn.ts
I
T
T
v
v
v
v
v
v
v
v
v
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
identity.ts
I
T
v
v
v
v
f
f
f
f
initializable.ts
I
T
T
f
f
f
f
f
f
iterable.ts
I
v
v
v
v
v
v
v
v
v
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
json_schema.ts
I
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
T
v
v
v
v
v
v
v
v
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
map.ts
I
I
T
T
v
v
v
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
newtype.ts
T
T
T
f
f
f
f
f
f
nil.ts
I
T
v
v
v
v
v
v
v
v
v
v
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
number.ts
v
v
v
v
v
v
v
v
v
v
v
f
f
f
f
f
f
f
f
f
f
f
optic.ts
I
I
I
I
T
T
v
T
T
v
T
T
T
v
T
T
T
v
v
v
v
v
v
v
v
v
v
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
option.ts
I
T
T
T
v
v
v
v
v
v
v
v
v
v
v
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
pair.ts
I
I
T
v
v
v
v
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
predicate.ts
I
T
f
f
f
f
f
f
f
f
promise.ts
I
T
T
T
v
v
v
v
v
v
v
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
record.ts
I
T
T
T
T
v
v
v
v
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
refinement.ts
I
I
T
T
T
T
v
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
schemable.ts
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
I
T
T
T
f
set.ts
I
T
v
v
v
v
v
v
v
v
v
v
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
sortable.ts
I
I
T
T
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
state.ts
I
T
v
v
v
v
v
v
v
f
f
f
f
f
f
f
f
f
f
f
f
f
string.ts
v
v
v
v
v
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
sync_either.ts
I
I
T
v
v
v
v
v
v
v
v
v
v
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
sync.ts
I
T
v
v
v
v
v
v
v
v
v
f
f
f
f
f
f
f
f
these.ts
I
I
T
T
T
T
v
v
v
v
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f
f