python - How to extend a static base constructor? -


i'm using python bitmap package.

it need, don't work hexadecimal values, needed application, extended this:

import bitmap class bitmap(bitmap.bitmap):     def tohexstring(self):         val = self.tostring()         st = "{0:0x}".format(int(val,2))         return st.zfill(self.sz/4) 

the base class has static constructor string:

bitmap.bitmap.fromstring("01010101") 

i can make 1 hexadecimal converting hex value bin:

bitmap.bitmap.fromstring(format(int("aa",16),"08b")) 

but returned class original bitmap class , not extended one.

how can use constructor still return extended class?

bitmap.bitmap.fromstring class method, not static method, has been implemented incorrectly author. line:

bm = bitmap(nbits) 

should be

bm = cls(nbits) 

in case call fromstring on subclass , an instance of subclass. fork repo, implement , make pull request have included in package (or use fork in package). raise issue on repo see how they'd prefer proceed.

alternatively, implement fromstring correctly in own subclass , shadow broken base class implementation.


Comments

Popular posts from this blog

javascript - Chart.js (Radar Chart) different scaleLineColor for each scaleLine -

apache - Error with PHP mail(): Multiple or malformed newlines found in additional_header -

java - Android – MapFragment overlay button shadow, just like MyLocation button -