我已经检查了我要推送的本地存储库的一些更改,但是当我执行git pull时,我得到:
paul$ git pull
Run Code Online (Sandbox Code Playgroud)
错误:未经跟踪的工作树文件'documentation/Android/SwiftKey/buttons.xcf'将被合并覆盖.中止
我的工作树不包含未跟踪的文件:
paul$ git status
# On branch master
# Your branch and 'origin/master' have diverged,
# and have 2 and 26 different commit(s) each, respectively.
#
nothing to commit (working directory clean)
Run Code Online (Sandbox Code Playgroud)
我所做的提交不会触及它抱怨的文件.
我已经阅读了建议我做的答案git reset HEAD --hard,但我不确定这对我所做的提交有什么影响?
如果有人计划创建一个无UI的Web服务(接收JSON和/或XML,返回JSON和/或XML),Noir是否提供除Compojure之外的任何有用的东西?
我需要初始化一组val,初始化它们的代码可能会引发异常.我想写:
try {
val x = ... generate x value ...
val y = ... generate y value ...
} catch { ... exception handling ... }
... use x and y ...
Run Code Online (Sandbox Code Playgroud)
但是这(显然)不起作用,因为x和y不在try之外的范围内.
通过使用可变变量很容易解决问题:
var x: Whatever = _
var y: Whatever = _
try {
x = ... generate x value ...
y = ... generate y value ...
} catch { ... exception handling ... }
... use x and y ...
Run Code Online (Sandbox Code Playgroud)
但那并不是很好.
通过复制异常处理也很容易解决问题:
val x = …Run Code Online (Sandbox Code Playgroud) Scala中的函数是实现其中一个FunctionN特征的对象.例如:
scala> def f(x: Int) = x * x
f: (x: Int)Int
scala> val ff = f _
ff: Int => Int = <function1>
scala> val fff: Function1[Int, Int] = f _
fff: Int => Int = <function1>
Run Code Online (Sandbox Code Playgroud)
到现在为止还挺好.但是如果我们有一个带有名字参数的函数呢?它当然仍然实现了以下 FunctionN特征之一:
scala> def g(x: => Int) = x * x
g: (x: => Int)Int
scala> val gg = g _
gg: => Int => Int = <function1>
scala> gg.isInstanceOf[Function1[_, _]]
res0: Boolean = true
Run Code Online (Sandbox Code Playgroud)
但究竟是什么类型的呢?它不是Function1[Int, Int]: …
如果我有一个包com.example,我可以在这个包中创建一个类,如下所示:
package com.example {
class MyClass
}
Run Code Online (Sandbox Code Playgroud)
或者像这样:
package com {
package object example {
class MyClass
}
}
Run Code Online (Sandbox Code Playgroud)
在这两种情况下,结果类都是(至少与其他Scala代码有关)com.example.MyClass.
肯定存在偶然的差异.在第一个例子中,得到的编译类是com/example/MyClass.class在第二个例子中,com/example/package$MyClass.class但是有没有实质性差异?
有没有办法为sbt run任务重定向stdin/stdout ?我可以像这样从Bash shell中做到这一点:
sbt run < myfile.txt
Run Code Online (Sandbox Code Playgroud)
但不是来自sbt控制台.这不起作用,例如:
> run < myfile.txt
Run Code Online (Sandbox Code Playgroud) 使用reify和编写Scala中的卫生宏很容易eval.但是并不总是可以使用reify和eval.
那么,如果一个人不能使用它们,那么确保宏是卫生的规则是什么?有没有办法测试一个宏,以确保没有不良卫生已经滑过裂缝?
UPD.在后来的里程碑2.10.0中,Expr.eval重命名为Expr.splice.
是否有人知道UAX#29,Unicode文本分段的任何JavaScript实现?我对Word Boundaries特别感兴趣.
当我遇到XRegExp时,我很有希望,但它似乎使用了标准的JavaScript实现\b.
我对Ivy,Maven和Archiva感到困惑 - 他们似乎都试图解决类似的问题.
我认为我认为Ivy将类似Maven的功能改装为Ant(即Ant + Ivy~ = Maven)是正确的吗?但我不清楚Archiva为Ant + Ivy和/或Maven添加了什么(如果有的话).我什么时候会使用(比方说)常春藤,何时使用Archiva?什么时候组合才有意义(如果有的话)?
背景:我们需要进行某种依赖管理并建立人工制品档案.我们的源代码是跨语言(混合了C++,Java,Scala,Ruby和Python),我们的构建过程是跨平台的(Linux,Windows,OSX,Android,iOS,QNX).我们有一个现有的基于scons的构建系统,它有点错综复杂.理想情况下,我们希望将依赖关系管理和人工制品存档添加到此,而不是(比如说)将批发移动到Maven.
以下代码:
import org.scalamock.scalatest.MockFactory
import org.scalatest.FlatSpec
trait SomeTrait {
def getLongByInt(int: Int): Long
}
class TestScalaMock extends FlatSpec with MockFactory {
"Scala Mock" should "mock my trait" in {
val someTrait = mock[SomeTrait]
(someTrait.getLongByInt _) when (1) returns 2L
assert(2L == someTrait.getLongByInt(1))
}
}
Run Code Online (Sandbox Code Playgroud)
给我一个运行时错误org.scalamock.MockFunction1 cannot be cast to org.scalamock.StubFunction1.我的项目依赖项是:
scalaVersion := "2.11.0"
libraryDependencies ++= Seq(
"com.typesafe.akka" %% "akka-actor" % "2.3.7",
"com.typesafe.akka" %% "akka-testkit" % "2.3.7",
"org.scalatest" % "scalatest_2.11" % "2.2.1" % "test",
"org.scalamock" %% "scalamock-scalatest-support" % "3.2" % …Run Code Online (Sandbox Code Playgroud)