public abstract class PassFactory
extends java.lang.Object
Contains all meta-data about compiler passes (like whether it can be run multiple times, a human-readable name for logging, etc.).
Modifier and Type | Class and Description |
---|---|
static class |
PassFactory.Builder
A builder for a
PassFactory . |
Modifier and Type | Method and Description |
---|---|
static PassFactory.Builder |
builder() |
static PassFactory.Builder |
builderForHotSwap() |
static PassFactory |
createEmptyPass(java.lang.String name)
Create a no-op pass that can only run once.
|
abstract FeatureSet |
getFeatureSet()
The set of features that this pass understands.
|
abstract java.lang.String |
getName()
The name of the pass as it will appear in logs.
|
abstract boolean |
isRunInFixedPointLoop()
Whether this factory must or must not appear in a
PhaseOptimizer loop. |
abstract PassFactory.Builder |
toBuilder() |
public abstract java.lang.String getName()
public abstract boolean isRunInFixedPointLoop()
PhaseOptimizer
loop.public abstract FeatureSet getFeatureSet()
Passes that can handle any code (no-op passes, extremely simple passes that are unlikely to
be broken by new features, etc.) should return FeatureSet.latest()
.
public abstract PassFactory.Builder toBuilder()
public static PassFactory.Builder builder()
public static PassFactory.Builder builderForHotSwap()
public static PassFactory createEmptyPass(java.lang.String name)
Copyright © 2009-2020 Google. All Rights Reserved.