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
Show file 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 property

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

Explicit public property

public ExplicitBlock,Mono.CSharp Explicit
return ExplicitBlock

ID public property

public int ID
return int

ParametersBlock public property

public ParametersBlock,Mono.CSharp ParametersBlock
return ParametersBlock

Parent public property

public Block,Mono.CSharp Parent
return Block

StartLocation public property

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

flags protected property

protected Flags,System flags
return System.Flags

scope_initializers protected property

protected List scope_initializers
return List

statements protected property

protected List statements
return List