music21.documentation.documenters

AttributeDocumenter

class music21.documentation.documenters.AttributeDocumenter(referent, memberName, definingClass)

A documenter for class attributes, both read/write and read-only:

>>> attribute = key.KeySignature.sharps
>>> documenter = documentation.documenters.AttributeDocumenter(
...     attribute, 'sharps', key.KeySignature)
>>> documenter
<music21.documentation.documenters.AttributeDocumenter: music21.key.KeySignature.sharps>
>>> documenter.rstCrossReferenceString
':attr:`~music21.key.KeySignature.sharps`'
>>> for line in documenter.rstAutodocDirectiveFormat:
...     line
'.. autoattribute:: music21.key.KeySignature.sharps'
''

AttributeDocumenter bases

AttributeDocumenter read-only properties

AttributeDocumenter.rstAutodocDirectiveFormat
AttributeDocumenter.sphinxCrossReferenceRole

Read-only properties inherited from MemberDocumenter:

Read-only properties inherited from ObjectDocumenter:

Read-only properties inherited from Documenter:

AttributeDocumenter methods

Methods inherited from MemberDocumenter:

Methods inherited from Documenter:

AttributeDocumenter instance variables

Instance variables inherited from MemberDocumenter:

Instance variables inherited from ObjectDocumenter:

ClassDocumenter

class music21.documentation.documenters.ClassDocumenter(referent=None)

A documenter for one class:

>>> klass = articulations.Caesura
>>> documenter = documentation.documenters.ClassDocumenter(klass)
>>> documenter
<music21.documentation.documenters.ClassDocumenter: music21.articulations.Caesura>
>>> documenter.referent
<class 'music21.articulations.Caesura'>
>>> documenter.rstCrossReferenceString
':class:`~music21.articulations.Caesura`'
>>> for line in documenter.rstAutodocDirectiveFormat:
...     line
...
'.. autoclass:: music21.articulations.Caesura'
''

Generate the ReST lines by calling run on the documenter:

>>> rstList = documenter.run()
>>> for l in rstList:
...     if len(l) != 0:
...         print(l)
Caesura
-------
.. autoclass:: music21.articulations.Caesura
.. rubric:: :class:`~music21.articulations.Caesura` bases
- :class:`~music21.articulations.Articulation`
- :class:`~music21.base.Music21Object`
.. rubric:: :class:`~music21.articulations.Caesura` read-only properties
Read-only properties inherited from :class:`~music21.articulations.Articulation`:
.. hlist::
   :columns: 3
   - :attr:`~music21.articulations.Articulation.name`
Read-only properties inherited from :class:`~music21.base.Music21Object`:
.. hlist::
   :columns: 3
   - :attr:`~music21.base.Music21Object.beat`
   - :attr:`~music21.base.Music21Object.beatDuration`
            ...
   - :attr:`~music21.base.Music21Object.measureNumber`
.. rubric:: :class:`~music21.articulations.Caesura` read/write properties
Read/write properties inherited from :class:`~music21.articulations.Articulation`:
.. hlist::
   :columns: 3
   - :attr:`~music21.articulations.Articulation.volumeShift`
Read/write properties inherited from :class:`~music21.base.Music21Object`:
.. hlist::
   :columns: 3
   - :attr:`~music21.base.Music21Object.activeSite`
   - :attr:`~music21.base.Music21Object.derivation`
            ...
   - :attr:`~music21.base.Music21Object.seconds`
.. rubric:: :class:`~music21.articulations.Caesura` methods
Methods inherited from :class:`~music21.base.Music21Object`:
.. hlist::
   :columns: 3
   - :meth:`~music21.base.Music21Object.containerHierarchy`
   - :meth:`~music21.base.Music21Object.contextSites`
   - :meth:`~music21.base.Music21Object.getAllContextsByClass`
            ...
   - :meth:`~music21.base.Music21Object.splitAtQuarterLength`
   - :meth:`~music21.base.Music21Object.splitByQuarterLengths`
   - :meth:`~music21.base.Music21Object.write`
