@Retention(value=RUNTIME) @Target(value={FIELD,METHOD}) public @interface Hint
BaseDescription.getConstructorArgType()
.Modifier and Type | Fields and Description |
---|---|
static boolean |
DEFAULT_EXEC_CONFIGURATION |
static boolean |
DEFAULT_IS_CONFIGURABLE |
static boolean |
DEFAULT_IS_DEP |
static boolean |
DEFAULT_IS_INPUT |
static boolean |
DEFAULT_IS_TARGET_GRAPH_ONLY_DEP |
static boolean |
DEFAULT_SPLIT_CONFIGURATION |
Modifier and Type | Optional Element and Description |
---|---|
boolean |
execConfiguration
Indicates that execution configuration (as opposed to target configuration) should be used when
resolving targets.
|
boolean |
isConfigurable |
boolean |
isDep |
boolean |
isInput |
boolean |
isTargetGraphOnlyDep |
boolean |
splitConfiguration
Indicates that target configuration needs to be split.
|
public abstract boolean isDep
public abstract boolean isInput
public abstract boolean isTargetGraphOnlyDep
For example, rules that support platform-specific dependencies must explicitly include dependencies matching target platform into the action graph.
public abstract boolean isConfigurable
select
.public abstract boolean splitConfiguration
The target configuration will be transformed into multiple other configurations and every target in this attribute (target-based object) will be created for every configuration and the resulting list will be stored in this attribute.
Note that this logic only applies when target configuration supports transformation into multiple configurations and the attribute type supports concatenation.
public abstract boolean execConfiguration
This is used for example in cxx_toolchain
rule: toolchain itself need to be created
with target configuration, but if it specifies c compiler as a build target, that target need
to be built for execution configuration.