Search results

toElement :: HTMLElement -> Element
P purescript-web-html M Web.HTML.HTMLElement
toElement :: forall e. IsElement e => e -> Element
P purescript-dom-classy M DOM.Classy.Element
currentTarget :: forall e. IsEvent e => e -> Element

Returns the Element the event is currently bubbling through

P purescript-dom-simple M DOM.Simple.Event
target :: forall e. IsEvent e => e -> Element

Returns the Element the event was dispatched against

P purescript-dom-simple M DOM.Simple.Event
unsafeEventTarget :: forall event. event -> Element
P purescript-reactix M Reactix.SyntheticEvent
abs :: forall a. Ord a => Ring a => a -> a

The absolute value function. abs x is defined as if x >= zero then x else negate x.

P purescript-prelude M Data.Ord
from :: forall a rep. Generic a rep => a -> rep
P purescript-prelude M Data.Generic.Rep
genericNot :: forall a rep. Generic a rep => GenericHeytingAlgebra rep => a -> a

A Generic implementation of the not member from the HeytingAlgebra type class.

P purescript-prelude M Data.HeytingAlgebra.Generic
genericNot' :: forall a. GenericHeytingAlgebra a => a -> a
P purescript-prelude M Data.HeytingAlgebra.Generic
negate :: forall a. Ring a => a -> a

negate x can be used as a shorthand for zero - x.

P purescript-prelude M Data.Ring
not :: forall a. HeytingAlgebra a => a -> a
P purescript-prelude M Data.HeytingAlgebra
recip :: forall a. DivisionRing a => a -> a
P purescript-prelude M Data.DivisionRing
signum :: forall a. Ord a => Ring a => a -> a

The sign function; returns one if the argument is positive, negate one if the argument is negative, or zero if the argument is zero. For floating point numbers with signed zeroes, when called with a zero, this function returns the argument in order to preserve the sign. For any x, we should have signum x * abs x == x.

P purescript-prelude M Data.Ord
to :: forall a rep. Generic a rep => rep -> a
P purescript-prelude M Data.Generic.Rep
unwrap :: forall t a. Newtype t a => t -> a
P purescript-newtype M Data.Newtype
wrap :: forall t a. Newtype t a => a -> t
P purescript-newtype M Data.Newtype
unsafeCoerce :: forall a b. a -> b