.. rubric:: :class:`~music21.articulations.Caesura` instance variables
Instance variables inherited from :class:`~music21.base.Music21Object`:
.. hlist::
   :columns: 3
   - :attr:`~music21.base.Music21Object.classSortOrder`
   - :attr:`~music21.base.Music21Object.groups`
   - :attr:`~music21.base.Music21Object.hideObjectOnPrint`
   - :attr:`~music21.base.Music21Object.id`
   - :attr:`~music21.base.Music21Object.isStream`
   - :attr:`~music21.base.Music21Object.xPosition`    

ClassDocumenter bases

ClassDocumenter read-only properties

ClassDocumenter.baseClassDocumenters
ClassDocumenter.baseClasses
>>> d = documentation.documenters.ClassDocumenter(articulations.Caesura)
>>> d.baseClasses
(<class 'music21.articulations.Articulation'>, 
 <class 'music21.base.Music21Object'>)
ClassDocumenter.docAttr

The music21 _DOC_ATTR definition for a documented class:

>>> klass = stream.Stream
>>> documenter = documentation.documenters.ClassDocumenter(klass)
>>> for key in sorted(list(documenter.docAttr.keys())):
...     key
...
'autoSort'
'definesExplicitPageBreaks'
'definesExplicitSystemBreaks'
'isFlat'
'isSorted'
'recursionType'
ClassDocumenter.docOrder

The music21 _DOC_ORDER definition for a documented class:

>>> klass = dynamics.Dynamic
>>> documenter = documentation.documenters.ClassDocumenter(klass)
>>> for name in documenter.docOrder:
...     name
'longName'
'englishName'
ClassDocumenter.inheritedDocAttrMapping

A mapping of parent class documenters and doc-attr attribute dicts for a documented class:

>>> klass = stream.Measure
>>> documenter = documentation.documenters.ClassDocumenter(klass)
>>> mapping = documenter.inheritedDocAttrMapping
>>> sortBy = lambda x: x.referentPackagesystemPath
>>> for classDocumenter in sorted(mapping, key=sortBy):
...     classDocumenter
...
<music21.documentation.documenters.ClassDocumenter: music21.base.Music21Object>
<music21.documentation.documenters.ClassDocumenter: music21.stream.Stream>
ClassDocumenter.inheritedMethodsMapping

A mapping of parent class documenters and inherited attributes for a documented class:

>>> klass = stream.Measure
>>> documenter = documentation.documenters.ClassDocumenter(klass)
>>> mapping = documenter.inheritedMethodsMapping
>>> sortBy = lambda x: x.referentPackagesystemPath
>>> for classDocumenter in sorted(mapping, key=sortBy):
...     print('{0}:'.format(
...         classDocumenter.referentPackagesystemPath))
...     for attributeDocumenter in mapping[classDocumenter][:10]:
...         print('- {0}'.format(
...             attributeDocumenter.referentPackagesystemPath))
...
music21.base.Music21Object:
- music21.base.Music21Object.containerHierarchy
- music21.base.Music21Object.contextSites      
- music21.base.Music21Object.getAllContextsByClass
- music21.base.Music21Object.getContextByClass
- music21.base.Music21Object.getOffsetBySite
- music21.base.Music21Object.getOffsetInHierarchy
- music21.base.Music21Object.getSpannerSites
- music21.base.Music21Object.informSites
- music21.base.Music21Object.isClassOrSubclass
- music21.base.Music21Object.next
music21.stream.Stream:
- music21.stream.Stream.activateVariants
- music21.stream.Stream.addGroupForElements
- music21.stream.Stream.allPlayingWhileSounding
- music21.stream.Stream.analyze
- music21.stream.Stream.append
- music21.stream.Stream.attachIntervalsBetweenStreams
- music21.stream.Stream.attachMelodicIntervals
- music21.stream.Stream.attributeCount
- music21.stream.Stream.augmentOrDiminish
- music21.stream.Stream.beatAndMeasureFromOffset
music21.stream.core.StreamCoreMixin:
- music21.stream.core.StreamCoreMixin.asTimespans
- music21.stream.core.StreamCoreMixin.asTree
- music21.stream.core.StreamCoreMixin.coreGatherMissingSpanners
- music21.stream.core.StreamCoreMixin.elementsChanged        
ClassDocumenter.inheritedReadonlyPropertiesMapping

