diff options
Diffstat (limited to 'libpathod/language.py')
-rw-r--r-- | libpathod/language.py | 18 |
1 files changed, 11 insertions, 7 deletions
diff --git a/libpathod/language.py b/libpathod/language.py index 2dceefa5..1c010c91 100644 --- a/libpathod/language.py +++ b/libpathod/language.py @@ -242,7 +242,7 @@ class ValueGenerate(_Value): class ValueFile(_Value): def __init__(self, path): - self.path = path + self.path = str(path) @classmethod def expr(klass): @@ -807,6 +807,9 @@ class _Response(_Message): ) return resp + def spec(self): + return ":".join([i.spec() for i in self.tokens]) + class _Request(_Message): comps = ( @@ -849,26 +852,27 @@ class _Request(_Message): ) return resp + def spec(self): + return ":".join([i.spec() for i in self.tokens]) + class CraftedRequest(_Request): def __init__(self, spec, tokens): _Request.__init__(self, tokens) - self.spec, self.tokens = spec, tokens def serve(self, fp, settings, host): d = _Request.serve(self, fp, settings, host) - d["spec"] = self.spec + d["spec"] = self.spec() return d class CraftedResponse(_Response): def __init__(self, spec, tokens): _Response.__init__(self, tokens) - self.spec, self.tokens = spec, tokens def serve(self, fp, settings): d = _Response.serve(self, fp, settings, None) - d["spec"] = self.spec + d["spec"] = self.spec() return d @@ -910,7 +914,7 @@ def parse_response(settings, s): May raise ParseException or FileAccessDenied """ try: - s.decode("ascii") + s = s.decode("ascii") except UnicodeError: raise ParseException("Spec must be valid ASCII.", 0, 0) if s.startswith(FILESTART): @@ -926,7 +930,7 @@ def parse_request(settings, s): May raise ParseException or FileAccessDenied """ try: - s.decode("ascii") + s = s.decode("ascii") except UnicodeError: raise ParseException("Spec must be valid ASCII.", 0, 0) if s.startswith(FILESTART): |