15. A system for handling preprocessing in source code transformation, the system comprising: a memory for storing: a deconditioning component for deconditioning an original source code to produce a parsable source code, the original source code including original preprocessing directives; a parser component for parsing the parsable source code to produce an abstract syntax tree (AST) form, the AST form comprising annotations adapted to facilitate preservation of a style of the original source code; a transformation engine component for performing an AST-based transformation on the AST form to produce a modified AST form; and a reconditioning component for reconditioning the modified AST form to produce a modified source code conforming to the original source code style, the reconditioning comprising reconstructing a portion of the original preprocessing directives that was unaffected by the AST-based transformation; and a processor adapted to execute the components stored in the memory to produce the modified source code based on the original source code.
15. A system for handling preprocessing in source code transformation, the system comprising: a memory for storing: a deconditioning component for deconditioning an original source code to produce a parsable source code, the original source code including original preprocessing directives; a parser component for parsing the parsable source code to produce an abstract syntax tree (AST) form, the AST form comprising annotations adapted to facilitate preservation of a style of the original source code; a transformation engine component for performing an AST-based transformation on the AST form to produce a modified AST form; and a reconditioning component for reconditioning the modified AST form to produce a modified source code conforming to the original source code style, the reconditioning comprising reconstructing a portion of the original preprocessing directives that was unaffected by the AST-based transformation; and a processor adapted to execute the components stored in the memory to produce the modified source code based on the original source code. 16. The system of claim 15 , wherein the deconditioning component further provides for: masking out selected conditional directives of the original source code; expanding macros in the original source code; annotating the original source code with expansion meta-data tags to indicate the expanded macros; removing line continuations in the original source code; and annotating the original source code with splits meta-data indicating line splits corresponding the removed line continuation.