小编pat*_*rit的帖子

Java源代码在浏览器中显示?

我的Java源代码在我的项目的标准src/lib/test /目录结构中.我想生成我的源代码的Web视图,我可以在其中启动浏览器并查看语法突出显示的行号代码.我不仅想要这个,而且我还希望文件正确链接(例如,在代码的网页视图上点击方法/类/接口等名称,它将带我"Eclipse风格"到相关页面).有没有任何软件可以做到这一点?我知道有很多语法突出显示js和css,所以这部分很容易,因此我对链接部分更感兴趣.

java visualization syntax-highlighting code-visualization

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

如何等到特定行出现在文件中

是否可以编写在特定文件中出现给定行之前不会继续的脚本?

例如,我想做这样的事情:

CANARY_LINE='Server started'
FILE='/var/logs/deployment.log'

echo 'Waiting for server to start'
.... watch $FILE for $CANARY_LINE ...
echo 'Server started'
Run Code Online (Sandbox Code Playgroud)

基本上,一个 shell 脚本,它监视文件的行(或正则表达式)。

unix bash shell

7
推荐指数
2
解决办法
4876
查看次数

斯卡拉:在名单上尝试第一次成功

什么是在a A => Try[B]上应用函数List[A]并返回第一个成功结果Some[B](它短路)或者如果一切都失败,返回的惯用方法None

我想做这样的事情:

val inputs: List[String] = _

def foo[A, B](input: A): Try[B] = _

def main = {
  for {
   input <- inputs 
  } foo(input) match {
    case Failure(_) => // continue
    case Success(x) => return Some(x) //return the first success
  }
  return None   // everything failed
}
Run Code Online (Sandbox Code Playgroud)

functional-programming scala try-catch fold scalaz

7
推荐指数
2
解决办法
921
查看次数

如何使用sbt将Scala库发布到Maven Central?

我有一个使用SBT的开源Scala项目,我想将我的库发布到Maven.我该怎么做?

scala maven sbt maven-central sbt-release

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

如何使用 doobie 对 Scala 中的 PostgreSQL 数据库执行字符串 SQL 语句列表?

我正在将以下 10 行 Python 代码移植到 Scala:

import psycopg2

def execute(user, password, database, host, port, *queries):
    connection = psycopg2.connect(user=user, password=password, host=host, port=port, database=database)
    cursor = connection.cursor()
    for sql in queries:
        print(sql)
        cursor.execute(sql)
    connection.commit()
    cursor.close()
    connection.close()
Run Code Online (Sandbox Code Playgroud)

我有以下等效的 Scala 代码:

def execute(user: String, password: String, database: String, host: String, port: Int, queries: String*): Unit = {
  ???
}    
Run Code Online (Sandbox Code Playgroud)

我想在针对数据库的单个事务中执行(并打印)一堆 SQL 语句(假设它是 Postgres)并完成。

我如何使用doobie做到这一点

笔记:

  1. 我无法将接口更改为我的execute()(包括我无法添加类型或隐式参数)。它必须接受字符串用户、密码等和一个可变参数,queries: String*从而保持与 Python 相同的接口。

  2. 还请提及所有需要的进口

scala doobie

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

如何判断贪婪算法是否足以找到最小的硬币变化?

最小硬币找零问题是一个NP完全问题,但对于某些套币的贪婪算法(选择最大面额第一)的作品.给定一组表示硬币值的整数,确定贪心算法是否足够的最快算法是什么?一个显而易见的方法是建立你的动态编程解决方案,直到最大面额,并看看它是否产生比贪婪方式更好的解决方案.但有没有更快的"数学方式"检测它?

language-agnostic algorithm np-complete dynamic-programming

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

在Scala中键入别名有序泛型

我对二叉树的外观有一个最小的定义:

type Tree[T] = Option[Node[T]]
case class Node[T](left: Tree[T], entry: T, right: Tree[T])
Run Code Online (Sandbox Code Playgroud)

我现在想要将二叉搜索树定义为:

type BST[T: Ordering] = Tree[T] 
Run Code Online (Sandbox Code Playgroud)

但那不会编译.我究竟做错了什么?

generics scala comparable type-alias

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

Scala习惯用于部分模型?

我正在编写HTTP REST API,我想在Scala中使用强类型模型类,例如,如果我有汽车模型Car,我想创建以下RESTful /carAPI:

1)对于POSTs(创造一辆新车):

case class Car(manufacturer: String, 
               name: String, 
               year: Int)
Run Code Online (Sandbox Code Playgroud)

2)对于PUTs(编辑现有汽车)和GETs,我也想要标签id:

case class Car(id: Long, 
               manufacturer: String, 
               name: String, 
               year: Int)
Run Code Online (Sandbox Code Playgroud)

3)对于PATCHes(部分编辑现有汽车),我想要这个部分对象:

case class Car(id: Long, 
               manufacturer: Option[String],
               name: Option[String], 
               year: Option[Int])
Run Code Online (Sandbox Code Playgroud)

但保持3个模型基本上是相同的东西是多余的和容易出错(例如,如果我编辑一个模型,我必须记住编辑其他模型).

是否有一种类型安全的方式来维护所有3个型号?我也很满意使用宏的答案.

我确实设法将前两个结合起来如下

trait Id {
  val id: Long
}

type PersistedCar = Car with Id 
Run Code Online (Sandbox Code Playgroud)

scala

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

低优先级含义中的歧义

我有以下Scala代码片段:

  import java.io.PrintWriter

  trait Write[-A] {
    def apply(out: PrintWriter)(x: A): Unit
  }

  trait LowPriorityWrites {
    implicit object any extends Write[Any] {
      override def apply(out: PrintWriter)(x: Any) = out.print(x)
    }
  }

  object Write extends LowPriorityWrites {
    implicit def iterable[A](implicit write: Write[A]): Write[Traversable[A]] = new Write[Traversable[A]] {
      override def apply(out: PrintWriter)(xs: Traversable[A]) = {
        xs foreach write(out)
        out.println()
      }
    }
  }
Run Code Online (Sandbox Code Playgroud)

基本上,我想要实现的是首先寻找隐含的Write对象.如果不能,回落到默认.toStringAnyLowPriorityWrites.

但是,这种方法不起作用:

ambiguous implicit values:
[error]  both method iterable in object Write of …
Run Code Online (Sandbox Code Playgroud)

scala scala-implicits

6
推荐指数
0
解决办法
438
查看次数

Chrome 扩展程序可绕过空闲注销

一些银行和金融网站在认为您空闲时会自动注销。有没有办法让我在页面中注入一个脚本来假装我不闲着?

试过这个:setInterval(() => document.body.click(), 1000 * 60 * 5) // Click every 5 minutes

但它不起作用,我仍然注销了:

在此输入图像描述

再次强调,这并非出于任何恶意目的 - 我通过在一个显示器中保持股票头寸屏幕打开,同时在另一台显示器上工作来监控我在 Fidelity 上的股票头寸,但 Fidelity 不断显示闲置警告并每 30 次将我注销分钟。

请注意,在这种特殊情况下,该站点还监听clicktouchstart和事件:keydownscrolldocument.visibilityState

在此输入图像描述

一些注意事项:

  1. 我不能简单地每 x 分钟刷新一次页面,因为页面有一些 UI 状态(例如我在表中位置的排序顺序)会丢失

  2. 我尝试了一个愚蠢的pyautogui脚本,可以移动鼠标并单击页面,并且有效!那么为什么我不能在 chrome 中执行此操作呢?

javascript google-chrome google-chrome-extension idle-timer

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