MetaAccess is a wrapper for the Metadata
array. It can be used to add
metadata to and remove metadata from its origin.
Fields
remove(name:String):Void
Removes all `name` metadata entries from the origin of `this`
MetaAccess.
This method might clear several metadata entries of the same name.
If a `Metadata` array is obtained through a call to `get`, a subsequent
call to `remove` has no effect on that array.
If `name` is null, compilation fails with an error.
has(name:String):Bool
Tells if the origin of `this` MetaAccess has a `name` metadata entry.
If `name` is null, compilation fails with an error.
get():Metadata
Return the wrapped `Metadata` array.
Modifying this array has no effect on the origin of `this` MetaAccess.
The `add` and `remove` methods can be used for that.
extract(name:String):Array<MetadataEntry>
Extract metadata entries by given `name`.
If there's no metadata with such name, empty array `[]` is returned.
If `name` is null, compilation fails with an error.
add(name:String, params:Array<Expr>, pos:Position):Void
Adds the metadata specified by `name`, `params` and `pos` to the origin
of `this` MetaAccess.
Metadata names are not unique during compilation, so this method never
overwrites a previous metadata.
If a `Metadata` array is obtained through a call to `get`, a subsequent
call to `add` has no effect on that array.
If any argument is null, compilation fails with an error.