Closed PalumboN closed 5 years ago
Me gustaría tomar este issue así aprendo a usar el formatter. @fdodino me das una mano?
Buenísimo, sí.
Tenés que toquetear WollokDslFormatter
, armando un método dispatch
def dispatch void format(??????, extension IFormattableDocument document) {
Reemplazando ????
por la construcción del AST que corresponda, el tema es engancharlo tanto en los tests como en los programas y las definiciones wlk.
El prepend, append, etc. está bastante piola... Avisame si te trabás.
Bueno, estuve jugando un poco y el método que tendrías que tocar es
def dispatch void format(WFile file, extension IFormattableDocument document) {
Ahí se llama al main, a los tests, o a los suite, etc.
Otra ayuda: AbstractWollokFormatterTestCase
tiene esta definición
def assertFormatting(String program, String expected) {
//program.parse.eContents.show(1)
Assert.assertEquals(expected,
program.parse.serialize(SaveOptions.newBuilder.format().getOptions()))
}
La primera línea la podés descomentar y te muestra el AST tal cual lo procesa el formatter.
Nota mental para mí: fix-#1794-indentar-constantes-globales
es un branch local por si me olvido
Bueno, antes de que me olvide ahí subí el fix.
Ok, gracias.
El dom., 6 de oct. de 2019 a la(s) 23:00, Fernando Dodino ( notifications@github.com) escribió:
Bueno, antes de que me olvide ahí subí el fix.
— You are receiving this because you were assigned. Reply to this email directly, view it on GitHub https://github.com/uqbar-project/wollok/issues/1794?email_source=notifications&email_token=ABDLKOKPYKN6DEACPZWTSG3QNKJ5TA5CNFSM4IWX3IEKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEAO2TUQ#issuecomment-538814930, or mute the thread https://github.com/notifications/unsubscribe-auth/ABDLKOIRANG7TH3GYSNVKLLQNKJ5TANCNFSM4IWX3IEA .
Si le paso el formatter a este código:
Me lo deja:
:disappointed: