dsymbol.modulecache

This file is part of DCD, a development tool for the D programming language. Copyright (C) 2014 Brian Schott

Discussion

This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program. If not, see .

  • Declaration

    bool existanceCheck(A)(A path);

    Return Value

    true if a file exists at the given path.

  • Declaration

    struct ModuleCache;

    Caches pre-parsed module information.

    • Declaration

      void addImportPaths(const string[] paths);

      Adds the given paths to the list of directories checked for imports. Performs duplicate checking, so multiple instances of the same path will not be present.

    • Declaration

      void removeImportPaths(const string[] paths);

      Removes the given paths from the list of directories checked for imports. Corresponding cache entries are removed.

    • Declaration

      void clear();

      Clears the cache from all import paths

    • Declaration

      DSymbol* cacheModule(string location);

      Caches the module at the given location

    • Declaration

      void resolveDeferredTypes(istring location);

      Resolves types for deferred symbols

    • Declaration

      DSymbol* getModuleSymbol(istring location);

      Parameters

      moduleName

      the name of the module in "a/b/c" form

      Return Value

      The symbols defined in the given module, or null if the module is not cached yet.

    • Declaration

      istring resolveImportLocation(string moduleName);

      Parameters

      string moduleName

      the name of the module being imported, in "a/b/c" style

      Return Value

      The absolute path to the file that contains the module, or null if not found.

    • Declaration

      uint symbolsAllocated;

      Count of autocomplete symbols that have been allocated