module Ide.Plugin.CallHierarchy (descriptor) where import Development.IDE import qualified Ide.Plugin.CallHierarchy.Internal as X import Ide.Types import Language.LSP.Protocol.Message descriptor :: PluginId -> PluginDescriptor IdeState descriptor :: PluginId -> PluginDescriptor IdeState descriptor PluginId plId = (forall ideState. PluginId -> PluginDescriptor ideState defaultPluginDescriptor PluginId plId) { pluginHandlers :: PluginHandlers IdeState Ide.Types.pluginHandlers = forall ideState (m :: Method 'ClientToServer 'Request). PluginRequestMethod m => SClientMethod m -> PluginMethodHandler ideState m -> PluginHandlers ideState mkPluginHandler SMethod 'Method_TextDocumentPrepareCallHierarchy SMethod_TextDocumentPrepareCallHierarchy PluginMethodHandler IdeState 'Method_TextDocumentPrepareCallHierarchy X.prepareCallHierarchy forall a. Semigroup a => a -> a -> a <> forall ideState (m :: Method 'ClientToServer 'Request). PluginRequestMethod m => SClientMethod m -> PluginMethodHandler ideState m -> PluginHandlers ideState mkPluginHandler SMethod 'Method_CallHierarchyIncomingCalls SMethod_CallHierarchyIncomingCalls PluginMethodHandler IdeState 'Method_CallHierarchyIncomingCalls X.incomingCalls forall a. Semigroup a => a -> a -> a <> forall ideState (m :: Method 'ClientToServer 'Request). PluginRequestMethod m => SClientMethod m -> PluginMethodHandler ideState m -> PluginHandlers ideState mkPluginHandler SMethod 'Method_CallHierarchyOutgoingCalls SMethod_CallHierarchyOutgoingCalls PluginMethodHandler IdeState 'Method_CallHierarchyOutgoingCalls X.outgoingCalls }