C# Class Mono.CSharp.Block

Block represents a C# block.
This class is used in a number of places: either to represent explicit blocks that the programmer places or implicit blocks. Implicit blocks are used as labels or to introduce variable declarations. Top-level blocks derive from Block, and they are called ToplevelBlock they contain extra information that is not necessary on normal blocks.
Inheritance: Statement
显示文件 Open project: kumpera/mono Class Usage Examples

Public Properties

Property Type Description
EndLocation Mono.CSharp.Location
Explicit ExplicitBlock
ID int
ParametersBlock ParametersBlock
Parent Block
StartLocation Mono.CSharp.Location

Protected Properties

Property Type Description
flags System.Flags
scope_initializers List
statements List

Public Methods

Method Description
AddLabel ( LabeledStatement target ) : void
AddLocalName ( LocalVariable li ) : void
AddLocalName ( string name, INamedBlockVariable li ) : void
AddScopeStatement ( Statement s ) : void
AddStatement ( Statement s ) : void
Block ( Block parent, Flags flags, Mono.CSharp.Location start, Mono.CSharp.Location end ) : System
Block ( Block parent, Mono.CSharp.Location start, Mono.CSharp.Location end ) : System
CreateSwitchBlock ( Mono.CSharp.Location start ) : Block
Emit ( EmitContext ec ) : void
Error_AlreadyDeclared ( string name, INamedBlockVariable variable ) : void
Error_AlreadyDeclared ( string name, INamedBlockVariable variable, string reason ) : void
Error_AlreadyDeclaredTypeParameter ( string name, Mono.CSharp.Location loc ) : void
LookupLabel ( string name ) : LabeledStatement
Resolve ( BlockContext ec ) : bool
ResolveUnreachable ( BlockContext ec, bool warn ) : bool
SetEndLocation ( Mono.CSharp.Location loc ) : void
ToString ( ) : string

Protected Methods

Method Description
CloneTo ( CloneContext clonectx, Statement t ) : void
DoEmit ( EmitContext ec ) : void
EmitScopeInitializers ( EmitContext ec ) : void
EmitSymbolInfo ( EmitContext ec ) : void

Method Details

AddLabel() public method

public AddLabel ( LabeledStatement target ) : void
target LabeledStatement
return void

AddLocalName() public method

public AddLocalName ( LocalVariable li ) : void
li LocalVariable
return void

AddLocalName() public method

public AddLocalName ( string name, INamedBlockVariable li ) : void
name string
li INamedBlockVariable
return void

AddScopeStatement() public method

public AddScopeStatement ( Statement s ) : void
s Statement
return void

AddStatement() public method

public AddStatement ( Statement s ) : void
s Statement
return void

Block() public method

public Block ( Block parent, Flags flags, Mono.CSharp.Location start, Mono.CSharp.Location end ) : System
parent Block
flags System.Flags
start Mono.CSharp.Location
end Mono.CSharp.Location
return System

Block() public method

public Block ( Block parent, Mono.CSharp.Location start, Mono.CSharp.Location end ) : System
parent Block
start Mono.CSharp.Location
end Mono.CSharp.Location
return System

CloneTo() protected method

protected CloneTo ( CloneContext clonectx, Statement t ) : void
clonectx CloneContext
t Statement
return void

CreateSwitchBlock() public method

public CreateSwitchBlock ( Mono.CSharp.Location start ) : Block
start Mono.CSharp.Location
return Block

DoEmit() protected method

protected DoEmit ( EmitContext ec ) : void
ec EmitContext
return void

Emit() public method

public Emit ( EmitContext ec ) : void
ec EmitContext
return void

EmitScopeInitializers() protected method

protected EmitScopeInitializers ( EmitContext ec ) : void
ec EmitContext
return void

EmitSymbolInfo() protected method

protected EmitSymbolInfo ( EmitContext ec ) : void
ec EmitContext
return void

Error_AlreadyDeclared() public method

public Error_AlreadyDeclared ( string name, INamedBlockVariable variable ) : void
name string
variable INamedBlockVariable
return void

Error_AlreadyDeclared() public method

public Error_AlreadyDeclared ( string name, INamedBlockVariable variable, string reason ) : void
name string
variable INamedBlockVariable
reason string
return void

Error_AlreadyDeclaredTypeParameter() public method

public Error_AlreadyDeclaredTypeParameter ( string name, Mono.CSharp.Location loc ) : void
name string
loc Mono.CSharp.Location
return void

LookupLabel() public method

public LookupLabel ( string name ) : LabeledStatement
name string
return LabeledStatement

Resolve() public method

public Resolve ( BlockContext ec ) : bool
ec BlockContext
return bool

ResolveUnreachable() public method

public ResolveUnreachable ( BlockContext ec, bool warn ) : bool
ec BlockContext
warn bool
return bool

SetEndLocation() public method

public SetEndLocation ( Mono.CSharp.Location loc ) : void
loc Mono.CSharp.Location
return void

ToString() public method

public ToString ( ) : string
return string

Property Details

EndLocation public_oe property

public Location,Mono.CSharp EndLocation
return Mono.CSharp.Location

Explicit public_oe property

public ExplicitBlock,Mono.CSharp Explicit
return ExplicitBlock

ID public_oe property

public int ID
return int

ParametersBlock public_oe property

public ParametersBlock,Mono.CSharp ParametersBlock
return ParametersBlock

Parent public_oe property

public Block,Mono.CSharp Parent
return Block

StartLocation public_oe property

public Location,Mono.CSharp StartLocation
return Mono.CSharp.Location

flags protected_oe property

protected Flags,System flags
return System.Flags

scope_initializers protected_oe property

protected List scope_initializers
return List

statements protected_oe property

protected List statements
return List