小编szy*_*ski的帖子

在C中嵌入ruby代码

我知道有几个关于此的帖子,但我是堆栈

这是我的C代码

#include </usr/include/ruby-1.9.1/ruby/ruby.h>
#include <stdio.h>
#include <stdlib.h>

int main()
{
 ruby_init();
 rb_eval_string("puts 'hello'");
 ruby_finalize();
 return 0;
 }
Run Code Online (Sandbox Code Playgroud)

我在sublime text 2中编译它时遇到以下错误

In file included from /Users/pierrebaille/Code/Ruby/embedRuby/embedRubyFirst.c:1:
/usr/include/ruby-1.9.1/ruby/ruby.h:1481:24: error: ruby/subst.h: No such file or directory         
[Finished in 0.1s with exit code 1]
Run Code Online (Sandbox Code Playgroud)

谢谢你的帮助

c ruby

2
推荐指数
1
解决办法
579
查看次数

Polymer自定义元素属性访问或发送

我正在寻找一种方法来从DOM访问Polymer自定义元素的属性,或者将数据从Polymer.register发送到DOM.

下面这个非常简单的元素采用两个值并将它们相乘,将结果放在其result属性中.

如何从外部访问此结果?

<element attributes='value times result' name='value-box'>
  <template>
    <p>{{result}}</p>
  </template>

  <script>
    Polymer.register(this, {
      ready: function() {
        if (this.value != null && this.times != null) {
          this.result = this.value * this.times;
        }
      }
    });
  </script>
</element>
Run Code Online (Sandbox Code Playgroud)

shadow-dom polymer

2
推荐指数
1
解决办法
6787
查看次数

从clojure中的目录加载所有文件

如何从目录中加载每个clojure文件?

以下代码不起作用,但说自己("文件夹"在我的src /项目目录中)

(load "folder/*")
Run Code Online (Sandbox Code Playgroud)

clojure

2
推荐指数
1
解决办法
1137
查看次数

检查multimethod在Clojure中是否有特定的调度

我有一个多方法:

(defmulti foo type)
(defmethod foo clojure.lang.Keyword [k] (name k))
Run Code Online (Sandbox Code Playgroud)

我想知道这样的事情是否可行:

(valid-dispatch? foo clojure.lang.Keyword)
;;=> true
Run Code Online (Sandbox Code Playgroud)

clojure

1
推荐指数
1
解决办法
205
查看次数

如何使用nil作为分隔符拆分数组?

我正在寻找一种转换方法:

[1,2,3,nil,4,5,nil,6,7,8,9] 
Run Code Online (Sandbox Code Playgroud)

成:

[[1,2,3],[4,5],[6,7,8,9]]
Run Code Online (Sandbox Code Playgroud)

在Ruby中有没有内置的方法可以做到这一点?

ruby

0
推荐指数
1
解决办法
137
查看次数

使用clojure自动声明帮助函数

我正在寻找一种方法将我的助手功能保持在文件的底部,而不是将它们全部声明在顶部.

一个解决方案应该是编写一个"declare-helpers"函数,该函数获取当前文件中通过defn-macro创建的所有函数的名称,并将它们包装在声明调用中.

在这里,我问的是获取这些名字的更好方法.

*编辑*

我知道这是不好的做法但是,以下代码似乎做了我想要的

请注意,它仅适用于使用"dehfn"宏定义的辅助函数

;define helper function
(defmacro dehfn [name & body]
  `(defn- ~name ~@body))

(defmacro declare-helpers []
  `(declare ~@(map symbol 
                   (re-seq #"(?<=dehfn\s)[a-zA-Z+!\-_?0-9*~#@''`/.$=]*(?=\s)" 
                           (slurp (str "src/" *file*))))))
Run Code Online (Sandbox Code Playgroud)

现在你可以这样做:

(declare-helpers)

(defn hello-user [name] (greet name))

(dehfn greet [name] (str "Hello my dear " name))
Run Code Online (Sandbox Code Playgroud)

clojure

0
推荐指数
1
解决办法
337
查看次数

标签 统计

clojure ×3

ruby ×2

c ×1

polymer ×1

shadow-dom ×1