A mapping of parent class documenters and inherited read-only properties for a documented class:

>>> klass = stream.Measure
>>> documenter = documentation.documenters.ClassDocumenter(klass)
>>> mapping = documenter.inheritedReadonlyPropertiesMapping
>>> sortBy = lambda x: x.referentPackagesystemPath
>>> for classDocumenter in sorted(mapping, key=sortBy):
...     print('{0}:'.format(
...         classDocumenter.referentPackagesystemPath))
...     for attributeDocumenter in mapping[classDocumenter][:10]:
...         print('- {0}'.format(
...             attributeDocumenter.referentPackagesystemPath))
...
music21.base.Music21Object:
- music21.base.Music21Object.classSet
- music21.base.Music21Object.classes
- music21.base.Music21Object.measureNumber
music21.stream.Stream:
- music21.stream.Stream.beat
- music21.stream.Stream.beatDuration
- music21.stream.Stream.beatStr
- music21.stream.Stream.beatStrength
- music21.stream.Stream.flat
- music21.stream.Stream.highestOffset
- music21.stream.Stream.highestTime
- music21.stream.Stream.isGapless
- music21.stream.Stream.iter
- music21.stream.Stream.lowestOffset
music21.stream.core.StreamCoreMixin:
- music21.stream.core.StreamCoreMixin.spannerBundle
ClassDocumenter.inheritedReadwritePropertiesMapping

A mapping of parent class documenters and inherited read/write properties for a documented class:

>>> klass = stream.Measure
>>> documenter = documentation.documenters.ClassDocumenter(klass)
>>> mapping = documenter.inheritedReadwritePropertiesMapping
>>> sortBy = lambda x: x.referentPackagesystemPath
>>> for classDocumenter in sorted(mapping, key=sortBy):
...     print('{0}:'.format(classDocumenter.referentPackagesystemPath))
...     for attributeDocumenter in mapping[classDocumenter][:10]:
...         print('- {0}'.format(attributeDocumenter.referentPackagesystemPath))
...
music21.base.Music21Object:
- music21.base.Music21Object.activeSite
- music21.base.Music21Object.derivation
- music21.base.Music21Object.offset
- music21.base.Music21Object.priority
- music21.base.Music21Object.quarterLength
music21.stream.Stream:
- music21.stream.Stream.atSoundingPitch
- music21.stream.Stream.clef
- music21.stream.Stream.duration
- music21.stream.Stream.elements
- music21.stream.Stream.finalBarline
- music21.stream.Stream.keySignature
- music21.stream.Stream.metadata
- music21.stream.Stream.seconds
- music21.stream.Stream.timeSignature
ClassDocumenter.methods

The method documenters for a documented class:

>>> klass = stream.Stream
>>> documenter = documentation.documenters.ClassDocumenter(klass)
>>> for method in documenter.methods[:10]:
...     method
...
<music21.documentation.documenters.MethodDocumenter: 
    music21.stream.Stream.activateVariants>
<music21.documentation.documenters.MethodDocumenter: 
    music21.stream.Stream.addGroupForElements>
<music21.documentation.documenters.MethodDocumenter: 
    music21.stream.Stream.allPlayingWhileSounding>
<music21.documentation.documenters.MethodDocumenter: 
    music21.stream.Stream.analyze>
<music21.documentation.documenters.MethodDocumenter: 
    music21.stream.Stream.append>
<music21.documentation.documenters.MethodDocumenter: 
    music21.stream.Stream.attachIntervalsBetweenStreams>
<music21.documentation.documenters.MethodDocumenter: 
    music21.stream.Stream.attachMelodicIntervals>
<music21.documentation.documenters.MethodDocumenter: 
    music21.stream.Stream.attributeCount>
<music21.documentation.documenters.MethodDocumenter: 
    music21.stream.Stream.augmentOrDiminish>
<music21.documentation.documenters.MethodDocumenter: 
    music21.stream.Stream.beatAndMeasureFromOffset>
ClassDocumenter.readonlyProperties

The read-only property documenters for a documented class:

