
IPXACT2009ScalaCases.generator.scala Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of spinalhdl-schema-gen_2.11 Show documentation
Show all versions of spinalhdl-schema-gen_2.11 Show documentation
SpinalHDL Schemetic Generator
The newest version!
package IPXACT2009ScalaCases
// Generated by IPXACT2009scalaxb.
case class GeneratorChainSelector(generatorchainselectoroption: IPXACT2009scalaxb.DataRecord[GeneratorChainSelectorOption],
attributes: Map[String, IPXACT2009scalaxb.DataRecord[Any]] = Map.empty) extends GeneratorChainOption {
lazy val unique = attributes("@unique").as[Boolean]
}
trait GeneratorChainSelectorOption
case class GeneratorChain(versionedIdentifierSequence1: VersionedIdentifierSequence,
generatorchainoption: Seq[IPXACT2009scalaxb.DataRecord[GeneratorChainOption]] = Nil,
chainGroup: Seq[String] = Nil,
displayName: Option[String] = None,
description: Option[String] = None,
choices: Option[Choices] = None,
vendorExtensions: Option[VendorExtensions] = None,
attributes: Map[String, IPXACT2009scalaxb.DataRecord[Any]] = Map.empty) extends IPXACTDocumentTypesOption {
lazy val hidden = attributes("@hidden").as[Boolean]
}
trait GeneratorChainOption
case class Generator(nameGroupSequence1: NameGroupSequence,
phase: Option[Phase] = None,
parameters: Option[Parameters] = None,
apiType: Option[ApiType] = None,
transportMethods: Option[TransportMethods] = None,
generatorExe: String,
vendorExtensions: Option[VendorExtensions] = None,
attributes: Map[String, IPXACT2009scalaxb.DataRecord[Any]] = Map.empty) extends GeneratorTypable with GeneratorChainOption {
lazy val hidden = attributes("@hidden").as[Boolean]
}
case class ComponentGenerator(nameGroupSequence1: NameGroupSequence,
phase: Option[Phase] = None,
parameters: Option[Parameters] = None,
apiType: Option[ApiType] = None,
transportMethods: Option[TransportMethods] = None,
generatorExe: String,
vendorExtensions: Option[VendorExtensions] = None,
group: Seq[String] = Nil,
attributes: Map[String, IPXACT2009scalaxb.DataRecord[Any]] = Map.empty) extends InstanceGeneratorTypable {
lazy val hidden = attributes("@hidden").as[Boolean]
lazy val scope = attributes("@scope").as[Scope]
}
sealed trait MultipleGroupSelectionOperator
object MultipleGroupSelectionOperator {
def fromString(value: String, scope: scala.xml.NamespaceBinding)(implicit fmt: IPXACT2009scalaxb.XMLFormat[MultipleGroupSelectionOperator]): MultipleGroupSelectionOperator = fmt.reads(scala.xml.Text(value), Nil) match {
case Right(x: MultipleGroupSelectionOperator) => x
case x => throw new RuntimeException(s"fromString returned unexpected value $x for input $value")
}
lazy val values: Seq[MultipleGroupSelectionOperator] = Seq(And, Or)
}
case object And extends MultipleGroupSelectionOperator { override def toString = "and" }
case object Or extends MultipleGroupSelectionOperator { override def toString = "or" }
case class GroupSelector(name: Seq[String] = Nil,
attributes: Map[String, IPXACT2009scalaxb.DataRecord[Any]] = Map.empty) extends GeneratorChainSelectorOption {
lazy val multipleGroupSelectionOperator = attributes("@multipleGroupSelectionOperator").as[MultipleGroupSelectionOperator]
}
case class Phase(value: Float)
sealed trait Scope
object Scope {
def fromString(value: String, scope: scala.xml.NamespaceBinding)(implicit fmt: IPXACT2009scalaxb.XMLFormat[Scope]): Scope = fmt.reads(scala.xml.Text(value), Nil) match {
case Right(x: Scope) => x
case x => throw new RuntimeException(s"fromString returned unexpected value $x for input $value")
}
lazy val values: Seq[Scope] = Seq(Instance, Entity)
}
case object Instance extends Scope { override def toString = "instance" }
case object Entity extends Scope { override def toString = "entity" }
trait InstanceGeneratorTypable extends GeneratorTypable {
def nameGroupSequence1: NameGroupSequence
def phase: Option[Phase]
def parameters: Option[Parameters]
def apiType: Option[ApiType]
def transportMethods: Option[TransportMethods]
def generatorExe: String
def vendorExtensions: Option[VendorExtensions]
def group: Seq[String]
def hidden: Boolean
def scope: Scope
}
case class InstanceGeneratorType(nameGroupSequence1: NameGroupSequence,
phase: Option[Phase] = None,
parameters: Option[Parameters] = None,
apiType: Option[ApiType] = None,
transportMethods: Option[TransportMethods] = None,
generatorExe: String,
vendorExtensions: Option[VendorExtensions] = None,
group: Seq[String] = Nil,
attributes: Map[String, IPXACT2009scalaxb.DataRecord[Any]] = Map.empty) extends InstanceGeneratorTypable {
lazy val hidden = attributes("@hidden").as[Boolean]
lazy val scope = attributes("@scope").as[Scope]
}
case class GeneratorSelectorType(groupSelector: GroupSelector) extends GeneratorChainOption
case class ComponentGenerators(componentGenerator: Seq[ComponentGenerator] = Nil)
case class AbstractorGenerators(abstractorGenerator: Seq[InstanceGeneratorTypable] = Nil)
sealed trait ApiType
object ApiType {
def fromString(value: String, scope: scala.xml.NamespaceBinding)(implicit fmt: IPXACT2009scalaxb.XMLFormat[ApiType]): ApiType = fmt.reads(scala.xml.Text(value), Nil) match {
case Right(x: ApiType) => x
case x => throw new RuntimeException(s"fromString returned unexpected value $x for input $value")
}
lazy val values: Seq[ApiType] = Seq(TGI, NoneType)
}
case object TGI extends ApiType { override def toString = "TGI" }
case object NoneType extends ApiType { override def toString = "none" }
sealed trait TransportMethod
object TransportMethod {
def fromString(value: String, scope: scala.xml.NamespaceBinding)(implicit fmt: IPXACT2009scalaxb.XMLFormat[TransportMethod]): TransportMethod = fmt.reads(scala.xml.Text(value), Nil) match {
case Right(x: TransportMethod) => x
case x => throw new RuntimeException(s"fromString returned unexpected value $x for input $value")
}
lazy val values: Seq[TransportMethod] = Seq(FileValue)
}
case object FileValue extends TransportMethod { override def toString = "file" }
case class TransportMethods(transportMethod: TransportMethod)
/** Types of generators
*/
trait GeneratorTypable {
def nameGroupSequence1: NameGroupSequence
def phase: Option[Phase]
def parameters: Option[Parameters]
def apiType: Option[ApiType]
def transportMethods: Option[TransportMethods]
def generatorExe: String
def vendorExtensions: Option[VendorExtensions]
def hidden: Boolean
}
/** Types of generators
*/
case class GeneratorType(nameGroupSequence1: NameGroupSequence,
phase: Option[Phase] = None,
parameters: Option[Parameters] = None,
apiType: Option[ApiType] = None,
transportMethods: Option[TransportMethods] = None,
generatorExe: String,
vendorExtensions: Option[VendorExtensions] = None,
attributes: Map[String, IPXACT2009scalaxb.DataRecord[Any]] = Map.empty) extends GeneratorTypable {
lazy val hidden = attributes("@hidden").as[Boolean]
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy