From: Luke Kenneth Casson Leighton Date: Wed, 31 Jul 2019 19:44:06 +0000 (+0100) Subject: code comments in dynamicpipe X-Git-Tag: ls180-24jan2020~608 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=fa440d7bfb4e9812e32eccb3cded5869b255bc63;p=ieee754fpu.git code comments in dynamicpipe --- diff --git a/src/nmutil/dynamicpipe.py b/src/nmutil/dynamicpipe.py index 01a3f99e..b6eb2a7e 100644 --- a/src/nmutil/dynamicpipe.py +++ b/src/nmutil/dynamicpipe.py @@ -1,6 +1,18 @@ # SPDX-License-Identifier: LGPL-2.1-or-later # See Notices.txt for copyright information +""" Meta-class that allows a dynamic runtime parameter-selectable "mixin" + +The reasons why this technique is being deployed is because SimpleHandshake +needs to be dynamically replaced at the end-users' choice, without having +to duplicate dozens of classes using multiple-inheritanc "Mix-in" techniques. + +It is however extremely unusual, and has been explicitly limited to this *one* +module. DO NOT try to use this technique elsewhere, it is extremely hard to +understand (meta-class programming). + +""" + from abc import ABCMeta from nmutil.singlepipe import SimpleHandshake