>>> klass = stream.Stream
>>> documenter = documentation.documenters.ClassDocumenter(klass)
>>> for attr in documenter.readonlyProperties:
...     attr
...
<music21.documentation.documenters.AttributeDocumenter: music21.stream.Stream.beat>
<music21.documentation.documenters.AttributeDocumenter: music21.stream.Stream.beatDuration>
<music21.documentation.documenters.AttributeDocumenter: music21.stream.Stream.beatStr>
<music21.documentation.documenters.AttributeDocumenter: music21.stream.Stream.beatStrength>
<music21.documentation.documenters.AttributeDocumenter: music21.stream.Stream.flat>
<music21.documentation.documenters.AttributeDocumenter: music21.stream.Stream.highestOffset>
<music21.documentation.documenters.AttributeDocumenter: music21.stream.Stream.highestTime>
<music21.documentation.documenters.AttributeDocumenter: music21.stream.Stream.isGapless>
<music21.documentation.documenters.AttributeDocumenter: music21.stream.Stream.iter>
<music21.documentation.documenters.AttributeDocumenter: music21.stream.Stream.lowestOffset>
<music21.documentation.documenters.AttributeDocumenter: music21.stream.Stream.notes>
<music21.documentation.documenters.AttributeDocumenter: music21.stream.Stream.notesAndRests>
<music21.documentation.documenters.AttributeDocumenter: music21.stream.Stream.pitches>
<music21.documentation.documenters.AttributeDocumenter: music21.stream.Stream.secondsMap>
<music21.documentation.documenters.AttributeDocumenter: music21.stream.Stream.semiFlat>
<music21.documentation.documenters.AttributeDocumenter: music21.stream.Stream.sorted>
<music21.documentation.documenters.AttributeDocumenter: music21.stream.Stream.spanners>
<music21.documentation.documenters.AttributeDocumenter: music21.stream.Stream.variants>
<music21.documentation.documenters.AttributeDocumenter: music21.stream.Stream.voices>
ClassDocumenter.readwriteProperties

The read/write property documenters for a documented class:

>>> klass = stream.Stream
>>> documenter = documentation.documenters.ClassDocumenter(klass)
>>> for prop in documenter.readwriteProperties:
...     prop
...
<music21.documentation.documenters.AttributeDocumenter: 
    music21.stream.Stream.atSoundingPitch>
<music21.documentation.documenters.AttributeDocumenter: music21.stream.Stream.clef>
<music21.documentation.documenters.AttributeDocumenter: music21.stream.Stream.duration>
<music21.documentation.documenters.AttributeDocumenter: music21.stream.Stream.elements>
<music21.documentation.documenters.AttributeDocumenter: music21.stream.Stream.finalBarline>
<music21.documentation.documenters.AttributeDocumenter: music21.stream.Stream.keySignature>
<music21.documentation.documenters.AttributeDocumenter: music21.stream.Stream.metadata>
<music21.documentation.documenters.AttributeDocumenter: music21.stream.Stream.seconds>
<music21.documentation.documenters.AttributeDocumenter: music21.stream.Stream.timeSignature>
ClassDocumenter.referentPackagesystemPath
ClassDocumenter.rstAutodocDirectiveFormat
ClassDocumenter.rstBasesFormat

The ReST format for the bases from which the documented class inherits:

>>> klass = documentation.documenters.ClassDocumenter
>>> documenter = documentation.documenters.ClassDocumenter(klass)
>>> for line in documenter.rstBasesFormat:
...     line
...
'.. rubric:: :class:`~music21.documentation.documenters.ClassDocumenter` bases'
''
'- :class:`~music21.documentation.documenters.ObjectDocumenter`'
'- :class:`~music21.documentation.documenters.Documenter`'
''
ClassDocumenter.rstDocAttrFormat
ClassDocumenter.rstInheritedDocAttrFormat
ClassDocumenter.rstInheritedMethodsFormat

The ReST format for inherited methods:

