Package it.unimi.dsi.webgraph.labelling
Class AbstractIntLabel
- java.lang.Object
-
- it.unimi.dsi.webgraph.labelling.AbstractLabel
-
- it.unimi.dsi.webgraph.labelling.AbstractIntLabel
-
- Direct Known Subclasses:
FixedWidthIntLabel
,GammaCodedIntLabel
public abstract class AbstractIntLabel extends AbstractLabel implements Label
An abstract (single-attribute) integer label.This class provides basic methods for a label holding an integer. Concrete implementations may impose further requirements on the integer.
Implementing subclasses must provide constructors,
Label.copy()
,Label.fromBitStream(it.unimi.dsi.io.InputBitStream, int)
,Label.toBitStream(it.unimi.dsi.io.OutputBitStream, int)
and possibly overridetoString()
.
-
-
Field Summary
Fields Modifier and Type Field Description protected java.lang.String
key
The key of the attribute represented by this label.int
value
The value of the attribute represented by this label.-
Fields inherited from interface it.unimi.dsi.webgraph.labelling.Label
EMPTY_LABEL_ARRAY
-
-
Constructor Summary
Constructors Constructor Description AbstractIntLabel(java.lang.String key, int value)
Creates an int label with given key and value.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description java.lang.String[]
attributeKeys()
All attribute keys (in arbitrary order).java.lang.Class<?>[]
attributeTypes()
The types of all attributes in the same order as they are returned byLabel.attributeKeys()
.boolean
equals(java.lang.Object x)
java.lang.Object
get()
The value associated to the well-known attribute.java.lang.Object
get(java.lang.String key)
The value associated to the attribute with given key.double
getDouble()
The value associated to the well-known attribute, provided that the latter has a type that fits a double.double
getDouble(java.lang.String key)
The value associated to the attribute with given key, provided that the latter has a type that fits a double.float
getFloat()
The value associated to the well-known attribute, provided that the latter has a type that fits a float.float
getFloat(java.lang.String key)
The value associated to the attribute with given key, provided that the latter has a type that fits a float.int
getInt()
The value associated to the well-known attribute, provided that the latter has a type that fits a int.int
getInt(java.lang.String key)
The value associated to the attribute with given key, provided that the latter has a type that fits a int.long
getLong()
The value associated to the well-known attribute, provided that the latter has a type that fits a long.long
getLong(java.lang.String key)
The value associated to the attribute with given key, provided that the latter has a type that fits a long.int
hashCode()
java.lang.String
toString()
java.lang.String
wellKnownAttributeKey()
Returns the well-known attribute key.-
Methods inherited from class it.unimi.dsi.webgraph.labelling.AbstractLabel
getBoolean, getBoolean, getByte, getByte, getChar, getChar, getShort, getShort
-
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, wait, wait, wait
-
Methods inherited from interface it.unimi.dsi.webgraph.labelling.Label
copy, fixedWidth, fromBitStream, getBoolean, getBoolean, getByte, getByte, getChar, getChar, getShort, getShort, toBitStream, toSpec
-
-
-
-
Method Detail
-
wellKnownAttributeKey
public java.lang.String wellKnownAttributeKey()
Description copied from interface:Label
Returns the well-known attribute key.- Specified by:
wellKnownAttributeKey
in interfaceLabel
- Returns:
- the well-known attribute key.
-
attributeKeys
public java.lang.String[] attributeKeys()
Description copied from interface:Label
All attribute keys (in arbitrary order).- Specified by:
attributeKeys
in interfaceLabel
- Returns:
- the keys of all attributes.
-
attributeTypes
public java.lang.Class<?>[] attributeTypes()
Description copied from interface:Label
The types of all attributes in the same order as they are returned byLabel.attributeKeys()
.- Specified by:
attributeTypes
in interfaceLabel
- Returns:
- the type of all attributes.
-
get
public java.lang.Object get(java.lang.String key)
Description copied from interface:Label
The value associated to the attribute with given key.
-
getInt
public int getInt(java.lang.String key)
Description copied from interface:Label
The value associated to the attribute with given key, provided that the latter has a type that fits a int. Otherwise, anIllegalArgumentException
is thrown.- Specified by:
getInt
in interfaceLabel
- Overrides:
getInt
in classAbstractLabel
- Parameters:
key
- the attribute key.- Returns:
- the attribute value; if the attribute type is primitive, it is wrapped suitably.
-
getLong
public long getLong(java.lang.String key)
Description copied from interface:Label
The value associated to the attribute with given key, provided that the latter has a type that fits a long. Otherwise, anIllegalArgumentException
is thrown.- Specified by:
getLong
in interfaceLabel
- Overrides:
getLong
in classAbstractLabel
- Parameters:
key
- the attribute key.- Returns:
- the attribute value; if the attribute type is primitive, it is wrapped suitably.
-
getFloat
public float getFloat(java.lang.String key)
Description copied from interface:Label
The value associated to the attribute with given key, provided that the latter has a type that fits a float. Otherwise, anIllegalArgumentException
is thrown.- Specified by:
getFloat
in interfaceLabel
- Overrides:
getFloat
in classAbstractLabel
- Parameters:
key
- the attribute key.- Returns:
- the attribute value; if the attribute type is primitive, it is wrapped suitably.
-
getDouble
public double getDouble(java.lang.String key)
Description copied from interface:Label
The value associated to the attribute with given key, provided that the latter has a type that fits a double. Otherwise, anIllegalArgumentException
is thrown.- Specified by:
getDouble
in interfaceLabel
- Overrides:
getDouble
in classAbstractLabel
- Parameters:
key
- the attribute key.- Returns:
- the attribute value; if the attribute type is primitive, it is wrapped suitably.
-
get
public java.lang.Object get()
Description copied from interface:Label
The value associated to the well-known attribute.
-
getInt
public int getInt()
Description copied from interface:Label
The value associated to the well-known attribute, provided that the latter has a type that fits a int. Otherwise, anIllegalArgumentException
is thrown.- Specified by:
getInt
in interfaceLabel
- Overrides:
getInt
in classAbstractLabel
- Returns:
- the attribute value; if the attribute type is primitive, it is wrapped suitably.
-
getLong
public long getLong()
Description copied from interface:Label
The value associated to the well-known attribute, provided that the latter has a type that fits a long. Otherwise, anIllegalArgumentException
is thrown.- Specified by:
getLong
in interfaceLabel
- Overrides:
getLong
in classAbstractLabel
- Returns:
- the attribute value; if the attribute type is primitive, it is wrapped suitably.
-
getFloat
public float getFloat()
Description copied from interface:Label
The value associated to the well-known attribute, provided that the latter has a type that fits a float.- Specified by:
getFloat
in interfaceLabel
- Overrides:
getFloat
in classAbstractLabel
- Returns:
- the attribute value; if the attribute type is primitive, it is wrapped suitably.
-
getDouble
public double getDouble()
Description copied from interface:Label
The value associated to the well-known attribute, provided that the latter has a type that fits a double. Otherwise, anIllegalArgumentException
is thrown.- Specified by:
getDouble
in interfaceLabel
- Overrides:
getDouble
in classAbstractLabel
- Returns:
- the attribute value; if the attribute type is primitive, it is wrapped suitably.
-
toString
public java.lang.String toString()
- Overrides:
toString
in classjava.lang.Object
-
equals
public boolean equals(java.lang.Object x)
- Overrides:
equals
in classjava.lang.Object
-
hashCode
public int hashCode()
- Overrides:
hashCode
in classjava.lang.Object
-
-