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 }
60 openTextFile { arg selectionStart=0, selectionLength=0;
61 ^this.asString.openTextFile(selectionStart, selectionLength)
64 // Environment support
65 // The compiler translates use of an Environment variable like ~myvar
66 // to a call to one of these methods, for example:
67 // ~myvar = 5; translates to: 'myvar'.envirPut(5);
68 // the implementations have been replaced by primitives
71 ^currentEnvironment.at(this)
73 envirPut { arg aValue;
75 currentEnvironment.put(this, aValue);
79 blend { // Envelopes may call this on the curves inst var.
83 ++ { arg aString; ^this.asString ++ aString }
88 ^if(res[0].isAlphaNum) { res ++ ":" } { res }
91 applyTo { arg firstArg ... args;
92 ^firstArg.performList(this, args)
95 // support for math on symbols
97 performBinaryOpOnSomething { ^this }
160 bitHammingDistance { ^this }
161 hammingDistance { |that| ^this.asString.hammingDistance(that.asString) }
173 unsignedRightShift { ^this }
177 < { arg aNumber; _LT; ^this }
178 > { arg aNumber; _GT; ^this }
179 <= { arg aNumber; _LE; ^this }
180 >= { arg aNumber; _GE; ^this }
182 degreeToKey { ^this }
188 doComplexOp { ^this }
190 doListOp { arg aSelector, aList;
191 aList.collect({ arg item;
192 item.perform(aSelector, this)
197 _Symbol_PrimitiveIndex
198 ^this.primitiveFailed
201 // used by BasicOpUGens to get an ID number for the operator
203 ^this.primitiveFailed
206 printOn { arg stream;
207 stream.putAll(this.asString);
209 storeOn { arg stream;
210 stream.putAll(this.asCompileString);
214 codegen_UGenCtorArg { arg stream;
215 this.asString.codegen_UGenCtorArg(stream);
218 archiveAsCompileString { ^true }
221 ^NamedControl.kr(this, val, lag)
225 ^NamedControl.ir(this, val)
229 ^NamedControl.tr(this, val)
233 ^NamedControl.ar(this, val, lag)
236 matchOSCAddressPattern { arg addressPattern;
237 _Symbol_matchOSCPattern
238 ^this.primitiveFailed