C# 클래스 Rosetta.Translation.ConditionalStatementTranslationUnit

Class describing conditional statements.
Internal members protected for testability.
상속: StatementTranslationUnit
파일 보기 프로젝트 열기: andry-tino/Rosetta 1 사용 예제들

보호된 프로퍼티들

프로퍼티 타입 설명
bodies ITranslationUnit[]
hasFinalElse bool
lastBody ITranslationUnit
testExpressions ITranslationUnit[]

공개 메소드들

메소드 설명
Create ( int blocksNumber, bool hasFinalElse ) : ConditionalStatementTranslationUnit

SetStatementInConditionalBlock ( ITranslationUnit statement, int index ) : void

SetStatementInElseBlock ( ITranslationUnit statement ) : void

SetTestExpression ( ITranslationUnit testExpression, int index ) : void

Translate ( ) : string

Translate the unit into TypeScript.

보호된 메소드들

메소드 설명
ConditionalStatementTranslationUnit ( ) : System

Initializes a new instance of the ConditionalStatementTranslationUnit class.

ConditionalStatementTranslationUnit ( ConditionalStatementTranslationUnit other ) : System

Copy initializes a new instance of the ConditionalStatementTranslationUnit class.

For testability.

ConditionalStatementTranslationUnit ( int nestingLevel ) : System

Initializes a new instance of the ConditionalStatementTranslationUnit class.

메소드 상세

ConditionalStatementTranslationUnit() 보호된 메소드

Initializes a new instance of the ConditionalStatementTranslationUnit class.
protected ConditionalStatementTranslationUnit ( ) : System
리턴 System

ConditionalStatementTranslationUnit() 보호된 메소드

Copy initializes a new instance of the ConditionalStatementTranslationUnit class.
For testability.
protected ConditionalStatementTranslationUnit ( ConditionalStatementTranslationUnit other ) : System
other ConditionalStatementTranslationUnit
리턴 System

ConditionalStatementTranslationUnit() 보호된 메소드

Initializes a new instance of the ConditionalStatementTranslationUnit class.
protected ConditionalStatementTranslationUnit ( int nestingLevel ) : System
nestingLevel int
리턴 System

Create() 공개 정적인 메소드

public static Create ( int blocksNumber, bool hasFinalElse ) : ConditionalStatementTranslationUnit
blocksNumber int
hasFinalElse bool
리턴 ConditionalStatementTranslationUnit

SetStatementInConditionalBlock() 공개 메소드

public SetStatementInConditionalBlock ( ITranslationUnit statement, int index ) : void
statement ITranslationUnit Can be a block or a statement.
index int
리턴 void

SetStatementInElseBlock() 공개 메소드

public SetStatementInElseBlock ( ITranslationUnit statement ) : void
statement ITranslationUnit Can be a block or a statement.
리턴 void

SetTestExpression() 공개 메소드

public SetTestExpression ( ITranslationUnit testExpression, int index ) : void
testExpression ITranslationUnit
index int
리턴 void

Translate() 공개 메소드

Translate the unit into TypeScript.
public Translate ( ) : string
리턴 string

프로퍼티 상세

bodies 보호되어 있는 프로퍼티

Contains all bodies: if (...) { } else if (...) { } else if (...) { } else {...} We can have N bodies and they can be blocks or single statements.
protected ITranslationUnit[] bodies
리턴 ITranslationUnit[]

hasFinalElse 보호되어 있는 프로퍼티

protected bool hasFinalElse
리턴 bool

lastBody 보호되어 있는 프로퍼티

Contains all bodies: if (...) { ... } else if (...) { ... } else if (...) { ... } else { } Total bodies is N + 1 in case we have final ELSE clause and it can be a block or a single statement.
protected ITranslationUnit lastBody
리턴 ITranslationUnit

testExpressions 보호되어 있는 프로퍼티

Contains all test expressions: if () { } else if () { } else if () { } else { } N is the number of test expressions.
protected ITranslationUnit[] testExpressions
리턴 ITranslationUnit[]