ref: 094fc8b15f98807833143e29f1f7d36a1ca4b28c
dir: /sys/src/libventi/dtype.c/
#include <u.h> #include <libc.h> #include <venti.h> enum { OVtErrType, /* illegal */ OVtRootType, OVtDirType, OVtPointerType0, OVtPointerType1, OVtPointerType2, OVtPointerType3, OVtPointerType4, OVtPointerType5, OVtPointerType6, OVtPointerType7, /* not used */ OVtPointerType8, /* not used */ OVtPointerType9, /* not used */ OVtDataType, OVtMaxType }; uint todisk[] = { OVtDataType, OVtPointerType0, OVtPointerType1, OVtPointerType2, OVtPointerType3, OVtPointerType4, OVtPointerType5, OVtPointerType6, OVtDirType, OVtPointerType0, OVtPointerType1, OVtPointerType2, OVtPointerType3, OVtPointerType4, OVtPointerType5, OVtPointerType6, OVtRootType, }; uint fromdisk[] = { VtCorruptType, VtRootType, VtDirType, VtDirType+1, VtDirType+2, VtDirType+3, VtDirType+4, VtDirType+5, VtDirType+6, VtDirType+7, VtCorruptType, VtCorruptType, VtCorruptType, VtDataType, }; uint vttodisktype(uint n) { if(n >= nelem(todisk)) return VtCorruptType; return todisk[n]; } uint vtfromdisktype(uint n) { if(n >= nelem(fromdisk)) return VtCorruptType; return fromdisk[n]; }