Page 1 of 1

hbatch_parsers

Posted: Thu Nov 02, 2017 5:35 pm
by elecstorm
Hi!
I don't understand logic of all hbatch_something parsers.
For example hbatch_mantra:

Code: Select all

from parsers import hbatch
from parsers import mantra

class hbatch_mantra(hbatch.hbatch, mantra.mantra):
	def __init__(self):
		hbatch.hbatch.__init__(self) # WE init str_error and str_warning from hbatch parser
		mantra.mantra.__init__(self) # NOW we re-initialize them, and we lost errors and warnings from hbatch!

	def do(self, data, mode):
		mantra.mantra.do(self, data, mode)
		hbatch.hbatch.do(self, data, mode)
I think, this combination of some parsers in one creates dangerous situations, when we lost all errors and warnings from parsers during initialization, except the last. I catch it, when I added critical error (for our network) to hbatch parser. But It doesn't work in hbatch_... parsers.

Re: hbatch_parsers

Posted: Thu Nov 02, 2017 6:30 pm
by timurhai
Yes. This is a bug.
We should append errors and warnings arrays in class constructors. Not reinitialize arrays.