foofs.fist

来自「Solaris操作系统下的过滤驱动程序, C源码程序.」· FIST 代码 · 共 94 行

FIST
94
字号
// this file sample file for testing the fistgen parser// a commentdebug on;filter name;accessmode readwrite;errorcode EOKKEY;errorcode EBADKEY;fanout 2;mntdata {  int Xfoo1;  char Xfoo2;};pervfs {  int key;  char foo3;};pervnode { int foo3; };fileformat fName { int foo4; };ioctl firstI { int foo5; };ioctl:touser secondI {  int x;  struct foo bar;  char s[10];  char t[MAX];  struct bar foo[10];  struct bar baz[MAX];};mntflag MNT_COMPRESS;fsname foofs;mntflag MNT_BZIP;mntflag MNT_GZIP;mntstyle regular;%%%op:all:call { foo ; }%op:all:precall { bar() ; }%op:all:postcall { foozball ; }%ops:unlink:call{  int i = %gid / fistBar (3.14, 17, 18);  int j = fistFoo(arg1, %uid);  /* EZK: this is a %uid $1 comment -Erez */  vnode_t *vp = $dir:0;  j++ ;}%op:write:postcall {  int i = %gid + %uid;  {    int j = $this:0;    char *cp = "this is a %uid quote that is not munged";    j++ ;  }}%ops:unlink:precall {  j++ ;}%%voiddummy_fxn(void){  printf("dummy function called: %d...\n", fistFoo());  err = fistBar(x, b);  printf("dummy function called: %d...\n", %gid);  printf("dummy function called: %d...\n", %gid);  printf("dummy function called: %d...\n", %gid);  printf("dummy function $0 called: %d...\n", %gid);  printf("dummy function called: %d...\n", %gid);  printf("dummy function called: %d...\n", %uid);  printf("also %d...\n", $this);$0$this:0$2$dir:0  /*   * this is a multi-line %gid   * comment... l2 $dir   */$dir$dir.foo3$1.name$vfs$from:2.name$from:2$vfs:2.key  /* $dir.key */}

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?