public static Symbol ResolveNamespaceQualifiedFunction(FunctionFlags allowedFlags, Symbol?foundSymbol, IdentifierSyntax identifierSyntax, NamespaceSymbol namespaceSymbol) => ResolveSymbolInternal( allowedFlags, foundSymbol, identifierSyntax, getNameSuggestions: () => { var knowFunctionNames = namespaceSymbol.Type.MethodResolver.GetKnownFunctions().Keys; return(allowedFlags.HasAnyDecoratorFlag() ? knowFunctionNames.Concat(namespaceSymbol.Type.DecoratorResolver.GetKnownDecoratorFunctions().Keys) : knowFunctionNames); }, getMissingNameError: (builder, suggestedName) => suggestedName switch { null => builder.FunctionDoesNotExistInNamespace(namespaceSymbol, identifierSyntax.IdentifierName),
private static ImmutableDictionary <string, NamespaceSymbol> GetBuiltInNamespaces(ResourceScope targetScope) { var namespaces = new NamespaceSymbol[] { new SystemNamespaceSymbol(), new AzNamespaceSymbol(targetScope) }; return(namespaces.ToImmutableDictionary(property => property.Name, property => property, LanguageConstants.IdentifierComparer)); }
public virtual void VisitNamespaceSymbol(NamespaceSymbol symbol) { VisitDescendants(symbol); }
public static Symbol ResolveNamespaceQualifiedFunction(FunctionFlags allowedFlags, Symbol?foundSymbol, IdentifierSyntax identifierSyntax, NamespaceSymbol namespaceSymbol) => ResolveSymbolInternal( allowedFlags, foundSymbol, identifierSyntax, getNameSuggestions: () => namespaceSymbol.Type.MethodResolver.GetKnownFunctions().Keys, getMissingNameError: (builder, suggestedName) => suggestedName switch { null => builder.FunctionDoesNotExistInNamespace(namespaceSymbol, identifierSyntax.IdentifierName),
public override void VisitNamespaceSymbol(NamespaceSymbol symbol) { base.VisitNamespaceSymbol(symbol); this.CollectDiagnostics(symbol); }