File size: 562 Bytes
b2edbd0
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
from .code_parser import CodeParser
from .style_encoder import StyleEncoder
from .style_diffuser import StyleDiffuser
from .rewrite_engine import RewriteEngine

class CodeStylePipeline:
    def __init__(self):
        self.p=CodeParser(); self.e=StyleEncoder()
        self.d=StyleDiffuser(); self.r=RewriteEngine()

    def __call__(self,code,style):
        lines=self.p.parse(code)
        prof=self.e.encode(style)
        lines=self.d.diffuse(lines,prof['indent'])
        lines=self.r.rewrite(lines,prof['max_line_length'])
        return '\n'.join(lines)