Hoogle Search

Within LTS Haskell 24.35 (ghc-9.10.3)

Note that Stackage only displays results for the latest LTS and Nightly snapshot. Learn more.

  1. actionMapAddAction :: (HasCallStack, MonadIO m, IsActionMap a, IsAction b) => a -> b -> m ()

    gi-gio GI.Gio.Interfaces.ActionMap

    Adds an action to the actionMap. If the action map already contains an action with the same name as action then the old action is dropped from the action map. The action map takes its own reference on action. Since: 2.32

  2. actionMapAddActionEntries :: (HasCallStack, MonadIO m, IsActionMap a) => a -> [ActionEntry] -> Ptr () -> m ()

    gi-gio GI.Gio.Interfaces.ActionMap

    A convenience function for creating multiple SimpleAction instances and adding them to a ActionMap. Each action is constructed as per one ActionEntry.

    C code

    static void
    activate_quit (GSimpleAction *simple,
    GVariant      *parameter,
    gpointer       user_data)
    {
    exit (0);
    }
    
    static void
    activate_print_string (GSimpleAction *simple,
    GVariant      *parameter,
    gpointer       user_data)
    {
    g_print ("%s\n", g_variant_get_string (parameter, NULL));
    }
    
    static GActionGroup *
    create_action_group (void)
    {
    const GActionEntry entries[] = {
    { "quit",         activate_quit              },
    { "print-string", activate_print_string, "s" }
    };
    GSimpleActionGroup *group;
    
    group = g_simple_action_group_new ();
    g_action_map_add_action_entries (G_ACTION_MAP (group), entries, G_N_ELEMENTS (entries), NULL);
    
    return G_ACTION_GROUP (group);
    }
    
    Since: 2.32

  3. actionMapLookupAction :: (HasCallStack, MonadIO m, IsActionMap a) => a -> Text -> m (Maybe Action)

    gi-gio GI.Gio.Interfaces.ActionMap

    Looks up the action with the name actionName in actionMap. If no such action exists, returns Nothing. Since: 2.32

  4. actionMapRemoveAction :: (HasCallStack, MonadIO m, IsActionMap a) => a -> Text -> m ()

    gi-gio GI.Gio.Interfaces.ActionMap

    Removes the named action from the action map. If no action of this name is in the map then nothing happens. Since: 2.32

  5. actionMapRemoveActionEntries :: (HasCallStack, MonadIO m, IsActionMap a) => a -> [ActionEntry] -> m ()

    gi-gio GI.Gio.Interfaces.ActionMap

    Remove actions from a ActionMap. This is meant as the reverse of actionMapAddActionEntries.

    C code

    static const GActionEntry entries[] = {
    { "quit",         activate_quit              },
    { "print-string", activate_print_string, "s" }
    };
    
    void
    add_actions (GActionMap *map)
    {
    g_action_map_add_action_entries (map, entries, G_N_ELEMENTS (entries), NULL);
    }
    
    void
    remove_actions (GActionMap *map)
    {
    g_action_map_remove_action_entries (map, entries, G_N_ELEMENTS (entries));
    }
    
    Since: 2.78

  6. toActionMap :: (MonadIO m, IsActionMap o) => o -> m ActionMap

    gi-gio GI.Gio.Interfaces.ActionMap

    Cast to ActionMap, for types for which this is known to be safe. For general casts, use castTo.

  7. settingsGetMapped :: (HasCallStack, MonadIO m, IsSettings a) => a -> Text -> SettingsGetMapping -> m (Ptr ())

    gi-gio GI.Gio.Objects.Settings

    Gets the value that is stored at key in settings, subject to application-level validation/mapping. You should use this function when the application needs to perform some processing on the value of the key (for example, parsing). The mapping function performs that processing. If the function indicates that the processing was unsuccessful (due to a parse error, for example) then the mapping is tried again with another value. This allows a robust 'fall back to defaults' behaviour to be implemented somewhat automatically. The first value that is tried is the user's setting for the key. If the mapping function fails to map this value, other values may be tried in an unspecified order (system or site defaults, translated schema default values, untranslated schema default values, etc). If the mapping function fails for all possible values, one additional attempt is made: the mapping function is called with a Nothing value. If the mapping function still indicates failure at this point then the application will be aborted. The result parameter for the mapping function is pointed to a gpointer which is initially set to Nothing. The same pointer is given to each invocation of mapping. The final value of that gpointer is what is returned by this function. Nothing is valid; it is returned just as any other value would be.

  8. data HashMap k v

    relude Relude.Container.Reexport

    A map from keys to values. A map cannot contain duplicate keys; each key can map to at most one value.

  9. data IntMap a

    relude Relude.Container.Reexport

    A map of integers to values a.

  10. inverseMap :: (Bounded a, Enum a, Ord k) => (a -> k) -> k -> Maybe a

    relude Relude.Enum

    inverseMap f creates a function that is the inverse of a given function f. It does so by constructing Map internally for each value f a. The implementation makes sure that the Map is constructed only once and then shared for every call. Memory usage note: don't inverse functions that have types like Int as their input. In this case the created Map will have huge size. The complexity of reversed mapping is <math>. Performance note: make sure to specialize monomorphic type of your functions that use inverseMap to avoid Map reconstruction. One of the common inverseMap use-case is inverting the show or a show-like function.

    >>> data Color = Red | Green | Blue deriving (Show, Enum, Bounded)
    
    >>> parse = inverseMap show :: String -> Maybe Color
    
    >>> parse "Red"
    Just Red
    
    >>> parse "Black"
    Nothing
    
    Correctness note: inverseMap expects injective function as its argument, i.e. the function must map distinct arguments to distinct values. Typical usage of this function looks like this:
    data GhcVer
    = Ghc802
    | Ghc822
    | Ghc844
    | Ghc865
    | Ghc881
    deriving (Eq, Ord, Show, Enum, Bounded)
    
    showGhcVer :: GhcVer -> Text
    showGhcVer = \case
    Ghc802 -> "8.0.2"
    Ghc822 -> "8.2.2"
    Ghc844 -> "8.4.4"
    Ghc865 -> "8.6.5"
    Ghc881 -> "8.8.1"
    
    parseGhcVer :: Text -> Maybe GhcVer
    parseGhcVer = inverseMap showGhcVer
    

Page 513 of many | Previous | Next