Deprecate @JSExportDescendentClasses
and @JSExportDescendentObjects
.
Deprecate @JSExportDescendentClasses
and @JSExportDescendentObjects
.
We do this only on the annotated symbol (not in descendants), which is
why this test is a bit separate from everything else.
Ideally we would simply @deprecate
the annotations, but that would not
allow us to suppress the deprecations.
retrieves the names a sym should be exported to from its annotations
retrieves the names a sym should be exported to from its annotations
Note that for accessor symbols, the annotations of the accessed symbol are used, rather than the annotations of the accessor itself.
Generate the exporter for the given DefDef or ValDef (abstract val in class, val in trait or lazy val; these don't get DefDefs until the fields phase)
Generate the exporter for the given DefDef or ValDef (abstract val in class, val in trait or lazy val; these don't get DefDefs until the fields phase)
If this DefDef is a constructor, it is registered to be exported by GenJSCode instead and no trees are returned.
Checks and registers class exports on the symbol.
Checks and registers module exports on the symbol
Prepare export generation
Helpers for transformation of @JSExport annotations