%%
def factory(tag, *args, **kwargs):
- return tag_to_class.get(tag, element.Element)(tag, *args, **kwargs)
+ return tag_to_class[tag](*args, **kwargs)
@method(Item)
def post_process(
def yy_group_end_element():
yy_element_stack.append([])
-def yy_group_element(pos0, pos1, stack, factory, *args, **kwargs):
- _element = factory(*args, **kwargs)
+def yy_group_element(pos0, pos1, stack, _class, *args, **kwargs):
+ _element = _class(*args, **kwargs)
del _element.text[:]
for pos2, pos3, i in reversed(stack):
_element.text.append(yy_group_text[pos0:pos2])
# GENERATE SECTION2
-def yylex(factory = element.Element, *args, **kwargs):
+def yylex(_class = element.Element, *args, **kwargs):
global \
yyin, \
yy_threads0, \
# GENERATE SECTION2INITIAL
- yy_element_space = factory(*args, **kwargs)
- yy_element_token = factory(*args, **kwargs)
+ yy_element_space = _class(*args, **kwargs)
+ yy_element_token = _class(*args, **kwargs)
while True:
while yytext_len:
block = yy_buffer_stack[-1].next
0,
yytext_len,
yy_element_stack.pop(),
- factory,
+ _class,
*args,
**kwargs
)
* Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
*/
-%{
- import element
-%}
-
%%
class Text;
# this program; if not, write to the Free Software Foundation, Inc., 51
# Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA
-def factory(tag, attrib = {}, *args, **kwargs):
- return tag_to_class.get(tag, element.Element)(tag, attrib, *args, **kwargs)
+def factory(tag, *args, **kwargs):
+ return tag_to_class[tag](*args, **kwargs)
@method(Text)
def get_text(self):