question: calculates a digest representing the rule context . we use the digest instead of the original value as the original value might lead to a filename that is too long . by using a digest , tools can deterministically find all extra_action outputs for a given target , without having to open every file in the package . concode_field_sep boolean requiresActionOutput concode_elem_sep ImmutableMap<String,String> executionInfo concode_elem_sep ImmutableMap<PathFragment,Artifact> manifests concode_elem_sep ImmutableList<Artifact> resolvedTools concode_elem_sep ImmutableList<Artifact> resolvedData concode_elem_sep Label label concode_elem_sep ImmutableList<String> outputTemplates concode_elem_sep String command concode_field_sep Artifact getExtraActionOutputArtifact concode_elem_sep Label getLabel concode_elem_sep Collection<Artifact> addExtraAction concode_elem_sep String createExpandedCommand concode_elem_sep String getActionId concode_elem_sep Artifact getRootRelativePath
target: String function ( RuleContext arg0 ) { Fingerprint loc0 = new Fingerprint ( ) ; loc0 . addString ( arg0 . getLabel ( ) . toString ( ) ) ; return loc0 . hexDigestAndReset ( ) ; }