A highly unsafe function, which can be used to persuade the type system that any type is the same as any other type. When using this function, it is your (that is, the caller's) responsibility to ensure that the underlying representation for both types is the same.

Because this function is extraordinarily flexible, type inference can greatly suffer. It is highly recommended to define specializations of this function rather than using it as-is. For example:

fromBoolean :: Boolean -> Json
fromBoolean = unsafeCoerce

This way, you won't have any nasty surprises due to the inferred type being different to what you expected.

After the v0.14.0 PureScript release, some of what was accomplished via unsafeCoerce can now be accomplished via coerce from purescript-safe-coerce. See that library's documentation for more context.

P purescript-unsafe-coerce M Unsafe.Coerce
inj :: forall a b. Inject a b => a -> b
P purescript-either M Data.Either.Inject
unsafePartial :: forall a. (Partial => a) -> a

Discharge a partiality constraint, unsafely.

P purescript-partial M Partial.Unsafe
from :: forall a b. TypeEquals a b => b -> a
P purescript-type-equality M Type.Equality
to :: forall a b. TypeEquals a b => a -> b
P purescript-type-equality M Type.Equality
convertDuration :: forall a b. Duration a => Duration b => a -> b

Converts directly between durations of differing types.

P purescript-datetime M Data.Time.Duration
negateDuration :: forall a. Duration a => a -> a

Negates a duration, turning a positive duration negative or a negative duration positive.

P purescript-datetime M Data.Time.Duration
coerce :: forall a b. Coercible a b => a -> b

Coerce a value of one type to a value of some other type, without changing its runtime representation. This function behaves identically to unsafeCoerce at runtime. Unlike unsafeCoerce, it is safe, because the Coercible constraint prevents any use of this function from compiling unless the compiler can prove that the two types have the same runtime representation.

One application for this function is to avoid doing work that you know is a no-op because of newtypes. For example, if you have an Array (Conj a) and you want an Array (Disj a), you could do Data.Array.map (un Conj >>> Disj), but this performs an unnecessary traversal of the array, with O(n) cost. coerce accomplishes the same with only O(1) cost:

mapConjToDisj :: forall a. Array (Conj a) -> Array (Disj a)
mapConjToDisj = coerce
P purescript-safe-coerce M Safe.Coerce
div10 :: forall x q. Div10 x q => x -> q
P purescript-typelevel M Data.Typelevel.Num.Ops
isDivBy :: forall d x. IsDivBy d x => d -> x
P purescript-typelevel M Data.Typelevel.Num.Ops
mul10 :: forall x q. Mul10 x q => x -> q
P purescript-typelevel M Data.Typelevel.Num.Ops
not :: forall b1 b2. Not b1 b2 => b1 -> b2
P purescript-typelevel M Data.Typelevel.Bool
pred :: forall x y. Pred x y => x -> y
P purescript-typelevel M Data.Typelevel.Num.Ops
succ :: forall x y. Succ x y => x -> y
P purescript-typelevel M Data.Typelevel.Num.Ops
cast :: forall a b. Castable a b => a -> b
P purescript-untagged-union M Untagged.Castable
coerce :: forall expected given. Coerce given expected => given -> expected
P purescript-undefined-is-not-a-problem M Data.Undefined.NoProblem.Closed
coerce :: forall expected given. Coerce given expected => given -> expected
P purescript-undefined-is-not-a-problem M Data.Undefined.NoProblem.Open
ginverse :: forall g. Group g => g -> g
P purescript-group M Data.Group
convertTo :: forall t f r. Recursive t f => Corecursive r f => t -> r
P purescript-matryoshka M Matryoshka.Refold
fill :: forall partial complete. Fillable partial complete => partial -> complete
P purescript-justifill M Justifill.Fillable
justify :: forall unjust just. Justifiable unjust just => unjust -> just
P purescript-justifill M Justifill.Justifiable
mnegateL :: forall r x. LeftModule x r => x -> x
P purescript-modules M Data.Ring.Module
mnegateR :: forall r x. RightModule x r => x -> x
P purescript-modules M Data.Ring.Module
nextPrime :: forall a. Ord a => Semiring a => EuclideanRing a => a -> a

Ad infinitum

P purescript-sparse-polynomials M Data.Sparse.Polynomial
pad :: forall @n a b. Pad n a b => a -> b
P purescript-sparse-polynomials M Data.Sparse.Polynomial
unpad :: forall @n a b. Unpad n a b => b -> a
P purescript-sparse-polynomials M Data.Sparse.Polynomial
area :: forall s n. ToSize n s => Semiring n => s -> n

Get the area of a size

P purescript-polymorphic-vectors M Data.Vector.Polymorphic
convertPos :: forall p1 p2 n. ToPos n p1 => FromPos n p2 => p1 -> p2
P purescript-polymorphic-vectors M Data.Vector.Polymorphic
convertRegion :: forall p1 p2 n. ToRegion n p1 => FromRegion n p2 => p1 -> p2
P purescript-polymorphic-vectors M Data.Vector.Polymorphic
convertSize :: forall p1 p2 n. ToSize n p1 => FromSize n p2 => p1 -> p2
P purescript-polymorphic-vectors M Data.Vector.Polymorphic
init :: forall fn a. Init fn a => fn -> a
P purescript-classless M Classless
initProduct :: forall f a. InitProduct f a => f -> a
P purescript-classless M Classless
measure :: forall a v. Measured a v => a -> v
P purescript-sequences M Data.Sequence.Internal
midPos :: forall s p n. ToRegion n s => FromPos n p => EuclideanRing n => s -> p

Get the center position of a region

P purescript-polymorphic-vectors M Data.Vector.Polymorphic