mixins that don't down-call?

J

Joshua Spoerri

Anybody have an idea for how to do python mixins that don't down-call?

Thanks

(
Mixins from different vendors might use the same method names for unrelated
features, but should continue to work sensibly.

It's fine to have one mixin method override another in its "public" interface,
but overriding a mixin's internal methods in its "protected" interface should
only happen under explicit extension.

e.g.
def simplyMixin(*classes):
c = copy.copy(classes[0])
c.__bases__ += classes[1:]
return c()

class artist:
def draw(self): ...
class cowboy:
def draw(self): ...
def drawAndShoot(): self.draw() ...
artisticCowboy = simplyMixin(artist, cowboy)()
artisticCowboy.draw() #draw a picture
artisticCowboy.drawAndShoot() #take out gun and fire it
)
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,743
Messages
2,569,478
Members
44,899
Latest member
RodneyMcAu

Latest Threads

Top