C# Class Microsoft.Zing.Checker

Walk IR checking for semantic errors and repairing it so that subsequent walks need not do error checking
Inheritance: System.Compiler.Checker
Exibir arquivo Open project: ZingModelChecker/Zing

Private Properties

Property Type Description
Checker System.Collections
HandleError void
PopSelectStatement void
PushSelectStatement void
SameVariable bool
VisitAccept AcceptStatement
VisitArray ZArray
VisitAssert AssertStatement
VisitAssume AssumeStatement
VisitAsync AsyncMethodCall
VisitAtomic System.Compiler.Block
VisitAttributedStatement AttributedStatement
VisitBinaryExpression System.Compiler.Expression
VisitChan Chan
VisitChoose System.Compiler.UnaryExpression
VisitEventPattern EventPattern
VisitEventStatement EventStatement
VisitInvokePlugin InvokePluginStatement
VisitInvokeSched InvokeSchedulerStatement
VisitJoinStatement JoinStatement
VisitRange Range
VisitReceivePattern ReceivePattern
VisitSelect Select
VisitSelf SelfExpression
VisitSend SendStatement
VisitSet Set
VisitTimeoutPattern TimeoutPattern
VisitTrace TraceStatement
VisitWaitPattern WaitPattern
VisitWith With
VisitYield YieldStatement
VisitZTry ZTry

Public Methods

Method Description
SerializeContracts ( System.Compiler.TypeNode type ) : void
Visit ( System.Compiler.Node node ) : System.Compiler.Node
VisitAttributeConstructor ( System.Compiler.AttributeNode attribute, System.Compiler.Node target ) : System.Compiler.Expression
VisitAttributeList ( AttributeList attributes ) : AttributeList
VisitAttributeNode ( System.Compiler.AttributeNode attribute ) : System.Compiler.AttributeNode
VisitConstruct ( System.Compiler.Construct cons ) : System.Compiler.Expression
VisitExpressionStatement ( System.Compiler.ExpressionStatement statement ) : System.Compiler.Statement
VisitForEach ( System.Compiler.ForEach forEach ) : System.Compiler.Statement
VisitMethod ( System.Compiler.Method method ) : System.Compiler.Method
VisitMethodCall ( System.Compiler.MethodCall call ) : System.Compiler.Expression
VisitThrow ( Throw Throw ) : Statement
VisitTypeReference ( TypeNode type ) : TypeNode
VisitUnaryExpression ( UnaryExpression unaryExpression ) : Expression

Private Methods

Method Description
Checker ( ErrorHandler errorHandler, TypeSystem typeSystem, System.Compiler.TrivialHashtable scopeFor, System.Compiler.TrivialHashtable ambiguousTypes, System.Compiler.TrivialHashtable referencedLabels ) : System.Collections
HandleError ( System.Compiler.Node errorNode, Error error ) : void
PopSelectStatement ( ) : void
PushSelectStatement ( Select select ) : void
SameVariable ( System.Compiler.Expression expr1, System.Compiler.Expression expr2 ) : bool
VisitAccept ( AcceptStatement accept ) : AcceptStatement
VisitArray ( ZArray array ) : ZArray
VisitAssert ( AssertStatement assert ) : AssertStatement
VisitAssume ( AssumeStatement assume ) : AssumeStatement
VisitAsync ( AsyncMethodCall async ) : AsyncMethodCall
VisitAtomic ( AtomicBlock atomic ) : System.Compiler.Block
VisitAttributedStatement ( AttributedStatement attributedStmt ) : AttributedStatement
VisitBinaryExpression ( System.Compiler.BinaryExpression binaryExpression ) : System.Compiler.Expression
VisitChan ( Chan chan ) : Chan
VisitChoose ( System.Compiler.UnaryExpression expr ) : System.Compiler.UnaryExpression
VisitEventPattern ( EventPattern ep ) : EventPattern
VisitEventStatement ( EventStatement Event ) : EventStatement
VisitInvokePlugin ( InvokePluginStatement InvokePlugin ) : InvokePluginStatement
VisitInvokeSched ( InvokeSchedulerStatement InvokeShed ) : InvokeSchedulerStatement
VisitJoinStatement ( JoinStatement joinstmt ) : JoinStatement
VisitRange ( Range range ) : Range
VisitReceivePattern ( ReceivePattern rp ) : ReceivePattern
VisitSelect ( Select select ) : Select
VisitSelf ( SelfExpression self ) : SelfExpression
VisitSend ( SendStatement send ) : SendStatement
VisitSet ( Set @set ) : Set
VisitTimeoutPattern ( TimeoutPattern tp ) : TimeoutPattern
VisitTrace ( TraceStatement trace ) : TraceStatement
VisitWaitPattern ( WaitPattern wp ) : WaitPattern
VisitWith ( With with ) : With
VisitYield ( YieldStatement yield ) : YieldStatement
VisitZTry ( ZTry Try ) : ZTry

Method Details

SerializeContracts() public method

public SerializeContracts ( System.Compiler.TypeNode type ) : void
type System.Compiler.TypeNode
return void

Visit() public method

public Visit ( System.Compiler.Node node ) : System.Compiler.Node
node System.Compiler.Node
return System.Compiler.Node

VisitAttributeConstructor() public method

public VisitAttributeConstructor ( System.Compiler.AttributeNode attribute, System.Compiler.Node target ) : System.Compiler.Expression
attribute System.Compiler.AttributeNode
target System.Compiler.Node
return System.Compiler.Expression

VisitAttributeList() public method

public VisitAttributeList ( AttributeList attributes ) : AttributeList
attributes AttributeList
return AttributeList

VisitAttributeNode() public method

public VisitAttributeNode ( System.Compiler.AttributeNode attribute ) : System.Compiler.AttributeNode
attribute System.Compiler.AttributeNode
return System.Compiler.AttributeNode

VisitConstruct() public method

public VisitConstruct ( System.Compiler.Construct cons ) : System.Compiler.Expression
cons System.Compiler.Construct
return System.Compiler.Expression

VisitExpressionStatement() public method

public VisitExpressionStatement ( System.Compiler.ExpressionStatement statement ) : System.Compiler.Statement
statement System.Compiler.ExpressionStatement
return System.Compiler.Statement

VisitForEach() public method

public VisitForEach ( System.Compiler.ForEach forEach ) : System.Compiler.Statement
forEach System.Compiler.ForEach
return System.Compiler.Statement

VisitMethod() public method

public VisitMethod ( System.Compiler.Method method ) : System.Compiler.Method
method System.Compiler.Method
return System.Compiler.Method

VisitMethodCall() public method

public VisitMethodCall ( System.Compiler.MethodCall call ) : System.Compiler.Expression
call System.Compiler.MethodCall
return System.Compiler.Expression

VisitThrow() public method

public VisitThrow ( Throw Throw ) : Statement
Throw Throw
return Statement

VisitTypeReference() public method

public VisitTypeReference ( TypeNode type ) : TypeNode
type TypeNode
return TypeNode

VisitUnaryExpression() public method

public VisitUnaryExpression ( UnaryExpression unaryExpression ) : Expression
unaryExpression UnaryExpression
return Expression