C# Class Mages.Core.Ast.Walkers.CompletionTreeWalker

Represents the walker to get code completion information.
Inheritance: BaseTreeWalker
Show file Open project: FlorianRappl/Mages

Public Methods

Method Description
CompletionTreeWalker ( TextPosition position, IDictionary symbols ) : Mages.Core.Ast.Expressions

Creates a new completition tree walker for the given position.

FindSuggestions ( IEnumerable statements ) : void

Finds the suggestions for the given list of statements.

Visit ( AssignmentExpression expression ) : void

Visits an assignment expression - accepts the variable and value.

Visit ( BlockStatement block ) : void

Visits a block statement - accepts all childs.

Visit ( EmptyExpression expression ) : void

Visits an empty expression.

Visit ( FunctionExpression expression ) : void

Visits a function expression - accepts the parameters and body.

Visit ( InvalidExpression expression ) : void

Visits an invalid expression.

Visit ( MemberExpression expression ) : void

Visits a member expression.

Visit ( ParameterExpression expression ) : void

Visits a parameter expression - accepts all parameters.

Visit ( PropertyExpression expression ) : void

Visits a property expression - accepts the name and value.

Visit ( SimpleStatement statement ) : void

Visits a simple statement - accepts the expression.

Visit ( VarStatement statement ) : void

Visits a var statement - accepts the assignment.

Visit ( VariableExpression expression ) : void

Visits a variable expression.

Private Methods

Method Description
AddExpressionKeywords ( ) : void
AddExpressionKeywords ( String prefix ) : void
AddStatementKeywords ( ) : void
AddSuggestions ( String prefix, IEnumerable symbols ) : void
Resolve ( IExpression expression ) : Object>.IDictionary
Within ( ITextRange range ) : Boolean

Method Details

CompletionTreeWalker() public method

Creates a new completition tree walker for the given position.
public CompletionTreeWalker ( TextPosition position, IDictionary symbols ) : Mages.Core.Ast.Expressions
position TextPosition
symbols IDictionary
return Mages.Core.Ast.Expressions

FindSuggestions() public method

Finds the suggestions for the given list of statements.
public FindSuggestions ( IEnumerable statements ) : void
statements IEnumerable The statements to use.
return void

Visit() public method

Visits an assignment expression - accepts the variable and value.
public Visit ( AssignmentExpression expression ) : void
expression AssignmentExpression
return void

Visit() public method

Visits a block statement - accepts all childs.
public Visit ( BlockStatement block ) : void
block BlockStatement
return void

Visit() public method

Visits an empty expression.
public Visit ( EmptyExpression expression ) : void
expression EmptyExpression
return void

Visit() public method

Visits a function expression - accepts the parameters and body.
public Visit ( FunctionExpression expression ) : void
expression FunctionExpression
return void

Visit() public method

Visits an invalid expression.
public Visit ( InvalidExpression expression ) : void
expression InvalidExpression
return void

Visit() public method

Visits a member expression.
public Visit ( MemberExpression expression ) : void
expression MemberExpression
return void

Visit() public method

Visits a parameter expression - accepts all parameters.
public Visit ( ParameterExpression expression ) : void
expression ParameterExpression
return void

Visit() public method

Visits a property expression - accepts the name and value.
public Visit ( PropertyExpression expression ) : void
expression PropertyExpression
return void

Visit() public method

Visits a simple statement - accepts the expression.
public Visit ( SimpleStatement statement ) : void
statement SimpleStatement
return void

Visit() public method

Visits a var statement - accepts the assignment.
public Visit ( VarStatement statement ) : void
statement VarStatement
return void

Visit() public method

Visits a variable expression.
public Visit ( VariableExpression expression ) : void
expression VariableExpression
return void