Skip to documentation
SLOP

tiny.sys.x11.xlib

Reference tiny.sys x11 xlib

Defined in x11.

API (6)

Actions

Public operations.

Types and contracts

Public types and contracts.

No direct callersNo direct callsx11xlib
Static calls · unresolved targets: unknown · external targets: unknown.

Source

Called byCallsNo direct callersprivate sourcelib.sys.src.x11.xlibopenNamex11.xlibopenDefault
Static calls · unresolved targets: 0 · external targets: 0.
Called byCallsNo direct callersprivate sourcelib.sys.src.x11.xlibopenNamex11.xlibopenTarget
Static calls · unresolved targets: 0 · external targets: 0.

Source: lib/sys/src/x11/root.zig:5

zig
pub const xlib = @import("xlib.zig");

Source: lib/sys/src/x11/xlib.zig

zig
const std = @import("std");const sys = @import("../root.zig");const display_mod = @import("display.zig");pub const Error = error{    RuntimeUnavailable,    SymbolMissing,    InvalidDisplay,};pub const Display = opaque {};const XOpenDisplayFn = *const fn (display_name: ?[*:0]const u8) callconv(.c) ?*Display;const XCloseDisplayFn = *const fn (display: *Display) callconv(.c) c_int;pub const Connection = struct {    library: sys.dynamic.Library,    display: *Display,    close_fn: XCloseDisplayFn,    pub fn close(self: *Connection) void {        _ = self.close_fn(self.display);        self.library.close();        self.* = undefined;    }};pub fn openTarget(target: display_mod.Target) Error!Connection {    var name_buffer: [32]u8 = undefined;    const name = std.fmt.bufPrintSentinel(&name_buffer, ":{d}.{d}", .{ target.display, target.screen }, 0) catch return error.InvalidDisplay;    return openName(name);}pub fn openDefault() Error!Connection {    return openName(null);}fn openName(name: ?[:0]const u8) Error!Connection {    var library = sys.dynamic.openX11Library() catch return error.RuntimeUnavailable;    errdefer library.close();    const open_fn = library.lookup(XOpenDisplayFn, "XOpenDisplay") orelse return error.SymbolMissing;    const close_fn = library.lookup(XCloseDisplayFn, "XCloseDisplay") orelse return error.SymbolMissing;    const display = open_fn(if (name) |actual| actual.ptr else null) orelse return error.RuntimeUnavailable;    return .{        .library = library,        .display = display,        .close_fn = close_fn,    };}test "xlib dynamic candidate list is host-scoped" {    const candidates = sys.dynamic.x11LibraryCandidates();    try std.testing.expect(candidates.len >= 1);    if (comptime @import("builtin").os.tag == .linux) {        try std.testing.expect(sys.dynamic.hasHostCandidate(candidates));    }}

Audit

Definitions7
Public names7
Members6
Version26.7.0
Revisiondaab053ee433