Class OcamlLinkStep

  • All Implemented Interfaces:
    Step

    public class OcamlLinkStep
    extends ShellStep
    OCaml linking step. Dependencies and inputs should be topologically ordered
    • Field Detail

      • environment

        public final com.google.common.collect.ImmutableMap<String,​String> environment
      • cxxCompiler

        public final com.google.common.collect.ImmutableList<String> cxxCompiler
      • ocamlCompilerCommandPrefix

        public final com.google.common.collect.ImmutableList<String> ocamlCompilerCommandPrefix
      • flags

        public final com.google.common.collect.ImmutableList<String> flags
      • output

        public final Path output
      • argFile

        public final Path argFile
      • cDepInput

        public final com.google.common.collect.ImmutableList<String> cDepInput
      • input

        public final com.google.common.collect.ImmutableList<Path> input
      • isLibrary

        public final boolean isLibrary
      • isBytecode

        public final boolean isBytecode
    • Method Detail

      • create

        public static OcamlLinkStep create​(ProjectFilesystem filesystem,
                                           com.google.common.collect.ImmutableMap<String,​String> environment,
                                           com.google.common.collect.ImmutableList<String> cxxCompiler,
                                           com.google.common.collect.ImmutableList<String> ocamlCompilerCommandPrefix,
                                           com.google.common.collect.ImmutableList<Arg> flags,
                                           Optional<String> stdlib,
                                           Path output,
                                           Path argFile,
                                           com.google.common.collect.ImmutableList<Arg> depInput,
                                           com.google.common.collect.ImmutableList<Arg> cDepInput,
                                           com.google.common.collect.ImmutableList<Path> input,
                                           boolean isLibrary,
                                           boolean isBytecode,
                                           SourcePathResolverAdapter pathResolver)
        Factory method for OcamlLinkStep.
      • getShortName

        public String getShortName()
        Returns:
        a short name/description for the command, such as "javac". Should fit on one line.
      • getShellCommandInternal

        protected com.google.common.collect.ImmutableList<String> getShellCommandInternal​(ExecutionContext context)
        Description copied from class: ShellStep
        Implementations of this method should not have any observable side-effects.
        Specified by:
        getShellCommandInternal in class ShellStep
      • getEnvironmentVariables

        public com.google.common.collect.ImmutableMap<String,​String> getEnvironmentVariables​(ExecutionContext context)
        Description copied from class: ShellStep
        Returns the environment variables to include when running this ShellStep.

        By default, this method returns an empty map.

        Overrides:
        getEnvironmentVariables in class ShellStep
        Parameters:
        context - that may be useful when determining environment variables to include.