BlueprintTool

scalus.cardano.blueprint.BlueprintTool
object BlueprintTool

JSON-level blueprint operations used by the Scalus sbt plugin.

The plugin (Scala 2.12/3, running inside sbt) calls these reflectively across a URLClassLoader boundary, so the signatures use only java.* and String types. Do not rename or change signatures without updating ScalusSbtPlugin.

Attributes

Graph
Supertypes
class Object
trait Matchable
class Any
Self type

Members list

Value members

Concrete methods

def aggregate(jsons: List[String], title: String, version: String, scalaVersion: String): String

Merges per-contract blueprint documents into one CIP-57 document (Aiken-style plutus.json): all validators concatenated in input order under a project-level preamble.

Merges per-contract blueprint documents into one CIP-57 document (Aiken-style plutus.json): all validators concatenated in input order under a project-level preamble.

Compiler info is carried over from the first input that has it (all inputs of one build share the same Scalus version). plutusVersion is set only when all inputs agree.

Value parameters

jsons

per-contract blueprint JSON documents, in the desired validator order

scalaVersion

the Scala toolchain that compiled the contracts, recorded as scalus.scalaVersion

title

project-level title (typically the sbt project name)

version

project-level version (typically the sbt project version)

Attributes

def stampScalaVersion(json: String, scalaVersion: String): String

Returns json with the top-level scalus.scalaVersion extension key stamped in, overwriting any previous stamp. See ScalusInfo for why this lives at the root.

Returns json with the top-level scalus.scalaVersion extension key stamped in, overwriting any previous stamp. See ScalusInfo for why this lives at the root.

Attributes