Esempio n. 1
0
    def __str__(self):
        if self.implied:
            string = self.name
        else:
            string = ffi.string(
                lib.EnvGetDeftemplatePPForm(self._env, self._tpl)).decode()

        return string
Esempio n. 2
0
    def __repr__(self):
        if self.implied:
            string = self.name
        else:
            string = ffi.string(
                lib.EnvGetDeftemplatePPForm(self._env, self._tpl)).decode()

        return "%s: %s" % (self.__class__.__name__, string)
Esempio n. 3
0
def template_pp_string(env, template):
    strn = lib.EnvGetDeftemplatePPForm(env, template)

    if strn != ffi.NULL:
        return ffi.string(strn).decode().strip()
    else:
        module = ffi.string(lib.EnvDeftemplateModule(env, template)).decode()
        name = ffi.string(lib.EnvGetDeftemplateName(env, template)).decode()

        return '(deftemplate %s::%s)' % (module, name)