Skip to content

Commit 5a6b699

Browse files
linpu.lijonirrings
linpu.li
authored andcommitted
Fix visitor problem (xitu#78)
1 parent 0758b0b commit 5a6b699

File tree

1 file changed

+11
-11
lines changed

1 file changed

+11
-11
lines changed

site/graphql-js/APIReference-Language.md

Lines changed: 11 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -67,19 +67,19 @@ var { Source } = require('graphql'); // CommonJS
6767
</li>
6868
</ul>
6969

70-
**访问方法**
70+
**Visitor**
7171

7272
<ul class="apiIndex">
7373
<li>
7474
<a href="#visit">
7575
<pre>function visit</pre>
76-
一个通用的访问方法,用于遍历一个已解析的 GraphQL AST。
76+
一个通用的 visitor,用于遍历一个已解析的 GraphQL AST。
7777
</a>
7878
</li>
7979
<li>
8080
<a href="#break">
8181
<pre>var BREAK</pre>
82-
用于允许中断访问方法的 token。
82+
用于允许中断 visitor 的 token。
8383
</a>
8484
</li>
8585
</ul>
@@ -175,17 +175,17 @@ export function parseValue(
175175

176176
这是一个枚举类型,用于描述不同类型的 AST 节点。
177177

178-
## 访问方法
178+
## Visitor
179179

180180
### visit
181181

182182
```js
183183
function visit(root, visitor, keyMap)
184184
```
185185

186-
`visit()` 将使用深度优先遍历一个 AST,在遍历当中对每个节点调用访问方法的 `enter` 函数,并在访问完当前节点及其子节点后调用 `leave` 函数。
186+
`visit()` 将使用深度优先遍历一个 AST,在遍历当中对每个节点调用 visitor 的 `enter` 函数,并在访问完当前节点及其子节点后调用 `leave` 函数。
187187

188-
通过从 `enter` 和 `leave` 函数里返回不同的值,访问方法的行为可以进行更改,包括跳过 AST 的一个子树(返回 `false`)、编辑这个 AST(返回一个值或者返回 `null` 来删除这个节点)、或者返回 `BREAK` 停止整个遍历。
188+
通过从 `enter` 和 `leave` 函数里返回不同的值,visitor 的行为可以进行更改,包括跳过 AST 的一个子树(返回 `false`)、编辑这个 AST(返回一个值或者返回 `null` 来删除这个节点)、或者返回 `BREAK` 停止整个遍历。
189189

190190
当使用 `visit()` 编辑一个 AST 的时候,原始的 AST 不会被修改,`visit` 函数会返回一个经过修改的新版本 AST。
191191

@@ -210,9 +210,9 @@ var editedAST = visit(ast, {
210210
});
211211
```
212212
213-
访问方法可以通过提供和节点类型同名的函数来替代 `enter()``leave()` 函数,或者通过名称的关键字来使用 `enter``leave` 访问方法,这就造成访问方法的 API 有四种形式:
213+
Visitor 可以通过提供和节点类型同名的函数来替代 `enter()``leave()` 函数,或者通过名称的关键字来使用 visitor 中的 `enter``leave`,这就造成 visitor 的 API 有四种形式:
214214
215-
1) 当进入特定类型的节点时,触发同名访问方法
215+
1) 当进入特定类型的节点时,触发同名的 visitor
216216
217217
```js
218218
visit(ast, {
@@ -222,7 +222,7 @@ visit(ast, {
222222
})
223223
```
224224
225-
2) 在进入或离开特定类型的节点时,触发同名访问方法
225+
2) 在进入或离开特定类型的节点时,触发同名的 visitor
226226
227227
```js
228228
visit(ast, {
@@ -237,7 +237,7 @@ visit(ast, {
237237
})
238238
```
239239
240-
3) 在进入或离开任意节点时,触发通用的访问方法
240+
3) 在进入或离开任意节点时,触发通用的 visitor
241241
242242
```js
243243
visit(ast, {
@@ -250,7 +250,7 @@ visit(ast, {
250250
})
251251
```
252252
253-
4) 为进入或离开特定类型的节点创建平行的访问方法
253+
4) 为进入或离开特定类型的节点创建平行的 visitor
254254
255255
```js
256256
visit(ast, {

0 commit comments

Comments
 (0)