AvailExtension

open class AvailExtension(project: Project, plugin: AvailPlugin)

AvailExtension is a Gradle extension for the AvailPlugin which is where a user can configure Avail.

Author

Richard Arriaga

Constructors

Link copied to clipboard
fun AvailExtension(project: Project, plugin: AvailPlugin)

Functions

Link copied to clipboard
fun artifact(configure: PackageAvailArtifact.() -> Unit)

Configures the PackageAvailArtifact which is used to create the Avail artifact.

Link copied to clipboard
fun createArtifact()

Create the Avail Artifact configured by artifact.

Link copied to clipboard
fun createProject(): AvailProject

Create a new AvailProject.

Link copied to clipboard
fun createProjectRoot(    name: String,     availModuleExtensions: List<String> = listOf("avail"),     entryPoints: List<String> = listOf(),     description: String = ""): CreateAvailRoot

Add a CreateAvailRoot to be created in the rootsDirectory.

Link copied to clipboard
fun includeAvailLibDependency(name: String, dependency: String)

Add an Avail library as a root from a Maven repository for the provided dependency string.

Link copied to clipboard
fun includeStdAvailLibDependency(configure: AvailStandardLibrary.() -> Unit)

This function informs the plugin to include the Avail Standard Library as a root from a Maven repository.

Link copied to clipboard
fun projectRoot(    name: String,     availModuleExtensions: List<String> = listOf("avail"),     entryPoints: List<String> = listOf(),     description: String = "",     initializer: (AvailRoot) -> Unit = {})

Add an Avail root with the provided name and URI.

Link copied to clipboard
fun rootJar(    name: String,     jarFileName: String,     availModuleExtensions: List<String> = listOf("avail"),     entryPoints: List<String> = listOf(),     description: String = "",     initializer: (AvailRoot) -> Unit = {})

Add an Avail root with the provided name and URI.

Properties

Link copied to clipboard
var moduleHeaderCommentBody: String

Raw module header comment. This is typically for a copyright. Will be wrapped in comment along with file name. If comment body is empty (default), will only provide the file name in the header comment.

Link copied to clipboard
var moduleHeaderCommentBodyFile: String

The absolute path to a file containing the text for the moduleHeaderCommentBody. This will be ignored if moduleHeaderCommentBodyFile is not empty.

Link copied to clipboard
val printableConfig: String

Create a printable view of this entire AvailExtension's current configuration state.

Link copied to clipboard
var projectDescription: String

The description of the project that is included in the Avail artifact.

Link copied to clipboard
var repositoryDirectory: AvailLocation

The AvailLocation directory where the Avail roots repositories exist.

Link copied to clipboard
var rootsDirectory: AvailLocation

The AvailLocation directory where the project's Avail roots exist, not imported libraries. By default this is in AvailProject.ROOTS_DIR at the top level of the project.

Link copied to clipboard
val targetOutputJar: String

The absolute path to the jar file that will be created.