草庐IT

c++ - D 构建过程

全部标签

ruby - Rake 不知道如何构建任务 : default or minitest

我不久前构建了一个gem,但没有包含任何测试(我感到羞耻)。从那以后,我一直试图通过包括minitest来解决这个问题,但是我因为以下错误而被困在门外:Don'tknowhowtobuildtask'default'这是我的Rakefilerequire'rake/testtask'Rake::TestTask.newdo|t|t.test_files=FileList['test/*_test.rb']end和test/unit_test.rb中的虚拟文件require'minitest/autorun'classTestPackage如果我更改Rakefile以包含task:def

ruby - 在 Ruby 中构建字符串的最快方法是什么?

在Ternaryoperator,一个人想加入["foo","bar","baz"]用逗号和“和”引用TheRubyCookbook如说Ifefficiencyisimportanttoyou,don'tbuildanewstringwhenyoucanappenditemsontoanexistingstring.[Andsoon]...Usestr但这本书是2006年写的。在所有主要的Ruby实现中,使用追加(即)仍然是在给定较小字符串数组的情况下构建大字符串的最快方法吗? 最佳答案 可以时使用Array#join,不能时使用S

ruby - 构建后 Gem 中缺少文件

长话短说:不要在现有的git存储库中运行bundle。奇怪的事情会在没有任何错误消息的情况下发生。原始问题:我通过调整本教程中的步骤构建了一个gem:http://net.tutsplus.com/tutorials/ruby/gem-creation-with-bundler/作为最后一步,我运行了gembuild.gemspec这成功了,但是当我安装gem时,我发现包含我的代码的关键文件不在gem中。同一(lib)目录中的另一个文件“version.rb”确实存在于gem中。我不知道如何开始调试...bundler/gembuild如何决定将哪些文件包含在gem中?编辑:我的工作流

ruby - 什么是 Rack ?我可以使用它通过 Ruby 构建 Web 应用程序吗?

ruby新手警告!(嘿,押韵:))我已经阅读了官方定义,但还是空手而归。他们所说的中间件到底是什么?目的是使用带https的ruby​​吗?patnaik博客上的小教程让事情变得更清晰,但我如何在本地主机上使用它做一些事情?我安装了ruby​​1.9.2以及rackgem和mongrel服务器。我应该先启动mongrel吗?怎么办? 最佳答案 只是添加对Rack的简单解释(因为我觉得缺少):Rack基本上是网络应用程序与网络服务器通信的一种方式。通信是这样的:Web服务器将环境告知应用程序-这主要包含用户作为请求发送的内容-url、

ruby - FactoryBot 构建具有特征的对象列表

我在测试中使用factory_bot创建对象,这里是我的工厂示例:factory:userdoname"John"surname"Doe"trait:with_photodoignoredophoto_count1endafter(:create)do|user,evaluator|FactoryBot.create_list(:photo,evaluator.photo_count)endendend所以我可以用这样的照片创建一个用户:FactoryBot.create(:user,:with_photo)或者没有照片:FactoryBot.create(:user)或者创建一个用户

ruby - 为什么使用过程而不是方法?

我是编程新手,而ruby​​是我第一次真正接触它。我得到了block,但procs似乎是一个简单的方法/函数概念——为什么要使用它们?为什么不只使用一种方法?感谢您的帮助。 最佳答案 Proc是一段可调用的代码。您可以将它存储在一个变量中,作为参数传递,否则将其视为first-classvalue。.Whynotjustuseamethod?取决于你在这里所说的“方法”是什么意思。classFoodefbarputs"hello"endendf=Foo.new在此代码片段中,bar方法的使用非常有限。你可以调用它,就是这样。但是,如

c - Ruby C 扩展 API 问题

所以,最近我不幸地需要为Ruby做一个C扩展(因为性能)。因为我在理解上有问题VALUE(并且仍然如此),所以我查看了Ruby源代码并发现:typedefunsignedlongVALUE;(LinktoSource,但您会注意到它还有其他一些“方法”,但我认为它本质上是一个long;如果我错了,请纠正我)。因此,在进一步调查时,我发现了一个有趣的blogpost,其中说:"...insomecasestheVALUEobjectcouldBEthedatainsteadofPOINTINGTOthedata."令我困惑的是,当我尝试从Ruby将字符串传递给C并使用RSTRING_PT

c - 在 C 中扩展 ruby​​ - 如何指定函数的默认参数值?

我正在尝试为将生成一个类的ruby​​编写C扩展。我正在研究如何为类定义一些默认参数。例如,如果我在ruby​​中有这个类decleration:classMyClassdefinitialize(name,age=10)@name=name@age=ageendend您可以使用mc=MyClass.new("blah")初始化它,年龄参数将在内部设置。我如何在C中执行此操作?到目前为止我得到了这个,但这迫使进入另一个论点:require"ruby.h"staticVALUEmy_init(VALUEself,VALUEname,VALUEage){rb_iv_set(self,"@n

ruby - 如何在 Haml 中构建布局模板

我有一个使用Haml进行布局的网页。“layout.haml”是一个单独的布局文件,用于呈现任何实际的Haml页面。layout.haml看起来像这样:-#layout.haml!!!XML!!!%html%head...%body...#content=yield这当然已经在文档的中了因此无法直接在header中操作内容。例如通过@title更改.一个更大的问题是每个页面特定的JavaScript都需要加载到正文中。此外,layout.haml已经包含JavaScript,因此jQuery通常会被多次实例化。对于更好的模板结构有什么建议吗? 最佳答案

c - 如何在 Mac OS X 上使用 ulimit 或每个进程为 C 或 Ruby 程序更改堆栈大小?

似乎为C程序或Ruby程序(使用C堆栈)设置堆栈大小的推荐方法是使用ulimit。在Bash外壳中。但是$ulimit-s8192$ulimit-s16384-bash:ulimit:stacksize:cannotmodifylimit:Operationnotpermitted和sudo也没有帮助。有没有办法将其设置为16MB、32MB或64MB?我认为应该有一种方法可以在每次程序调用时设置它,而不是同时设置系统范围的参数?现在8192可能意味着8MB,如果与一个进程可以使用的内存量相比,这是非常小的,有时最多2GB的RAM。(更新注释:ulimit-a可以显示其当前值)。(更新2