Safe Haskell | Safe-Inferred |
---|---|
Language | Haskell98 |
Enumerations of the unary and binary math unit generators. Names
that conflict with existing names have a _
suffix.
- data Unary
- = Neg
- | Not
- | IsNil
- | NotNil
- | BitNot
- | Abs
- | AsFloat
- | AsInt
- | Ceil
- | Floor
- | Frac
- | Sign
- | Squared
- | Cubed
- | Sqrt
- | Exp
- | Recip
- | MIDICPS
- | CPSMIDI
- | MIDIRatio
- | RatioMIDI
- | DbAmp
- | AmpDb
- | OctCPS
- | CPSOct
- | Log
- | Log2
- | Log10
- | Sin
- | Cos
- | Tan
- | ArcSin
- | ArcCos
- | ArcTan
- | SinH
- | CosH
- | TanH
- | Rand_
- | Rand2
- | LinRand_
- | BiLinRand
- | Sum3Rand
- | Distort
- | SoftClip
- | Coin
- | DigitValue
- | Silence
- | Thru
- | RectWindow
- | HanWindow
- | WelchWindow
- | TriWindow
- | Ramp_
- | SCurve
- parse_unary :: Case_Rule -> String -> Maybe Unary
- unaryTable :: [(Unary, String)]
- unaryName :: Int -> String
- unaryIndex :: Case_Rule -> String -> Maybe Int
- is_unary :: Case_Rule -> String -> Bool
- data Binary
- = Add
- | Sub
- | Mul
- | IDiv
- | FDiv
- | Mod
- | EQ_
- | NE
- | LT_
- | GT_
- | LE
- | GE
- | Min
- | Max
- | BitAnd
- | BitOr
- | BitXor
- | LCM
- | GCD
- | Round
- | RoundUp
- | Trunc
- | Atan2
- | Hypot
- | Hypotx
- | Pow
- | ShiftLeft
- | ShiftRight
- | UnsignedShift
- | Fill
- | Ring1
- | Ring2
- | Ring3
- | Ring4
- | DifSqr
- | SumSqr
- | SqrSum
- | SqrDif
- | AbsDif
- | Thresh
- | AMClip
- | ScaleNeg
- | Clip2
- | Excess
- | Fold2
- | Wrap2
- | FirstArg
- | RandRange
- | ExpRandRange
- parse_binary :: Case_Rule -> String -> Maybe Binary
- binaryTable :: [(Binary, String)]
- binaryName :: Int -> String
- binaryIndex :: Case_Rule -> String -> Maybe Int
- is_binary :: Case_Rule -> String -> Bool
- resolve_operator :: Case_Rule -> String -> (String, Maybe Int)
Unary
Enumeration of SC3
unary operator UGens.
parse_unary :: Case_Rule -> String -> Maybe Unary Source
Type-specialised parse_enum
.
unaryTable :: [(Unary, String)] Source
Table of symbolic names for standard unary operators.
unaryIndex :: Case_Rule -> String -> Maybe Int Source
Given name of unary operator derive index.
mapMaybe (unaryIndex True) (words "NEG CUBED") == [0,13] unaryIndex True "SinOsc" == Nothing
is_unary :: Case_Rule -> String -> Bool Source
isJust
of unaryIndex
.
map (is_unary True) (words "ABS MIDICPS NEG") map (is_unary True) (words "- RAND")
Binary
Enumeration of SC3
unary operator UGens.
parse_binary :: Case_Rule -> String -> Maybe Binary Source
Type-specialised parse_enum
.
binaryTable :: [(Binary, String)] Source
Table of symbolic names for standard binary operators.
binaryName :: Int -> String Source
Lookup possibly symbolic name for standard binary operators.
map binaryName [1,2,8,12] == ["-","*","<","Min"]
binaryIndex :: Case_Rule -> String -> Maybe Int Source
Given name of binary operator derive index.
mapMaybe (binaryIndex True) (words "* MUL RING1") == [2,2,30] binaryIndex True "SINOSC" == Nothing
is_binary :: Case_Rule -> String -> Bool Source
isJust
of binaryIndex
.
map (is_binary True) (words "== > % TRUNC MAX")