$copymerge
Usage: $copymerge(target,source[,keep_duplicates])
Category: assignment
Implemented: Picard 1.0
Description:
Merges metadata from variable source
into target
, removing duplicates and appending to the end,
so retaining the original ordering. Like $copy, this will also copy multi-valued variables
without flattening them. Following the operation, target
will be a multi-value variable.
If keep_duplicates
is set, then the duplicates will not be removed from the result.
Note
Unlike most functions, in this case the source
is specified without enclosing it with percent signs (%).
Example:
The following statements will yield the values for target
as indicated:
$set(target,)
$set(source,one)
$copymerge(target,source) ==> "one"
$set(target,zero)
$set(source,one)
$copymerge(target,source) ==> "zero; one"
$set(target,zero)
$setmulti(source,one; two)
$copymerge(target,source) ==> "zero; one; two"
$setmulti(target,zero; two)
$setmulti(source,one; two)
$copymerge(target,source) ==> "zero; two; one"
$set(target,zero; one; zero)
$set(source,one; two; three)
$copymerge(target,source) ==> "zero, one; two; three"
$setmulti(target,zero; two)
$setmulti(source,one; two)
$copymerge(target,source,1) ==> "zero; two; one; two"