Class CBPackageBuilder
java.lang.Object
com.io7m.cedarbridge.schema.compiled.internal.CBPackageBuilder
- All Implemented Interfaces:
CBPackageBuilderType
A package builder.
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddImport(CBPackageType imported) Import a package.build()Build a package based on all of the given values so far.createExternalType(String inExternalPackageName, String inExternalName, String inTypeName) Create a new external type declaration.createProtocol(String name) Create a new protocol.createRecord(String name) Create a new record.createVariant(String name) Create a new variant.findRecord(String name) Find an existing record.Find an existing type.findVariant(String name) Find an existing variant.referenceExternalType(CBTypeDeclarationType typeDeclaration) Reference an external type.referenceType(String name) Reference an existing type.
-
Constructor Details
-
CBPackageBuilder
Construct a package builder.- Parameters:
inPackageName- The package name
-
-
Method Details
-
createExternalType
public CBTypeDeclarationBuilderType createExternalType(String inExternalPackageName, String inExternalName, String inTypeName) Description copied from interface:CBPackageBuilderTypeCreate a new external type declaration.- Specified by:
createExternalTypein interfaceCBPackageBuilderType- Parameters:
inExternalPackageName- The external package nameinExternalName- The external type nameinTypeName- The name within this package- Returns:
- A type declaration builder
-
createRecord
Description copied from interface:CBPackageBuilderTypeCreate a new record.- Specified by:
createRecordin interfaceCBPackageBuilderType- Parameters:
name- The name within this package- Returns:
- A record builder
-
findRecord
Description copied from interface:CBPackageBuilderTypeFind an existing record.- Specified by:
findRecordin interfaceCBPackageBuilderType- Parameters:
name- The name within this package- Returns:
- A record builder
-
createVariant
Description copied from interface:CBPackageBuilderTypeCreate a new variant.- Specified by:
createVariantin interfaceCBPackageBuilderType- Parameters:
name- The name within this package- Returns:
- A variant builder
-
findVariant
Description copied from interface:CBPackageBuilderTypeFind an existing variant.- Specified by:
findVariantin interfaceCBPackageBuilderType- Parameters:
name- The name within this package- Returns:
- A record builder
-
findType
Description copied from interface:CBPackageBuilderTypeFind an existing type.- Specified by:
findTypein interfaceCBPackageBuilderType- Parameters:
name- The name within this package- Returns:
- A type builder
-
referenceType
Description copied from interface:CBPackageBuilderTypeReference an existing type.- Specified by:
referenceTypein interfaceCBPackageBuilderType- Parameters:
name- The name within this package- Returns:
- A named type expression
-
referenceExternalType
public CBTypeExpressionType.CBTypeExprNamedType referenceExternalType(CBTypeDeclarationType typeDeclaration) Description copied from interface:CBPackageBuilderTypeReference an external type.- Specified by:
referenceExternalTypein interfaceCBPackageBuilderType- Parameters:
typeDeclaration- The type declaration- Returns:
- A named type expression
-
build
Description copied from interface:CBPackageBuilderTypeBuild a package based on all of the given values so far.- Specified by:
buildin interfaceCBPackageBuilderType- Returns:
- A package
-
addImport
Description copied from interface:CBPackageBuilderTypeImport a package.- Specified by:
addImportin interfaceCBPackageBuilderType- Parameters:
imported- The package- Returns:
- this
-
createProtocol
Description copied from interface:CBPackageBuilderTypeCreate a new protocol.- Specified by:
createProtocolin interfaceCBPackageBuilderType- Parameters:
name- The name within this package- Returns:
- A protocol builder
-