>>> klass = documentation.documenters.MethodDocumenter
>>> documenter = documentation.documenters.ClassDocumenter(klass)
>>> for line in documenter.rstInheritedMethodsFormat:
...     line
...
'Methods inherited from :class:`~music21.documentation.documenters.MemberDocumenter`:'
''
'.. hlist::'
'   :columns: 3'
''
'   - :meth:`~music21.documentation.documenters.MemberDocumenter.run`'
''
'Methods inherited from :class:`~music21.documentation.documenters.Documenter`:'
''
'.. hlist::'
'   :columns: 3'
''
'   - :meth:`~music21.documentation.documenters.Documenter.makeHeading`'
'   - :meth:`~music21.documentation.documenters.Documenter.makeRubric`'
''
ClassDocumenter.rstInheritedReadonlyPropertiesFormat

The ReST format for inherited methods:

>>> klass = note.Note
>>> documenter = documentation.documenters.ClassDocumenter(klass)
>>> for line in documenter.rstInheritedReadonlyPropertiesFormat:
...     line
'Read-only properties inherited from :class:`~music21.base.Music21Object`:'
''
'.. hlist::'
'   :columns: 3'
''
'   - :attr:`~music21.base.Music21Object.beat`'
'   - :attr:`~music21.base.Music21Object.beatDuration`'
'   - :attr:`~music21.base.Music21Object.beatStr`'
'   - :attr:`~music21.base.Music21Object.beatStrength`'
'   - :attr:`~music21.base.Music21Object.classSet`'
'   - :attr:`~music21.base.Music21Object.classes`'
'   - :attr:`~music21.base.Music21Object.measureNumber`'
''
ClassDocumenter.rstInheritedReadwritePropertiesFormat

The ReST format for inherited methods:

>>> klass = note.Unpitched
>>> documenter = documentation.documenters.ClassDocumenter(klass)
>>> for line in documenter.rstInheritedReadwritePropertiesFormat:
...     line
'Read/write properties inherited from :class:`~music21.note.NotRest`:'
''
'.. hlist::'
'   :columns: 3'
''
'   - :attr:`~music21.note.NotRest.notehead`'
'   - :attr:`~music21.note.NotRest.noteheadFill`'
'   - :attr:`~music21.note.NotRest.noteheadParenthesis`'
'   - :attr:`~music21.note.NotRest.stemDirection`'
'   - :attr:`~music21.note.NotRest.volume`'
''
'Read/write properties inherited from :class:`~music21.note.GeneralNote`:'
''
'.. hlist::'
'   :columns: 3'
''
'   - :attr:`~music21.note.GeneralNote.color`'
'   - :attr:`~music21.note.GeneralNote.editorial`'
'   - :attr:`~music21.note.GeneralNote.lyric`'
''
'Read/write properties inherited from :class:`~music21.base.Music21Object`:'
''
'.. hlist::'
'   :columns: 3'
''
'   - :attr:`~music21.base.Music21Object.activeSite`'
'   - :attr:`~music21.base.Music21Object.derivation`'
'   - :attr:`~music21.base.Music21Object.duration`'
'   - :attr:`~music21.base.Music21Object.offset`'
'   - :attr:`~music21.base.Music21Object.priority`'
'   - :attr:`~music21.base.Music21Object.quarterLength`'
'   - :attr:`~music21.base.Music21Object.seconds`'
''
ClassDocumenter.rstMethodsFormat

The ReST format for the documented class’s methods:

>>> klass = scale.MajorScale
>>> documenter = documentation.documenters.ClassDocumenter(klass)
>>> for line in documenter.rstMethodsFormat:
...     line
'.. rubric:: :class:`~music21.scale.MajorScale` methods'
''
'Methods inherited from :class:`~music21.scale.DiatonicScale`:'
''
'.. hlist::'
'   :columns: 3'
''
'   - :meth:`~music21.scale.DiatonicScale.getDominant`'
...
'   - :meth:`~music21.scale.DiatonicScale.getTonic`'
''
'Methods inherited from :class:`~music21.scale.ConcreteScale`:'
''
'.. hlist::'
'   :columns: 3'
''
'   - :meth:`~music21.scale.ConcreteScale.derive`'
'   - :meth:`~music21.scale.ConcreteScale.deriveAll`'
...
'   - :meth:`~music21.scale.ConcreteScale.write`'
''
'Methods inherited from :class:`~music21.scale.Scale`:'
''
'.. hlist::'
'   :columns: 3'
''
'   - :meth:`~music21.scale.Scale.extractPitchList`'
''
'Methods inherited from :class:`~music21.base.Music21Object`:'
''
'.. hlist::'
'   :columns: 3'
''
'   - :meth:`~music21.base.Music21Object.containerHierarchy`'
...
'   - :meth:`~music21.base.Music21Object.splitByQuarterLengths`'
''
ClassDocumenter.rstReadonlyPropertiesFormat

