SYMBOL INDEX (617 symbols across 61 files) FILE: benchmark/benches/simple.rs function criterion_benchmark (line 4) | fn criterion_benchmark(c: &mut Criterion) { FILE: benchmark/build.rs function main (line 3) | fn main() { FILE: benchmark/impls.cpp type rust::exported_functions (line 7) | namespace rust::exported_functions { function build_vec_by_push_cpp (line 8) | auto build_vec_by_push_cpp(u64 n) -> Vec { FILE: benchmark/src/lib.rs function build_vec_by_push_rust (line 5) | pub fn build_vec_by_push_rust(n: u64) -> Vec { function build_vec_by_push_cpp (line 13) | pub fn build_vec_by_push_cpp(n: u64) -> Vec { FILE: examples/char/main.cpp function main (line 5) | int main() { FILE: examples/char/src/lib.rs type CharPrinter (line 4) | struct CharPrinter; method print (line 7) | fn print(c: char) { method is_alphabetic (line 11) | fn is_alphabetic(c: char) -> bool { method to_uppercase (line 15) | fn to_uppercase(c: char) -> char { FILE: examples/conditional/main.cpp function main (line 24) | int main() { FILE: examples/conditional/src/lib.rs type KeyValuePair (line 10) | struct KeyValuePair { method self_size (line 19) | fn self_size() -> usize { method self_align (line 22) | fn self_align() -> usize { method fmt (line 30) | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { method fmt (line 38) | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { method fmt (line 50) | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { method fmt (line 58) | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { FILE: examples/cxx_demo/blobstore.cpp class BlobStore (line 8) | class BlobStore : public rust::crate::BlobStoreTrait { class Impl (line 9) | class Impl { method put (line 20) | uint64_t put(rust::RefMut buf) override { method tag (line 42) | rust::Unit tag(::uint64_t blob_id, method metadata (line 48) | rust::crate::BlobMetadata metadata(::uint64_t blob_id) override { FILE: examples/cxx_demo/build.rs function main (line 6) | fn main() { FILE: examples/cxx_demo/src/main.rs type MultiBuf (line 10) | pub struct MultiBuf { method next_chunk (line 16) | pub fn next_chunk(&mut self) -> &[u8] { type BlobMetadata (line 24) | struct BlobMetadata { method set_size (line 30) | fn set_size(&mut self, size: usize) { method push_tag (line 34) | fn push_tag(&mut self, c: *const i8) { type BlobStoreTrait (line 41) | trait BlobStoreTrait { method put (line 42) | fn put(&self, buf: &mut MultiBuf) -> u64; method tag (line 43) | fn tag(&self, blob_id: u64, tag: &str); method metadata (line 44) | fn metadata(&self, blob_id: u64) -> BlobMetadata; function main (line 47) | fn main() { FILE: examples/cxx_demo_split/blobstore.cpp class BlobStore (line 8) | class BlobStore : public rust::crate::BlobStoreTrait { class Impl (line 9) | class Impl { method put (line 20) | uint64_t put(rust::RefMut buf) override { method tag (line 42) | rust::Unit tag(::uint64_t blob_id, method metadata (line 48) | rust::crate::BlobMetadata metadata(::uint64_t blob_id) override { FILE: examples/cxx_demo_split/build.rs function main (line 6) | fn main() { FILE: examples/cxx_demo_split/src/main.rs type MultiBuf (line 10) | pub struct MultiBuf { method next_chunk (line 16) | pub fn next_chunk(&mut self) -> &[u8] { type BlobMetadata (line 24) | struct BlobMetadata { method set_size (line 30) | fn set_size(&mut self, size: usize) { method push_tag (line 34) | fn push_tag(&mut self, c: *const i8) { type BlobStoreTrait (line 41) | trait BlobStoreTrait { method put (line 42) | fn put(&self, buf: &mut MultiBuf) -> u64; method tag (line 43) | fn tag(&self, blob_id: u64, tag: &str); method metadata (line 44) | fn metadata(&self, blob_id: u64) -> BlobMetadata; function main (line 47) | fn main() { FILE: examples/impl_trait/main.cpp function main (line 8) | int main() { FILE: examples/impl_trait/src/lib.rs function argument_position_impl_trait (line 9) | fn argument_position_impl_trait(arg: impl Debug) { function return_position_impl_trait (line 13) | fn return_position_impl_trait() -> impl Debug { function both_impl_trait (line 17) | fn both_impl_trait(input: impl Debug) -> impl Debug { function async_func1 (line 21) | async fn async_func1() -> i32 { function async_func2 (line 26) | async fn async_func2() -> i32 { function impl_future (line 31) | fn impl_future() -> impl Future { function busy_wait_future (line 39) | fn busy_wait_future(fut: Box>) -> T { FILE: examples/memory_management/main.cpp class CppPrintOnDropHolder (line 13) | class CppPrintOnDropHolder : public PrintOnDropConsumer { method consume (line 14) | rust::Unit consume(PrintOnDrop p) override { function main (line 22) | int main() { FILE: examples/memory_management/src/lib.rs type PrintOnDrop (line 5) | pub struct PrintOnDrop(&'static str); type PrintOnDropPair (line 7) | pub struct PrintOnDropPair { method drop (line 13) | fn drop(&mut self) { type PrintOnDropConsumer (line 18) | trait PrintOnDropConsumer { method consume (line 19) | fn consume(&mut self, p: PrintOnDrop); function consume_n_times (line 22) | fn consume_n_times(consumer: &mut dyn PrintOnDropConsumer, name: &'stati... function consume_and_panic (line 28) | fn consume_and_panic(p: PrintOnDrop, do_panic: bool) -> PrintOnDrop { FILE: examples/multiple_modules/aggregation/impls.cpp function StatsAccumulator (line 9) | StatsAccumulator rust::Impl::create() { FILE: examples/multiple_modules/aggregation/src/lib.rs type StatsAccumulator (line 7) | pub struct StatsAccumulator(pub generated::ZngurCppOpaqueOwnedObject); FILE: examples/multiple_modules/aggregation/stats.h function namespace (line 9) | namespace cpp_stats { FILE: examples/multiple_modules/main.cpp function main (line 8) | int main() { FILE: examples/multiple_modules/packet/src/lib.rs type Packet (line 1) | pub struct Packet(pub u64, pub u32); method new (line 4) | pub fn new(timestamp: u64, size: u32) -> Self { method timestamp (line 8) | pub fn timestamp(&self) -> u64 { method size (line 12) | pub fn size(&self) -> u32 { FILE: examples/multiple_modules/processor/src/lib.rs type Processor (line 4) | pub struct Processor; method new (line 7) | pub fn new() -> Self { method run (line 11) | pub fn run( FILE: examples/multiple_modules/receiver/src/lib.rs type Receiver (line 3) | pub struct Receiver { method new (line 8) | pub fn new() -> Self { method next_packet (line 12) | pub fn next_packet(&mut self) -> Packet { FILE: examples/raw_pointer/main.cpp function main (line 8) | int main() FILE: examples/rayon/main.cpp function is_prime (line 17) | bool is_prime(uint64_t v) { function main (line 28) | int main() { FILE: examples/rayon_split/main.cpp function is_prime (line 17) | bool is_prime(uint64_t v) { function main (line 28) | int main() { FILE: examples/regression_test1/main.cpp function test_dbg_works_for_ref_and_refmut (line 6) | void test_dbg_works_for_ref_and_refmut() { function test_fields_and_constructor (line 27) | void test_fields_and_constructor() { function test_field_underlying_conversions (line 62) | void test_field_underlying_conversions() { function test_floats (line 91) | void test_floats() { function test_dyn_fn_with_multiple_arguments (line 113) | void test_dyn_fn_with_multiple_arguments() { function test_refref (line 123) | void test_refref() { function test_zero_sized_type (line 139) | void test_zero_sized_type() { function test_nested_heap_refs_and_auto_field_offset (line 146) | void test_nested_heap_refs_and_auto_field_offset() { function test_conservative_layout (line 202) | void test_conservative_layout() { function main (line 229) | int main() { FILE: examples/regression_test1/src/lib.rs type Foo (line 6) | struct Foo { type FieldTypeA (line 13) | struct FieldTypeA { type FieldTypeB (line 20) | struct FieldTypeB { type FieldTypeC (line 27) | struct FieldTypeC { type TypeA (line 35) | struct TypeA { type TypeB (line 44) | struct TypeB { type ConservativeLayoutType (line 53) | struct ConservativeLayoutType { method mem_size (line 61) | pub fn mem_size(&self) -> usize { method mem_align (line 64) | pub fn mem_align(&self) -> usize { type Scoped (line 69) | struct Scoped(&'static str); method new (line 72) | fn new(message: &'static str) -> Self { method drop (line 79) | fn drop(&mut self) { function call_dyn_fn_multi_args (line 85) | fn call_dyn_fn_multi_args(func: Box) { type ZeroSizedType (line 92) | struct ZeroSizedType; method new (line 95) | fn new() -> Self { method method (line 99) | fn method(&self) { FILE: examples/rustyline/main.cpp function main (line 8) | int main() { FILE: examples/simple/main.cpp class VectorIterator (line 14) | class VectorIterator : public rust::std::iter::Iterator { method VectorIterator (line 19) | VectorIterator(std::vector &&v) : vec(v), pos(0) {} method next (line 24) | Option next() override { function main (line 34) | int main() { FILE: examples/simple_import/bar.cpp function bar (line 4) | rust::std::option::Option bar() { FILE: examples/simple_import/foo.cpp function foo (line 4) | rust::std::vec::Vec foo() { FILE: examples/simple_import/main.cpp function main (line 8) | int main() { FILE: examples/tutorial-wasm32/main.cpp class VectorIterator (line 14) | class VectorIterator : public rust::std::iter::Iterator { method VectorIterator (line 19) | VectorIterator(std::vector &&v) : vec(v), pos(0) {} method next (line 24) | Option next() override { function main (line 34) | int main() { FILE: examples/tutorial-wasm32/src/lib.rs function add_one (line 6) | pub fn add_one(x: usize) -> usize { type Item (line 11) | struct Item { type Inventory (line 17) | struct Inventory { method new_empty (line 23) | fn new_empty(space: u32) -> Self { method add_item (line 30) | fn add_item(&mut self, item: Item) { method add_banana (line 35) | fn add_banana(&mut self, count: u32) { method into_items (line 44) | fn into_items(self) -> Vec { FILE: examples/tutorial/main.cpp function main (line 3) | int main() { FILE: examples/tutorial/src/lib.rs type Item (line 7) | struct Item { type Inventory (line 13) | struct Inventory { method new_empty (line 19) | fn new_empty(space: u32) -> Self { method add_item (line 26) | fn add_item(&mut self, item: Item) { method add_banana (line 31) | fn add_banana(&mut self, count: u32) { method into_items (line 40) | fn into_items(self) -> Vec { FILE: examples/tutorial_cpp/build.rs function main (line 6) | fn main() { FILE: examples/tutorial_cpp/impls.cpp function rust_str_from_c_str (line 9) | rust::Ref rust_str_from_c_str(const char* input) { function Inventory (line 13) | Inventory rust::Impl::new_empty(uint32_t space) { function Item (line 29) | Item rust::Impl::new_(Ref name, uint32_t size) { FILE: examples/tutorial_cpp/inventory.h function namespace (line 5) | namespace cpp_inventory { FILE: examples/tutorial_cpp/src/main.rs type Inventory (line 5) | struct Inventory(generated::ZngurCppOpaqueOwnedObject); type Item (line 6) | struct Item(generated::ZngurCppOpaqueOwnedObject); function main (line 8) | fn main() { FILE: xtask/src/ci.rs function check_crate (line 5) | fn check_crate(sh: &Shell) -> Result<()> { function check_book_formatting (line 13) | fn check_book_formatting() -> Result<()> { function check_examples (line 18) | fn check_examples(sh: &Shell, fix: bool) -> Result<()> { function main (line 157) | pub fn main(fix: bool) -> Result<()> { FILE: xtask/src/format_book.rs function main (line 4) | pub fn main(fix: bool) -> Result<()> { FILE: xtask/src/format_templates.rs function convert_sailfish_tags_to_comment (line 4) | fn convert_sailfish_tags_to_comment(mut template: &str) -> Result<(Strin... function convert_comments_to_sailfish_tag (line 21) | fn convert_comments_to_sailfish_tag(mut template: String, tags: Vec<&str... function main (line 30) | pub fn main(fix: bool) -> Result<()> { FILE: xtask/src/main.rs type Command (line 8) | enum Command { function main (line 23) | fn main() -> anyhow::Result<()> { FILE: zngur-autozng/src/main.rs type RustdocRustType (line 8) | enum RustdocRustType { method render (line 30) | fn render(&self) -> String { type RustdocFunctionDecl (line 52) | struct RustdocFunctionDecl { type RustdocItemInner (line 61) | enum RustdocItemInner { type RustdocItem (line 111) | struct RustdocItem { type RustdocOutput (line 119) | struct RustdocOutput { function main (line 123) | fn main() { FILE: zngur-cli/src/cfg_extractor.rs type CfgFromRustc (line 5) | pub struct CfgFromRustc { function cfg_from_rustc (line 60) | pub fn cfg_from_rustc( function parse_rustflags_env (line 132) | fn parse_rustflags_env() -> Vec { function parse_rustflags (line 137) | fn parse_rustflags(flags_str: &str) -> Vec { FILE: zngur-cli/src/main.rs type CfgKey (line 11) | struct CfgKey { method into_tuple (line 17) | fn into_tuple(self) -> (String, Vec) { method from (line 23) | fn from(s: &'a str) -> Self { type Command (line 45) | enum Command { function main (line 150) | fn main() { FILE: zngur-def/src/lib.rs type Mutability (line 10) | pub enum Mutability { type ZngurMethodReceiver (line 16) | pub enum ZngurMethodReceiver { type ZngurMethod (line 23) | pub struct ZngurMethod { type ZngurFn (line 32) | pub struct ZngurFn { type ZngurExternCppFn (line 39) | pub struct ZngurExternCppFn { type ZngurExternCppImpl (line 46) | pub struct ZngurExternCppImpl { type ZngurConstructor (line 53) | pub struct ZngurConstructor { type ZngurField (line 59) | pub struct ZngurField { type ZngurFieldData (line 66) | pub struct ZngurFieldData { type ZngurFieldDataOffset (line 73) | pub enum ZngurFieldDataOffset { method is_offset (line 79) | pub fn is_offset(&self) -> bool { method as_offset (line 83) | pub fn as_offset(&self) -> Option { method as_auto (line 90) | pub fn as_auto(&self) -> Option<&str> { type ZngurWellknownTrait (line 99) | pub enum ZngurWellknownTrait { type ZngurWellknownTraitData (line 107) | pub enum ZngurWellknownTraitData { type LayoutPolicy (line 120) | pub enum LayoutPolicy { constant ZERO_SIZED_TYPE (line 128) | pub const ZERO_SIZED_TYPE: Self = LayoutPolicy::StackAllocated { size:... type ZngurMethodDetails (line 132) | pub struct ZngurMethodDetails { type CppValue (line 139) | pub struct CppValue(pub String, pub String); type CppRef (line 142) | pub struct CppRef(pub String); method fmt (line 145) | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { type ZngurType (line 151) | pub struct ZngurType { type ZngurTrait (line 163) | pub struct ZngurTrait { type AdditionalIncludes (line 169) | pub struct AdditionalIncludes(pub String); type ConvertPanicToException (line 172) | pub struct ConvertPanicToException(pub bool); type Import (line 175) | pub struct Import(pub std::path::PathBuf); type ModuleImport (line 178) | pub struct ModuleImport { type ZngurSpec (line 183) | pub struct ZngurSpec { type RustTrait (line 200) | pub enum RustTrait { method take_assocs (line 210) | pub fn take_assocs(mut self) -> (Self, Vec<(String, RustType)>) { type PrimitiveRustType (line 220) | pub enum PrimitiveRustType { type RustPathAndGenerics (line 232) | pub struct RustPathAndGenerics { type RustType (line 239) | pub enum RustType { constant UNIT (line 252) | pub const UNIT: Self = RustType::Tuple(Vec::new()); method fmt (line 256) | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { method fmt (line 284) | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { method fmt (line 303) | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { FILE: zngur-def/src/merge.rs type Merge (line 22) | pub trait Merge { method merge (line 28) | fn merge(self, into: &mut T) -> MergeResult; method merge (line 77) | fn merge(self, into: &mut Self) -> MergeResult { method merge (line 126) | fn merge(self, into: &mut Self) -> MergeResult { method merge (line 167) | fn merge(self, into: &mut Self) -> MergeResult { method merge (line 186) | fn merge(self, into: &mut Self) -> MergeResult { method merge (line 199) | fn merge(self, into: &mut Self) -> MergeResult { method merge (line 220) | fn merge(self, into: &mut Self) -> MergeResult { method merge (line 229) | fn merge(self, into: &mut Self) -> MergeResult { method merge (line 238) | fn merge(self, into: &mut Self) -> MergeResult { type MergeResult (line 32) | pub type MergeResult = Result<(), MergeFailure>; type MergeFailure (line 35) | pub enum MergeFailure { function push_unique (line 41) | fn push_unique(item: T, smallvec: &mut std::vec::Vec) { function inplace_union (line 48) | fn inplace_union(other: Vec, smallvec: &mut std::vec::Vec) { function merge_by_identity (line 57) | fn merge_by_identity( method merge (line 104) | fn merge(self, into: &mut indexmap::IndexMap) -> MergeResult { method merge (line 209) | fn merge(self, into: &mut ZngurSpec) -> MergeResult { method merge (line 248) | fn merge(self, into: &mut ZngurSpec) -> MergeResult { method merge (line 255) | fn merge(self, into: &mut ZngurSpec) -> MergeResult { method merge (line 263) | fn merge(self, into: &mut ZngurSpec) -> MergeResult { method merge (line 271) | fn merge(self, into: &mut ZngurSpec) -> MergeResult { method merge (line 279) | fn merge(self, into: &mut ZngurSpec) -> MergeResult { method merge (line 287) | fn merge(self, into: &mut ZngurSpec) -> MergeResult { FILE: zngur-generator/src/cpp.rs type CppPath (line 17) | pub struct CppPath(pub Vec); method namespace (line 20) | fn namespace(&self) -> &[String] { method open_namespace (line 24) | pub(crate) fn open_namespace(&self) -> String { method close_namespace (line 32) | pub(crate) fn close_namespace(&self) -> String { method name (line 40) | pub(crate) fn name(&self) -> &str { method need_header (line 48) | fn need_header(&self) -> bool { method from_rust_path (line 60) | pub(crate) fn from_rust_path(path: &[String], ns: &str, crate_name: &s... method from (line 75) | fn from(value: [&str; N]) -> Self { method from (line 81) | fn from(value: &str) -> Self { method fmt (line 88) | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { type CppType (line 94) | pub struct CppType { method into_ref (line 100) | pub fn into_ref(self) -> CppType { method top_level_ns (line 107) | fn top_level_ns(&self) -> &String { method specialization_decl (line 111) | pub(crate) fn specialization_decl(&self) -> String { method header_helper (line 125) | fn header_helper(&self, state: &mut impl Write) -> std::fmt::Result { method header (line 152) | pub(crate) fn header(&self) -> String { method from (line 204) | fn from(value: &str) -> Self { method fmt (line 162) | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { function split_string (line 171) | fn split_string(input: &str) -> impl Iterator { type State (line 223) | pub(crate) struct State { method remove_no_except_in_panic (line 229) | fn remove_no_except_in_panic(&mut self) { method write_str (line 237) | fn write_str(&mut self, s: &str) -> std::fmt::Result { type CppTraitMethod (line 244) | pub struct CppTraitMethod { method render_inputs (line 252) | pub fn render_inputs(&self, namespace: &str) -> String { type CppFnSig (line 267) | pub struct CppFnSig { method render_inputs (line 274) | pub fn render_inputs(&self, namespace: &str) -> String { type CppFnDefinition (line 288) | pub struct CppFnDefinition { type CppExportedFnDefinition (line 293) | pub struct CppExportedFnDefinition { type CppExportedImplDefinition (line 298) | pub struct CppExportedImplDefinition { method render_tr (line 305) | pub fn render_tr(&self, namespace: &str) -> String { type CppMethod (line 314) | pub struct CppMethod { method is_valid_field_method (line 321) | pub fn is_valid_field_method(&self, field_kind: &str) -> bool { method is_ref_not_mut (line 329) | pub fn is_ref_not_mut(&self) -> bool { method fn_name (line 336) | pub fn fn_name(&self, type_name: &str) -> String { method render_sig_inputs_skip_one (line 340) | pub fn render_sig_inputs_skip_one(&self) -> String { type CppTraitDefinition (line 353) | pub enum CppTraitDefinition { method is_normal (line 366) | pub fn is_normal(&self) -> bool { method as_normal (line 370) | pub fn as_normal(&self) -> Option<(&CppType, &[CppTraitMethod], &str, ... method as_fn (line 384) | pub fn as_fn(&self) -> Option<&CppFnSig> { type CppLayoutPolicy (line 394) | pub enum CppLayoutPolicy { method is_only_by_ref (line 408) | pub fn is_only_by_ref(&self) -> bool { method is_stack_allocated (line 412) | pub fn is_stack_allocated(&self) -> bool { method stack_size (line 416) | pub fn stack_size(&self) -> usize { method stack_align (line 424) | pub fn stack_align(&self) -> usize { method alloc_heap (line 432) | pub fn alloc_heap(&self) -> String { method free_heap (line 440) | pub fn free_heap(&self) -> String { method copy_data (line 448) | pub fn copy_data(&self) -> String { method size_fn (line 459) | pub fn size_fn(&self) -> String { method alloc_fn (line 467) | pub fn alloc_fn(&self) -> String { method free_fn (line 475) | pub fn free_fn(&self) -> String { type CppTypeDefinition (line 485) | pub struct CppTypeDefinition { method has_unsized (line 499) | pub fn has_unsized(&self) -> bool { method has_copy (line 505) | pub fn has_copy(&self) -> bool { method drop_in_place (line 511) | pub fn drop_in_place(&self) -> String { method render_make_box (line 524) | pub fn render_make_box(&self, name: &str, namespace: &str, crate_name:... method render_make_box_ref (line 549) | pub fn render_make_box_ref(&self, name: &str, namespace: &str, crate_n... method render_make_box_ref_only (line 574) | pub fn render_make_box_ref_only( method default (line 603) | fn default() -> Self { type CppFile (line 620) | pub struct CppFile { method emit_h_file (line 634) | fn emit_h_file( method emit_cpp_file (line 657) | fn emit_cpp_file( method render (line 679) | pub fn render(self, namespace: &str, crate_name: &str) -> (String, Opt... function cpp_handle_keyword (line 699) | pub fn cpp_handle_keyword(name: &str) -> &str { function cpp_handle_field_name (line 707) | pub fn cpp_handle_field_name(name: &str) -> String { type CountCharMatchesExt (line 714) | trait CountCharMatchesExt { method count_start_matches (line 715) | fn count_start_matches(&self, pred: impl Fn(char) -> bool) -> usize; method count_matches (line 716) | fn count_matches(&self, pred: impl Fn(char) -> bool) -> usize; method count_start_matches (line 720) | fn count_start_matches(&self, pred: impl Fn(char) -> bool) -> usize { method count_matches (line 731) | fn count_matches(&self, pred: impl Fn(char) -> bool) -> usize { function normalize_whitespace (line 746) | pub fn normalize_whitespace(cpp: &str) -> String { FILE: zngur-generator/src/lib.rs type ZngurGenerator (line 28) | pub struct ZngurGenerator(pub ZngurSpec, pub String); method build_from_zng (line 31) | pub fn build_from_zng(zng: ZngurSpec, crate_name: String) -> Self { method render (line 35) | pub fn render(self, zng_header_in_place: bool) -> (String, String, Opt... type ZngHeaderGenerator (line 332) | pub struct ZngHeaderGenerator { method render (line 339) | pub fn render(&self) -> String { function real_inputs_of_method (line 348) | fn real_inputs_of_method(method: &ZngurMethod, ty: &RustType) -> Vec CppType; method into_cpp (line 18) | fn into_cpp(&self, namespace: &str, crate_name: &str) -> CppType { method into_cpp (line 37) | fn into_cpp(&self, namespace: &str, crate_name: &str) -> CppType { method into_cpp (line 57) | fn into_cpp(&self, namespace: &str, crate_name: &str) -> CppType { type RustFile (line 153) | pub struct RustFile { method new (line 160) | pub fn new(mangling_base: &str) -> Self { method mangle_name (line 469) | fn mangle_name(&self, name: &str) -> String { method call_cpp_function (line 473) | fn call_cpp_function(&mut self, name: &str, inputs: usize) { method add_static_is_copy_assert (line 486) | pub fn add_static_is_copy_assert(&mut self, ty: &RustType) { method add_static_size_assert (line 490) | pub fn add_static_size_assert(&mut self, ty: &RustType, size: usize) { method add_static_align_assert (line 494) | pub fn add_static_align_assert(&mut self, ty: &RustType, align: usize) { method add_static_size_upper_bound_assert (line 498) | pub fn add_static_size_upper_bound_assert(&mut self, ty: &RustType, si... method add_static_align_upper_bound_assert (line 502) | pub fn add_static_align_upper_bound_assert(&mut self, ty: &RustType, a... method add_builder_for_dyn_trait (line 509) | pub(crate) fn add_builder_for_dyn_trait( method add_builder_for_dyn_trait_owned (line 564) | fn add_builder_for_dyn_trait_owned( method add_builder_for_dyn_trait_borrowed (line 625) | fn add_builder_for_dyn_trait_borrowed( method add_builder_for_dyn_fn (line 684) | pub fn add_builder_for_dyn_fn( method add_tuple_constructor (line 730) | pub fn add_tuple_constructor(&mut self, fields: &[RustType]) -> String { method add_constructor (line 754) | pub fn add_constructor( method add_field_assertions (line 795) | pub(crate) fn add_field_assertions( method add_extern_cpp_impl (line 822) | pub fn add_extern_cpp_impl( method add_extern_cpp_function (line 889) | pub fn add_extern_cpp_function( method add_cpp_value_bridge (line 919) | pub fn add_cpp_value_bridge(&mut self, ty: &RustType, field: &str) -> ... method add_function (line 933) | pub fn add_function( method add_wellknown_trait (line 1006) | pub(crate) fn add_wellknown_trait( method wrap_in_catch_unwind (line 1062) | fn wrap_in_catch_unwind(&mut self, f: impl FnOnce(&mut RustFile)) { method add_layout_policy_shim (line 1079) | pub(crate) fn add_layout_policy_shim( method write_str (line 404) | fn write_str(&mut self, s: &str) -> std::fmt::Result { function hash_of_sig (line 421) | pub fn hash_of_sig(sig: &[RustType]) -> String { function mangle_name (line 431) | fn mangle_name(name: &str, mangling_base: &str) -> String { type ConstructorMangledNames (line 463) | pub struct ConstructorMangledNames { FILE: zngur-generator/src/template.rs type CppHeaderTemplate (line 48) | pub(crate) struct CppHeaderTemplate<'a> { function cpp_handle_field_name (line 63) | pub fn cpp_handle_field_name(&self, name: &str) -> String { type ZngHeaderTemplate (line 70) | pub(crate) struct ZngHeaderTemplate { method is_ref_kind_ref (line 507) | pub fn is_ref_kind_ref(&self, ref_kind: &str) -> bool { method is_size_t (line 510) | pub fn is_size_t(&self, ty: &str) -> bool { method is_printable (line 514) | pub fn is_printable(&self, ty: &str) -> bool { method builtin_types (line 522) | fn builtin_types(&self) -> Vec { function panic_handler (line 76) | fn panic_handler(&self) -> String { function render_type_methods (line 90) | pub fn render_type_methods(&self, td: &crate::cpp::CppTypeDefinition) ->... function render_from_trait (line 263) | pub fn render_from_trait(&self, td: &crate::cpp::CppTypeDefinition) -> S... function render_from_trait_ref (line 352) | pub fn render_from_trait_ref(&self, td: &crate::cpp::CppTypeDefinition) ... function render_fn_deps (line 393) | pub fn render_fn_deps(&self) -> String { function render_exported_impls (line 457) | pub fn render_exported_impls(&self) -> String { function render_zng_header (line 497) | fn render_zng_header(&self) -> String { type CppSourceTemplate (line 545) | pub(crate) struct CppSourceTemplate<'a> { FILE: zngur-parser/src/cfg.rs type RustCfgProvider (line 11) | pub trait RustCfgProvider: CloneableCfg { method get_cfg (line 13) | fn get_cfg(&self, key: &str) -> Option>; method get_features (line 15) | fn get_features(&self) -> Vec; method get_cfg_pairs (line 20) | fn get_cfg_pairs(&self) -> Vec<(String, Option)>; method get_cfg (line 40) | fn get_cfg(&self, _key: &str) -> Option> { method get_features (line 43) | fn get_features(&self) -> Vec { method get_cfg_pairs (line 46) | fn get_cfg_pairs(&self) -> Vec<(String, Option)> { method get_cfg (line 128) | fn get_cfg(&self, key: &str) -> Option> { method get_features (line 131) | fn get_features(&self) -> Vec { method get_cfg_pairs (line 134) | fn get_cfg_pairs(&self) -> Vec<(String, Option)> { type CloneableCfg (line 23) | pub trait CloneableCfg { method clone_box (line 24) | fn clone_box(&self) -> Box; method clone_box (line 31) | fn clone_box(&self) -> Box { type NullCfg (line 37) | pub struct NullCfg; type InMemoryRustCfgProvider (line 52) | pub struct InMemoryRustCfgProvider { method new (line 60) | pub fn new() -> Self { method with_values (line 66) | pub fn with_values<'a, CfgPairs, CfgKey, CfgValues>(mut self, cfg_valu... method load_from_cargo_env (line 86) | pub fn load_from_cargo_env(mut self) -> Self { constant CARGO_FEATURE_PREFIX (line 56) | const CARGO_FEATURE_PREFIX: &str = "CARGO_FEATURE_"; constant CARGO_CFG_PREFIX (line 57) | const CARGO_CFG_PREFIX: &str = "CARGO_CFG_"; method default (line 122) | fn default() -> Self { type CfgScrutinee (line 152) | pub(crate) enum CfgScrutinee<'src> { type ProcessedCfgScrutinee (line 160) | pub(crate) enum ProcessedCfgScrutinee { type ProcessedCfgConditional (line 166) | pub(crate) enum ProcessedCfgConditional { type CfgConditional (line 173) | pub(crate) enum CfgConditional<'src> { type CfgPatternItem (line 179) | pub(crate) enum CfgPatternItem<'src> { type CfgPattern (line 188) | pub(crate) enum CfgPattern<'src> { method default_some (line 198) | fn default_some(span: Span) -> Self { function parser (line 203) | fn parser() -> impl ZngParser<'src, Self> { type Pattern (line 263) | type Pattern = CfgPattern<'src>; method eval (line 265) | fn eval(&self, pattern: &Self::Pattern, ctx: &mut ParseContext) -> bool { function parser (line 312) | fn parser() -> impl ZngParser<'src, Self> { function parser (line 333) | fn parser() -> impl ZngParser<'src, Self> { function combined (line 350) | fn combined() -> Option< function matches (line 396) | fn matches(&self, scrutinee: &ProcessedCfgConditional, ctx: &mut ParseCo... function matches (line 461) | fn matches(&self, scrutinee: &ProcessedCfgScrutinee) -> bool { FILE: zngur-parser/src/conditional.rs type Matchable (line 5) | pub trait Matchable: core::fmt::Debug + Clone + PartialEq + Eq { method eval (line 9) | fn eval(&self, pattern: &Self::Pattern, ctx: &mut ParseContext) -> bool; type MatchableParse (line 13) | pub(crate) trait MatchableParse<'src>: Matchable { method parser (line 15) | fn parser() -> impl ZngParser<'src, Self>; method combined (line 19) | fn combined() type MatchPattern (line 25) | pub trait MatchPattern: core::fmt::Debug + Clone + PartialEq + Eq { method default_some (line 27) | fn default_some(span: crate::Span) -> Self; type MatchPatternParse (line 31) | pub(crate) trait MatchPatternParse<'src>: MatchPattern { method parser (line 33) | fn parser() -> impl ZngParser<'src, Self>; type BodyItem (line 36) | pub trait BodyItem: core::fmt::Debug + Clone + PartialEq + Eq { method process (line 41) | fn process(self, ctx: &mut ParseContext) -> Self::Processed; type ConditionBody (line 45) | pub trait ConditionBody: core::fm... method pattern (line 47) | fn pattern(&self) -> &Pattern; type ConditionBodyCardinality (line 51) | pub trait ConditionBodyCardinality: method single_to_block (line 61) | fn single_to_block(item: Spanned) -> Self::Block; method empty_block (line 63) | fn empty_block() -> Self::Block; method new_body (line 65) | fn new_body( method pass_block (line 70) | fn pass_block(block: &Self::Block, ctx: &mut ParseContext) -> Self::Ev... method pass_body (line 72) | fn pass_body( type ConditionalItem (line 79) | pub trait ConditionalItem Option { type ConditionBodySingle (line 93) | pub struct ConditionBodySingle { function pattern (line 101) | fn pattern(&self) -> &Pattern { function pattern (line 109) | fn pattern(&self) -> &Pattern { type SingleItem (line 116) | pub struct SingleItem; type Body (line 119) | type Body = ConditionBodySingle; type Block (line 120) | type Block = Option>; type EvalResult (line 121) | type EvalResult = Option::Processed>>; method single_to_block (line 123) | fn single_to_block(item: Spanned) -> Self::Block { method empty_block (line 127) | fn empty_block() -> Self::Block { method new_body (line 131) | fn new_body( method pass_block (line 138) | fn pass_block(block: &Self::Block, ctx: &mut ParseContext) -> Self::Ev... method pass_body (line 148) | fn pass_body( type NItems (line 158) | pub struct NItems; type Body (line 161) | type Body = ConditionBodyMany; type Block (line 162) | type Block = Vec>; type EvalResult (line 163) | type EvalResult = Vec::Processed>>; method single_to_block (line 165) | fn single_to_block(item: Spanned) -> Self::Block { method empty_block (line 169) | fn empty_block() -> Self::Block { method new_body (line 173) | fn new_body( method pass_block (line 180) | fn pass_block(block: &Self::Block, ctx: &mut ParseContext) -> Self::Ev... method pass_body (line 194) | fn pass_body( type ConditionGuard (line 204) | pub enum ConditionGuard { function eval (line 217) | fn eval(&self, ctx: &mut ParseContext) -> bool { type ConditionBranch (line 232) | pub struct ConditionBranch< type ConditionIf (line 243) | pub struct ConditionIf< type ConditionMatch (line 254) | pub struct ConditionMatch< function eval (line 272) | fn eval( function eval (line 289) | fn eval( function eval (line 308) | fn eval( type Condition (line 328) | pub enum Condition< function eval (line 340) | fn eval( type Conditional (line 352) | pub trait Conditional<'src, Item: BodyItem, Cardinality: ConditionBodyCa... method if_parser (line 354) | fn if_parser( method match_parser (line 357) | fn match_parser( function block_for_single (line 363) | pub fn block_for_single<'src, Item: BodyItem>( function block_for_many (line 377) | pub fn block_for_many<'src, Item: BodyItem>( function guarded_block (line 384) | pub fn guarded_block< function if_stmnt (line 466) | pub fn if_stmnt< function match_arm (line 503) | fn match_arm< function match_stmt (line 534) | fn match_stmt< function conditional_item (line 560) | pub fn conditional_item< type Scrutinee (line 593) | type Scrutinee = Scrutinee; method if_parser (line 594) | fn if_parser( method match_parser (line 605) | fn match_parser( type Scrutinee (line 620) | type Scrutinee = Scrutinee; method if_parser (line 621) | fn if_parser( method match_parser (line 632) | fn match_parser( FILE: zngur-parser/src/lib.rs type Span (line 18) | pub type Span = SimpleSpan; type ParseResult (line 22) | pub struct ParseResult { type Spanned (line 41) | pub struct Spanned { type ParserInput (line 46) | type ParserInput<'a> = chumsky::input::MappedInput< type UnstableFeatures (line 58) | pub struct UnstableFeatures { type ZngParserState (line 64) | pub struct ZngParserState { type ZngParserExtra (line 68) | type ZngParserExtra<'a> = type BoxedZngParser (line 71) | type BoxedZngParser<'a, Item> = chumsky::Boxed<'a, 'a, ParserInput<'a>, ... type ZngParser (line 74) | pub(crate) trait ZngParser<'a, Item>: type ParsedZngFile (line 84) | pub struct ParsedZngFile<'a>(Vec>); type ProcessedZngFile (line 87) | pub struct ProcessedZngFile<'a> { type ParsedPathStart (line 93) | enum ParsedPathStart { type ParsedPath (line 100) | struct ParsedPath<'a> { type Scope (line 107) | struct Scope<'a> { function new_root (line 114) | fn new_root(aliases: Vec>) -> Scope<'a> { function resolve_path (line 122) | fn resolve_path(&self, path: ParsedPath<'a>) -> Vec { function simple_relative_path (line 136) | fn simple_relative_path(&self, relative_item_name: &str) -> Vec { function sub_scope (line 144) | fn sub_scope(&self, new_aliases: &[ParsedAlias<'a>], nested_path: Parsed... function to_zngur (line 157) | fn to_zngur(self, base: &[String]) -> Vec { function matches_alias (line 174) | fn matches_alias(&self, alias: &ParsedAlias<'_>) -> bool { type ParsedAlias (line 186) | pub struct ParsedAlias<'a> { function expand (line 193) | fn expand(&self, path: &ParsedPath<'_>, base: &[String]) -> Option { type ProcessedItem (line 262) | enum ProcessedItem<'a> { type ParsedExternCppItem (line 288) | enum ParsedExternCppItem<'a> { type ParsedConstructorArgs (line 298) | enum ParsedConstructorArgs<'a> { type ParsedLayoutPolicy (line 305) | enum ParsedLayoutPolicy<'a> { type ParsedTypeItem (line 313) | enum ParsedTypeItem<'a> { type ParsedMethod (line 341) | struct ParsedMethod<'a> { function to_zngur (line 350) | fn to_zngur(self, scope: &Scope<'_>) -> ZngurMethod { function checked_merge (line 365) | fn checked_merge(src: T, dst: &mut U, span: Span, ctx: &mut ParseC... function add_to_zngur_spec (line 380) | fn add_to_zngur_spec(self, r: &mut ZngurSpec, scope: &Scope<'_>, ctx: &m... type ParsedRustType (line 717) | enum ParsedRustType<'a> { function to_zngur (line 730) | fn to_zngur(self, scope: &Scope<'_>) -> RustType { type ParsedRustTrait (line 754) | enum ParsedRustTrait<'a> { function to_zngur (line 764) | fn to_zngur(self, scope: &Scope<'_>) -> RustTrait { type ParsedRustPathAndGenerics (line 781) | struct ParsedRustPathAndGenerics<'a> { function to_zngur (line 788) | fn to_zngur(self, scope: &Scope<'_>) -> RustPathAndGenerics { type ParseContext (line 805) | struct ParseContext<'a, 'b> { function new (line 817) | fn new(path: std::path::PathBuf, text: &'a str, cfg: Box &str { function add_report (line 852) | fn add_report(&mut self, report: Report<'b, (String, std::ops::Range(&mut self, errs: impl Iterator) { function has_errors (line 888) | fn has_errors(&self) -> bool { function emit_ariadne_errors (line 893) | fn emit_ariadne_errors(&self) -> ! { function emit_ariadne_errors (line 923) | fn emit_ariadne_errors(&self) -> ! { function get_config_provider (line 946) | fn get_config_provider(&self) -> &dyn RustCfgProvider { type ImportResolver (line 952) | pub trait ImportResolver { method resolve_import (line 953) | fn resolve_import( method resolve_import (line 964) | fn resolve_import( type DefaultImportResolver (line 961) | struct DefaultImportResolver; function parse_into (line 978) | fn parse_into(zngur: &mut ZngurSpec, ctx: &mut ParseContext, resolver: &... function parse (line 1037) | pub fn parse(path: std::path::PathBuf, cfg: Box) ->... function parse_str (line 1072) | pub fn parse_str(text: &str, cfg: impl RustCfgProvider + 'static) -> Par... function parse_str_with_resolver (line 1086) | pub(crate) fn parse_str_with_resolver( type ProcessedItemOrAlias (line 1104) | pub(crate) enum ProcessedItemOrAlias<'a> { function process_parsed_item (line 1111) | fn process_parsed_item<'a>( function partition_parsed_items (line 1157) | fn partition_parsed_items<'a>( function new (line 1178) | fn new(aliases: Vec>, items: Vec>) -> ... function into_zngur_spec (line 1182) | fn into_zngur_spec(self, zngur: &mut ZngurSpec, ctx: &mut ParseContext) { type Token (line 1192) | enum Token<'a> { function ident_or_kw (line 1242) | fn ident_or_kw(ident: &'a str) -> Self { method fmt (line 1269) | fn fmt(&self, f: &mut std::fmt::Formatter<'_>) -> std::fmt::Result { function lexer (line 1321) | fn lexer<'src>() function alias (line 1369) | fn alias<'a>() -> impl Parser<'a, ParserInput<'a>, ParsedItem<'a>, ZngPa... function file_parser (line 1387) | fn file_parser<'a>() function rust_type (line 1392) | fn rust_type<'a>() -> Boxed<'a, 'a, ParserInput<'a>, ParsedRustType<'a>,... function rust_generics (line 1473) | fn rust_generics<'a>( function rust_path_and_generics (line 1497) | fn rust_path_and_generics<'a>( function fn_args (line 1514) | fn fn_args<'a>( function spanned (line 1532) | fn spanned<'a, T>( function rust_trait (line 1541) | fn rust_trait<'a>( function method (line 1558) | fn method<'a>() -> impl Parser<'a, ParserInput<'a>, ParsedMethod<'a>, Zn... function inner_type_item (line 1615) | fn inner_type_item<'a>() function type_item (line 1762) | fn type_item<'a>() -> impl Parser<'a, ParserInput<'a>, ParsedItem<'a>, Z... function trait_item (line 1775) | fn trait_item<'a>() -> impl Parser<'a, ParserInput<'a>, ParsedItem<'a>, ... function fn_item (line 1790) | fn fn_item<'a>() -> impl Parser<'a, ParserInput<'a>, ParsedItem<'a>, Zng... function additional_include_item (line 1796) | fn additional_include_item<'a>() function extern_cpp_item (line 1809) | fn extern_cpp_item<'a>() function unstable_feature (line 1844) | fn unstable_feature<'a>() function item (line 1868) | fn item<'a>() -> impl Parser<'a, ParserInput<'a>, ParsedItem<'a>, ZngPar... function import_item (line 1895) | fn import_item<'a>() -> impl Parser<'a, ParserInput<'a>, ParsedItem<'a>,... function module_import_item (line 1911) | fn module_import_item<'a>() function path (line 1923) | fn path<'a>() -> impl Parser<'a, ParserInput<'a>, ParsedPath<'a>, ZngPar... type Processed (line 1951) | type Processed = Self; function process (line 1953) | fn process(self, _ctx: &mut ParseContext) -> Self::Processed { type Processed (line 1959) | type Processed = ProcessedItemOrAlias<'a>; function process (line 1961) | fn process(self, ctx: &mut ParseContext) -> Self::Processed { FILE: zngur-parser/src/tests.rs function check_success (line 11) | fn check_success(zng: &str) { type ErrorText (line 15) | pub struct ErrorText(pub String); function check_fail (line 17) | fn check_fail(zng: &str, error: Expect) { function check_fail_with_cfg (line 30) | fn check_fail_with_cfg( function check_import_fail (line 47) | fn check_import_fail(zng: &str, error: Expect, resolver: &MockFilesystem) { function catch_parse_fail (line 62) | fn catch_parse_fail( function parse_unit (line 84) | fn parse_unit() { function parse_tuple (line 105) | fn parse_tuple() { function typo_in_wellknown_trait (line 116) | fn typo_in_wellknown_trait() { function multiple_layout_policies (line 137) | fn multiple_layout_policies() { function cpp_ref_should_not_need_layout_info (line 158) | fn cpp_ref_should_not_need_layout_info() { function alias_expands_correctly (line 196) | fn alias_expands_correctly() { function alias_expands_nearest_scope_first (line 214) | fn alias_expands_nearest_scope_first() { type MockFilesystem (line 234) | struct MockFilesystem { method new (line 239) | fn new( method resolve_import (line 252) | fn resolve_import( function import_parser_test (line 266) | fn import_parser_test() { function module_import_prohibited (line 286) | fn module_import_prohibited() { function import_has_conflict (line 307) | fn import_has_conflict() { function import_not_found (line 339) | fn import_not_found() { function import_has_mismatched_method_signature (line 353) | fn import_has_mismatched_method_signature() { function import_has_mismatched_field (line 381) | fn import_has_mismatched_field() { function convert_panic_to_exception_in_imported_file_fails (line 412) | fn convert_panic_to_exception_in_imported_file_fails() { function convert_panic_to_exception_in_main_file_succeeds (line 444) | fn convert_panic_to_exception_in_main_file_succeeds() { function processed_files_single_file (line 458) | fn processed_files_single_file() { function processed_files_with_import (line 480) | fn processed_files_with_import() { function processed_files_with_nested_imports (line 508) | fn processed_files_with_nested_imports() { function assert_layout (line 544) | fn assert_layout(wanted_size: usize, wanted_align: usize, layout: &Layou... function test_if_conditional_type_item (line 557) | fn test_if_conditional_type_item() { function test_match_conditional_type_item (line 591) | fn test_match_conditional_type_item() { type CfgPathPairs (line 645) | type CfgPathPairs<'a> = &'a [(&'a [(&'a str, &'a [&'a str])], &'a [&'a s... function conditional_if_spec_item (line 648) | fn conditional_if_spec_item() { function conditional_match_spec_item (line 671) | fn conditional_match_spec_item() { function match_pattern_single_cfg (line 694) | fn match_pattern_single_cfg() { function if_pattern_multi_cfg (line 728) | fn if_pattern_multi_cfg() { function match_pattern_multi_cfg (line 774) | fn match_pattern_multi_cfg() { function match_pattern_multi_cfg_bad_pattern (line 809) | fn match_pattern_multi_cfg_bad_pattern() { function match_pattern_multi_cfg_bad_pattern2 (line 845) | fn match_pattern_multi_cfg_bad_pattern2() { function cfg_match_unstable (line 885) | fn cfg_match_unstable() { function module_import_parser_test (line 916) | fn module_import_parser_test() { FILE: zngur/src/lib.rs type Zngur (line 29) | pub struct Zngur { method from_zng_file (line 44) | pub fn from_zng_file(zng_file_path: impl AsRef) -> Self { method with_zng_header (line 60) | pub fn with_zng_header(mut self, zng_header: impl AsRef) -> Self { method with_h_file (line 65) | pub fn with_h_file(mut self, path: impl AsRef) -> Self { method with_cpp_file (line 70) | pub fn with_cpp_file(mut self, path: impl AsRef) -> Self { method with_rs_file (line 75) | pub fn with_rs_file(mut self, path: impl AsRef) -> Self { method with_depfile (line 84) | pub fn with_depfile(mut self, path: impl AsRef) -> Self { method with_mangling_base (line 89) | pub fn with_mangling_base(mut self, mangling_base: &str) -> Self { method with_cpp_namespace (line 94) | pub fn with_cpp_namespace(mut self, cpp_namespace: &str) -> Self { method with_crate_name (line 99) | pub fn with_crate_name(mut self, crate_name: &str) -> Self { method with_rust_cargo_cfg (line 104) | pub fn with_rust_cargo_cfg(mut self) -> Self { method with_zng_header_in_place_as (line 111) | pub fn with_zng_header_in_place_as(mut self, value: bool) -> Self { method with_zng_header_in_place (line 116) | pub fn with_zng_header_in_place(self) -> Self { method with_rust_in_memory_cfg (line 120) | pub fn with_rust_in_memory_cfg<'a, CfgPairs, CfgKey, CfgValues>( method generate (line 136) | pub fn generate(self) { type ZngurHdr (line 225) | pub struct ZngurHdr { method new (line 232) | pub const fn new() -> Self { method with_panic_to_exception (line 240) | pub fn with_panic_to_exception(self) -> Self { method without_panic_to_exception (line 244) | pub fn without_panic_to_exception(self) -> Self { method with_panic_to_exception_as (line 248) | pub fn with_panic_to_exception_as(mut self, panic_to_exception: bool) ... method with_zng_header (line 253) | pub fn with_zng_header(mut self, zng_header: impl Into) -> Se... method with_cpp_namespace (line 258) | pub fn with_cpp_namespace(mut self, cpp_namespace: &str) -> Self { method generate (line 263) | pub fn generate(self) {