large-anon-0.3.0: Scalable anonymous records
Safe HaskellSafe-Inferred
LanguageHaskell2010

Data.Record.Anon.Overloading

Description

Restore "regular" environment when using RebindableSyntax

The RebindableSyntax extension is currently required when using OverloadedRecordUpdate, but when using this extension, a number of functions are suddenly no longer in scope that normally are. This module restores those functions to their standard definition.

Synopsis

Documentation

module Prelude

app :: ArrowApply a => a (a b c, b) c #

arr :: Arrow a => (b -> c) -> a b c #

Lift a function to an arrow.

first :: Arrow a => a b c -> a (b, d) (c, d) #

Send the first component of the input through the argument arrow, and copy the rest unchanged to the output.

loop :: ArrowLoop a => a (b, d) (c, d) -> a b c #

(>>>) :: forall {k} cat (a :: k) (b :: k) (c :: k). Category cat => cat a b -> cat b c -> cat a c infixr 1 #

Left-to-right composition

(|||) :: ArrowChoice a => a b d -> a c d -> a (Either b c) d infixr 2 #

Fanin: Split the input between the two argument arrows and merge their outputs.

The default definition may be overridden with a more efficient version if desired.

fromLabel :: IsLabel x a => a #

getField :: HasField x r a => r -> a #

Selector function to extract the field from the record.

New definitions

ifThenElse :: Bool -> a -> a -> a Source #

setField :: forall x r a. HasField x r a => r -> a -> r Source #