首页 > 其他分享 >7.3 Location Tracking 位置跟踪

7.3 Location Tracking 位置跟踪

时间:2025-01-05 20:00:33浏览次数:1  
标签:令牌 Tracking 字节 -- 绑定 7.3 location 位置 Location

https://lalrpop.github.io/lalrpop/location_tracking.html

Sometimes it may be helpful to know where in the input stream a particular token was encountered. For example, this can be useful when generating user-visible messages that reference specific points in the input.

MST -- 有时,了解在 input 流中遇到特定标记的位置可能会有所帮助。例如,在生成引用输入中特定点的用户可见消息时,这可能很有用。

GPT -- “有时,了解在输入流中遇到特定令牌的位置可能会很有帮助。例如,这在生成引用输入中特定位置的用户可见消息时非常有用。”

This is achieved via the location tracking macros, @L and @R. @L binds the start position - in bytes - of the token immediately to its right in the input stream. Similarly, @R binds the index of the last byte plus one of the token immediately to its left. Both symbols bind as type usize

MST -- 这是通过位置跟踪宏 @L 和 @R 实现的。@L 将令牌的起始位置(以字节为单位)绑定到输入流中的右侧。同样,@R 将最后一个字节的索引加上紧邻其左侧的标记之一绑定。两个符号都绑定为 usize 类型

GPT -- “这是通过位置跟踪宏 @L@R 实现的。@L 绑定输入流中紧随其后的令牌的起始位置(以字节为单位)。类似地,@R 绑定输入流中紧随其前的令牌的最后一个字节索引加一的位置。这两个符号的类型都是 usize。”

Here's an example rule using location tracking macros:

Symbol = {
    <start: @L> <s: r"a-z"> <end: @R> => {
        // `start` is the byte location of the start of our string
        // `s` is the string itself
        // `end` is the byte location of the end
    }
}

You can also see another example in this test, where location tracking is wrapped in a macro.

MST -- 您还可以在此测试中看到另一个示例,其中位置跟踪包装在宏中。

GPT -- “你还可以在这个测试中看到另一个示例,其中位置跟踪被包装在一个宏中。”

Since @R2 binds to the index of the byte immediately to the right of the token, this makes the bound values suitable to immediately construct a Range which is bounded inclusively above and exclusively below:

MST -- 由于 @R2 绑定到紧邻令牌右侧的字节索引,这使得绑定值适合立即构造一个 Range,该范围包括上方和下方:

GPT -- “由于 @R2 绑定的是令牌右侧紧邻的字节的索引,这使得绑定的值适合直接构造一个范围,该范围在上界是包含的,在下界是排除的。”

Symbol: Range<usize> = {
    <start: @L> <s: r"a-z"> <end: @R> => {
        start..end
    }
}

标签:令牌,Tracking,字节,--,绑定,7.3,location,位置,Location
From: https://www.cnblogs.com/Tifahfyf/p/18653791

相关文章

  • MapContext.toScreenLocation
    MapContext.toScreenLocation(Objectobject)基础库2.14.0开始支持,低版本需做兼容处理。以Promise风格调用:不支持小程序插件:支持相关文档:map功能描述获取经纬度对应的屏幕坐标,坐标原点为地图左上角。参数Objectobject属性类型默认值必填说明la......
  • MapContext.moveToLocation
    MapContext.moveToLocation(Objectobject)基础库1.2.0开始支持,低版本需做兼容处理。以Promise风格调用:不支持用户授权:需要scope.userLocation小程序插件:支持相关文档:map功能描述将地图中心移置当前定位点,此时需设置地图组件show-location为true。'2.8.0'......
  • Bandizip(跨平台解压缩软件) v7.36 激活版
    虽然7-Zip是开源免费压缩工具中的佼佼者,但用得不是很顺手,今天试了下推荐的Bandizip却出人意料的好用!Bandizip是一款来自韩国的免费优秀的文件压缩/解压缩软件,支持Win与Mac,操作方式与WinRAR相似,支持压缩和解压rar、zip、7z等众多主流格式…解压支持的格式:7Z,AC......
  • Bandizip(跨平台解压缩软件) v7.36 激活版
    虽然7-Zip是开源免费压缩工具中的佼佼者,但用得不是很顺手,今天试了下推荐的Bandizip却出人意料的好用!Bandizip是一款来自韩国的免费优秀的文件压缩/解压缩软件,支持Win与Mac,操作方式与WinRAR相似,支持压缩和解压rar、zip、7z等众多主流格式…解压支持的格式:7Z,ACE,......
  • 7.3
    代码点击查看代码importnumpyasnpfromscipy.interpolateimportinterp1d,CubicSplineimportmatplotlib.pyplotasplt#给定数据T=np.array([700,720,740,760,780])V=np.array([0.0997,0.1218,0.1406,0.1551,0.1664])#要插值的温度点T_interp=n......
  • ex7.3
    importnumpyasnpfromscipy.interpolateimportlagrangeimportmatplotlib.pyplotaspltimportmatplotlibyx=lambdax:1/(1+x**2)deffun(n):x=np.linspace(-5,5,n+1)p=lagrange(x,yx(x))#n次插值多项式returnpx0=np.linspace(-5,5,100)plt.rc......
  • location对象的哪些常用的方法?
    在前端开发中,Location对象提供了多个常用的方法,用于操作浏览器的导航功能。以下是Location对象的一些常用方法:assign(url):此方法用于加载新的文档。当调用此方法时,浏览器会导航到指定的URL,并在历史记录中生成一个新的记录。这意味着用户可以使用浏览器的后退按钮返回到前一个页......
  • vue-router的跳转与location.href有什么不同?
    vue-router的跳转与location.href的主要区别体现在它们的使用场景、功能特性以及对Vue.js单页面应用(SPA)的支持上。使用场景:vue-router是Vue.js官方的路由管理器,专为Vue.js设计,用于构建单页面应用(SPA)。它允许你通过定义一系列的路由规则,来管理不同的URL路径如何映......
  • CDS标准视图:PM通知单 I_LocationAnalysisCube
    视图名称:PM通知单I_LocationAnalysisCube视图类型:分析视图代码:点击查看代码@EndUserText.label:'LocationAnalysis-Cube'@VDM.viewType:#COMPOSITE@AbapCatalog.sqlViewName:'ILOCANALYSISCUBE'@AccessControl.authorizationCheck:#CHECK@ClientHandling.al......
  • CDS标准视图:功能位置信息 I_FunctionalLocationData
    视图名称:I_FunctionalLocationData视图类型:基础视图视图代码:点击查看代码@EndUserText.label:'FunctionalLocationData'@VDM:{viewType:#COMPOSITE,lifecycle.contract.type:#PUBLIC_LOCAL_API}@AbapCatalog.sqlViewName:'IFUNCTLOCATTR'@AbapCatalog......