Rules / Types, classes & roles / domain-specific

CompUnit::PrecompilationRepository Reference

CompUnit::PrecompilationRepository

What it is #

Routines #

Signatures are reproduced from the documentation, including their declared return types. A routine listed here is part of the type's published interface; whether Raku++ implements it is a separate question, answered by the examples below.

method new-unit #

method new-unit(| --> CompUnit::PrecompilationUnit:D)

Returns CompUnit::PrecompilationUnit:D.

Prepare a new implementation specific PrecompilationUnit for storage

method load-unit #

method load-unit(CompUnit::PrecompilationId $compiler-id,

Load the precompilation identified by the pairing of the specified compiler and precompilation ID.

method load-repo-id #

method load-repo-id(CompUnit::PrecompilationId $compiler-id,

Return the repository id for which the specified precomp file's dependencies have been validated

method store-file #

method store-file(CompUnit::PrecompilationId $compiler-id,

Store the file at the specified path in the precompilation store, under the given compiler ID and precompilation ID.

method store-unit #

method store-unit(CompUnit::PrecompilationId $compiler-id,

Store the given precompilation unit in the precompilation store under the given compiler ID and precompilation ID.

method store-repo-id #

method store-repo-id(CompUnit::PrecompilationId $compiler-id,

Store the given repo-id for a precompilation under the given compiler ID and precompilation ID.

method delete #

method delete(CompUnit::PrecompilationId $compiler-id,

Delete an individual precompilation.

method delete-by-compiler #

method delete-by-compiler(CompUnit::PrecompilationId $compiler-id)

Delete all precompilations for a particular compiler.

Examples, run three ways #

Every example below comes from the official documentation, together with the output that documentation asserts. Each was then executed by Rakudo and by Raku++ when this page was built. Where the three agree, one result is shown; where they do not, all three are — because which of them is wrong is exactly the information worth having.

8 no-output

{ ... }

Not executed: the documentation states no expected output for this example.

            CompUnit::PrecompilationId $precomp-id)
{ ... }

Not executed: the documentation states no expected output for this example.

            CompUnit::PrecompilationId $precomp-id)
{ ... }

Not executed: the documentation states no expected output for this example.

             CompUnit::PrecompilationId $precomp-id,
             IO::Path:D $path,
             :$extension = '')
{ ... }

Not executed: the documentation states no expected output for this example.

             CompUnit::PrecompilationId $precomp-id,
             CompUnit::PrecompilationUnit $unit)
{ ... }

Not executed: the documentation states no expected output for this example.

             CompUnit::PrecompilationId $precomp-id,
             :$repo-id!)
{ ... }

Not executed: the documentation states no expected output for this example.

              CompUnit::PrecompilationId $precomp-id)
{ ... }

Not executed: the documentation states no expected output for this example.

{ ... }

Not executed: the documentation states no expected output for this example.