StacksUsesModule

class StacksUsesModule : StacksImportModule

A grouping of all implementationGroups originating from the names section of this module that this is being used by another module.

Author

Richard Arriaga

Constructors

Link copied to clipboard
fun StacksUsesModule(    moduleImportName: String,     commentGroups: MutableMap<A_String, CommentGroup>,     moduleNameToExtendsList: MutableMap<String, StacksExtendsModule>,     methodLeafNameToModuleName: MutableMap<A_String, MutableMap<String, CommentGroup>>,     moduleNameToUsesList: MutableMap<String, StacksUsesModule>,     usesMethodLeafNameToModuleName: MutableMap<A_String, MutableMap<String, CommentGroup>>,     renames: A_Map)

Construct a new StacksUsesModule.

Link copied to clipboard
fun StacksUsesModule(module: CommentsModule, renamesMap: A_Map)

Construct a new StacksUsesModule from a CommentsModule.

Functions

Link copied to clipboard
open override fun addClassImplementationGroup(key: A_String, classCommentGroup: CommentGroup)
Link copied to clipboard
open override fun addGlobalImplementationGroup(key: A_String, globalCommentGroup: CommentGroup)
Link copied to clipboard
open override fun addGrammaticalImplementation(key: A_String, implementation: GrammaticalRestrictionComment)
Link copied to clipboard
open override fun addMacroImplementation(key: A_String, implementation: MacroComment)
Link copied to clipboard
open override fun addMethodImplementation(key: A_String, implementation: MethodComment)
Link copied to clipboard
open override fun addSemanticImplementation(key: A_String, implementation: SemanticRestrictionComment)
Link copied to clipboard

Flatten out moduleNameToExtendsList map so that all modules in tree are in one flat map keyed by the qualified method name to the implementation. Pair this with a map of method name to html link.

Create a new map from implementationGroups with new keys using the method qualified name

Link copied to clipboard
open override fun renameImplementation(    key: A_String,     newName: A_String,     newlyDefinedModule: CommentsModule,     newFileName: StacksFilename,     deleteOriginal: Boolean)

Rename an implementation in this Module.

Link copied to clipboard
open override fun toString(): String

Properties

Link copied to clipboard
val commentGroups: MutableMap<A_String, CommentGroup>

The a map of implementationGroups keyed by the implementation name.

Link copied to clipboard

A map keyed by exported method names with no path to the qualified module path it is originally named from.

Link copied to clipboard
val moduleName: String

The name of the module

Link copied to clipboard

A map of module names to other modules extended by this module.

Link copied to clipboard
val moduleNameToUsesList: MutableMap<String, StacksUsesModule>

A map of module names to other modules used by this module.

Link copied to clipboard
val renames: A_Map

The map of renames (MapDescriptor → string) explicitly specified in this import declaration. The keys are the newly introduced names and the values are the names provided by the predecessor module.

Link copied to clipboard

A map keyed by visible (uses) method names with no path to the qualified module path it is originally named from.