The ReST format for the documented class’s read-only properties:

>>> klass = note.Note
>>> documenter = documentation.documenters.ClassDocumenter(klass)
>>> for line in documenter.rstReadonlyPropertiesFormat:
...     line
'.. rubric:: :class:`~music21.note.Note` read-only properties'
''
'.. autoattribute:: music21.note.Note.diatonicNoteNum'
''
'.. autoattribute:: music21.note.Note.fullName'
''
'Read-only properties inherited from :class:`~music21.base.Music21Object`:'
''
'.. hlist::'
'   :columns: 3'
''
'   - :attr:`~music21.base.Music21Object.beat`'
'   - :attr:`~music21.base.Music21Object.beatDuration`'
'   - :attr:`~music21.base.Music21Object.beatStr`'
'   - :attr:`~music21.base.Music21Object.beatStrength`'
'   - :attr:`~music21.base.Music21Object.classSet`'
'   - :attr:`~music21.base.Music21Object.classes`'
'   - :attr:`~music21.base.Music21Object.measureNumber`'
''
ClassDocumenter.rstReadwritePropertiesFormat

The ReST format for the documented class’s read-only properties:

>>> klass = scale.MajorScale
>>> documenter = documentation.documenters.ClassDocumenter(klass)
>>> for line in documenter.rstReadwritePropertiesFormat:
...     line
'.. rubric:: :class:`~music21.scale.MajorScale` read/write properties'
''
'Read/write properties inherited from :class:`~music21.base.Music21Object`:'
''
'.. hlist::'
'   :columns: 3'
''
'   - :attr:`~music21.base.Music21Object.activeSite`'
'   - :attr:`~music21.base.Music21Object.derivation`'
'   - :attr:`~music21.base.Music21Object.duration`'
'   - :attr:`~music21.base.Music21Object.offset`'
'   - :attr:`~music21.base.Music21Object.priority`'
'   - :attr:`~music21.base.Music21Object.quarterLength`'
'   - :attr:`~music21.base.Music21Object.seconds`'
''
ClassDocumenter.sphinxCrossReferenceRole

Read-only properties inherited from ObjectDocumenter:

Read-only properties inherited from Documenter:

ClassDocumenter methods

ClassDocumenter.findAttributes()

find all attributes in self.referent and set classes appropriately.

ClassDocumenter.findOneAttribute(attr)
classmethod ClassDocumenter.fromIdentityMap(referent)
ClassDocumenter.run()
ClassDocumenter.sortMemberLists()

sort all the member lists by their member names.

Methods inherited from Documenter:

ClassDocumenter instance variables

Instance variables inherited from ObjectDocumenter:

CorpusDocumenter

class music21.documentation.documenters.CorpusDocumenter

A documenter for music21’s corpus:

>>> documenter = documentation.documenters.CorpusDocumenter()
>>> restructuredText = documenter.run()

CorpusDocumenter bases

CorpusDocumenter read-only properties

CorpusDocumenter.headingText
CorpusDocumenter.rstCorpusIntroductionFormat
CorpusDocumenter.rstPageReferenceFormat

Read-only properties inherited from Documenter:

CorpusDocumenter methods

CorpusDocumenter.getRstComposerDictFormat(directoryInformation)
CorpusDocumenter.getRstComposerIntroductionFormat(directoryInformation)
CorpusDocumenter.getRstComposerWorksFormat(corpusWork)
CorpusDocumenter.getRstVirtualWorkFileDictFormat(corpusFile)
CorpusDocumenter.getRstWorkFileDictFormat(corpusFile)
CorpusDocumenter.run()

