Guest User

Untitled

a guest
May 26th, 2018
82
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.45 KB | None | 0 0
  1. def werkzeug2insanities(stream, rule, appname='v.', indent=''):
  2. # it's not usable :(
  3. if isinstance(rule, Map):
  4. stream.write(indent + 'Map(')
  5. for r in rule._rules:
  6. werkzeug2insanities(stream, r, appname, indent + ' ')
  7. stream.write(',\n')
  8. stream.write(indent + ')\n')
  9. elif isinstance(rule, Subdomain):
  10. stream.write(indent + "subdomain('%s') | Map(" % rule.subdomain)
  11. for r in rule._rules:
  12. werkzeug2insanities(stream, r, appname, indent + ' ')
  13. stream.write(',\n')
  14. stream.write(indent + ')\n')
  15. elif isinstance(rule, EndpointPrefix):
  16. for r in rule._rules:
  17. werkzeug2insanities(stream, r, appname + r.prefix, indent)
  18. elif isinstance(rule, Rule):
  19. stream.write('indent')
  20. if rule.endpoint:
  21. stream.write("match('%s', '%s%s') | " % (rule.string, appname, rule.endpoint))
  22. else:
  23. stream.write("prefix('%s') | " % rule.string)
  24. if rule.methods:
  25. stream.write("methods(%s) | " % rule.methods)
  26. if rule.defaults:
  27. stream.write("defaults(%s) | " % rule.defaults)
  28.  
  29. if rule.endpoint:
  30. stream.write(appname + endpoint)
  31. elif rule.redirect_to:
  32. stream.write("redirect_to(???)")
  33. else:
  34. stream.write("???")
  35. elif isinstance(rule, RuleTemplate):
  36. stream.write(RuleTemplateFactory)
  37. else: raise Exception()
Add Comment
Please, Sign In to add comment