MODULE.module) * * @return string */ public function getPath($file); /** * Returns a fully configured Finder which can iterate over the target * module's code files. Any file type which doesn't contain PHP code * should be ignored. * * @return \Symfony\Component\Finder\Finder */ public function getFinder(); /** * Returns an indexer for this target. * * @param string $which * The type of indexer to get. Should be the ID of an indexer plugin. * * @return IndexerInterface */ public function getIndexer($which); /** * Returns services defined by the target module. * * @return \Doctrine\Common\Collections\ArrayCollection */ public function getServices(); /** * Returns if the target module implements a particular hook. * * @param string $hook * The hook to look for, without the hook_ prefix. * * @return boolean */ public function implementsHook($hook); /** * Executes a hook implementation and returns the result. * * @param string $hook * The hook to execute, without the hook_ prefix. * @param array $arguments * Additional parameters to pass to the hook implementation. * * @return mixed * * @throws * \InvalidArgumentException if the module doesn't implement the hook. * \LogicException if the hook contains non-executable logic. */ public function executeHook($hook, array $arguments = []); /** * Parses a file into a syntax tree, keeping a reference to it, and * returns it. * * @param string $file * The path of the file to open, relative to the CWD. * * @return \Pharborist\RootNode|NULL */ public function open($file); /** * Saves the file in which a particular node appears. * * @param \Pharborist\Node|NULL $node * The node to save. This can be positioned anywhere in the * syntax tree. If NULL, all open files will be saved. * * @throws \Drupal\drupalmoduleupgrader\IOException */ public function save(Node $node = NULL); /** * Creates a new, empty document. * * @param string $file * The path of the file to create, relative to the CWD. * * @return \Pharborist\RootNode */ public function create($file); /** * Clears internal references to all open documents, discarding changes. */ public function flush(); }