Chemical Data Processing Library Python API - Version 1.4.0
Public Member Functions | Properties | List of all members
CDPL.Chem.FragmentList Class Reference

Data structure for the storage of Chem.Fragment instances. More...

+ Inheritance diagram for CDPL.Chem.FragmentList:

Public Member Functions

None __init__ ()
 Creates an empty list.
 
None __init__ (FragmentList list)
 Contructs a copy of the FragmentList instance list. More...
 
int getObjectID ()
 Returns the numeric identifier (ID) of the wrapped C++ class instance. More...
 
int getSize ()
 Returns the number of elements stored in the list. More...
 
bool isEmpty ()
 Tells whether the list is empty (getSize() == 0). More...
 
None resize (int num_elem, Fragment value)
 Inserts or erases elements at the end so that the size becomes num_elem. More...
 
None reserve (int num_elem)
 Preallocates memory for (at least) num_elem elements. More...
 
int getCapacity ()
 Returns the number of elements for which memory has been allocated. More...
 
None clear ()
 Erases all elements.
 
FragmentList assign (FragmentList list)
 Replaces the current state with a copy of the state of the FragmentList instance list. More...
 
None assign (int num_elem, Fragment value)
 This function fills the array with num_elem copies of the given value. More...
 
None addElement (Fragment value)
 Adds a new element at the end of the list. More...
 
None addElements (FragmentList values)
 Adds the elements of values to the end of the list. More...
 
None insertElement (int idx, Fragment value)
 Inserts a new element before the location specified by the index idx. More...
 
None insertElements (int idx, int num_elem, Fragment value)
 Inserts num_elem copies of value before the location specified by the index idx. More...
 
None insertElements (int idx, FragmentList values)
 Insert the elements of values before the location specified by the index idx. More...
 
None popLastElement ()
 Removes the last element of the list. More...
 
None removeElement (int idx)
 Removes the element at index idx. More...
 
None removeElements (int begin_idx, int end_idx)
 Removes the elements at indices in the range [begin_idx, end_idx). More...
 
Fragment getFirstElement ()
 Returns the first element of the list. More...
 
Fragment getLastElement ()
 Returns the last element of the list. More...
 
Fragment getElement (int idx)
 Returns the element at index idx. More...
 
None setElement (int idx, Fragment value)
 Assigns a new value to the element at index idx. More...
 
None __delitem__ (int idx)
 Removes the element at index idx. More...
 
Fragment __getitem__ (int idx)
 Returns the element at index idx. More...
 
int __len__ ()
 Returns the number of elements stored in the list. More...
 
None __setitem__ (int idx, Fragment value)
 Assigns a new value to the element at index idx. More...
 
bool __eq__ (object list)
 Returns the result of the comparison operation self == list. More...
 
bool __ne__ (object list)
 Returns the result of the comparison operation self != list. More...
 

Properties

 objectID = property(getObjectID)
 
 size = property(getSize)
 

Detailed Description

Data structure for the storage of Chem.Fragment instances.

Constructor & Destructor Documentation

◆ __init__()

None CDPL.Chem.FragmentList.__init__ ( FragmentList  list)

Contructs a copy of the FragmentList instance list.

Parameters
listThe FragmentList instance to copy.

Member Function Documentation

◆ getObjectID()

int CDPL.Chem.FragmentList.getObjectID ( )

Returns the numeric identifier (ID) of the wrapped C++ class instance.

Different Python FragmentList instances may reference the same underlying C++ class instance. The commonly used Python expression a is not b thus cannot tell reliably whether the two FragmentList instances a and b reference different C++ objects. The numeric identifier returned by this method allows to correctly implement such an identity test via the simple expression a.getObjectID() != b.getObjectID().

Returns
The numeric ID of the internally referenced C++ class instance.

◆ getSize()

int CDPL.Chem.FragmentList.getSize ( )

Returns the number of elements stored in the list.

Returns
The size of the list.

◆ isEmpty()

bool CDPL.Chem.FragmentList.isEmpty ( )

Tells whether the list is empty (getSize() == 0).

Returns
True if the list is empty, False otherwise.

◆ resize()

None CDPL.Chem.FragmentList.resize ( int  num_elem,
Fragment  value 
)

Inserts or erases elements at the end so that the size becomes num_elem.

Parameters
num_elemThe new size.
valueThe value for newly inserted elements.

◆ reserve()

None CDPL.Chem.FragmentList.reserve ( int  num_elem)

Preallocates memory for (at least) num_elem elements.

If num_elem is less than or equal to the current capacity, this call has no effect. Otherwise, it is a request for allocation of additional memory. If the request is successful, then the capacity is greater than or equal to num_elem. Otherwise, the capacity is unchanged. In either case, the number of elements will not change.

Parameters
num_elemThe number of elements to reserve memory for.
See also
getCapacity()

◆ getCapacity()

int CDPL.Chem.FragmentList.getCapacity ( )

Returns the number of elements for which memory has been allocated.

The capacity is always greater than or equal to the number of currently stored elements.

Returns
The current capacity.

◆ assign() [1/2]

FragmentList CDPL.Chem.FragmentList.assign ( FragmentList  list)

Replaces the current state with a copy of the state of the FragmentList instance list.

