csound-expression-typed-0.0.6.1: typed core for the library csound-expression

Safe HaskellNone
LanguageHaskell98

Csound.Typed.Types.Tuple

Contents

Synopsis

Tuple

class Tuple a where Source

A tuple of Csound values.

Instances

Tuple Tab 
Tuple Unit 
Tuple Spec 
Tuple Str 
Tuple D 
Tuple Sig 
(Tuple a, Tuple b) => Tuple (a, b) 
(Tuple a, Tuple b, Tuple c) => Tuple (a, b, c) 
(Tuple a, Tuple b, Tuple c, Tuple d) => Tuple (a, b, c, d) 
(Tuple a, Tuple b, Tuple c, Tuple d, Tuple e) => Tuple (a, b, c, d, e) 
(Tuple a, Tuple b, Tuple c, Tuple d, Tuple e, Tuple f) => Tuple (a, b, c, d, e, f) 
(Tuple a, Tuple b, Tuple c, Tuple d, Tuple e, Tuple f, Tuple g) => Tuple (a, b, c, d, e, f, g) 
(Tuple a, Tuple b, Tuple c, Tuple d, Tuple e, Tuple f, Tuple g, Tuple h) => Tuple (a, b, c, d, e, f, g, h) 

makeTupleMethods :: Tuple a => (a -> b) -> (b -> a) -> TupleMethods b Source

Defines instance of type class Tuple for a new type in terms of an already defined one.

fromTuple :: Tuple a => a -> GE [E] Source

toTuple :: Tuple a => GE [E] -> a Source

tupleArity :: Tuple a => a -> Int Source

tupleRates :: Tuple a => a -> [Rate] Source

Outs

class Tuple a => Sigs a Source

The tuples of signals.

Instances

Sigs Sig 
Sigs ((Sig, Sig, Sig, Sig, Sig, Sig, Sig, Sig), (Sig, Sig, Sig, Sig, Sig, Sig, Sig, Sig)) 
Sigs (Sig, Sig) 
Sigs ((Sig, Sig, Sig, Sig, Sig, Sig, Sig, Sig), (Sig, Sig, Sig, Sig, Sig, Sig, Sig, Sig), (Sig, Sig, Sig, Sig, Sig, Sig, Sig, Sig), (Sig, Sig, Sig, Sig, Sig, Sig, Sig, Sig)) 
Sigs (Sig, Sig, Sig, Sig) 
Sigs (Sig, Sig, Sig, Sig, Sig, Sig) 
Sigs (Sig, Sig, Sig, Sig, Sig, Sig, Sig, Sig) 

outArity :: Tuple a => SE a -> Int Source

Multiple outs

multiOuts :: Tuple a => E -> a Source

ar2 :: (Sig, Sig) -> (Sig, Sig) Source

ar4 :: (Sig, Sig, Sig, Sig) -> (Sig, Sig, Sig, Sig) Source

ar6 :: (Sig, Sig, Sig, Sig, Sig, Sig) -> (Sig, Sig, Sig, Sig, Sig, Sig) Source

ar8 :: (Sig, Sig, Sig, Sig, Sig, Sig, Sig, Sig) -> (Sig, Sig, Sig, Sig, Sig, Sig, Sig, Sig) Source

Arguments

class Tuple a => Arg a Source

Instances

Arg Tab 
Arg Unit 
Arg Str 
Arg D 
(Arg a, Arg b) => Arg (a, b) 
(Arg a, Arg b, Arg c) => Arg (a, b, c) 
(Arg a, Arg b, Arg c, Arg d) => Arg (a, b, c, d) 
(Arg a, Arg b, Arg c, Arg d, Arg e) => Arg (a, b, c, d, e) 
(Arg a, Arg b, Arg c, Arg d, Arg e, Arg f) => Arg (a, b, c, d, e, f) 
(Arg a, Arg b, Arg c, Arg d, Arg e, Arg f, Arg h) => Arg (a, b, c, d, e, f, h) 
(Arg a, Arg b, Arg c, Arg d, Arg e, Arg f, Arg h, Arg g) => Arg (a, b, c, d, e, f, h, g) 

arg :: Arg a => Int -> a Source

toNote :: Arg a => a -> GE [E] Source

argArity :: Arg a => a -> Int Source

toArg :: Arg a => a Source

Logic functions

ifTuple :: Tuple a => BoolSig -> a -> a -> a Source

ifB for tuples of csound values.

guardedTuple :: Tuple b => [(BoolSig, b)] -> b -> b Source

guardedB for tuples of csound values.

caseTuple :: Tuple b => a -> [(a -> BoolSig, b)] -> b -> b Source

caseB for tuples of csound values.

ifArg :: (Arg a, Tuple a) => BoolD -> a -> a -> a Source

ifB for constants.

guardedArg :: (Tuple b, Arg b) => [(BoolD, b)] -> b -> b Source

guardedB for constants.

caseArg :: (Tuple b, Arg b) => a -> [(a -> BoolD, b)] -> b -> b Source

caseB for constants.

Constructors

pureTuple :: Tuple a => GE (MultiOut [E]) -> a Source

dirtyTuple :: Tuple a => GE (MultiOut [E]) -> SE a Source