如何创建一个新的 Moose 类并在运行时实例化该类的对象?

2023-12-04

使用创建元类后Moose::Meta::Class->create,我如何实例化一个真正的 Moose 类,并将该类作为元类? (我还需要创建元类,因为我还想对其应用一些角色。)


当然,元类就是类。如果您想要该类的实例,只需执行以下操作:

my $instance = $meta->name->new

您可能还需要确保 $meta 不会过早被收集。一般来说,你这样做:

$meta->add_method( meta => sub { $meta } );

这将保留元类,但如果不小心,就会泄漏该类。如果你只做一次,那没关系;如果你这样做数千次,你可能会给自己带来麻烦。

最好使用更高级别的东西,比如Moose::Meta::Class::create_anon_class or MooseX::Traits.

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

如何创建一个新的 Moose 类并在运行时实例化该类的对象? 的相关文章

  • 多维哈希排序 - Perl [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我真的需要一些帮助来理解这个哈希并对
  • 真实设备中的 Android strace

    我有以下情况 我想监控Android手机上的系统调用 所以 我编写了一个脚本来做到这一点 使用 Android 模拟器可以完美地工作 将应用程序的痕迹写入我的 Ubuntu 上的特定文件中 问题是当我连接一个真实的手机来分析它时 它在结果文
  • 添加或删除带有原型的类

    无法计算用于添加或删除基于单击函数的 img 元素 选定 的 css 类名 选定 的 PROTOTYPE 脚本 已为 Jquery 完成 但它必须在 Prototype 中 这让我发疯 无法使其适用于原型 我的原始代码是 Magento 商
  • Perl - 以相反的顺序逐行读取文件[重复]

    这个问题在这里已经有答案了 可能的重复 如何在 Perl 中从文件末尾读取行 https stackoverflow com questions 303053 how can i read lines from the end of fil
  • 如何向未命名的类添加构造函数/析构函数?

    有没有办法在未命名的类中声明构造函数或析构函数 考虑以下 void f struct some implementation inst1 inst2 f implementation usage of instances 后续问题 实例当然
  • C#动态创建Type数组

    在 C 中 我需要能够在运行时基于以字符串形式传递给函数的逗号分隔数据类型列表创建 Type 对象数组 基本上 这就是我想要实现的目标 create array of types Type paramTypes typeof uint ty
  • 如何在正则表达式中匹配“/*”?

    stuff d learning perl tmp txt open STUFF stuff or die Cannot open stuff for read while
  • linux + ksh + 向下舍入或向上舍入 - 浮点数

    在我的 ksh 脚本中 我只需要计算整数 有时我会得到浮点数 例如 3 49 或 4 8 等 所以我需要根据以下规则将浮点数转换为整数 示例 3 49 will be 3 2 9 will be 3 4 1 will be 4 23 51
  • 如何在 javascript ES6 类中链接异步方法

    我想链接类中的方法 我对同步方法有问题 但我不知道如何用异步方法做到这一点 例如这个类 class Example constructor this val 0 async setTimeout gt this val 1 return t
  • Perl 中的布尔函数应该返回什么值?

    简短的问题 在 Perl 代码库中一致表示真假的最佳方法是什么 1 0 1 Perl 原生布尔运算符的特殊空字符串 return undef 即空列表 问题背景 我们都知道 Perl 在布尔值方面非常灵活 就像大多数事情一样 例如 Perl
  • 这可以一行完成吗?

    我像这样提取MAC地址 my tmp split domain 123 123 123 123 at 00 11 22 33 44 55 ether on eth0 my vip tmp 3 但不使用临时变量可以完成吗 是的 它可以 my
  • 用于创建类图的工具[关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 请建议用于创建符合以下标准的类图的工具 它应该是平台无关的 因为我使用 Linux 并且该文件预计由使用 Windows Mac 的团队其
  • 如何为不同的 Perl 应用程序安装专门的环境?

    就功能而言是否有与 Python 相同或接近的东西虚拟环境 http pypi python org pypi virtualenv what it does 但是对于 Perl 来说呢 我已经用 Python 进行了一些开发 并且将非系统
  • (在 Ruby 中)允许混合类方法访问类常量

    我有一个为其定义常量的类 然后我定义了一个类方法来访问该类常量 这很好用 一个例子 usr bin env ruby class NonInstantiableClass Const hello world class lt lt self
  • 如何在 Perl 中使用 use strict 一次一行处理多行字符串?

    我正在尝试找出 PBP 批准的正确方法来一次一行处理多行字符串 许多 Perl 编码人员建议将多行字符串视为文件句柄 除非您在脚本中使用 use strict 否则它可以正常工作 然后 您会收到编译器发出的警告 提示在使用严格引用时无法使用
  • Path::Class::File 或 ::Dir & Moose 初始化和强制

    目前有 package Local use warnings use Moose use Method Signatures Simple use Path Class File use Path Class Dir method buil
  • unix df 上的正则表达式帮助

    我需要一些帮助来调整我的代码以查找此 UNIX 中的另一个属性df output Ex Filesystem Size Used Avail Capacity Mounted on dev ad4s1e 61G 46G 9 7G 83 ho
  • 为什么 JavaScript ES6 不支持多构造函数类?

    我想编写我的 Javascript 类 如下所示 class Option constructor this autoLoad false constructor key value this key value constructor k
  • 多次重定义错误

    在了解了有关类和指针的更多信息后 我重构了一个程序并删除了超过 200 行代码 在此过程中创建了另外两个类 Location and Piece 问题是 在编译完所有内容后 链接器抱怨构造函数Piece被定义了多次 有很多错误 In fun
  • perl-5.10 之前的高效版本相当于 pack("Q>")

    更新 萨尔瓦正确地指出我对 Q 包模板的介绍是错误的 这是 gt 修饰符 不会返回到 5 8 Perl 5 10 引入了 pack 修饰符 gt 对于我使用 Q 的用例 它将一个无符号四边形 64 位 值打包在大尾数法 现在 我正在寻找一个

随机推荐

  • 某些 JSON 文件出现 PowerShell FilterScript 错误

    感谢 iRon 本周早些时候提供的帮助question 他对我目前正在进行的一项工作提供了巨大帮助 总之 我们有一个 Azure CICD 管道来部署策略 我们有一个包含 200 多个 JSON 策略文件的文件夹 CICD 流程将它们全部放
  • 使用 to_html 将 CSS 类应用到 Pandas DataFrame

    我在使用 Pandas to html 方法应用 classes 参数来设置 DataFrame 样式时遇到问题 类 str或列表或元组 默认无 应用于生成的 html 表的 CSS 类 从 https pandas pydata org
  • 递归 mod_rewrite 用于搜索引擎友好的 url

    我一直在读以前的解决方案递归 mod rewrite 问题与我想要做的类似 不同之处在于我通过 index php 文件发送所有查询 因此不需要在查询中指定脚本 本质上我想递归地转换搜索引擎友好的 URL 中的任意数量的参数 example
  • 文本框中的永久前缀

    我试图在文本框中输入永久前缀 就我而言 我想要有以下前缀 DOMAIN 这样用户只需在域前缀后输入用户名即可 这不是我必须做或追求的事情 但我的问题更多是出于好奇 我试图想出一些逻辑来做到这一点TextChangedEvent但是 这意味着
  • AngularJS 应用程序的 AssertionUrl

    我的申请流程是这样的 用户输入 Url 然后显示 AngularJS 登录页面 用户单击 使用 SAML 登录 并调用返回 SAML 登录 URL 的 Web API 端点 AngularJS UI 接收 SAML 登录 URL 并将用户重
  • Spark.csv如何确定读取的分区数?

    在 Spark 2 2 0 中 我正在使用以下命令读取一个文件 spark csv read filepath load rdd getNumPartitions 我在一个系统中为 350 MB 文件分配了 77 个分区 在另一个系统中分配
  • TensorFlow Keras 无法处理大于 GPU 内存的 numpy 数组

    我正在尝试处理重量超过 25GB 的样本矩阵 问题是我的 GPU 只有 12GB 内存 我认为 tenorflow 会将小批量的矩阵从 ram 转移到 gRam 如下所述 https stackoverflow com a 53938359
  • 样式未应用于 CSS 中的 H1 元素

    我面临一个奇怪的问题 该样式没有应用于H1元素 Code p h1 color red p p h1 This is a header h1 You can t有一个标题 H1 to H6 作为一个孩子p 这是无效的 HTML 它不起作用
  • SyntaxError:无法在 JEST LWC 中的模块外部使用 import 语句

    我正在尝试使用 Visual Studio Code 作为 IDE 来测试我的第一个 Lightning Web 组件 按照指示 我安装了 Node js npm 和 jest 依赖项 但我收到这个错误 错误图像 当尝试运行下面的代码时 d
  • 是否可以编辑 UIAlertAction 标题字体大小和样式?

    现在iOS8已经弃用了UIActionsheet and UIAlertviewiOS7 上的自定义不再生效 到目前为止 我知道的唯一定制是色调颜色 我需要的是改变标题的字体大小和样式 但我还没有找到任何方法可以用新的UIAlertActi
  • SQL AND 运算符无法正常工作

    我有以下两张表 地块表 Blockid ParcelNo storPri 52000105 3 State 52000105 4 Private 52000105 5 State 行动表 Blockid ParcelNo ActionTak
  • Pandas 中的可变位移

    数据框中有两列 A 和 B A B 0 1 6 1 2 7 2 1 8 3 2 9 4 1 10 我想创建一个列 C C 必须将 B 的值移动 A 的值 A B C 0 1 6 NaN 1 2 7 NaN 2 1 8 7 3 2 9 7 4
  • ImageMagick 比较:忽略 PSNR 结果中的白色匹配

    我在用着compare区分两个相似的colorPNG 文件 他们得到一个PSNR值 27 图像包含许多白色区域 两个图像之间始终匹配 如果我错了 请纠正我 但这些白色区域正在增加 PSNR 值 使图像作为平均值更加相似 因此我不想考虑白色像
  • 如何以编程方式在所需文件夹中创建 SQL Server 2008 数据库完整备份

    如何使用 Microsoft Visual Studio 2010 c 以编程方式在所需文件夹中创建 SQL Server 2008 数据库完整备份 只需执行 SQL Servercommand BACKUP DATABASE databa
  • C11 中的内存顺序消耗使用情况

    我读到了关于带有依赖性关系和依赖顺序先于在其定义中使用 15 1 2 4 p16 评价A在评估之前是依存顺序的B if A对原子对象执行释放操作M 并且 在另一个 线 B执行消费操作M并读取写入的值 由释放序列中的任何副作用引起A or 一
  • Apache Lucene 大型 XML 文件索引

    我是 lucene 新手 我想用 lucene 索引包含纯文本 属性和许多 xml 标签的大型 xml 文件 15GB 如何使用 lucene 和任何示例解析此 xml 文件并为其建立索引 如果我们使用 lucene 我们需要任何数据库 如
  • Inno Setup:调整卸载进度表及其所有组件的大小

    嘿 我需要增加宽度和高度UninstallProgressForm我的 Inno Setup 卸载程序 当我根据我的自定义设计的安装程序向导页面宽度和高度手动更改其宽度和高度时 卸载进度表显得很奇怪 唯一改变的是它的宽度和高度 所有其他组件
  • 使用 Attach 时 R 中的命名冲突

    我感觉好像在 R 中经常出现奇怪的命名冲突 附加数据帧和其他对象之间 附加 分离不能按预期工作 只是附加了同一数据帧的两个副本 甚至不确定它们是否相同 和整个软类型语言特定问题 一小时前工作的代码突然产生新的错误等 是否有处理此类事情的最佳
  • 如何在pygame中让相机跟随自上而下的汽车

    一般来说 对 pygame 和游戏编程不熟悉 只是想知道如何让相机在自上而下的汽车游戏中跟随汽车 没什么花哨的 想想微型机器 我正在使用 Python 3 6 并且有一辆可以旋转和移动的自行车 我在这里保留了更短的代码 但如果相机正常工作
  • 如何创建一个新的 Moose 类并在运行时实例化该类的对象?

    使用创建元类后Moose Meta Class gt create 我如何实例化一个真正的 Moose 类 并将该类作为元类 我还需要创建元类 因为我还想对其应用一些角色 当然 元类就是类 如果您想要该类的实例 只需执行以下操作 my in