import attr


@attr.s
class RELOCATION_STATE(object):
    SUPERDIRTY = 'superdirty'
    CT_COMPUTED = 'ct_computed'
    FIELDS_COMPUTED = 'fields_computed'
    GOOD = None

    STATUSES = [
        GOOD,
        FIELDS_COMPUTED,
        CT_COMPUTED,
        SUPERDIRTY,
    ]

    NAMES = (
        (SUPERDIRTY, 'Superdirty'),
        (CT_COMPUTED, 'Closure tree computed'),
        (FIELDS_COMPUTED, 'Fields computed'),
        (GOOD, 'Good'),
    )
