GenAST

typedjson.codegen.GenAST
object GenAST

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Self type
GenAST.type

Members list

Type members

Classlikes

case class Arguments(args: Seq[Expr], isUsing: Boolean, endsWithVarargs: Boolean)

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object Arguments

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
Arguments.type
case class AssignExpr(lhs: String, rhs: Expr) extends Expr

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Expr
trait Definition
class Object
trait Matchable
class Any
Show all
case class Block(statements: Seq[Definition], last: Expr) extends Expr

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Expr
trait Definition
class Object
trait Matchable
class Any
Show all
case class Class(docs: Option[String], mods: Seq[String], name: String, typeParameters: Seq[TypeParameter], constructors: Seq[Constructor], extend: Seq[Expr], members: Seq[Definition], isTrait: Boolean) extends Definition, ModsDefinition

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Definition
class Object
trait Matchable
class Any
Show all
case class Constructor(docs: Option[String], mods: Seq[String], parameters: Seq[Seq[Parameter]], implicitParamters: Seq[Parameter], rhs: Option[Expr])

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
case class DefDef(docs: Option[String], mods: Seq[String], name: String, typeParameters: Seq[TypeParameter], parameters: Seq[Seq[Parameter]], implicitParameters: Seq[Parameter], returnType: String, rhs: Option[Expr]) extends Definition, ModsDefinition

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Definition
class Object
trait Matchable
class Any
Show all
sealed trait Definition

Attributes

Supertypes
class Object
trait Matchable
class Any
Known subtypes
class Class
class DefDef
trait Expr
class AssignExpr
class Block
class FreeformExpr
class FunctionCall
class Lambda
class Match
class NewExpr
class Select
class Grouped
class Imports
class Module
class TypeDef
class ValDef
Show all
sealed trait Expr extends Definition

Attributes

Supertypes
trait Definition
class Object
trait Matchable
class Any
Known subtypes
class AssignExpr
class Block
class FreeformExpr
class FunctionCall
class Lambda
class Match
class NewExpr
class Select
Show all
case class ExprWithFreeform(leftFreeform: String, expr: Expr, rightFreeform: String) extends Expr

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Expr
trait Definition
class Object
trait Matchable
class Any
Show all
case class FreeformDefinition(documentation: Option[String], content: String) extends Definition

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Definition
class Object
trait Matchable
class Any
Show all
case class FreeformExpr(code: String) extends Expr

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Expr
trait Definition
class Object
trait Matchable
class Any
Show all
case class FunctionCall(function: Expr, typeArgs: Seq[String], argss: Seq[Arguments]) extends Expr

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
trait Expr
trait Definition
class Object
trait Matchable
class Any
Show all
object FunctionCall

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
case class Grouped(definitions: Definition*) extends Definition

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Definition
class Object
trait Matchable
class Any
Show all
case class Imports(imports: Seq[String]) extends Definition

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Definition
class Object
trait Matchable
class Any
Show all
case class Lambda(parameter: Seq[Parameter], body: Expr) extends Expr

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Expr
trait Definition
class Object
trait Matchable
class Any
Show all
case class Match(matchOn: Expr, cases: Seq[MatchCase]) extends Expr

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Expr
trait Definition
class Object
trait Matchable
class Any
Show all
case class MatchCase(lhs: Expr, rhs: Expr)

Attributes

Companion
object
Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
object MatchCase

Attributes

Companion
class
Supertypes
trait Product
trait Mirror
class Object
trait Matchable
class Any
Self type
MatchCase.type
sealed trait ModsDefinition extends Definition

Attributes

Supertypes
trait Definition
class Object
trait Matchable
class Any
Known subtypes
class Class
class DefDef
class Module
class TypeDef
class ValDef
case class Module(docs: Option[String], mods: Seq[String], name: String, extend: Seq[Expr], members: Seq[Definition]) extends Definition, ModsDefinition

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Definition
class Object
trait Matchable
class Any
Show all
case class NewExpr(extend: Expr, withs: Seq[Expr], members: Seq[Definition]) extends Expr

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Expr
trait Definition
class Object
trait Matchable
class Any
Show all
case class Parameter(docs: Option[String], mods: Seq[String], name: String, tpe: String, default: Option[Expr])

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
case class PartialLambda(cases: Seq[MatchCase]) extends Expr

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Expr
trait Definition
class Object
trait Matchable
class Any
Show all
case class ScalaFile(packageLoc: String, intelliJIgnoredInspections: Seq[String], disclaimer: String, definitions: Seq[Definition])

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
case class Select(qualifier: Expr, property: String) extends Expr

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Expr
trait Definition
class Object
trait Matchable
class Any
Show all
case class TypeAscription(expr: Expr, str: String) extends Expr

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Expr
trait Definition
class Object
trait Matchable
class Any
Show all
case class TypeDef(docs: Option[String], mods: Seq[String], name: String, typeParameters: Seq[TypeParameter], upperBound: Option[String], lowerBound: Option[String], rhs: Option[String]) extends Definition, ModsDefinition

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Definition
class Object
trait Matchable
class Any
Show all
case class TypeParameter(docs: Option[String], mods: Seq[String], name: String, upperBound: Option[String], lowerBound: Option[String])

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
case class ValDef(docs: Option[String], mods: Seq[String], name: String, returnType: String, rhs: Option[Expr]) extends Definition, ModsDefinition

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
trait Definition
class Object
trait Matchable
class Any
Show all

Value members

Concrete methods

def identExpr(s: String): Expr
def idents(head: String, tail: String*): Expr
def printDefinition(definition: Definition)(implicit dialect: ScalaDialect): Chain[CodePrinterSegment]
def printDefinitionToString(defn: Definition)(implicit printerOptions: PrinterOptions, dialect: ScalaDialect): String
def printDefinitions(definitions: Seq[Definition])(implicit dialect: ScalaDialect): Chain[Chain[CodePrinterSegment]]
def printFile(file: ScalaFile)(implicit printerOptions: PrinterOptions, dialect: ScalaDialect): String
def simpleFunctionCall(function: String, args: Seq[Expr]): FunctionCall
def stringExpr(s: String): Expr