class ModelFactory extends AnyRef
This trait extracts all required information for documentation from compilation units
- Self Type
- ModelFactory with ModelFactoryImplicitSupport with ModelFactoryTypeSupport with DiagramFactory with CommentFactory with TreeFactory with MemberLookup
- Source
- ModelFactory.scala
- Alphabetic
- By Inheritance
- ModelFactory
- AnyRef
- Any
- by any2stringadd
- by StringFormat
- by Ensuring
- by ArrowAssoc
- Hide All
- Show All
- Public
- All
Type Members
-
abstract
class
DocTemplateImpl extends (ModelFactory.this)#MemberTemplateImpl with DocTemplateEntity
The instantiation of
TemplateImpl
triggers the creation of the following entities: All ancestors of the template and all non-package members. - abstract class EntityImpl extends Entity
- trait HigherKindedImpl extends HigherKinded
- abstract class MemberImpl extends (ModelFactory.this)#EntityImpl with MemberEntity
-
abstract
class
MemberTemplateImpl extends (ModelFactory.this)#MemberImpl with (ModelFactory.this)#TemplateImpl with (ModelFactory.this)#HigherKindedImpl with MemberTemplateEntity
An inherited template that was not documented in its original owner - example: in classpath: trait T { class C } -- T (and implicitly C) are not documented in the source: trait U extends T -- C appears in U as a MemberTemplateImpl -- that is, U has a member for it but C doesn't get its own page
-
class
NoDocTemplateImpl extends (ModelFactory.this)#EntityImpl with (ModelFactory.this)#TemplateImpl with (ModelFactory.this)#HigherKindedImpl with NoDocTemplate
A template that is not documented at all.
A template that is not documented at all. The class is instantiated during lookups, to indicate that the class exists, but should not be documented (either it's not included in the source or it's not visible)
- abstract class NonTemplateMemberImpl extends (ModelFactory.this)#MemberImpl with NonTemplateMemberEntity
- abstract class NonTemplateParamMemberImpl extends (ModelFactory.this)#NonTemplateMemberImpl
- abstract class PackageImpl extends (ModelFactory.this)#DocTemplateImpl with Package
- abstract class ParameterImpl extends ParameterEntity
- abstract class RootPackageImpl extends (ModelFactory.this)#PackageImpl with RootPackage
- trait TemplateImpl extends (ModelFactory.this)#EntityImpl with TemplateEntity
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
def
+(other: String): String
- Implicit
- This member is added by an implicit conversion from ModelFactory to any2stringadd[ModelFactory] performed by method any2stringadd in scala.Predef.
- Definition Classes
- any2stringadd
-
def
->[B](y: B): (ModelFactory, B)
- Implicit
- This member is added by an implicit conversion from ModelFactory to ArrowAssoc[ModelFactory] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
- Annotations
- @inline()
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
- def classExcluded(clazz: TemplateEntity): Boolean
-
def
clone(): AnyRef
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
val
docTemplatesCache: LinkedHashMap[Global.Symbol, (ModelFactory.this)#DocTemplateImpl]
- Attributes
- protected
-
def
ensuring(cond: (ModelFactory) ⇒ Boolean, msg: ⇒ Any): ModelFactory
- Implicit
- This member is added by an implicit conversion from ModelFactory to Ensuring[ModelFactory] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: (ModelFactory) ⇒ Boolean): ModelFactory
- Implicit
- This member is added by an implicit conversion from ModelFactory to Ensuring[ModelFactory] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: Boolean, msg: ⇒ Any): ModelFactory
- Implicit
- This member is added by an implicit conversion from ModelFactory to Ensuring[ModelFactory] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
def
ensuring(cond: Boolean): ModelFactory
- Implicit
- This member is added by an implicit conversion from ModelFactory to Ensuring[ModelFactory] performed by method Ensuring in scala.Predef.
- Definition Classes
- Ensuring
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
- def findMember(aSym: Global.Symbol, inTpl: (ModelFactory.this)#DocTemplateImpl): Option[(ModelFactory.this)#MemberImpl]
- def findTemplateMaybe(aSym: Global.Symbol): Option[(ModelFactory.this)#DocTemplateImpl]
-
def
formatted(fmtstr: String): String
- Implicit
- This member is added by an implicit conversion from ModelFactory to StringFormat[ModelFactory] performed by method StringFormat in scala.Predef.
- Definition Classes
- StringFormat
- Annotations
- @inline()
-
final
def
getClass(): java.lang.Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- val global: Global
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
- var ids: Int
- def implicitExcluded(convertorMethod: String): Boolean
- def inOriginalOwner(aSym: Global.Symbol, inTpl: (ModelFactory.this)#TemplateImpl): Boolean
- def isEmptyJavaObject(aSym: Global.Symbol): Boolean
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
isPureBridge(sym: Global.Symbol): Boolean
Filter '@bridge' methods only if *they don't override non-bridge methods*.
Filter '@bridge' methods only if *they don't override non-bridge methods*. See scala/bug#5373 for details
- def localShouldDocument(aSym: Global.Symbol): Boolean
- def makeAnnotation(annot: Global.AnnotationInfo): Annotation
- def makeMember(aSym: Global.Symbol, conversion: Option[(ModelFactory.this)#ImplicitConversionImpl], inTpl: (ModelFactory.this)#DocTemplateImpl): List[(ModelFactory.this)#MemberImpl]
- def makeModel: Option[Universe]
-
def
makeParentTypes(aType: Global.Type, tpl: Option[(ModelFactory.this)#MemberTemplateImpl], inTpl: (ModelFactory.this)#TemplateImpl): List[(TemplateEntity, TypeEntity)]
Get the types of the parents of the current class, ignoring the refinements
- def makeQualifiedName(sym: Global.Symbol, relativeTo: Option[Global.Symbol] = None): String
- def makeTemplate(aSym: Global.Symbol, inTpl: Option[(ModelFactory.this)#TemplateImpl]): (ModelFactory.this)#TemplateImpl
- def makeTemplate(aSym: Global.Symbol): (ModelFactory.this)#TemplateImpl
- def makeTypeInTemplateContext(aType: Global.Type, inTpl: (ModelFactory.this)#TemplateImpl, dclSym: Global.Symbol): TypeEntity
- def makeTypeParam(aSym: Global.Symbol, inTpl: (ModelFactory.this)#TemplateImpl): TypeParam
- def makeValueParam(aSym: Global.Symbol, inTpl: (ModelFactory.this)#DocTemplateImpl, newName: String): ValueParam
- def makeValueParam(aSym: Global.Symbol, inTpl: (ModelFactory.this)#DocTemplateImpl): ValueParam
- def membersShouldDocument(sym: Global.Symbol, inTpl: (ModelFactory.this)#TemplateImpl): Boolean
- def modelFinished: Boolean
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
val
noDocTemplatesCache: LinkedHashMap[Global.Symbol, (ModelFactory.this)#NoDocTemplateImpl]
- Attributes
- protected
-
def
normalizeTemplate(aSym: Global.Symbol): Global.Symbol
This method makes it easier to work with the different kinds of symbols created by scalac by stripping down the package object abstraction and placing members directly in the package.
This method makes it easier to work with the different kinds of symbols created by scalac by stripping down the package object abstraction and placing members directly in the package.
Here's the explanation of what we do. The code:
package foo { object
package
{ class Bar } }will yield this Symbol structure: +---------+ (2) | | +---------------+ +---------- v ------- | ---+ +--------+ (2)
package foo#1 <---(1)---- module class foo#2
+---------------+ | +------------------ | -+ | +------------------- v ---+ | | | package object foo#3 <-----(1)---- module class package#4 | | | +----------------------+ | | +---------------------+ | | +--------------------------+ | | class package$Bar#5 | | | | +----------------- | -+ | | +------------------- | ---+ | | | +--------+ (1) sourceModule (2) you get out of owners with .owner
and normalizeTemplate(Bar.owner) will get us the package, instead of the module class of the package object.
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
- def optimize(str: String): String
- def packageDropped(tpl: (ModelFactory.this)#DocTemplateImpl): Boolean
- val settings: Settings
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
- def templateShouldDocument(aSym: Global.Symbol, inTpl: (ModelFactory.this)#DocTemplateImpl): Boolean
- def templatesCount: Int
-
def
toString(): String
- Definition Classes
- AnyRef → Any
- def typeShouldDocument(bSym: Global.Symbol, inTpl: (ModelFactory.this)#DocTemplateImpl): Boolean
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... ) @native()
-
def
→[B](y: B): (ModelFactory, B)
- Implicit
- This member is added by an implicit conversion from ModelFactory to ArrowAssoc[ModelFactory] performed by method ArrowAssoc in scala.Predef.
- Definition Classes
- ArrowAssoc
-
object
modelCreation
These are all model construction methods.
These are all model construction methods. Please do not use them directly, they are calling each other recursively starting from makeModel. On the other hand, makeTemplate, makeAnnotation, makeMember, makeType should only be used after the model was created (modelFinished=true) otherwise assertions will start failing.
The Scala compiler and reflection APIs.