@@ -14,7 +14,7 @@ There are three options for implementing addons: |
14 | 14 | * `nan` ([Native Abstractions for Node.js][]) |
15 | 15 | * direct use of internal V8, libuv, and Node.js libraries |
16 | 16 |
|
17 | | -This rest of this document focuses on the latter, requiring |
| 17 | +The rest of this document focuses on the latter, requiring |
18 | 18 | knowledge of multiple components and APIs: |
19 | 19 |
|
20 | 20 | * [V8][]: the C++ library Node.js uses to provide the |
@@ -113,7 +113,7 @@ To integrate with the npm ecosystem, see the [Building][] section. |
113 | 113 |
|
114 | 114 | ### Context-aware addons |
115 | 115 |
|
116 | | -Addons defined with `NODE_MODULE()` can not be loaded in multiple contexts or |
| 116 | +Addons defined with `NODE_MODULE()` cannot be loaded in multiple contexts or |
117 | 117 | multiple threads at the same time. |
118 | 118 |
|
119 | 119 | There are environments in which Node.js addons may need to be loaded multiple |
@@ -255,7 +255,7 @@ changes: |
255 | 255 | In order to be loaded from multiple Node.js environments, |
256 | 256 | such as a main thread and a Worker thread, an add-on needs to either: |
257 | 257 |
|
258 | | -* Be an [Node-API][] addon. |
| 258 | +* Be a [Node-API][] addon. |
259 | 259 | * Be declared as context-aware using `NODE_MODULE_INIT()` as described above. |
260 | 260 |
|
261 | 261 | In order to support [`Worker`][] threads, addons need to clean up any resources |
@@ -487,13 +487,13 @@ See [C/C++ addons with Node-API][Node-API]. |
487 | 487 |
|
488 | 488 | ## Addon examples |
489 | 489 |
|
490 | | -Following are some example addons intended to help developers get started. The |
| 490 | +The following are some example addons intended to help developers get started. The |
491 | 491 | examples use the V8 APIs. Refer to the online [V8 reference][v8-docs] |
492 | 492 | for help with the various V8 calls, and V8's [Embedder's Guide][] for an |
493 | 493 | explanation of several concepts used such as handles, scopes, function |
494 | 494 | templates, etc. |
495 | 495 |
|
496 | | -Each of these examples using the following `binding.gyp` file: |
| 496 | +Each of these examples uses the following `binding.gyp` file: |
497 | 497 |
|
498 | 498 | ```json |
499 | 499 | { |
@@ -979,7 +979,7 @@ provided by the underlying V8 JavaScript engine. They are subject to change |
979 | 979 | or removal at any time. They are not documented by Node.js or V8, and they |
980 | 980 | should never be used outside of testing. |
981 | 981 |
|
982 | | -During shutdown of the process or worker threads destructors are not called |
| 982 | +During shutdown of the process or worker threads, destructors are not called |
983 | 983 | by the JS engine. Therefore it's the responsibility of the user to track |
984 | 984 | these objects and ensure proper destruction to avoid resource leaks. |
985 | 985 |
|
@@ -1208,7 +1208,7 @@ console.log(obj2.plusOne()); |
1208 | 1208 |
|
1209 | 1209 | In addition to wrapping and returning C++ objects, it is possible to pass |
1210 | 1210 | wrapped objects around by unwrapping them with the Node.js helper function |
1211 | | -`node::ObjectWrap::Unwrap`. The following examples shows a function `add()` |
| 1211 | +`node::ObjectWrap::Unwrap`. The following example shows a function `add()` |
1212 | 1212 | that can take two `MyObject` objects as input arguments: |
1213 | 1213 |
|
1214 | 1214 | <!-- addon-verify-file passing_wrapped_objects_around/addon.cc --> |
|