码迷,mamicode.com
首页 > 其他好文 > 详细

[Erlang]如何添加自己的BIF

时间:2015-06-05 12:21:24      阅读:158      评论:0      收藏:0      [点我收藏+]

标签:erlang

步骤

1. 运行configure

      2. 将你的bifs添加至erts/emulator/beam/bif.tab

bif re:grep/2 bif re:compile/1

3. 创建一个C代码文件

erts/emulator/beam/erl_bif_re.c

4.将你的C代码文件添加至erts/emulator/<arch>/Makefile里

RUN_OBJS = $(OBJDIR)/erl_bif_re.o \

5. implement your bifs by stealing bits from existing erl_bif_*.c files

参考其余的erl_bif_*.c文件,加入下面这段代码

1
2
3
4
5
BIF_RETTYPE re_grep_2(BIF_ALIST_2){
  Eterm result;
  result = magic_function();
  BIF_RET(result);
}

6. 运行make; make install



重点回顾:

步骤0-3只需执行一次,如果你将下面的bif
1
bif re:grep/2

添加至bif.tab时,erl_bif_re.c文件要实现下面这个函数

1
BIF_RETTYPE re_grep_2(BIF_ALIST_2);

[Erlang]如何添加自己的BIF

标签:erlang

原文地址:http://blog.csdn.net/erlib/article/details/46374505

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!