Package serp.bytecode
Class Attributes
java.lang.Object
serp.bytecode.Attributes
- All Implemented Interfaces:
BCEntity
Abstract superclass for all bytecode entities that hold attributes.
- Author:
- Abe White
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionaddAttribute
(String name) Add an attribute of the given type.addAttribute
(Attribute attr) Import an attribute from another entity, or make a copy of one on this entity.void
Clear all attributes from this entity.getAttribute
(String name) Return the attribute with the given name.Return all the attributes owned by this entity.getAttributes
(String name) Return all attributes with the given name.boolean
removeAttribute
(String name) Remove all attributes with the given name from this entity.boolean
removeAttribute
(Attribute attribute) Remove the given attribute.void
setAttributes
(Attribute[] attrs) Set the attributes for this entity; this method is useful for importing all attributes from another entity.Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface serp.bytecode.BCEntity
getClassLoader, getPool, getProject, isValid
-
Constructor Details
-
Attributes
public Attributes()
-
-
Method Details
-
getAttributes
Return all the attributes owned by this entity.- Returns:
- all owned attributes, or empty array if none
-
getAttribute
Return the attribute with the given name. If multiple attributes share the name, which is returned is undefined. -
getAttributes
Return all attributes with the given name.- Returns:
- the matching attributes, or empty array if none
-
setAttributes
Set the attributes for this entity; this method is useful for importing all attributes from another entity. Set to null or empty array if none. -
addAttribute
Import an attribute from another entity, or make a copy of one on this entity. -
addAttribute
Add an attribute of the given type. -
clearAttributes
public void clearAttributes()Clear all attributes from this entity. -
removeAttribute
Remove all attributes with the given name from this entity.- Returns:
- true if an attribute was removed, false otherwise
-
removeAttribute
Remove the given attribute. After being removed, the attribute is invalid, and the result of any operations on it are undefined.- Returns:
- true if the attribute was removed, false otherwise
-