C# Class Microsoft.Cci.SourceEmitter

A wrapper for a TextWriter instance that adds various methods for emitting source code in a nicely formatted way. The formatting conventions can be specified via options.
Afficher le fichier Open project: visualmutator/visualmutator Class Usage Examples

Méthodes publiques

Méthode Description
EmitAnonymousMethodBodyOpeningDelimiter ( string delimiter ) : void

If this.PlaceAnonymousMethodBodyOpeningDelimitersOnNewLine is true a new line is emitted, if necessary, before calling this.EmitBlockOpeningDelimiter with the given delimiter.

EmitAnonymousTypeBodyOpeningDelimiter ( string delimiter ) : void

If this.PlaceAnonymousTypeBodyOpeningDelimitersOnNewLine is true a new line is emitted, if necessary, before calling this.EmitBlockOpeningDelimiter with the given delimiter.

EmitBlockClosingDelimiter ( string delimiter ) : void

Write out the given string and note that it is the closing delimiter of a block. If this.IdentBlockContents is true then this.IndentationLevel will be incremented before writing out the delimiter. If this.IndentBlockDelimiters is true then this.IndentationLevel will be decremented after writing out the delimiter.

EmitBlockOpeningDelimiter ( string delimiter ) : void

Write out the given string and note that it is the opening delimiter of a block. If this.IndentBlockDelimiters is true then this.IndentationLevel will be incremented before writing out the delimiter. If this.IdentBlockContents is true then this.IndentationLevel will be incremented after writing out the delimiter.

EmitCaseClosingDelimiter ( string delimiter ) : void

Write out the given string and note that it is the closing delimiter of a switch case. If this.IndentCaseContents is true then this.IndentationLevel will be decremented before writing out the delimiter.

EmitCaseOpeningDelimiter ( string delimiter ) : void

Write out the given string and note that it is the opening delimiter of a switch case. If this.IndentCaseContents is true then this.IndentationLevel will be incremented after writing out the delimiter.

EmitCatch ( string catchDelimiter ) : void

If this.PlaceCatchOnNewLine is true then a new line will be emitted, if necessary, before calling this.EmitString with the given catch delimiter string.

EmitControlBlockOpeningDelimiter ( string delimiter ) : void

If this.PlaceControlBlockOpeningDelimitersOnNewLine is true a new line is emitted, if necessary, before calling this.EmitBlockOpeningDelimiter with the given delimiter. A control block is the body of an loop or the true/false part of an if statement, for example.

EmitElse ( string elseDelimiter ) : void

If this.PlaceElseOnNewLine is true then a new line will be emitted, if necessary, before calling this.EmitString with the given else delimiter string.

EmitFinally ( string finallyDelimiter ) : void

If this.PlaceFinallyOnNewLine is true then a new line will be emitted, if necessary, before calling this.EmitString with the given finally delimiter string.

EmitLabel ( string label ) : void

Emits the given string, after applying the indentation rules applicable to labels.

EmitLambdaBodyOpeningDelimiter ( string delimiter ) : void

If this.PlaceLambdaBodyOpeningDelimitersOnNewLine is true a new line is emitted, if necessary, before calling this.EmitBlockOpeningDelimiter with the given delimiter.

EmitMethodBodyOpeningDelimiter ( string delimiter ) : void

If this.PlaceMethodBodyOpeningDelimitersOnNewLine is true a new line is emitted, if necessary, before calling this.EmitBlockOpeningDelimiter with the given delimiter.

EmitNewLine ( ) : void

Emits a new line character, thus starting a new source line.

EmitString ( string str ) : void

Emits the given string to the current source line. If this is the first string on the line, indentation will be emitted before the string. Note, however, that if the string is empty nothing is emitted, not even indentation.

EmitTypeBodyOpeningDelimiter ( string delimiter ) : void

If this.PlaceTypeBodyOpeningDelimitersOnNewLine is true a new line is emitted, if necessary, before calling this.EmitBlockOpeningDelimiter with the given delimiter.

SourceEmitter ( TextWriter textWriter ) : System

A wrapper for a TextWriter instance that adds various methods for emitting source code in a nicely formatted way. The formatting conventions can be specified via options.

Private Methods

Méthode Description
IndentIfAtStartOfNewLine ( ) : void

If nothing has yet been written to the current line, write out this.IndentationLevel*this.IndentSize number of spaces. (Calling this again before first calling EmitNewLine, will have no effect.)

ObjectInvariant ( ) : void

Method Details

EmitAnonymousMethodBodyOpeningDelimiter() public méthode

If this.PlaceAnonymousMethodBodyOpeningDelimitersOnNewLine is true a new line is emitted, if necessary, before calling this.EmitBlockOpeningDelimiter with the given delimiter.
public EmitAnonymousMethodBodyOpeningDelimiter ( string delimiter ) : void
delimiter string A string representing the start of an anonymous method body block.
Résultat void

EmitAnonymousTypeBodyOpeningDelimiter() public méthode

