This file is indexed.

/usr/share/SuperCollider/HelpSource/Classes/Nil.schelp is in supercollider-common 1:3.6.3~repack-5.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
class::Nil
categories::Core
summary::Represents uninitialized data

description::

Nil has a single instance named nil and is used to represent uninitialized data,
bad values, or terminal values such as end-of-stream.

instancemethods::

private::do, reverseDo, pairsDo, collect, select, reject, detect, collectAs, selectAs, rejectAs, pop, source, source_, changed, 	addDependant, removeDependant, release, update, swapThisGroup, performMsg, remove, seconds_, throw, superclassesDo, !?, play, printOn, storeOn, archiveAsCompileString, set, addDependant


method::isNil
Answers true because this is nil. In class Object this message is defined to answer false.

method::notNil
Answer false. In class Object this message answers true.

method::?

return first non-nil argument. Since this IS nil then return anObject.
In class link::Classes/Object::, ? is defined to answer the receiver.

method::??
If the receiver is nil, value the function and return the result.  Since this IS nil, then value the function and return the result. In class Object, ?? is defined to answer the receiver.

method::add
Returns an array with the value. This makes it unecessary to initialize when adding to a variable.

method::addAll
Returns an array with all the values. This makes it unecessary to initialize when adding to a variable.

method::remove
Returns nil. This makes it unecessary to initialize when adding to a variable.

method::++
Returns an array with all the values. This makes it unecessary to initialize when adding to a variable.

method::booleanValue
Returns false.

method::rate
Returns nil.

method::numChannels
Returns nil.

method::isPlaying
Returns false.

method::dependants
Returns an empty IdentitySet.

method::transformEvent
Return the argument.

method::awake
Returns nil.

method::nextTimeOnGrid
Returns clock.nextTimeOnGrid.

method::asQuant
Returns Quant.default.

method::matchItem
Returns true.

method::add
Returns an array with item.

method::addAll
Returns array.asArray.

method::++
Returns array.

method::asCollection
Returns empty array.

method::get
Returns prevVal.

method::addFunc
Returns the function or a FunctionList.

method::removeFunc
Returns Nil.

method::asSpec
Returns the default ControlSpec

method::handleError
Either report error or inspect error and halt execution.

method::push
Executes function.

method::appendStream
Retuns stream.

subsection::Dependancy

All the messages for the Dependancy protocol (See class link::Classes/Object::) are defined in class Nil
to do nothing. This eliminates the need to check for nil when sending dependancy messages.

subsection::Other Methods

Many other messages are defined in class Nil to do nothing. This eliminates the need to check for nil.