private ParameterSymbol BuildParameter(ParameterNode parameterNode, IndexerSymbol indexerSymbol) { TypeSymbol parameterType = indexerSymbol.SymbolSet.ResolveType(parameterNode.Type, _symbolTable, indexerSymbol); Debug.Assert(parameterType != null); if (parameterType != null) { return new ParameterSymbol(parameterNode.Name, indexerSymbol, parameterType, ParameterMode.In); } return null; }
private ParameterSymbol BuildParameter(ParameterNode parameterNode, MethodSymbol methodSymbol) { ParameterMode parameterMode = ParameterMode.In; if ((parameterNode.Flags == ParameterFlags.Out) || (parameterNode.Flags == ParameterFlags.Ref)) { parameterMode = ParameterMode.InOut; } else if (parameterNode.Flags == ParameterFlags.Params) { parameterMode = ParameterMode.List; } TypeSymbol parameterType = methodSymbol.SymbolSet.ResolveType(parameterNode.Type, _symbolTable, methodSymbol); Debug.Assert(parameterType != null); if (parameterType != null) { return new ParameterSymbol(parameterNode.Name, methodSymbol, parameterType, parameterMode); } return null; }