Methods inherited from Documenter:

Documenter

class music21.documentation.documenters.Documenter

Abstract base class for documenting classes.

Documenter read-only properties

Documenter.rstEditingWarningFormat

Documenter methods

static Documenter.makeHeading(text, heading_level)
static Documenter.makeRubric(text)
Documenter.run()

FunctionDocumenter

class music21.documentation.documenters.FunctionDocumenter(referent=None)

A documenter for one function:

>>> function = common.opFrac
>>> documenter = documentation.documenters.FunctionDocumenter(function)
>>> documenter
<music21.documentation.documenters.FunctionDocumenter: music21.common.numberTools.opFrac>
>>> documenter.rstCrossReferenceString
':func:`~music21.common.numberTools.opFrac`'
>>> for line in documenter.rstAutodocDirectiveFormat:
...     line
'.. autofunction:: music21.common.numberTools.opFrac'
''

Call the documenter to generate its ReStructuredText format:

>>> restructuredText = documenter.run()
>>> restructuredText
['.. autofunction:: music21.common.numberTools.opFrac', '']

FunctionDocumenter bases

FunctionDocumenter read-only properties

FunctionDocumenter.referentPackagesystemPath
>>> function = common.opFrac
>>> documenter = documentation.documenters.FunctionDocumenter(function)
>>> documenter.referentPackagesystemPath
'music21.common.numberTools.opFrac'
FunctionDocumenter.rstAutodocDirectiveFormat
>>> function = common.opFrac
>>> documenter = documentation.documenters.FunctionDocumenter(function)
>>> documenter.rstAutodocDirectiveFormat
['.. autofunction:: music21.common.numberTools.opFrac', '']
FunctionDocumenter.sphinxCrossReferenceRole

returns ‘func’

Read-only properties inherited from ObjectDocumenter:

Read-only properties inherited from Documenter:

FunctionDocumenter methods

FunctionDocumenter.run()

Methods inherited from Documenter:

FunctionDocumenter instance variables

Instance variables inherited from ObjectDocumenter:

MemberDocumenter

class music21.documentation.documenters.MemberDocumenter(referent, memberName, definingClass)

Abstract base class for documenting class members such as Methods and Attributes and Properties

MemberDocumenter bases

MemberDocumenter read-only properties

MemberDocumenter.referentPackagesystemPath

Read-only properties inherited from ObjectDocumenter:

Read-only properties inherited from Documenter:

MemberDocumenter methods

MemberDocumenter.rstAutodocDirectiveFormat()
MemberDocumenter.run()
MemberDocumenter.sphinxCrossReferenceRole()

Methods inherited from Documenter:

MemberDocumenter instance variables

MemberDocumenter.definingClass

the class the referent belongs to, such as (no quotes) key.KeySignature

MemberDocumenter.memberName

the short name of the member, for instance “mode”

MemberDocumenter.referent

the attribute or method itself, such as (no quotes) key.KeySignature.mode

Instance variables inherited from ObjectDocumenter:

MethodDocumenter

class music21.documentation.documenters.MethodDocumenter(referent, memberName, definingClass)

A documenter for class methods:

>>> method = key.KeySignature.transpose
>>> documenter = documentation.documenters.MethodDocumenter(
...     method, 'transpose', key.KeySignature)
>>> documenter
<music21.documentation.documenters.MethodDocumenter: music21.key.KeySignature.transpose>
>>> documenter.rstCrossReferenceString
':meth:`~music21.key.KeySignature.transpose`'
>>> for line in documenter.rstAutodocDirectiveFormat:
...     line
'.. automethod:: music21.key.KeySignature.transpose'
''

MethodDocumenter bases

MethodDocumenter read-only properties

MethodDocumenter.rstAutodocDirectiveFormat
MethodDocumenter.sphinxCrossReferenceRole

Read-only properties inherited from MemberDocumenter:

Read-only properties inherited from ObjectDocumenter:

Read-only properties inherited from Documenter:

MethodDocumenter methods

Methods inherited from MemberDocumenter:

Methods inherited from Documenter:

MethodDocumenter instance variables

Instance variables inherited from MemberDocumenter:

