Skip to content

Commit 606e363

Browse files
authored
Merge pull request #274 from lf-lang/preamble
Fixed instructions for setting parameters from a table
2 parents fc09e34 + 68f692f commit 606e363

File tree

5 files changed

+18
-16
lines changed

5 files changed

+18
-16
lines changed

docs/assets/code/c/src/BankIndex.lf

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,11 @@
11
target C;
2-
preamble {=
3-
int table[] = {4, 3, 2, 1};
4-
=}
52
reactor A(bank_index:int = 0, value:int = 0) {
63
reaction (startup) {=
74
printf("bank_index: %d, value: %d\n", self->bank_index, self->value);
85
=}
96
}
10-
main reactor {
11-
a = new[4] A(value = {= table[bank_index] =});
7+
main reactor(
8+
table: int[] = {4, 3, 2, 1}
9+
) {
10+
a = new[4] A(value = {= self->table[bank_index] =});
1211
}

docs/assets/code/py/src/BankIndex.lf

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,11 @@
11
target Python;
2-
preamble {=
3-
table = [4, 3, 2, 1]
4-
=}
52
reactor A(bank_index = 0, value = 0) {
63
reaction (startup) {=
74
print("bank_index: {:d}, value: {:d}".format(self.bank_index, self.value))
85
=}
96
}
10-
main reactor {
11-
a = new[4] A(value = {= table[bank_index] =})
7+
main reactor(
8+
table = [4, 3, 2, 1]
9+
) {
10+
a = new[4] A(value = {= self.table[bank_index] =})
1211
}

docs/writing-reactors/multiports-and-banks.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -199,7 +199,7 @@ import Py_BankIndex from '../assets/code/py/src/BankIndex.lf';
199199

200200
<NoSelectorTargetCodeBlock c={C_BankIndex} py={Py_BankIndex} lf />
201201

202-
The global `table` defined in the `preamble` is used to initialize the `value` parameter of each bank member. The result of running this is something like:
202+
The parameter `table` defined in the `main reactor` is used to initialize the `value` parameter of each bank member. The result of running this is something like:
203203

204204
```
205205
bank_index: 0, value: 4
Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,11 @@
11
target C;
2-
preamble {=
3-
int table[] = {4, 3, 2, 1};
4-
=}
52
reactor A(bank_index:int = 0, value:int = 0) {
63
reaction (startup) {=
74
printf("bank_index: %d, value: %d\n", self->bank_index, self->value);
85
=}
96
}
10-
main reactor {
11-
a = new[4] A(value = {= table[bank_index] =});
7+
main reactor(
8+
table: int[] = {4, 3, 2, 1}
9+
) {
10+
a = new[4] A(value = {= self->table[bank_index] =});
1211
}

versioned_docs/version-0.8.0/writing-reactors/multiports-and-banks.mdx

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -199,7 +199,12 @@ import Py_BankIndex from '../assets/code/py/src/BankIndex.lf';
199199

200200
<NoSelectorTargetCodeBlock c={C_BankIndex} py={Py_BankIndex} lf />
201201

202+
<ShowOnly py>
202203
The global `table` defined in the `preamble` is used to initialize the `value` parameter of each bank member. The result of running this is something like:
204+
</ShowOnly>
205+
<ShowOnly c>
206+
The parameter `table` defined in the `main reactor` is used to initialize the `value` parameter of each bank member. The result of running this is something like:
207+
</ShowOnly>
203208

204209
```
205210
bank_index: 0, value: 4

0 commit comments

Comments
 (0)