首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何建造一个地点?

如何建造一个地点?
EN

Stack Overflow用户
提问于 2016-02-15 12:02:35
回答 1查看 205关注 0票数 1

我有个简单的问题。

假设我有个地点

代码语言:javascript
运行
复制
 loc l = |file:////Users/steven/tst.txt|;

我想通过选择第5-10行来使它更加去化,我该怎么做呢?

简单陈述

代码语言:javascript
运行
复制
l.begin.line = 5; l.begin.column = 0;

出问题了。

因此,我有以下问题:

  1. 如何设置l.begin.linel.begin.column
  2. 如何容易地检测到第10行的最后一列?
  3. 如何简单地设置l.offsetl.length
  4. 我能找到定义位置的Rascal模块吗?(本教程建议我查看ListRelation和Map之间的库,但这没有帮助)
EN

回答 1

Stack Overflow用户

发布于 2016-02-15 19:25:35

问得好。源位置的规则是,如果您在文件中提供位置信息,并且希望提供行和列信息,则还需要偏移量/长度,如下所示:

代码语言:javascript
运行
复制
rascal>a = |file:///Users/steven/tst.txt|;
loc: |file:///Users/steven/tst.txt|
rascal>b = a(0,10,<2,0>,<4,10>);
loc: |file:///Users/steven/tst.txt|(0,10,<2,0>,<4,10>)

您还可以直接在文字中键入它:

代码语言:javascript
运行
复制
rascal>a = |file:///Users/steven/tst.txt|(0,10,<2,0>,<4,10>);
loc: |file:///Users/steven/tst.txt|(0,10,<2,0>,<4,10>)

或者没有行/列信息:

代码语言:javascript
运行
复制
rascal>a = |file:///Users/steven/tst.txt|(0,10);
loc: |file:///Users/steven/tst.txt|(0,10)

不使用行/列信息创建一个没有偏移量/长度en的位置是不可能的。要获得创建完整loc所需的信息,通常需要访问文件的内容。

PS:我们计算文件中的unicode字符,而不是字节。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35408891

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档