terp - the Codemesh Modular
Template Interpreter v1.3.337

com.codemesh.terp.data
Class Cpp.MsvcExecutor

java.lang.Object
  extended by com.codemesh.terp.api.Executor.AbstractExecutor<ProcessExecutor.Result>
      extended by com.codemesh.terp.eval.executors.ProcessExecutor
          extended by com.codemesh.terp.eval.executors.ShellExecutor
              extended by com.codemesh.terp.data.Cpp.CppExecutor
                  extended by com.codemesh.terp.data.Cpp.MsvcExecutor
All Implemented Interfaces:
Executor<ProcessExecutor.Result>, Named, Versioned, java.lang.Comparable<Cpp.CppExecutor>
Enclosing interface:
Cpp

public static class Cpp.MsvcExecutor
extends Cpp.CppExecutor


Nested Class Summary
 
Nested classes/interfaces inherited from class com.codemesh.terp.eval.executors.ProcessExecutor
ProcessExecutor.Result
 
Nested classes/interfaces inherited from interface com.codemesh.terp.api.Executor
Executor.AbstractExecutor<T>, Executor.ForMethod
 
Field Summary
static java.util.List<Cpp.MsvcExecutor> ALL_MSVCS
           
protected  java.io.File theVcVars
           
 
Fields inherited from class com.codemesh.terp.data.Cpp.CppExecutor
theCode, theName, theProcArchs, theTraits, theVersion, TO_MSVC, TO_PROCARCH, TO_VERSION
 
Fields inherited from class com.codemesh.terp.eval.executors.ShellExecutor
theAddedEnvSettings, theExecFlag, theRemovedEnvSettings, theShell, TO_STRING
 
Fields inherited from class com.codemesh.terp.eval.executors.ProcessExecutor
EOL, IS_WINDOWS, logger, theEnvironment, theExecutable, theTerpCmdVar, theWorkingDir, TO_FILE, TO_LIST
 
Constructor Summary
Cpp.MsvcExecutor()
           
 
Method Summary
 ProcessExecutor.Result batchExecute(java.util.List<java.lang.Object> args)
          Executes a batch of several compiler invocations, prefixing each one with the compiler executable's path.
 ProcessExecutor.Result execute(java.util.List<java.lang.Object> args, TerpEvaluator eval, TerpContext ctx)
          Performs the executor's action on the given arguments in the given context.
 Lib.LibExecutor getLib()
           
 java.io.File getVcVars()
           
static java.io.File getVcVars(java.io.File compiler)
           
static Cpp.MsvcExecutor msvcFromMap(Cpp.MsvcExecutor exec, java.util.Map map)
           
static Cpp.MsvcExecutor msvcFromMap(java.util.Map map)
           
static void populate()
           
 void setVcVars(java.io.File vcvars)
           
 
Methods inherited from class com.codemesh.terp.data.Cpp.CppExecutor
accFromFile, accFromMap, accFromString, accFromVersion, compareTo, cppFromFile, cppFromMap, cppFromString, cppFromVersion, equals, gccFromFile, gccFromMap, gccFromString, gccFromVersion, getCode, getCompiler, getName, getProcArchs, getTraits, getVersion, hashCode, iccFromFile, iccFromMap, iccFromString, iccFromVersion, marshallArguments, msvcFromFile, msvcFromString, msvcFromVersion, qccFromFile, qccFromMap, qccFromString, qccFromVersion, setCode, setCompiler, setName, setProcArch, setVersion, sunccFromFile, sunccFromMap, sunccFromString, sunccFromVersion, supportsOption, supportsOptions, toString, xlcFromFile, xlcFromMap, xlcFromString, xlcFromVersion
 
Methods inherited from class com.codemesh.terp.eval.executors.ShellExecutor
addToEnvironment, createEnvironment, getExecFlag, getShell, removeFromEnvironment, setExecFlag, setShell, shellFromFile, shellFromMap, shellFromMap, shellFromString
 
Methods inherited from class com.codemesh.terp.eval.executors.ProcessExecutor
appendToEnvironment, execute, fromFile, fromMap, fromMap, fromString, getEnvironment, getExecutable, getWorkingDir, matches, setEnvironment, setExecutable, setWorkingDir
 
Methods inherited from class com.codemesh.terp.api.Executor.AbstractExecutor
execute
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
 

Field Detail

ALL_MSVCS

public static final java.util.List<Cpp.MsvcExecutor> ALL_MSVCS

theVcVars

protected java.io.File theVcVars
Constructor Detail

Cpp.MsvcExecutor

public Cpp.MsvcExecutor()
Method Detail

getVcVars

public java.io.File getVcVars()

setVcVars

public void setVcVars(java.io.File vcvars)

getVcVars

public static java.io.File getVcVars(java.io.File compiler)

populate

public static void populate()

getLib

public Lib.LibExecutor getLib()

msvcFromMap

public static Cpp.MsvcExecutor msvcFromMap(java.util.Map map)

msvcFromMap

public static Cpp.MsvcExecutor msvcFromMap(Cpp.MsvcExecutor exec,
                                           java.util.Map map)

execute

public ProcessExecutor.Result execute(java.util.List<java.lang.Object> args,
                                      TerpEvaluator eval,
                                      TerpContext ctx)
Description copied from interface: Executor
Performs the executor's action on the given arguments in the given context. Typically, your custom executor will implement this method to provide its core functionality.

Specified by:
execute in interface Executor<ProcessExecutor.Result>
Overrides:
execute in class ProcessExecutor
Parameters:
args - the arguments.
eval - the evaluator to use. Can frequently be null.
ctx - the context in which the execution occurs. Can frequently be null.
Returns:
the execution result.

batchExecute

public ProcessExecutor.Result batchExecute(java.util.List<java.lang.Object> args)
Executes a batch of several compiler invocations, prefixing each one with the compiler executable's path.

Overrides:
batchExecute in class Cpp.CppExecutor
Parameters:
args - the commandlines that will be batched up.
Returns:
the execution result of the batch file.

terp - the Codemesh Modular
Template Interpreter v1.3.337

Copyright © 2008-2016 by Codemesh, Inc. All Rights Reserved.