如何检查 Clojure 代码是否正在 REPL 内进行计算?

2024-03-25

我想根据我的代码是从 REPL 运行还是运行已编译的 jar 来以不同的方式格式化我的日志。

有什么简单的方法可以做到这一点吗?我在想也许 Leiningen 在运行 REPL 时会在某个地方留下痕迹。


(defn current-stack-trace []
      (.getStackTrace (Thread/currentThread)))

(defn is-repl-stack-element [stack-element]
      (and (= "clojure.main$repl" (.getClassName  stack-element))
           (= "doInvoke"          (.getMethodName stack-element))))

(defn is-in-repl []
      (some is-repl-stack-element (current-stack-trace)))

(defn my-log [msg]
      (if (is-in-repl)
          (prn (str "RUNNING IN REPL : " msg))
          (prn msg)))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何检查 Clojure 代码是否正在 REPL 内进行计算? 的相关文章

随机推荐

  • PowerShell 连接到 Postgres DB

    您能否告知是否有一种方法可以从 PowerShell 连接到 Postgres SQL DB 而无需安装任何数据库驱动程序 我正在寻找能够仅使用 NET 数据库功能进行连接的解决方案 谢谢 Matthew 根本不需要客户端驱动程序 您只需执
  • tidyverse 计算多列中每行的排名

    我有以下数据框 dat lt data frame id c a b c d x1 c 1 3 5 7 x2 c 4 2 6 0 x3 c 2 2 5 9 我现在想计算排名per row跨越我的三个 x 列 并希望将该结果存储到我的dat数
  • 自动将进入/退出功能日志添加到项目中

    我有一个第三方源代码 我必须对其进行调查 我想查看函数的调用顺序 但我不想浪费时间输入 printf Entered into s FUNCTION and printf Exited from s FUNCTION 对于每个函数 我也不想
  • mongodb获取计数而不重复查找

    在 MongoDb 中执行查询时 我需要获取所有匹配项的总数 以及作为有限 分页子集的文档本身 我可以通过两个查询来实现这一目标 但我不知道如何通过一个查询来实现这一目标 我希望有一个 mongo 功能 在某种意义上相当于 SQL CALC
  • 使用 Angularjs 将视图状态存储在 URL 中

    将视图状态存储为 URL 的一部分的一般共识是什么 如果有 Angularjs我该如何去做呢 我有一个相当复杂的视图 路线 有许多要设置的过滤器 选项卡等 这些都会导致视图状态 我看到了将所有这些视图组件的状态存储为 URL 的一部分的优势
  • 如何使用 python sub 删除

    我有一个 html 文件 我想用空格替换空段落 mystring This p p p is a test p p p p p result mystring sub p p nbsp 这是行不通的 Please 不要尝试使用正则表达式解析
  • 使用简单 PHP 代理的跨域 getJson 请求

    您好 我正在尝试从仅返回 JSON 而不是 JSONP 的 api 获取数据 每次我尝试以 JSONP 方式连接数据时 它都不起作用 因为我不期望 JSON 所以 我想我必须使用 PHP 代理来解决跨域问题 以便我可以解释 JSON 请求
  • 如何从 org.apache.spark.mllib.linalg.VectorUDT 转换为 ml.linalg.VectorUDT

    我正在使用 Spark cluster 2 0 我想将向量转换为org apache spark mllib linalg VectorUDT to org apache spark ml linalg VectorUDT Import L
  • 根据特定列从列表中删除重复行

    我相信这类似于this https stackoverflow com questions 25324066 distinct a list of records based on two column using groupby但我无法应
  • Rails Devise http 验证移动设备

    我正在尝试向我的服务器 ruby on Rails 应用程序验证 Android 客户端应用程序 该应用程序使用 Devise gem 但我尝试过 http 身份验证 并发布请求进行身份验证 并且服务器仅对任何给定的用户名 密码响应 200
  • 将具有不同列的大数据文件合并为一个大文件

    我有 N 个制表符分隔的文件 每个文件都有一个标题行 说明列的名称 有些列是所有文件共有的 但有些列是唯一的 我想将所有文件合并成一个包含所有相关标头的大文件 Example gt cat file1 dat a b c 5 7 2 3 9
  • 为 matplotlib 文本设置固定位置

    虽然有几个问题与我的问题类似 但几乎所有问题都与文本框 图例和注释有关 使用循环 我想显示 32 个属性的具体信息 左侧的直方图和右侧的统计信息 仅处理一个属性非常简单 我将 x y 设置为文本位置 就是这样 Histogram sns d
  • MKMapView释放内存

    我遵循了几个SO问题中提供的建议 例如this one https stackoverflow com questions 20138419 stop ios 7 mkmapview from leaking memory 为了释放MKMa
  • 使用批处理变量重命名文件

    我有以下代码 set DATE date echo DATE set DAY DATE 0 2 echo DAY rename file09 txt file DAY 09 txt pause 它应该重命名一个文本文件并将该月的日期放入文件
  • 创建电报 auth_key

    我最近开始使用 telegram api 在第一阶段 我提出了接收请求auth key 这是我的 C 代码 auth key id in unencrypted message is ZERO Int64 auth key id 0 thi
  • 巨大的 WPF 视觉效果渲染不精确 - 有解决方案吗?

    在 WPF 中渲染巨大的视觉效果时 视觉效果会扭曲 并且随着坐标的增加扭曲得更加严重 我认为它与渲染管道中使用的浮点数据类型有关 但我不完全确定 无论哪种方式 我都在寻找解决问题的实际解决方案 为了演示我正在讨论的内容 我创建了一个示例应用
  • 强制浏览器每次都重新加载小程序

    我已经使用了我的小程序部署Java js http download oracle com javase 6 docs technotes guides jweb deployment advice html appletTagAttrib
  • 无法使用自定义表模型通过 table.getColumn 方法获取列索引

    我使用 AbstractTableModel 创建了一个自定义 TableModel 我能够填充我的 JTable 但我的 JTable 有一个按钮列 名为 Button1 因此 我使用 CellRenderer 方法向列添加按钮 使用 C
  • 启用/禁用带有复选框的文本区域

    我的任务是使用 JavaScript 在单击复选框时启用 打开 并在单击 关闭 时禁用它 但是 代码仍然无法工作 无论我是否单击该复选框 都不会执行任何操作 div h2 Order Information h2 div class ent
  • 如何检查 Clojure 代码是否正在 REPL 内进行计算?

    我想根据我的代码是从 REPL 运行还是运行已编译的 jar 来以不同的方式格式化我的日志 有什么简单的方法可以做到这一点吗 我在想也许 Leiningen 在运行 REPL 时会在某个地方留下痕迹 defn current stack t