|
CSR и локальные переменные
|
|||
---|---|---|---|
#18+
Допустим, есть CSR-тег Код: plaintext 1. 2. 3. 4. 5. 6.
Можно сделать переменные cо специальными названиями, вроде ruleXXXi, но даже в этом случае в конструкциях типа Код: plaintext 1. 2. 3.
Как разделить контексты переменных разных тегов? На ум лезут одни извращения. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2007, 15:10 |
|
CSR и локальные переменные
|
|||
---|---|---|---|
#18+
Приватные переменные как я понял, в csr-тегах нельзя сделать? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2007, 15:13 |
|
CSR и локальные переменные
|
|||
---|---|---|---|
#18+
В упор не понятно что мешает вручную указывать new и kill ??? :spy: ... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2007, 20:53 |
|
CSR и локальные переменные
|
|||
---|---|---|---|
#18+
new сделать можно, но непонятно, как потом вернуть предыдущее значение? вот во что развернутся в csp-классе вложенные csr-теги Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
... |
|||
:
Нравится:
Не нравится:
|
|||
14.06.2007, 21:07 |
|
CSR и локальные переменные
|
|||
---|---|---|---|
#18+
Блок А.Н.new сделать можно, но непонятно, как потом вернуть предыдущее значение? вот во что развернутся в csp-классе вложенные csr-теги Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2007, 00:36 |
|
CSR и локальные переменные
|
|||
---|---|---|---|
#18+
Дело в том, что это один csr-тег, вложенный один в другой. И генерация для каждого экземпляра csr-тега своих уникальных переменных - чрезмерное усложнение кода. Хранение переменных в сессии не решает проблему конфликта переменных с одним именем. Можно сделать переменную - имя тега, и все переменные делать с префиксом имени тега. Можно сделать аналог стека и сохранять свои переменные туда. Но все это не слишком красивое решение. Нельзя же сделать приватные переменные в каше "на ровном месте", не на уровне программы? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2007, 05:28 |
|
CSR и локальные переменные
|
|||
---|---|---|---|
#18+
Блок А.Н.new сделать можно, но непонятно, как потом вернуть предыдущее значение? вот во что развернутся в csp-классе вложенные csr-теги Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15.
Для передачи между секциями можно и наверное следует использовать временные глобалы. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2007, 07:29 |
|
CSR и локальные переменные
|
|||
---|---|---|---|
#18+
После первого kill переменная будет undefined - вот это проблема :-( Cache for Windows (Intel) 5.2 (Build 329) Thu Jun 15 2006 16:40:08 EDT код csr выполняется дважды - одни раз во время компилляции csp, второй раз во время выполнения - уже сгенерированный код. Если хотим сделать уникальные переменные, нужно не повториться в обоих случаях. Поэтому хочется просто научиться изолировать переменные, независимо от их имен. %session в этом не помогает, скорее наоборот - будут конфликты с тегами других страниц этого приложения. в С++ например это запросто Код: plaintext 1. 2. 3. 4.
В каше 5 сделали сделали шаг в эту сторону, например введением PROCEDUREBLOCK и приватных/общих переменных Код: plaintext 1. 2. 3. 4.
... |
|||
:
Нравится:
Не нравится:
|
|||
15.06.2007, 18:29 |
|
CSR и локальные переменные
|
|||
---|---|---|---|
#18+
Блок А.Н.new сделать можно, но непонятно, как потом вернуть предыдущее значение? вот во что развернутся в csp-классе вложенные csr-теги Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11.
Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12.
... |
|||
:
Нравится:
Не нравится:
|
|||
20.12.2015, 08:37 |
|
CSR и локальные переменные
|
|||
---|---|---|---|
#18+
Код: plaintext
... |
|||
:
Нравится:
Не нравится:
|
|||
20.12.2015, 12:46 |
|
CSR и локальные переменные
|
|||
---|---|---|---|
#18+
Блок А.Н.Поэтому хочется просто научиться изолировать переменные, независимо от их имен. А вот "на ровном месте", этого сделать похоже нельзя, по крайней мере без хитроумных операций.Если ТС всё ещё интересно: XECUTE (или $XECUTE )Пример test.mac Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17.
PS:Блок А.Н. Код: plaintext 1. 2. 3.
... |
|||
:
Нравится:
Не нравится:
|
|||
21.12.2015, 16:46 |
|
CSR и локальные переменные
|
|||
---|---|---|---|
#18+
servitЕсли ТС всё ещё интересноНу блин, я понимаю, некропостинг. Ну год, ну два. Но ведь прошло уже 8 лет! ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2015, 11:02 |
|
CSR и локальные переменные
|
|||
---|---|---|---|
#18+
Блок А.Н.servitЕсли ТС всё ещё интересноНу блин, я понимаю, некропостинг. Ну год, ну два. Но ведь прошло уже 8 лет!
... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2015, 11:40 |
|
CSR и локальные переменные
|
|||
---|---|---|---|
#18+
С трудом вспоминаю, что тогда я пытался разобраться и делать что-то умное с помощью CSR-тегов, но через некоторое время забросил эту идею. И была проблема в том, что если внутри методов тега есть какие-нибудь переменные, то их чистота не гарантируется. Честно говоря, я и сейчас не вижу, как можно обеспечить их чистоту, кроме как генерации уникальных имен переменных для каждого появления CSR-тега. Тогда хотелось более красивого решения. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.12.2015, 12:44 |
|
|
start [/forum/topic.php?fid=39&fpage=12&tid=1556544]: |
0ms |
get settings: |
10ms |
get forum list: |
14ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
32ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
52ms |
get tp. blocked users: |
2ms |
others: | 267ms |
total: | 401ms |
0 / 0 |