/** * Returns a template.Node subclass. * * @static * * @param Parser $parser * @param Token $token * @param array $params * @param null $varargs * @param null $varkw * @param array $defaults * @param string $name * @param bool|null $takes_context * @param string $node_class * @param array $node_opts_ * * @return Node|object */ public static function genericTagCompiler($parser, $token, $params, $varargs, $varkw, $defaults, $name, $takes_context, $node_class, $node_opts_) { $bits = py_slice($token->splitContents(), 1); list($args, $kwargs) = DjaBase::parseBits($parser, $bits, $params, $varargs, $varkw, $defaults, $takes_context, $name); py_arr_insert($args, 0, $takes_context); /** @var $node_class Node */ return $node_class::spawn_($args, $node_opts_); }