Parameters
listThe FragmentList instance to copy.
Returns
self.

◆ assign() [2/2]

None CDPL.Chem.FragmentList.assign ( int  num_elem,
Fragment  value 
)

This function fills the array with num_elem copies of the given value.

Note that the assignment completely changes the array and the new size is the same as the number of elements assigned. Old data will be lost.

Parameters
num_elemThe number of elements to be assigned.
valueThe value to be assigned.

◆ addElement()

None CDPL.Chem.FragmentList.addElement ( Fragment  value)

Adds a new element at the end of the list.

Parameters
valueThe value of the new element.

◆ addElements()

None CDPL.Chem.FragmentList.addElements ( FragmentList  values)

Adds the elements of values to the end of the list.

Parameters
valuesThe FragmentList instance providing the elements to add.

◆ insertElement()

None CDPL.Chem.FragmentList.insertElement ( int  idx,
Fragment  value 
)

Inserts a new element before the location specified by the index idx.

Parameters
idxThe location where to insert the new element.
valueThe value of the element to insert.
Exceptions
Base.IndexErrorif idx is not in the range [0, getSize()].

◆ insertElements() [1/2]

None CDPL.Chem.FragmentList.insertElements ( int  idx,
int  num_elem,
Fragment  value 
)

Inserts num_elem copies of value before the location specified by the index idx.

Parameters
idxThe location where to insert the new elements.
num_elemThe number of elements to insert.
valueThe value of the elements to insert.
Exceptions
Base.IndexErrorif idx is not in the range [0, getSize()].

◆ insertElements() [2/2]

None CDPL.Chem.FragmentList.insertElements ( int  idx,
FragmentList  values 
)

Insert the elements of values before the location specified by the index idx.

Parameters
idxThe zero-based insertion index.
valuesThe FragmentList instance providing the elements to insert.
Exceptions
Base.IndexErrorif idx is not in the range [0, getSize()].

◆ popLastElement()

None CDPL.Chem.FragmentList.popLastElement ( )

Removes the last element of the list.

Exceptions
Base.OperationFailedif the list is empty.

◆ removeElement()

None CDPL.Chem.FragmentList.removeElement ( int  idx)

Removes the element at index idx.

Parameters
idxThe zero-based index of the element to remove.
Exceptions
Base.IndexErrorif idx is not in the range [0, getSize()).

◆ removeElements()

None CDPL.Chem.FragmentList.removeElements ( int  begin_idx,
int  end_idx 
)

Removes the elements at indices in the range [begin_idx, end_idx).

Parameters
begin_idxThe zero-based index range start.
end_idxThe zero-based index range end.
Exceptions
Base.IndexErrorif begin_idx or end_idx is not in the range [0, getSize()] or end_idx < begin_idx.

◆ getFirstElement()

Fragment CDPL.Chem.FragmentList.getFirstElement ( )

Returns the first element of the list.

Returns
The first element.
Exceptions
Base.OperationFailedif the list is empty.

◆ getLastElement()

Fragment CDPL.Chem.FragmentList.getLastElement ( )

Returns the last element of the list.

Returns
The last element.
Exceptions
Base.OperationFailedif the list is empty.

◆ getElement()

Fragment CDPL.Chem.FragmentList.getElement ( int  idx)

Returns the element at index idx.

The method is equivalent to __getitem__().

Parameters
idxThe zero-based index of the element.
Returns
The value of the element.
Exceptions
Base.IndexErrorif idx is not in the range [0, getSize()).

◆ setElement()

None CDPL.Chem.FragmentList.setElement ( int  idx,
Fragment  value 
)

Assigns a new value to the element at index idx.

Parameters
idxThe zero-based index of the element.
valueThe new value of the element after assignment.
Exceptions
Base.IndexErrorif idx is not in the range [0, getSize()).

◆ __delitem__()

None CDPL.Chem.FragmentList.__delitem__ ( int  idx)

Removes the element at index idx.

Parameters
idxThe zero-based index of the element to remove.
Exceptions
Base.IndexErrorif idx is not in the range [0, getSize()).

◆ __getitem__()

Fragment CDPL.Chem.FragmentList.__getitem__ ( int  idx)

Returns the element at index idx.

Parameters
idxThe zero-based index of the element.
Returns
The value of the element.
Exceptions
Base.IndexErrorif idx is not in the range [0, getSize()).

◆ __len__()

int CDPL.Chem.FragmentList.__len__ ( )

Returns the number of elements stored in the list.

Returns
The size of the list.

◆ __setitem__()

None CDPL.Chem.FragmentList.__setitem__ ( int  idx,
Fragment  value 
)

Assigns a new value to the element at index idx.

Parameters
idxThe zero-based index of the element.
valueThe new value of the element after assignment.
Exceptions
Base.IndexErrorif idx is not in the range [0, getSize()).

◆ __eq__()

bool CDPL.Chem.FragmentList.__eq__ ( object  list)

Returns the result of the comparison operation self == list.

Parameters
listThe object instance to be compared with.
Returns
The result of the comparison operation.

◆ __ne__()

bool CDPL.Chem.FragmentList.__ne__ ( object  list)

Returns the result of the comparison operation self != list.

Parameters
listThe object instance to be compared with.
Returns
The result of the comparison operation.