我们可以通过无形创建一个文字类型:
import shapeless.syntax.singleton._
var x = 42.narrow
// x: Int(42) = 42
Run Code Online (Sandbox Code Playgroud)
但是,Int(42)
如果甚至无法创建类型别名,我如何作为一种类型进行操作
type Answ = Int(42) // won't compile
// or
def doSmth(value: Int(42)) = ... // won't compile
Run Code Online (Sandbox Code Playgroud) 我正在从中执行JavaScript SDK JSContext
,但是我无法从SDK的任何异步函数中获取值。我可以从中获得JavaScript许诺JSContext
,但是我不知道如何解决它。我尝试了许多方法来从Promise中获得价值,但是每个方法都失败了。
如果我尝试以下操作,我会[object Promise]
回来:
return self.jsContext.evaluateScript("new Promise(resolve => { setTimeout(300, () => resolve([1, 2, 3])) })")!
Run Code Online (Sandbox Code Playgroud)
如果我then
直接链接到JS,我[object Promise]
仍然会:
return self.jsContext.evaluateScript("new Promise(resolve => { setTimeout(300, () => resolve([1, 2, 3])) }).then(val => val.json())")
Run Code Online (Sandbox Code Playgroud)
如果我尝试从Swift调用方法,我仍然会得到[object Promise]
:
let jsPromise = self.jsContext.evaluateScript("new Promise(resolve => { setTimeout(300, () => resolve([1, 2, 3])) })")
let promiseResult = jsPromise?.invokeMethod("then", withArguments: ["val => { return val.json() }"])
return promiseResult!
Run Code Online (Sandbox Code Playgroud)
如果我在Promise之外声明一个JS变量,然后从Swift调用中将值传递给它,则会then
得到设置为它的原始值(如预期,但值得一试):
self.jsContext.evaluateScript("let tempVar = 'Nothing …
Run Code Online (Sandbox Code Playgroud) 现在我正在使用这个,但如果可能的话我想跳过base64转换步骤
function getJpegBytes()
{
var jpgImg = canvas.toDataURL("image/jpeg");
jpgImg = jpgImg.replace('data:image/jpeg;base64,', '');
return _base64ToArrayBuffer(jpgImg);
}
function _base64ToArrayBuffer(base64) {
var binary_string = window.atob(base64);
var len = binary_string.length;
var bytes = new Uint8Array(len);
for (var i = 0; i < len; i++) {
bytes[i] = binary_string.charCodeAt(i);
}
return bytes;
}
Run Code Online (Sandbox Code Playgroud) 我是编程和Web开发人员的新手。我正在建立个人网站。
我想将框放在4列的网格中,类似于您在这里看到的内容:https : //devpost.com/software/search?query=is%3Afeatured
这些框中的每个框都代表一个对象,并且我希望能够在单击该框时将某些数据显示到该框中,并将其余数据显示在弹出对话框中。
我必须处理CSS网格布局,这在最近变得越来越流行(强烈推荐此视频:https : //www.youtube.com/watch?v=7kVeCqQCxlk)。
当我在包装div中对一堆div元素进行硬编码时,具有4列的东西可以工作。但是,每当我在包含我的数据数组的包装器上使用* ngFor并将每次迭代的数据馈送到内部div元素时,网格布局都会被破坏,并将所有内容放入一列中。
当我使用多个div元素(此处为item2)手动输入数据时,它可以按需运行:
.wrapper {
margin-left: 1em;
margin-right: 1em;
display: grid;
grid-template-rows: auto;
grid-template-columns: repeat(4, 1fr);
grid-row-gap: 1em;
grid-column-gap: 1em;
}
Run Code Online (Sandbox Code Playgroud)
<div class="wrapper">
<div class="item2" style="background-color: deepskyblue;">
<img class="img-responsive img-rounded" src="assets/Logo/square_filler.png" alt="pic-test" >
<p>more text here.</p>
</div>
<div class="item2" style="background-color: deepskyblue;">
<img class="img-responsive img-rounded" src="assets/Logo/square_filler.png" alt="pic-test" >
<p>more text here.</p>
</div>
<div class="item2" style="background-color: deepskyblue;">
<img class="img-responsive img-rounded" src="assets/Logo/square_filler.png" alt="pic-test" >
<p>more text here.</p>
</div>
<div class="item2" style="background-color: deepskyblue;"> …
Run Code Online (Sandbox Code Playgroud)我有一个名为clearControllersInView()的简单函数的NSView扩展,它接受视图中的所有控制器并将它们设置为默认值(即关闭,弹出和组合到第一个菜单项,textfields到空字符串的复选框).在Swift 3下我没有遇到任何问题.
我正在使用Xcode 9的当前测试版并将此扩展更新为Swift 4.问题出在部分处理复选框中,当我尝试将复选框设置为NSOffState时,我收到错误"'NSOffState'在Swift中不可用" :
if item is NSButton {
let checkbox = item as? NSButton
checkbox?.state = **NSOffState** -- *'NSOffState' is unavailable in Swift*
}
Run Code Online (Sandbox Code Playgroud)
我在这个程序的其他地方得到了同样的错误,我检查了一个复选框的值.我能够通过对控制器的原始值检查临时固定的情况下:
如果checkbox.state == NSOnState - 错误
如果checkbox.state.rawValue == 1 - 没有错误
通过搜索此处或Google一般无法找到解决方案.任何帮助将不胜感激!
我正在尝试使用 gnu make 在 MacOSX 上编译程序 mafTools。我收到以下错误:
cd mafExtractor && make all
clang -std=c99 -stdlib=libstdc++ -O3 -c -O3 -Wall -Werror --pedantic -funroll-loops -DNDEBUG -Wshadow -Wpointer-arith -Wstrict-prototypes -Wmissing-prototypes -I ../../sonLib/lib -I ../inc -I ../external src/mafExtractorAPI.c -o src/mafExtractorAPI.o.tmp -lm
Run Code Online (Sandbox Code Playgroud)
这给出了错误:
clang: error: -lm: 'linker' input unused [-Werror,-Wunused-command-line-argument]
make[1]: \*** [src/mafExtractorAPI.o] Error 1
make: \*** [mafExtractor.all] Error 2
Run Code Online (Sandbox Code Playgroud)
我查看了类似的错误,但无法修复它。任何帮助都感激不尽。谢谢!
这是包: https: //github.com/dentearl/mafTools/tree/master/mafExtractor 这里的其他所有内容都已成功编译。
这是生成文件: https://github.com/dentearl/mafTools/blob/master/mafExtractor/Makefile
非常感谢。
是否有使用常量初始化固定大小数组的快捷方式.例如,我需要int array[300]
在300个空间中每个10个,是否有诀窍避免写入10 300次?
我真的很困惑.我刚刚注意到从Android 8开始所有系统调用如/ proc/stat都将被禁用.好的,但是在Android 8中获得CPU使用率的工作原理是什么?根本没有系统调用.是否有一些我不熟悉的API?
我真的希望有一个我现在看不到的解决方案.
是否可以使用JUnit5的参数化新功能来运行测试类来接收测试参数而不是在方法级别进行测试?
使用JUnit 4,@RunWith(Parameterized::class)
可以使用诸如plus继承之类的运行器将参数数组传递给子类,但我不确定是否可以使用新的JUnit 5 api来实现等效的东西.
我一直遇到以下问题,我想知道是否有使用现有 git 命令的简单解决方案,或者我是否需要编写自定义合并驱动程序。
这是一个演示我的问题的示例:假设master
我的 repo的分支具有以下文件:
$ cat animal.hpp
#include <string>
class Animal
{
public:
virtual std::string say() const = 0;
};
Run Code Online (Sandbox Code Playgroud)
我创建一个名为的新分支mybranch
并进行以下更改:
diff --git a/animal.hpp b/animal.hpp
index e27c4bf..3bb691a 100644
--- a/animal.hpp
+++ b/animal.hpp
@@ -5,3 +5,13 @@ class Animal
public:
virtual std::string say() const = 0;
};
+
+class Dog : public Animal
+{
+public:
+ virtual std::string
+ say() const override
+ {
+ return "woof";
+ }
+};
Run Code Online (Sandbox Code Playgroud)
与此同时,其他人添加了以下非常相似的更改master
:
diff …
Run Code Online (Sandbox Code Playgroud) git git-merge git-rebase merge-conflict-resolution git-merge-conflict