class ConfiguredExtensibleClasses extends AbstractClassExtensibility
Determines whether a type is directly extensible by a (yet unknown) client application/library using the base analysis ClassExtensibility and an explicitly configured list of extensible types where the list overrides the findings of the analysis. This enables domain specific configurations.
Additional configuration has to be done using OPAL's configuration file. To specify
extensible classes/interfaces the following key has to be used:
ClassExtensibilityKey.ConfigKeyPrefix + extensibleClasses
The following example configuration would consider
java/util/Mathandcom/example/Typeas extensible.org.opalj.br.analyses.ClassExtensibilityKey.extensibleClasses = ["java/util/Math", "com/example/Type"]
- Alphabetic
- By Inheritance
- ConfiguredExtensibleClasses
- AbstractClassExtensibility
- ClassExtensibility
- Function1
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
- new ConfiguredExtensibleClasses(project: SomeProject)
Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
andThen[A](g: (Answer) ⇒ A): (ObjectType) ⇒ A
- Definition Classes
- Function1
- Annotations
- @unspecialized()
-
final
def
apply(t: ObjectType): Answer
See isClassExtensible.
See isClassExtensible.
- Definition Classes
- ClassExtensibility → Function1
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
def
compose[A](g: (A) ⇒ ObjectType): (A) ⇒ Answer
- Definition Classes
- Function1
- Annotations
- @unspecialized()
-
def
configuredExtensibleClasses: Iterator[(ObjectType, Yes.type)]
Returns the types which are extensible.
Returns the types which are extensible.
- returns
Those types for which the direct extensibility is explicit configured.
- Definition Classes
- ConfiguredExtensibleClasses → AbstractClassExtensibility
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
isClassExtensible(t: ObjectType): Answer
Determines whether the given class can directly be extended by (yet unknown) code.
Determines whether the given class can directly be extended by (yet unknown) code.
- Definition Classes
- AbstractClassExtensibility → ClassExtensibility
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
- Annotations
- @native()
-
def
parseSpecifiedClassesList(simpleKey: String): List[ObjectType]
Get the list of configured types using the configured config key.
Get the list of configured types using the configured config key.
- simpleKey
The simple name of the config key that will be used to get a list of configured object types. ClassExtensibilityKey.ConfigKeyPrefix.
- returns
A list of ObjectTypes. The semantic of those types is encoded by the respective analysis; AbstractClassExtensibility#configuredExtensibleClasses.
- Attributes
- protected[this]
- Definition Classes
- AbstractClassExtensibility
-
val
project: SomeProject
- Definition Classes
- ConfiguredExtensibleClasses → AbstractClassExtensibility
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- Function1 → AnyRef → Any
-
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
- @native() @throws( ... )