packages feed

hsc3-db-0.9: sclang/UGenDB.sc

UGenDB {
	*haskell {
		var uu_a = UGen.allSubClassesOf.sort({|a, b| a.name < b.name;});
		var ignoring = ['BasicOpUGen', 'BinaryOpUGen', 'MulAdd', 'OutputProxy', 'PackFFT', 'Poll', 'UnaryOpUGen', 'UnpackFFT', 'LocalBuf', 'SendReply'];
		var uu = uu_a.reject({|u| ignoring.includes(u.name.asSymbol); });
		Date.getDate.format("-- AUTOGENERATED: %Y-%m-%d-%Hh%M").postln;
		"module Sound.SC3.UGen.DB.Data where".postln;
		"import Sound.SC3.UGen.Rate".postln;
		"data I = I { input_name :: String, input_default :: Double } deriving (Eq, Show)".postln;
		"data U = U { ugen_name :: String, ugen_operating_rates :: [Rate], ugen_default_rate :: Rate, ugen_inputs :: [I], ugen_outputs :: Integer } deriving (Eq, Show)".postln;
		"inf :: Double".postln;
		"inf = 10 ** 8".postln;
		"rcomplex :: Double".postln;
		"rcomplex = 3".postln;
		"ugenDB :: [U]".postln;
		"ugenDB = [ ".post;
		uu[0].ugenDBHaskell.postln;
		uu.drop(1).collect({|e| 
			/*e.name.asSymbol.postln;*/
			"         , ".post;
			e.ugenDBHaskell.postln;
		});
		"         ]".postln;
		"-- Local Variables:".postln;
		"-- truncate-lines:t".postln;
		"-- End:".postln;
	}
}