Clojure:使用代理和可变字段

2023-12-01

我在 Clojure 中使用代理来扩展 Java 类。我需要在超类中设置一个字段,我该怎么做?下面的代码不起作用。

(proxy [BasicPlayer] []
  (open [url]
  (set! super/m_dataSource url)))

来自的文档proxy:

请注意,虽然方法 fns 可以 被提供来覆盖受保护的方法,它们没有其他访问权限 受保护的成员,也不是超级成员,因为这些能力不能 代理。

抱歉,听起来你运气不好。您可以使用以下方式调用受保护的超类方法proxy-super,但我认为仅此而已。

你可能会有更好的运气gen-class。大致如下:

(ns my.Player
  (:gen-class
   :extends BasicPlayer 
   :exposes {m_dataSource {:set -setDataSource}})

(defn -open [this url]
  (-setDataSource this url))
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Clojure:使用代理和可变字段 的相关文章

  • 如何编写 Clojure 宏来从字符串创建正则表达式?

    我正在创建一个方便的宏 部分便利在于可以仅使用字符串来指定正则表达式 而不是使用 re 表示法 我无法弄清楚的一部分是如何让宏获取字符串并将其重写为 Clojure 正则表达式 例如 生成 re 符号 我认为这是一个语法 转义问题 我的第一
  • 确保 Clojure 中只有一个服务实例正在运行/启动/停止的规范方法?

    我正在用 Neo4j 支持的 Clojure 编写一个有状态服务器 它可以服务套接字请求 例如 HTTP 当然 这意味着我需要能够从该服务器内启动和停止套接字服务器 在设计方面 我希望能够在此服务器中声明一个 服务 并启动和停止它 我在 C
  • 从不带破折号的字符串创建 UUID

    如何从不带破折号的字符串创建 java util UUID 5231b533ba17478798a3f2df37de2aD7 gt uuid 5231b533 ba17 4787 98a3 f2df37de2aD7 tl dr java u
  • 如何在 Jetty 中以编程方式设置 gzip?

    我正在使用 Noir 和 clojure 编写一个网络应用程序 它使用 Jetty Jetty 有两种使用 gzip 的方法 一种用于静态 一种用于动态 它们在https stackoverflow com a 9113129 104021
  • 我可以让 lein cloverage 跳过特定测试吗?

    我正在进行一个 Leiningen 项目 其集成测试注释如下 deftest manual test v3 preview preview client http localhost 10313 v3 preview 当我这样做时 这些测试
  • Clojure 符号名称中的美元符号 ($)

    我一直在编写 clojure 解析器并遇到以下语法 defn key Returns the key of the map entry added 1 0 static true java util Map Entry e e getKey
  • 如何使用 Clojure 在命令行中更改目录?

    我正在寻找的是 Windows 命令行中的这种命令行交互 C temp1 gt clj some script clj C temp2 gt 其中 some script clj 包含类似以下内容 cd c temp2 那么问题来了 如何实
  • webjure 与 compojure?

    我听说过两个基于 Clojure 的 Web 应用程序框架 Webjure 和 Compojure 有人可以告诉我哪个更好吗 现在您可以添加Ring http groups google com group clojure browse t
  • 内存数据存储中有 Clojure 吗?

    我主要在 Node 中编程 并且喜欢文档存储 但我想首先对客户端和服务器之间的数据调用进行原型设计 我用过lowdb https github com typicode lowdb and da base https github com
  • 为什么 clojure-mode 用一些卷曲的 f 字符替换 fn ?

    我刚刚开始使用 emacs 入门套件和 clojure 模式 现在 当我输入或粘贴 fn 在 Clojure 模式下进入缓冲区 fn 字符在窗口中被替换为稍微卷曲的小写字母 f 缓冲区已正确保存 但这非常烦人 尤其是当我以艰难的方式发现该功
  • Clojure MySQL 语法错误异常(“[...] 靠近 '???????????????' [...]”)

    除了建立连接之外 我在使用 clojure contrib sql 做任何事情时都遇到困难 我有一个 mysqld 在 localhost 3306 上运行 数据库名为clj db 用户 clj user localhost 和密码 clj
  • Clojure 缩减函数的目的

    clojure 的目的是什么reduced函数 在 Clojure 1 5 中添加 https clojure github io clojure clojure core api html clojure core reduced htt
  • Clojure 中的快速素数生成

    我一直在努力解决欧拉计划 https projecteuler netClojure 中的问题得到了改善 我已经遇到过几次素数生成问题 我的问题是它花费的时间太长了 我希望有人能帮助我找到一种有效的方法 以 Clojure 的方式做到这一点
  • 竞争条件和 Clojure Atoms

    clojure atom 的文档指出 Changes to atoms are always free of race conditions 然而 竞争条件不仅是根据更改定义的 而且是在不同线程中并行逻辑操作的上下文中定义的 我想知道 保证
  • 如何在 Compojure 中使用 lib-noir 有状态会话

    我想我这里有一个相当简单的问题 但我已经看这个屏幕太久了 所以我正在尝试 但失败了 让有状态会话在 Compojure 中工作 refheap代码粘贴is here https www refheap com paste 11161 你可以
  • Clojure 尾递归与质因数

    我正在尝试自学 clojure 并使用 Prime Factors Kata 和 TDD 的原则来实现这一目标 通过一系列 Midje 测试 如下所示 fact primefactors 1 gt list fact primefactor
  • 如何将 clojure Web 应用程序部署到 Amazon EC2(AWS Elastic Beanstalk + Leiningen + Compojure + Ring + Tomcat)

    如题 我的IDE是intellij idea 12 1 4 我需要什么工具包或插件才能 将 Clojure Web 应用程序部署到 Amazon EC2 有任何链接或参考或分步解决方案吗 谢谢 如果您只是部署一个 war 文件 没有其他自定
  • 调用 Clojure 高阶函数

    如果我定义一个返回如下函数的函数 defn add n n fn x x n 然后我可以将结果分配给一个符号 def add 1 add n 1 并称其为 add 1 41 gt 42 我如何调用结果 add n 1 而不将其分配给新符号
  • Clojure 为什么命名为 Clojure

    为什么该语言的名称是 Clojure 我用谷歌搜索了一下 在 clojure 中询问 到目前为止 还没有运气 Rich Hickey 他是 Clojure 的设计者 对此的评论是 wiki 上的第一个参考链接 您是否根据以 closure
  • Eval 不适用于未展开的宏引用

    在 Common Lisp 中我可以这样做 src gt defmacro 宏 hello 你好 eval 宏 你好 没问题 在 Clojure 中 defmacro 宏 你好 你好 eval 宏 你好 给我一个错误 我做错了什么吗 Clo

随机推荐

  • 我可以在 *.xml 文件上使用 tr("") 和 lupdate 吗?

    这是一个盲目的尝试 但有没有办法在 xml 文件中以某种方式使用 qt 要生成这样的 ts 文件 lupdate myXML xml ts myML ts 我尝试了这个命令 但它不起作用 它不会给我一个错误 它只是说找到了 0 零 个文字
  • PHP——许多文件开头的“定义或退出”?

    我一直在检查一些 PHP 源代码 并且经常找到以 defined someconstant or exit 我知道如果以前的文件定义了 这会阻止直接访问该文件 someconstant 但后来我想知道这是否真的有必要 是否有 即使是非基于
  • 动态地将缺失的标签添加到损坏的 HTML 字符串中

    我有一串损坏的 HTML 我需要搜索字符串并在 JavaScript 中添加任何缺少的开始或结束标记 没有正则表达式 没有 jQuery 例如 我想制作一个像这样的字符串 This
  • getChildrenCount() 如何在后台工作?

    在我的数据库中 可以说有超过 5000 个用户 现在如果我使用getChildrenCount 在主父节点中获取我有多少人 我知道 getChildrenCount 返回一个 long 值 其中包含父级中子级的数量 但是 这如何影响性能 几
  • 如何向 UITableView 单元格添加星级?

    我需要显示一堆UITableViewCell在我的 iPhone 应用程序中 示例如下 我知道如何为 UITableView 单元格启用附件视图和图像 但问题是我需要添加屏幕上可见的星级 它背后没有什么奇特的逻辑 只是启用或禁用少数图像 我
  • 在 G++ 编译命令中包含 -std=c++0x 有什么意义?

    我最近开始学习 C 由于我使用的是 Linux 所以我使用 G 进行编译 现在 我正在遵循的教程说 如果你恰好有Linux或者Mac环境进行开发 功能 您应该能够直接编译任何示例 从终端只需在命令中包含 C 11 标志即可 编译器 并告诉我
  • 如何让 ActionBar 图标/徽标也与内容重叠?

    我目前正在制作我的第一个应用程序 我正在使用 ActionBarSherlock 我想让我的徽标与操作栏 滚动视图 重叠 目前我有 main activity xml 在 MainActivity java 中 我使用 setContent
  • 如何在 Android 应用程序中以编程方式启用和禁用 USB

    在我的应用程序中 我想以编程方式启用 禁用手机或选项卡 基于Android 中的USB连接 我用谷歌搜索 但没有找到任何解决方案 如果可能的话 给我一些想法来做到这一点 或者提供一些有用的代码对于相同的 我知道为时已晚 但这对其他人会有帮助
  • 什么是地址空间布局随机化[重复]

    这个问题在这里已经有答案了 可能的重复 内存随机化作为应用程序安全增强 hi 请解释一下地址空间布局随机化是什么以及它是如何实现的 该技术如何影响堆栈 堆和静态数据 我也对任何解释地址空间布局随机化的论文感兴趣 感谢和问候 Mousey A
  • WordPress:在ajax函数内执行do_shortcode()

    我正在实现一个 WordPress 前端 php 页面 其中包含正文中的超链接列表和页脚中的 wpdatatable 我想在每次用户选择链接时重新加载数据表 这需要通过 ajax 来完成 而不需要重新加载整个页面 到目前为止我做了什么 我定
  • 替换两个特殊字符之间的文本

    我有一个字符向量 x lt t t
  • Javascript 将 html 表导出到 Excel

    当用户单击 导出 按钮时 我需要将页面中的 html 表导出到 Excel 现在 我在堆栈溢出上找到了一个适用于 Firefox 的解决方案 在 Firefox 浏览器中将动态 html 表导出到 javascript 中的 Excel 现
  • ASP.NET MVC Url 路由支持(点)

    我希望你能帮助我解决以下问题 我在 IIS7 上使用 ASP NET MVC 3 希望我的应用程序支持带点的用户名 例子 http localhost john lee 这就是我的 Global asax 的样子 http 本地主机 用户名
  • Android 广播接收器显示对话框?

    我有一个可以响应警报的应用程序 我确实需要在进入下一个屏幕之前显示带有密码输入的警报 问题是我似乎无法显示来自广播接收器的对话框 那么如何在收到警报时显示对话框密码条目 创建一个活动 使用Theme Dialog 并致电startActiv
  • 你能创建一个Python生成器来以随机顺序提供一定范围内的值而不重复吗?

    我不确定这是否是那些不可能的问题之一 在我看来 这似乎应该是可能的 Edit 我们或多或少同意随机地这样做是不可能的 但伪随机是可能的 给定由两个整数指定的范围 即n1 n2 是否可以创建一个 python 生成器 从范围内生成一个随机整数
  • cx_Oracle 连接超时

    我正在尝试连接到 Oracle 数据库 但出现以下错误 curcon cx Oracle connect conn str cx Oracle DatabaseError ORA 12170 TNS 发生连接超时 这是代码块 conn st
  • TSR 程序用于更改 windows/dos 屏幕上字符的大小写

    我想知道如何使用C更改屏幕上字符的字母 它是一个使用dos h头文件的TSR程序 我也许可以从我早期本科生的记忆中得到部分帮助 在DOS下 地址0xB8000000 0xB800 0作为段 注释中正确指出的偏移量 是文本模式视频存储器的起始
  • 防止 jQuery UI 可调整大小的元素覆盖另一个元素?

    有没有办法限制元素的大小调整 以便不能覆盖另一个元素 我知道您可以将包含设置为父元素 但在这里我只想阻止用户遮挡另一个同级元素的视图 If resizing the dialog box on the left I want the plu
  • 除周末之外的日期时间序列 Python

    我正在尝试创建一系列日期时间对象 但不包括周末 到目前为止 我已经成功创建了从任何给定开始日期到结束日期的日期序列 但我无法弄清楚如何排除周末 Generate sequence of dates startDate datetime da
  • Clojure:使用代理和可变字段

    我在 Clojure 中使用代理来扩展 Java 类 我需要在超类中设置一个字段 我该怎么做 下面的代码不起作用 proxy BasicPlayer open url set super m dataSource url 来自的文档prox