XkbFreeGeomProperties(3)

πŸ’– NAME πŸ’–

Okay so bestie, welcome to the section 3 manual page for XkbFreeGeomProperties from XKB FUNCTIONS β€” it does exactly what it says on the label: free geometry properties. πŸ’… No cap, that's the whole vibe.

✨ SYNOPSIS ✨

void XkbFreeGeomProperties (XkbGeometryPtr geom, int first, int count,
       Bool *free_all);

That's the signature, periodt. πŸŽ€

πŸ¦‹ ARGUMENTS πŸ¦‹

  • geom β€” the geometry in which properties should be freed. Like, the playground where we're cleaning up. 🧹
  • first β€” first property to be freed. The starting point, iykyk.
  • count β€” number of properties to be freed. How many lil' properties are getting the boot.
  • free_all β€” True => all properties are freed. Yup, the "free the whole list" switch. πŸ’€

🌸 DESCRIPTION 🌸

So Xkb provides a number of functions to allocate and free subcomponents of a keyboard geometry. Use these functions to create or modify keyboard geometries. Cute, right? But listen: these functions merely allocate space for the new element(s), and it is up to you to fill in the values explicitly in your code. They're not gonna magically fill your structs for you, bestie β€” that's your job. 🫢

Also important: these allocation functions increase sz_* but never touch num_* (unless there is an allocation failure, in which case they reset both sz_* and num_* to zero). The way that's so specific 😭.

These functions return Success if they succeed, BadAlloc if they are not able to allocate space, or BadValue if a parameter is not as expected.

Now for the actual freeing logic: if free_all is True, all properties are freed regardless of the value of first or count. Otherwise, count properties are freed beginning with the one specified by first. So like, either go full icon mode and free everything, or free a little slice starting at first. Slay. ✨

πŸ‘‘ RETURN VALUES πŸ‘‘

  • Success β€” The XkbFreeGeomProperties function returns Success when there are no allocation or argument errors. Clean, no drama. 🌈

πŸŽ€ DIAGNOSTICS πŸŽ€

  • BadAlloc β€” Unable to allocate storage. Storage said "not today." 😭
  • BadValue β€” An argument is out of range. One of the args is doing too much. πŸ’€

okay bye bestie πŸ’– this page is giving X Version 11 / libX11 1.8.14 energy, and it's the XkbFreeGeomProperties(3) manual page β€” periodt. 🫢✨

πŸ“¦ where this page comes from