aboutsummaryrefslogtreecommitdiff
path: root/gen/src/namespace.rs
blob: 424e9d8e2668014cd55ab7bc0665061d0742d536 (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(crate) 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(),
        }
    }
}