Instance variables inherited from ObjectDocumenter:

ModuleDocumenter

class music21.documentation.documenters.ModuleDocumenter(referent)

A documenter for one module:

>>> documenter = documentation.documenters.ModuleDocumenter(serial)
>>> documenter
<music21.documentation.documenters.ModuleDocumenter: music21.serial>
>>> for reference, referent in sorted(list(
...     documenter.namesMapping.items())):
...     print("%s %s" % (reference, referent))
...
HistoricalTwelveToneRow <...ClassDocumenter: music21.serial.HistoricalTwelveToneRow>
ToneRow <...ClassDocumenter: music21.serial.ToneRow>
TwelveToneMatrix <...ClassDocumenter: music21.serial.TwelveToneMatrix>
TwelveToneRow <...ClassDocumenter: music21.serial.TwelveToneRow>
getHistoricalRowByName <...FunctionDocumenter: music21.serial.getHistoricalRowByName>
pcToToneRow <...FunctionDocumenter: music21.serial.pcToToneRow>
rowToMatrix <...FunctionDocumenter: music21.serial.rowToMatrix>
>>> documenter.rstCrossReferenceString
':mod:`~music21.serial`'
>>> for line in documenter.rstAutodocDirectiveFormat:
...     line
...
'.. automodule:: music21.serial'
''

Call the documenter to generate the ReStructuredText format:

>>> restructuredText = documenter.run()

ModuleDocumenter bases

ModuleDocumenter read-only properties

ModuleDocumenter.classDocumenters

Return a list of class documenters for classes housed in the module documenter’s module object, taking into account any ordering via the _DOC_ORDER module-level variable:

>>> module = serial
>>> documenter = documentation.documenters.ModuleDocumenter(module)
>>> for classDocumenter in documenter.classDocumenters:
...     print(classDocumenter.referentPackagesystemPath)
...
music21.serial.HistoricalTwelveToneRow
music21.serial.ToneRow
music21.serial.TwelveToneMatrix
music21.serial.TwelveToneRow
ModuleDocumenter.functionDocumenters

Return a list of class documenters for classes housed in the module documenter’s module object, taking into account any ordering via the _DOC_ORDER module-level variable:

>>> module = serial
>>> documenter = documentation.documenters.ModuleDocumenter(module)
>>> for functionDocumenter in documenter.functionDocumenters:
...     print(functionDocumenter.referentPackagesystemPath)
...
music21.serial.getHistoricalRowByName
music21.serial.pcToToneRow
music21.serial.rowToMatrix
ModuleDocumenter.memberOrder
ModuleDocumenter.namesMapping
ModuleDocumenter.referenceName

The short name of the module:

>>> module = serial
>>> documenter = documentation.documenters.ModuleDocumenter(module)
>>> documenter.referenceName
'moduleSerial'
>>> from music21.stream import makeNotation
>>> module = makeNotation
>>> documenter = documentation.documenters.ModuleDocumenter(module)
>>> documenter.referenceName
'moduleStreamMakeNotation'
ModuleDocumenter.referentPackagesystemPath
ModuleDocumenter.rstAutodocDirectiveFormat
ModuleDocumenter.rstPageReferenceFormat
ModuleDocumenter.sphinxCrossReferenceRole

Read-only properties inherited from ObjectDocumenter:

Read-only properties inherited from Documenter:

ModuleDocumenter methods

ModuleDocumenter.run()

Methods inherited from Documenter:

ModuleDocumenter instance variables

Instance variables inherited from ObjectDocumenter:

ObjectDocumenter

class music21.documentation.documenters.ObjectDocumenter(referent)

Base class for object documenting sub-classes. such as ClassDocumenter

ObjectDocumenter bases

ObjectDocumenter read-only properties

ObjectDocumenter.rstCrossReferenceString

Read-only properties inherited from Documenter:

ObjectDocumenter methods

ObjectDocumenter.referentPackagesystemPath()
ObjectDocumenter.rstAutodocDirectiveFormat()
ObjectDocumenter.sphinxCrossReferenceRole()

Methods inherited from Documenter:

ObjectDocumenter instance variables

ObjectDocumenter.referent

the object being documented