bpf-loader-lib 0.2.1

A library to load json-described ebpf programs, and automatically poll outputs from the program
Documentation
//!  SPDX-License-Identifier: MIT
//!
//! Copyright (c) 2023, eunomia-bpf
//! All rights reserved.
//!

use super::CheckedExportedMember;

pub(crate) mod buffer;
pub(crate) mod sample_map;

pub(crate) fn get_plain_text_checked_types_header(
    checked_member: &mut [CheckedExportedMember],
    prev_header: impl AsRef<str>,
) -> String {
    let mut header = String::from(prev_header.as_ref());
    for ty in checked_member.iter_mut() {
        ty.output_header_offset = header.len();
        let type_name = ty
            .field_name
            .chars()
            .map(|v| v.to_ascii_uppercase())
            .collect::<String>();
        header.push_str(&type_name);
        if type_name.len() < 6 {
            header.push_str(&" ".repeat(6 - type_name.len()));
        }
        header.push(' ');
    }
    header
}