Class ListObject
- java.lang.Object
-
- org.apache.sysds.runtime.instructions.cp.Data
-
- org.apache.sysds.runtime.instructions.cp.ListObject
-
- All Implemented Interfaces:
Externalizable,Serializable
public class ListObject extends Data implements Externalizable
- See Also:
- Serialized Form
-
-
Constructor Summary
Constructors Constructor Description ListObject()ListObject(List<Data> data)ListObject(List<Data> data, List<String> names)ListObject(List<Data> data, List<String> names, List<LineageItem> lineage)ListObject(Data[] data)ListObject(Data[] data, String[] names)ListObject(ListObject that)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ListObjectadd(String name, Data dat, LineageItem li)ListObjectadd(Data dat, LineageItem li)booleancheckAllDataTypes(Types.DataType dt)booleancontains(String name)booleancontains(Data d)ListObjectcopy()voidderiveAndSetStatusFromData()voidenableCleanup(boolean flag)Sets the cleanupFlag values recursively for every element of type CacheableData in the list and in its sublists to the provided flag value.voidenableCleanup(Queue<Boolean> flags)Sets the cleanupFlag values recursively for every element of type CacheableData in the list and in its sublists to the provided values in flags.List<Boolean>getCleanupStates()Gets list of current cleanupFlag values recursively for every element in the list and in its sublists of type CacheableData.List<Data>getData()DatagetData(int ix)DatagetData(String name)longgetDataSize()StringgetDebugName()intgetLength()LineageItemgetLineageItem(int ix)LineageItemgetLineageItem(String name)List<LineageItem>getLineageItems()StringgetName(int ix)List<String>getNames()intgetNumCacheableData()boolean[]getStatus()booleanisNamedList()voidreadExternal(ObjectInput in)Redirects the default java serialization via externalizable to our default hadoop writable serialization for efficient broadcast/rdd deserialization.ListObjectremove(int pos)Removes the element at the specified position from the list and returns that element as the only element in a new ListObject.ListObjectset(int ix1, int ix2, ListObject data)ListObjectset(int ix, Data data)ListObjectset(int ix, Data data, LineageItem li)ListObjectset(String name1, String name2, ListObject data)Dataset(String name, Data data)Dataset(String name, Data data, LineageItem li)voidsetNames(List<String> names)voidsetStatus(boolean[] status)Dataslice(int ix)ListObjectslice(int ix1, int ix2)Dataslice(String name)ListObjectslice(String name1, String name2)StringtoString()voidwriteExternal(ObjectOutput out)Redirects the default java serialization via externalizable to our default hadoop writable serialization for efficient broadcast/rdd serialization.-
Methods inherited from class org.apache.sysds.runtime.instructions.cp.Data
getDataType, getMetaData, getPrivacyConstraint, getValueType, removeMetaData, setMetaData, setPrivacyConstraints, updateDataCharacteristics
-
-
-
-
Constructor Detail
-
ListObject
public ListObject()
-
ListObject
public ListObject(Data[] data)
-
ListObject
public ListObject(ListObject that)
-
-
Method Detail
-
deriveAndSetStatusFromData
public void deriveAndSetStatusFromData()
-
setStatus
public void setStatus(boolean[] status)
-
getStatus
public boolean[] getStatus()
-
getLength
public int getLength()
-
getNumCacheableData
public int getNumCacheableData()
-
getName
public String getName(int ix)
-
isNamedList
public boolean isNamedList()
-
getData
public Data getData(int ix)
-
getLineageItem
public LineageItem getLineageItem(String name)
-
getLineageItems
public List<LineageItem> getLineageItems()
-
contains
public boolean contains(Data d)
-
contains
public boolean contains(String name)
-
getDataSize
public long getDataSize()
-
checkAllDataTypes
public boolean checkAllDataTypes(Types.DataType dt)
-
slice
public Data slice(int ix)
-
getLineageItem
public LineageItem getLineageItem(int ix)
-
slice
public ListObject slice(int ix1, int ix2)
-
slice
public ListObject slice(String name1, String name2)
-
copy
public ListObject copy()
-
set
public ListObject set(int ix, Data data)
-
set
public ListObject set(int ix, Data data, LineageItem li)
-
set
public ListObject set(int ix1, int ix2, ListObject data)
-
set
public Data set(String name, Data data, LineageItem li)
-
set
public ListObject set(String name1, String name2, ListObject data)
-
add
public ListObject add(Data dat, LineageItem li)
-
add
public ListObject add(String name, Data dat, LineageItem li)
-
remove
public ListObject remove(int pos)
Removes the element at the specified position from the list and returns that element as the only element in a new ListObject.- Parameters:
pos- position of element in the list- Returns:
- new ListObject with the specified element
-
getDebugName
public String getDebugName()
- Specified by:
getDebugNamein classData
-
writeExternal
public void writeExternal(ObjectOutput out) throws IOException
Redirects the default java serialization via externalizable to our default hadoop writable serialization for efficient broadcast/rdd serialization.- Specified by:
writeExternalin interfaceExternalizable- Parameters:
out- object output- Throws:
IOException- if IOException occurs
-
readExternal
public void readExternal(ObjectInput in) throws IOException, ClassNotFoundException
Redirects the default java serialization via externalizable to our default hadoop writable serialization for efficient broadcast/rdd deserialization.- Specified by:
readExternalin interfaceExternalizable- Parameters:
in- object input- Throws:
IOException- if IOException occursClassNotFoundException
-
getCleanupStates
public List<Boolean> getCleanupStates()
Gets list of current cleanupFlag values recursively for every element in the list and in its sublists of type CacheableData. The order is as CacheableData elements are discovered during DFS. Elements that are not of type CacheableData are skipped.- Returns:
- list of booleans containing the _cleanupFlag values.
-
enableCleanup
public void enableCleanup(boolean flag)
Sets the cleanupFlag values recursively for every element of type CacheableData in the list and in its sublists to the provided flag value.- Parameters:
flag- New value for every CacheableData element.
-
enableCleanup
public void enableCleanup(Queue<Boolean> flags)
Sets the cleanupFlag values recursively for every element of type CacheableData in the list and in its sublists to the provided values in flags. The cleanupFlag value of the i-th CacheableData element in the list (counted in the order of DFS) is set to the i-th value in flags.- Parameters:
flags- Queue of values in the same order as its corresponding elements occur in DFS.
-
-