@Override public Object getValue(String name) { switch (name) { case LABEL_FIELD: return getLabel(); case FILES_FIELD: // A shortcut for files to build in Skylark. FileConfiguredTarget and RuleConfiguredTarget // always has FileProvider and Error- and PackageGroupConfiguredTarget-s shouldn't be // accessible in Skylark. return SkylarkNestedSet.of( Artifact.class, getProvider(FileProvider.class).getFilesToBuild()); case DEFAULT_RUNFILES_FIELD: return RunfilesProvider.DEFAULT_RUNFILES.apply(this); case DATA_RUNFILES_FIELD: return RunfilesProvider.DATA_RUNFILES.apply(this); default: return get(name); } }