class SourceModulePipeline[+G <: Global] extends ScalanizerPipeline[G]
- Alphabetic
- By Inheritance
- SourceModulePipeline
- ScalanizerPipeline
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
- new SourceModulePipeline(s: Scalanizer[G])
Type Members
-
case class
ForEachUnitStep(name: String)(action: (UnitStepContext) ⇒ Unit) extends PipelineStep with Product with Serializable
- Definition Classes
- ScalanizerPipeline
-
sealed
trait
PipelineStep extends AnyRef
- Definition Classes
- ScalanizerPipeline
-
case class
RunStep(name: String)(action: (PipelineStep) ⇒ Unit) extends PipelineStep with Product with Serializable
- Definition Classes
- ScalanizerPipeline
-
trait
UnitStepContext extends AnyRef
- Definition Classes
- ScalanizerPipeline
-
case class
WrapperCake(traitDef: STraitDef, wrappers: List[SUnitDef]) extends Product with Serializable
- Definition Classes
- ScalanizerPipeline
- class CatchWrappersTraverser extends G.Traverser
- class SourcePipelineParseCtx extends meta.scalanizer.Scalanizer.ParseCtx
Value Members
-
object
UnitStepContext
- Definition Classes
- ScalanizerPipeline
-
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
addMember(isCompanion: Boolean, member: SMethodDef, wrapper: WrapperDescr): WrapperDescr
Adds a method or a value to the wrapper.
Adds a method or a value to the wrapper. The member is added into the first entity in the list if it is not already there. Other entities if any are ignored and left unchanged
- isCompanion
specifies where to put the method (value) - into class or its companion.
- Definition Classes
- ScalanizerPipeline
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
catchSpecialWrapper(owner: SEntitySymbol, tree: G.Tree): Boolean
- Definition Classes
- ScalanizerPipeline
-
def
catchWrapperUsage(owner: SEntitySymbol, tree: G.Tree): Unit
For each method call, create type wrapper if the external type should be wrapped.
For each method call, create type wrapper if the external type should be wrapped.
- Definition Classes
- ScalanizerPipeline
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @native() @throws( ... )
-
lazy val
components: List[ScalanizerComponent]
- Definition Classes
- ScalanizerPipeline
-
def
createComponents(): List[ScalanizerComponent]
- Attributes
- protected
- Definition Classes
- ScalanizerPipeline
-
def
createDependencies(objType: G.Type): Unit
For the given type, find all dependencies and wrap them.
For the given type, find all dependencies and wrap them.
- Definition Classes
- ScalanizerPipeline
-
def
createMemberDependencies(memberType: G.Type): Unit
Traversing of the type and adding of wrappers for external types.
Traversing of the type and adding of wrappers for external types.
- Definition Classes
- ScalanizerPipeline
-
def
createWrapper(externalType: G.Type): WrapperDescr
Creates scalan-meta Module for an external type symbol.
Creates scalan-meta Module for an external type symbol. For example: trait WCols extends Base with TypeWrappers { self: Wrappers => trait WCol[A] extends Def[WCol[A]] { self => def arr: Array[A] }; trait WColCompanion extends ExCompanion1[WCol] } where externalType is "class Col" one of the members is "def arr: Array[A]"
- Definition Classes
- ScalanizerPipeline
-
def
createWrapperSpecial(wrapperConf: WrapperConf, packageName: String, externalTypeName: String, tpeArgs: STpeArgs, originalEntityAncestors: List[STypeApply]): WrapperDescr
Create wrapper module for a new type externalTypeName
Create wrapper module for a new type externalTypeName
- Definition Classes
- ScalanizerPipeline
-
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] )
-
def
forEachUnitComponent(runsAfter: List[String], step: ForEachUnitStep): ScalanizerComponent { def newPhase(prev: scala.reflect.internal.Phase): this.StdPhase }
- Definition Classes
- ScalanizerPipeline
-
def
forRunComponent(runsAfter: List[String], step: RunStep): ScalanizerComponent { def newPhase(prev: scala.reflect.internal.Phase): this.StdPhase }
- Definition Classes
- ScalanizerPipeline
-
def
formExternalMethodDef(owner: SEntitySymbol, name: String, tpeArgs: List[STpeArg], argSections: List[SMethodArgs], tpeRes: STpeExpr): SMethodDef
- Definition Classes
- ScalanizerPipeline
-
def
formMethodArgs(args: List[G.Symbol]): List[SMethodArg]
Form the list of method arguments in terms of Meta AST by using symbols from Scala AST.
Form the list of method arguments in terms of Meta AST by using symbols from Scala AST.
- Definition Classes
- ScalanizerPipeline
-
def
formMethodRes(res: G.Type): STpeExpr
- Definition Classes
- ScalanizerPipeline
-
def
formMethodTypeArgs(targs: List[G.Symbol]): List[STpeArg]
- Definition Classes
- ScalanizerPipeline
-
def
genUnitBoilerplateText(mc: ModuleConf, unit: SUnitDef, isVirtualized: Boolean): String
Calls Scalan Meta to generate boilerplate code for the unit.
Calls Scalan Meta to generate boilerplate code for the unit.
- Definition Classes
- ScalanizerPipeline
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
getExtTypeAncestors(externalType: G.Type): List[STypeApply]
Gets the list of ancestors of the external type in term of Meta AST.
Gets the list of ancestors of the external type in term of Meta AST.
- Definition Classes
- ScalanizerPipeline
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
- Annotations
- @native()
-
def
initWrapperCake(): WrapperCake
- Definition Classes
- ScalanizerPipeline
-
def
isEnabled: Boolean
- Definition Classes
- SourceModulePipeline → ScalanizerPipeline
-
def
isHotSpotTree(tree: G.Tree): Boolean
Checks that the method has @HotSpot
Checks that the method has @HotSpot
- Definition Classes
- ScalanizerPipeline
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
def
isWrapperSym(sym: G.Symbol): Boolean
Applying of the policy: wrap all types outside of virtualization scope.
Applying of the policy: wrap all types outside of virtualization scope.
- Definition Classes
- ScalanizerPipeline
-
def
isWrapperType(tpe: G.Type): Boolean
- Definition Classes
- ScalanizerPipeline
-
def
loadLibraryDeps(step: PipelineStep, lib: LibraryConfig)(implicit ctx: meta.scalanizer.Scalanizer.ParseCtx): Unit
- Definition Classes
- ScalanizerPipeline
-
def
loadModuleUnits(step: PipelineStep, sourceMod: ModuleConf)(implicit ctx: meta.scalanizer.Scalanizer.ParseCtx): Unit
- Definition Classes
- ScalanizerPipeline
-
def
loadProjectModuleDeps(step: PipelineStep, projectMod: ModuleConf)(implicit ctx: meta.scalanizer.Scalanizer.ParseCtx): Unit
Loads all the dependencies of this project module (Source or Target)
Loads all the dependencies of this project module (Source or Target)
- Definition Classes
- ScalanizerPipeline
-
def
loadWrapperFromFile(step: PipelineStep, module: ModuleConf, wConf: WrapperConf)(implicit ctx: meta.scalanizer.Scalanizer.ParseCtx): Unit
Replaces external types by their wrappers.
Replaces external types by their wrappers. For example: trait Col[A] { def arr: Array[A]; } The external type Array is replaced by its wrapper WArray trait Col[A] { def arr: WArray[A]; }
- Definition Classes
- ScalanizerPipeline
-
def
loadWrapperFromResource(step: PipelineStep, module: ModuleConf, wConf: WrapperConf)(implicit ctx: meta.scalanizer.Scalanizer.ParseCtx): Unit
- Definition Classes
- ScalanizerPipeline
-
def
mkCompanionAncestors(wClassName: String, kind: Int): List[STypeApply]
- Definition Classes
- ScalanizerPipeline
-
val
name: String
- Definition Classes
- SourceModulePipeline → ScalanizerPipeline
-
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
registerArrayOp(owner: SEntitySymbol, mkOp: (SSymbol, STpeArg) ⇒ SMethodDef): Unit
- Definition Classes
- ScalanizerPipeline
-
val
runAfter: List[String]
- Definition Classes
- SourceModulePipeline → ScalanizerPipeline
-
val
scalanizer: Scalanizer[G]
- Definition Classes
- ScalanizerPipeline
-
val
steps: List[PipelineStep]
- Definition Classes
- SourceModulePipeline → ScalanizerPipeline
- val symbolMap: Map[SSymbol, G.Symbol]
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
def
uncurryMethodType(method: G.Type): (List[SMethodArgs], STpeExpr)
Converts curried method type its uncurried Meta AST representation.
Converts curried method type its uncurried Meta AST representation.
- Definition Classes
- ScalanizerPipeline
-
def
updateWrapper(owner: SEntitySymbol, objType: G.Type, methodName: G.Name, methodReturnType: G.Type, methodSym: G.Symbol): Unit
Create/update Meta AST of the module for the external type.
Create/update Meta AST of the module for the external type. It assembles Meta AST of a method (value) by its Scala's Type.
- Definition Classes
- ScalanizerPipeline
-
def
updateWrapperSpecial(packageName: String, externalTypeName: String, tpeArgs: STpeArgs, originalEntityAncestors: List[STypeApply], isCompanion: Boolean, member: SMethodDef): Unit
- Definition Classes
- ScalanizerPipeline
-
def
updateWrappersCake(cake: WrapperCake, wUnit: SUnitDef): WrapperCake
- Definition Classes
- ScalanizerPipeline
- val virtPipeline: SourceUnitVirtualization
-
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( ... )
-
def
wrapperNames(externalName: String): (String, String, String)
Gets names of an external type, its class and its module.
Gets names of an external type, its class and its module.
- Definition Classes
- ScalanizerPipeline
- object FindCommentsTraverser extends G.Traverser