public ExpressionParserExprResult ParseExpr(IVariableTypeProvider VariableTypeProvider, TextRange Body) { var br = BindExpr(VariableTypeProvider, Body); var epr = new ExpressionParserExprResult { Body = br.Semantics, TypeDict = br.TypeDict, Positions = Positions }; return(epr); }
public ExpressionParserExprResult ParseBody(IVariableTypeProvider VariableTypeProvider, FunctionDecl Declaration, TextRange Body) { var d = Declaration; var dParameters = d.Parameters.ToDictionary(p => p.Name, p => p.Type); var vtp = new VariableTypeProviderCombiner(new SimpleVariableTypeProvider(dParameters), VariableTypeProvider); var br = BindExpr(vtp, d.ReturnValue, Body); var epr = new ExpressionParserExprResult { Body = br.Semantics, TypeDict = br.TypeDict, Positions = Positions }; return(epr); }