当前位置: 首页 > news >正文

第四章 IRIS 编程简介 - Macros

文章目录

  • 第四章 IRIS 编程简介 - Macros
  • Macros
  • `Include Files`
  • 这些代码元素如何协同工作

第四章 IRIS 编程简介 - Macros

Macros

ObjectScript 还支持定义替换的宏。定义可以是一个值、整行代码或(使用 ##continue 指令)多行。使用宏来确保一致性。例如:

#define StringMacro "Hello, World!"write $$$StringMacro

Include Files

可以在例程中定义宏,并稍后在同一例程中使用它们。更常见的是,在中心位置定义它们。为此,需要创建并使用包含文件。包含文件定义宏并且可以包含其他包含文件。

这些代码元素如何协同工作

可以混合使用 ObjectScriptPythonSQL、类定义、宏、例程等的原因是 IRIS 不直接使用编写的代码。相反,当编译代码时,系统会生成它使用的较低级别的代码。这是由 ObjectScript 引擎使用的 ObjectScriptOBJ 代码,以及由 Python 引擎使用的 PythonPYC 代码。

有多个步骤。无需详细了解这些步骤,但最好记住以下几点:

  • 对于除 Python 方法之外的所有元素,类编译器将类定义和 ObjectScript 代码处理为 INT 代码。 Python代码被处理成PY代码。

在某些情况下,编译器会生成并保存您不应编辑的其他类。例如,当编译定义 Web 服务和 Web 客户端的类时,就会发生这种情况。

类编译器还为每个类生成类描述符。系统代码在运行时使用它。

  • 对于 ObjectScript 代码,预处理器(有时称为宏预处理器或 MPP)使用包含文件并替换宏。它还处理例程中的嵌入式 SQL

这些更改发生在临时工作区中,并且代码不会更改。

  • 其他编译器为例程创建 INT 代码。
  • INT 代码和 PY 代码是中间层,其中通过直接Global访问来处理对数据的访问。该代码是人类可读的。
  • INT代码用于生成OBJ代码,PY代码用于生成PYC代码。 IRIS 虚拟机使用此代码。一旦将代码编译为 OBJPYC 代码,代码执行就不再需要 INTPY 例程。
  • 编译类后,可以将它们置于部署模式。 IRIS 有一个实用程序,可以删除给定类的类内部和中间代码;可以在部署应用程序时使用此实用程序。

如果检查 IRIS 系统类,可能会发现某些类看不到,因为它们处于部署模式。

注意:所有类定义和例程都与生成的代码存储在同一 IRIS 数据库中。这一事实使代码更易于管理。 IRIS 提供了一组强大的源代码控制挂钩, 开发人员已使用这些挂钩多年。也可以使用这些挂钩。

http://www.lryc.cn/news/137140.html

相关文章:

  • 大厂考核重点:mysql索引面试题
  • MySQL使用binlog日志做数据恢复
  • USB Type-C端口集成式ESD静电保护方案 安全低成本
  • Shiro学习总结
  • AS中回退git历史版本并删除历史提交记录
  • 线性代数的学习和整理5: 矩阵的加减乘除及其几何意义
  • sqlsugar 使用TNS连接oracle
  • 用python解压zip文件
  • 代码随想录22| 216.组合总和III, 17.电话号码的字母组合
  • ITIL4—战略与指导
  • 【Spring】Spring循环依赖(超重要!!)
  • 数据分析之路应该是就此开启了
  • win10如何配置jdk环境变量
  • pm4py使用指南(非机翻)
  • ChatGPT帮助提升工作效率和质量:完成时间下降40%,质量评分上升 18%
  • 第二章 搜索
  • transform_train.json文件解析
  • Wlan——锐捷零漫游网络解决方案以及相关配置
  • 分布式锁系列之zookeeper分布式锁和mysql分布式锁
  • Ubuntu部署PHP7.4
  • WPF中的数据转换-StringFormat
  • java.lang.UnsupportedOperationException解决方法
  • docker for window更改到非系统盘的使用记录
  • day 38 | ● 518. 零钱兑换 II ● 377. 组合总和 Ⅳ
  • 写得了代码,焊得了板!嵌入式开发工程师必修之代码管理方案(中)
  • Interlij IDEA 运行 ruoyi 后端项目。错误: 找不到或无法加载主类 com.ruoyi.auth.RuoYiAuthApplication
  • 相机设置报错记录
  • Vue3中搜索表单的二次封装
  • 百度23Q2财报最新发布:营收利润加速增长,AI+生态战略渐显规模
  • 一个pdf文件分割成两个