2 *new { ^this.shouldNotImplement(thisMethod) }
14 ascii { ^this.asString.ascii }
16 // the primitive fails to escape '
17 asCompileString { ^("'" ++ super.asString.escapeChar($') ++ "'") }
20 // if Symbol represents a class name then return the class, else return nil.
30 asSpec { ^Spec.specs.at(this) }
31 asWarp { arg spec; ^Warp.warps.at(this).new(spec) }
32 asTuning { ^TuningInfo.at(this) }
33 asScale { ^ScaleInfo.at(this) }
36 // returns true if last character of symbol is an underscore
42 // returns true if first character of symbol is a capital letter
45 _SymbolIsMetaClassName
46 // returns true if there is a meta class by this name
52 // returns true if symbol is a valid primitive name
56 // returns true if symbol names a bound primitive
57 ^this.isPrimitiveName and: { this.primitiveIndex > 0 }
61 // returns true if symbol starts with 'a' or 'c' followed by a number
63 isRest { ^this.isMap.not }
65 // Environment support
66 // The compiler translates use of an Environment variable like ~myvar
67 // to a call to one of these methods, for example:
68 // ~myvar = 5; translates to: 'myvar'.envirPut(5);
69 // the implementations have been replaced by primitives
72 ^currentEnvironment.at(this)
74 envirPut { arg aValue;
76 currentEnvironment.put(this, aValue);
80 blend { // Envelopes may call this on the curves inst var.
84 ++ { arg aString; ^this.asString ++ aString }
89 ^if(res[0].isAlphaNum) { res ++ ":" } { res }
92 applyTo { arg firstArg ... args;
93 ^firstArg.performList(this, args)
96 // support for math on symbols
98 performBinaryOpOnSomething { ^this }
161 bitHammingDistance { ^this }
162 hammingDistance { |that| ^this.asString.hammingDistance(that.asString) }
174 unsignedRightShift { ^this }
178 < { arg aNumber; _LT; ^this }
179 > { arg aNumber; _GT; ^this }
180 <= { arg aNumber; _LE; ^this }
181 >= { arg aNumber; _GE; ^this }
183 degreeToKey { ^this }
189 doComplexOp { ^this }
191 doListOp { arg aSelector, aList;
192 aList.collect({ arg item;
193 item.perform(aSelector, this)
198 _Symbol_PrimitiveIndex
199 ^this.primitiveFailed
202 // used by BasicOpUGens to get an ID number for the operator
204 ^this.primitiveFailed
207 printOn { arg stream;
208 stream.putAll(this.asString);
210 storeOn { arg stream;
211 stream.putAll(this.asCompileString);
215 codegen_UGenCtorArg { arg stream;
216 this.asString.codegen_UGenCtorArg(stream);
219 archiveAsCompileString { ^true }
221 kr { | val, lag, fixedLag = false |
222 ^NamedControl.kr(this, val, lag, fixedLag)
226 ^NamedControl.ir(this, val)
230 ^NamedControl.tr(this, val)
234 ^NamedControl.ar(this, val, lag)
237 matchOSCAddressPattern { arg addressPattern;
238 _Symbol_matchOSCPattern
239 ^this.primitiveFailed