Source code for pygenprop.functional_element

#!/usr/bin/env python

"""
Created by: Lee Bergstrand (2017)

Description: The functional element class.
"""
from pygenprop.step import Step


[docs]class FunctionalElement(object): """A functional element (enzyme, structural component or sub-genome property) that can carry out a step.""" def __init__(self, identifier, name, evidence: list=None, required=False, parent: Step=None): """ Creates a new FunctionalElement object. :param identifier: The identifier of the FunctionalElement. :param name: The name of the FunctionalElement. :param evidence: A list of Evidence objects supporting this FunctionalElement. :param required: Is this a required FunctionalElement for this functional_element? """ if evidence is None: evidence = [] else: # Double link evidences back to the parent functional element. for current_evidence in evidence: current_evidence.parent = self if required is None: required = False if name is None: name = identifier self.id = identifier self.name = name self.evidence = evidence self.required = required self.parent = parent def __repr__(self): repr_data = ['ID: ' + str(self.id), 'Name: ' + str(self.name), 'Evidences: ' + str(self.evidence), 'Required: ' + str(self.required)] return '(' + ', '.join(repr_data) + ')'