If this.PlaceAnonymousTypeBodyOpeningDelimitersOnNewLine is true a new line is emitted, if necessary, before calling this.EmitBlockOpeningDelimiter with the given delimiter.
public EmitAnonymousTypeBodyOpeningDelimiter ( string delimiter ) : void
delimiter string A string representing the start of a anonymous type body block.
Résultat void

EmitBlockClosingDelimiter() public méthode

Write out the given string and note that it is the closing delimiter of a block. If this.IdentBlockContents is true then this.IndentationLevel will be incremented before writing out the delimiter. If this.IndentBlockDelimiters is true then this.IndentationLevel will be decremented after writing out the delimiter.
public EmitBlockClosingDelimiter ( string delimiter ) : void
delimiter string A string representing the start of a block.
Résultat void

EmitBlockOpeningDelimiter() public méthode

Write out the given string and note that it is the opening delimiter of a block. If this.IndentBlockDelimiters is true then this.IndentationLevel will be incremented before writing out the delimiter. If this.IdentBlockContents is true then this.IndentationLevel will be incremented after writing out the delimiter.
public EmitBlockOpeningDelimiter ( string delimiter ) : void
delimiter string A string representing the start of a block.
Résultat void

EmitCaseClosingDelimiter() public méthode

Write out the given string and note that it is the closing delimiter of a switch case. If this.IndentCaseContents is true then this.IndentationLevel will be decremented before writing out the delimiter.
public EmitCaseClosingDelimiter ( string delimiter ) : void
delimiter string A string representing the start of a block.
Résultat void

EmitCaseOpeningDelimiter() public méthode

Write out the given string and note that it is the opening delimiter of a switch case. If this.IndentCaseContents is true then this.IndentationLevel will be incremented after writing out the delimiter.
public EmitCaseOpeningDelimiter ( string delimiter ) : void
delimiter string A string representing the start of a block.
Résultat void

EmitCatch() public méthode

If this.PlaceCatchOnNewLine is true then a new line will be emitted, if necessary, before calling this.EmitString with the given catch delimiter string.
public EmitCatch ( string catchDelimiter ) : void
catchDelimiter string A string representing the start of the else part of an if statement.
Résultat void

EmitControlBlockOpeningDelimiter() public méthode

If this.PlaceControlBlockOpeningDelimitersOnNewLine is true a new line is emitted, if necessary, before calling this.EmitBlockOpeningDelimiter with the given delimiter. A control block is the body of an loop or the true/false part of an if statement, for example.
public EmitControlBlockOpeningDelimiter ( string delimiter ) : void
delimiter string A string representing the start of a control block.
Résultat void

EmitElse() public méthode

If this.PlaceElseOnNewLine is true then a new line will be emitted, if necessary, before calling this.EmitString with the given else delimiter string.
public EmitElse ( string elseDelimiter ) : void
elseDelimiter string A string representing the start of the else part of an if statement.
Résultat void

EmitFinally() public méthode

If this.PlaceFinallyOnNewLine is true then a new line will be emitted, if necessary, before calling this.EmitString with the given finally delimiter string.
public EmitFinally ( string finallyDelimiter ) : void
finallyDelimiter string A string representing the start of the else part of an if statement.
Résultat void

EmitLabel() public méthode

Emits the given string, after applying the indentation rules applicable to labels.
public EmitLabel ( string label ) : void
label string The string to emit as a label.
Résultat void

EmitLambdaBodyOpeningDelimiter() public méthode

If this.PlaceLambdaBodyOpeningDelimitersOnNewLine is true a new line is emitted, if necessary, before calling this.EmitBlockOpeningDelimiter with the given delimiter.
public EmitLambdaBodyOpeningDelimiter ( string delimiter ) : void
delimiter string A string representing the start of a lambda body block.
Résultat void

EmitMethodBodyOpeningDelimiter() public méthode

If this.PlaceMethodBodyOpeningDelimitersOnNewLine is true a new line is emitted, if necessary, before calling this.EmitBlockOpeningDelimiter with the given delimiter.
public EmitMethodBodyOpeningDelimiter ( string delimiter ) : void
delimiter string A string representing the start of a method body block.
Résultat void

EmitNewLine() public méthode

Emits a new line character, thus starting a new source line.
public EmitNewLine ( ) : void
Résultat void

EmitString() public méthode

Emits the given string to the current source line. If this is the first string on the line, indentation will be emitted before the string. Note, however, that if the string is empty nothing is emitted, not even indentation.
public EmitString ( string str ) : void
str string The string to emit.
Résultat void

EmitTypeBodyOpeningDelimiter() public méthode

If this.PlaceTypeBodyOpeningDelimitersOnNewLine is true a new line is emitted, if necessary, before calling this.EmitBlockOpeningDelimiter with the given delimiter.
public EmitTypeBodyOpeningDelimiter ( string delimiter ) : void
delimiter string A string representing the start of a type body block.
Résultat void

SourceEmitter() public méthode

A wrapper for a TextWriter instance that adds various methods for emitting source code in a nicely formatted way. The formatting conventions can be specified via options.
public SourceEmitter ( TextWriter textWriter ) : System
textWriter System.IO.TextWriter The TextWriter instance to which the formatted source code is written.
Résultat System