小编Pee*_*kmo的帖子

无法摆脱借来的内容

我不明白这个错误cannot move out of borrowed content.我收到了很多次,我总是解决它,但我从来没有理解为什么.

例如:

for line in self.xslg_file.iter() {
    self.buffer.clear();

    for current_char in line.into_bytes().iter() {
        self.buffer.push(*current_char as char);
    }

    println!("{}", line);
}
Run Code Online (Sandbox Code Playgroud)

产生错误:

error[E0507]: cannot move out of borrowed content
  --> src/main.rs:31:33
   |
31 |             for current_char in line.into_bytes().iter() {
   |                                 ^^^^ cannot move out of borrowed content
Run Code Online (Sandbox Code Playgroud)

我通过克隆解决了这个问题line:

error[E0507]: cannot move out of `*line` which is behind a shared reference
  --> src/main.rs:31:33
   |
31 |             for current_char in line.into_bytes().iter() {
   |                                 ^^^^ …
Run Code Online (Sandbox Code Playgroud)

reference move-semantics rust borrow-checker

115
推荐指数
2
解决办法
6万
查看次数

如何从 Str 获取 *mut c_char?

为了能够使用 C 库,我需要*mut c_char为函数提供一个参数。但我找不到从str.

我将 str 转换为CString,没关系,但是没有更多方法可以从 CString 获取*mut c_char夜间构建中的 a 。我发现在0.12.0中有一个方法,但是现在,得到这个方法的过程是什么*mut c_char

rust

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

在Haxe宏中读取元数据

我想知道如何从宏中读取类(及其方法)中的元数据.

我试图修改这个例子.我添加了:以查看没有它们的元数据是否仅在生成的代码中可用,但没有.我在所有三种情况下都有一个空结果..任何想法?

@:author("Nicolas")
@debug
class MyClass {
    @:range(1, 8)
    var value:Int;

    @broken
    @:noCompletion
    static function method() { }
}

class Boot {
    static public function main() {
        test();
    }

    macro public static function test() {
        trace(haxe.rtti.Meta.getType(MyClass)); // { author : ["Nicolas"], debug : null }
        trace(haxe.rtti.Meta.getFields(MyClass).value.range); // [1,8]
        trace(haxe.rtti.Meta.getStatics(MyClass).method); // { broken: null }
        return haxe.macro.Context.makeExpr({}, haxe.macro.Context.currentPos());
    }
}
Run Code Online (Sandbox Code Playgroud)

macros haxe

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

Haxe宏 - 用相对路径打开文件

我正在编写一个宏,需要打开一个与我的宏类位于同一文件夹中的目录.问题是我需要能够做同样的事情,而不需要了解宏的文件夹.

我的问题很简单,有没有办法在宏中打开当前目录中的FileSystem.

例如:a(b(Macro.hx,c(...)))

当我从"Macro.hx"运行宏方法时,我需要直接打开"c"

如果你有个主意,谢谢:)

macros haxe file

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

清漆和 ESI HTTP 身份验证

我对这个问题很迷茫,我不知道问题出在哪里,所以,我希望你能帮助我。

我有一个带有 symfony 的 HTTP BASIC 身份验证,我正在尝试访问受此身份验证保护的 URL,在 Drupal 页面中带有一个标记。每个请求都发送到 Varnish

我在 url 中提供用户名和密码,如下所示:

<esi:include src="http://admin:adminpass@api.dev:8081/app.php/next"/>
Run Code Online (Sandbox Code Playgroud)

在我的 varnish 配置文件中,我只有 auth.http 的那几行:

if (req.http.Authorization) {
  return (pass);
}
Run Code Online (Sandbox Code Playgroud)

我的 Symfony 后端在没有 http 身份验证的情况下运行良好,并且当没有 Varnish 和 esi 标签时,http 身份验证运行良好。

如果有人知道这个问题,请告诉我,即使是错误的 =)

authentication http varnish symfony esi

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

haxelib运行<lib>获取用户目录

我正在尝试为我的haxe库创建一些命令,但我遇到了问题.实际上,我想在haxelib run <mylib> <command>发送命令的目录中生成一些文件和目录.

但是,当它运行时,它会在我的lib目录中生成数据(run.n所在的位置).我的路径如下:

Sys.getCwd() + "/myfile.txt"
Run Code Online (Sandbox Code Playgroud)

我也试过了

"myfile.txt"
Run Code Online (Sandbox Code Playgroud)

总是一样的.也许那是因为我安装了我的图书馆haxelib git

flixel-tools有一个命令可以生成一些东西,但是直接用它flixel tpl -n 'name'.他们不使用haxelib run flixel.这就是为什么它适合他们?

谢谢你,如果你有一个想法.

haxe haxelib

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