engforge.attributes.ATTR_BASE

class ATTR_BASE(name, default, validator, repr, cmp, hash, init, inherited, metadata=None, type=None, converter=None, kw_only=False, eq=None, eq_key=None, order=None, order_key=None, on_setattr=None, alias=None)[source]

Bases: Attribute

A base class that handles initalization in the attrs meta class scheme by ultimately createing an Instance

Methods

class_validate

validates onetime A method to validate the kwargs passed to the define method

collect_attr_inst

collects all the attribute instances for a system

collect_cls

collects all the attributes for a system

configure_for_system

add the config class, and perform checks with `class_validate) :returns: [optional] a dictionary of options to be used in the make_attribute method

configure_instance

validates the instance given attr's init routine

create_instance

Create an instance of the instance_class

define

taking a component or system class as possible input valid input is later validated as an instance of that class or subclass

define_validate

A method to validate the kwargs passed to the define method

evolve

Copy self and apply changes.

from_counting_attr

handle_instance

handles the instance, override as you wish

make_attribute

makes an attrs.Attribute for the class

make_factory

process_combos

subclasses

return all subclasses of components, including their subclasses :type out: :param out: out is to pass when the middle of a recursive operation, do not use it!

unpack_atrs

Attributes

name

default

validator

repr

eq

eq_key

order

order_key

hash

init

metadata

type

converter

kw_only

inherited

on_setattr

alias

attr_prefix

default_options

none_ok

template_class

config_cls

active

combos

classmethod class_validate(instance, **kwargs)[source]

validates onetime A method to validate the kwargs passed to the define method

classmethod collect_attr_inst(system, handle_inst=True)[source]

collects all the attribute instances for a system

Return type:

dict

classmethod collect_cls(system)[source]

collects all the attributes for a system

Return type:

dict

classmethod configure_for_system(name, config_class, cb=None, **kwargs)[source]

add the config class, and perform checks with `class_validate) :returns: [optional] a dictionary of options to be used in the make_attribute method

classmethod configure_instance(instance, attribute, value)[source]

validates the instance given attr’s init routine

classmethod create_instance(instance)[source]

Create an instance of the instance_class

Return type:

AttributeInstance

Parameters:

instance (Configuration)

classmethod define(**kwargs)[source]

taking a component or system class as possible input valid input is later validated as an instance of that class or subclass

classmethod define_validate(**kwargs)[source]

A method to validate the kwargs passed to the define method

evolve(**changes)

Copy self and apply changes.

This works similarly to attrs.evolve but that function does not work with Attribute.

It is mainly meant to be used for transform-fields.

Added in version 20.3.0.

classmethod handle_instance(canidate)[source]

handles the instance, override as you wish

classmethod make_attribute(name, comp_class, **kwargs)[source]

makes an attrs.Attribute for the class

classmethod subclasses(out=None)[source]

return all subclasses of components, including their subclasses :type out: :param out: out is to pass when the middle of a recursive operation, do not use it!