An algorithm for layout preservation in refactoring transformations

  • Authors:
  • Maartje de Jonge;Eelco Visser

  • Affiliations:
  • Dept. of Software Technology, Delft University of Technology, The Netherlands;Dept. of Software Technology, Delft University of Technology, The Netherlands

  • Venue:
  • SLE'11 Proceedings of the 4th international conference on Software Language Engineering
  • Year:
  • 2011

Quantified Score

Hi-index 0.00

Visualization

Abstract

Transformations and semantic analysis for source-to-source transformations such as refactorings are most effectively implemented using an abstract representation of the source code. An intrinsic limitation of transformation techniques based on abstract syntax trees is the loss of layout, i.e. comments and whitespace. This is especially relevant in the context of refactorings, which produce source code for human consumption. In this paper, we present an algorithm for fully automatic source code reconstruction for source-to-source transformations. The algorithm preserves the layout and comments of the unaffected parts and reconstructs the indentation of the affected parts, using a set of clearly defined heuristic rules to handle comments.