aboutsummaryrefslogtreecommitdiff
path: root/gen/src/namespace.rs
blob: b79c38f902daf35e56a2181892af616951a245e0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
use crate::syntax::namespace::Namespace;
use crate::syntax::Api;

impl Api {
    pub fn namespace(&self) -> &Namespace {
        match self {
            Api::CxxFunction(efn) | Api::RustFunction(efn) => &efn.name.namespace,
            Api::CxxType(ety) | Api::RustType(ety) => &ety.name.namespace,
            Api::Enum(enm) => &enm.name.namespace,
            Api::Struct(strct) => &strct.name.namespace,
            Api::Impl(_) | Api::Include(_) | Api::TypeAlias(_) => Default::default(),
        }
    }
}