_cached_encoders and _cached_decoders shouldn't be explicitly initialised

Issue #55 resolved
Johan Rosenkilde created an issue

It somehow hurts me that all subclasses of LinearCode right now have to explicitly write

    self._cached_encoders = {} 
    self._cached_decoders = {}

in their __init__(). Since Python is a strange language wrt. inheritance, there is no fully natural place to put such "base class initialisation".

Should we add a method LinearCode._init_linear_code or something, and put those lines in there? Alternatively, we could add a no-argument LinearCode.__init__ and call that from the sub-classes' __init__, but that sort of indicates it's an ok way to construct a LinearCode.

Comments (1)

  1. Log in to comment