-
Notifications
You must be signed in to change notification settings - Fork 174
Statement Kinds Support #1212
Statement Kinds Support #1212
Conversation
| open Microsoft.Quantum.QsFmt.Formatter.Utils | ||
|
|
||
| type 'context Rewriter() = | ||
| type 'context Rewriter() as rewriter = |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I added a 'self' identifier to the constructor of the Rewriter here because I needed one for the added let functions. I could also have made new private members instead of let functions. @SamarSha is there a difference between a 'self' identifier declared on the type constructor like this versus the ones declared on the member functions themselves? It seems like the reducer class uses the constructor-declared 'self' identifier, while the rewriter class uses the member-declared 'self' identifiers.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I didn't find a difference between these two forms of the self reference. To make this file consistent I've gone ahead and removed the member-specific self references, just as the Reducer has.
bettinaheim
left a comment
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't have much to add - all looks reasonable to me and I like the tests. I just have a couple of comments on what caused some naming confusion for me.
16b3464 to
246f4f4
Compare
* added MSBuild_Logs to gitignore (#1171) * Command Line Support for Project File Input (#1192) * Change --inputs to --input (#1210) * Deprecate new array expression (#956) * Removing temporary project (#1225) * Formatter Updates Deprecated Boolean Operator Syntax (#1214) * Update the documentation found in the Q# Formatter Project (#1203) * Formatter Updates Deprecated Specialization Declaration Parameters (#1226) * Adding Sdk integration, and formatting support + code action for syntax updates to the language server (#1207) * QAT v. 0.1 (#1230) * Sdk changes to support Qir targets (#1238) * Quantum Development Kit Telemetry Library (#1199) Co-authored-by: Sarah Marshall <[email protected]> Co-authored-by: Scott Carda <[email protected]> * Allowing to use the LLVM intrinsic readcyclecounter from Q# (#1248) * Do case-insensitive comparisons for targets names (#1241) During the build stage of a Q# job submission via the CLI or the stand-alone executable, there is a case sensitive enforcement of target names. Since this limitation does not exist in the service or in other clients, we're aligning by making the corresponding comparison case insensitive. * Refactor language server code for extracting symbols from Q# fragments (#1220) * Start adding SymbolOccurrence module * Replace SymbolInformation implementation * Add C# interop for SymbolOccurrence * Rename SymbolInformation.cs to match class name * Mark SymbolInformation as obsolete * Add SymbolOccurrence.fsi * Add doc comments * Fix nullable errors with .NET Core 3.1 * Use as instead of is * Take in fragment instead of file in SymbolOccurrence * Update todo comments * Return NS in open directive as UsedVariable * Use TryGet for SymbolOccurrence C# API * Statement Kinds Support (#1212) * Addressing last comments - QAT v0.1 (#1240) * Type renaming * Removing redudant setModulePassManager * Fixing recursion * Refactoring filenames * Renaming directory * Updating names and files * Formatting * Fixing include * Updates for QIR validation (#1250) * Type renaming * Removing redudant setModulePassManager * Fixing recursion * Refactoring filenames * Renaming directory * Updating names and files * Formatting * Changing default to interop friendly * Updating base profile * Styling * Updating logger * Fixing style * Removing comment * Moving testing to run before linting * Updating CMake * Attempting to solve tests issue * Updating according to PR comments * Complete NamespaceItem in qsfmt (#1239) Co-authored-by: Filip W <[email protected]> Co-authored-by: Scott Carda <[email protected]> Co-authored-by: Sarah Marshall <[email protected]> Co-authored-by: bettinaheim <[email protected]> Co-authored-by: Jintao YU <[email protected]> Co-authored-by: Troels F. Rønnow <[email protected]> Co-authored-by: XField <[email protected]> Co-authored-by: Ricardo Espinoza <[email protected]>
Adds support for various statement kinds in the syntax tree.
Statement kinds that need support are: