OberonCore https://forum.oberoncore.ru/ |
|
Как обращаться с документами .odc https://forum.oberoncore.ru/viewtopic.php?f=23&t=1469 |
Страница 1 из 1 |
Автор: | Валерий Лаптев [ Понедельник, 13 Апрель, 2009 15:40 ] |
Заголовок сообщения: | Как обращаться с документами .odc |
Info21 писал(а): Madzi писал(а): От чего (на благо общества) готовы отказаться вы ? Шли бы лучше, коллеги, Блэкбокс на линукс попереносили.Не... Templates надо в ББ добавить. Где можно о формате odc почитать? Ибо на входе препроцессора и на выходе оно должно быть. Можно даже с проверкой синтаксиса сделать. А вообще на эту тему некоторые рсднцы рекомендуют посмотреть Немерлю. |
Автор: | Пётр Кушнир [ Понедельник, 13 Апрель, 2009 16:23 ] |
Заголовок сообщения: | Re: Про "кирпич" |
Непонятно, зачем вам описание формата odc если с составными документами работают через подсистему Text о чём и описано в соответствующем разделе общедоступной документации. RSDN начитались? ![]() |
Автор: | Валерий Лаптев [ Понедельник, 13 Апрель, 2009 17:10 ] |
Заголовок сообщения: | Re: Про "кирпич" |
Пётр Кушнир писал(а): Непонятно, зачем вам описание формата odc если с составными документами работают через подсистему Text о чём и описано в соответствующем разделе общедоступной документации. RSDN начитались? ![]() Не... Не нужет мне текст на входе... Поскольку я собираюсь КП с темплейтами прямо в ББ набирать, а потом отдельной командой его в чистому КП приводить, то, как я понимаю, и исходный, и результат должны быть в формате ББ. Или я чего-то неправильно понимаю? |
Автор: | Пётр Кушнир [ Понедельник, 13 Апрель, 2009 17:16 ] |
Заголовок сообщения: | Re: Про "кирпич" |
Набирая текст в ББ вы работаете с составным документом. Этот документ, в то же время, может быть обработан программно, используя возможности подсистемы Text, описаные в разделе Документации БлэкБокса: "5. Тексты". Насколько я себе представляю, как раз это и подойдёт для поставленой задачи. |
Автор: | Valery Solovey [ Понедельник, 13 Апрель, 2009 17:17 ] |
Заголовок сообщения: | Re: Про "кирпич" |
Последние 4 сообщения какие-то полезные... Их лучше в отдельную тему. |
Автор: | Валерий Лаптев [ Понедельник, 13 Апрель, 2009 17:18 ] |
Заголовок сообщения: | Re: Про "кирпич" |
Пётр Кушнир писал(а): Набирая текст в ББ вы работаете с составным документом. Этот документ, в то же время, может быть обработан программно, используя возможности подсистемы Text, описаные в разделе Документации БлэкБокса: "5. Тексты". Насколько я себе представляю, как раз это и подойдёт для поставленой задачи. Катта рахмат, почитаю внимательнее. Получается, что уже почти все сделано за нас... ![]() |
Автор: | Info21 [ Понедельник, 13 Апрель, 2009 18:04 ] |
Заголовок сообщения: | Re: Про "кирпич" |
Валерий Лаптев писал(а): Катта рахмат, почитаю внимательнее. Не вполне понял, о чем речь, но впечатление, что насчет как берется текст и с ним что-то делается, стоит посмотреть либо модуль Info21sysEdit, либо шнягу с русскими словами тут viewtopic.php?p=26654#p26654---- А выделить да, хорошо бы в что-нибудь вроде "Как обращаться с документами *.odc" |
Автор: | Axcel [ Понедельник, 13 Апрель, 2009 21:54 ] |
Заголовок сообщения: | Re: Про "кирпич" |
Info21 писал(а): Валерий Лаптев писал(а): Катта рахмат, почитаю внимательнее. Не вполне понял, о чем речь, но впечатление, что насчет как берется текст и с ним что-то делается, стоит посмотреть либо модуль Info21sysEdit, либо шнягу с русскими словами тут viewtopic.php?p=26654#p26654---- А еще стоит посмотреть работу со складками на примере Рефал-0. Кстати на тему "темплейтов", Рефал-0 очень даже ... |
Автор: | Валерий Лаптев [ Вторник, 14 Апрель, 2009 07:51 ] |
Заголовок сообщения: | Re: Как обращаться с документами .odc |
Ну вот. Посмотрел. Плохо, конечно, это в документации описано, но вроде получается, что и шаблоны не очень нужны. Я правильно понимаю, что можно объявить запись абстрактной и конкретную реализацию оставить наследникам? Если да, то возможно написать родовой модуль, например, стека с элементом - абстрактной записью. Это и будет параметр - тип. Тогда модули, использующие этот родовой модуль, должны просто реализовать абстрактную запись - тип элемента стека. А все методы - уже в родовом модуле прописаны. |
Автор: | Александр Ильин [ Вторник, 14 Апрель, 2009 08:16 ] |
Заголовок сообщения: | Re: Как обращаться с документами .odc |
Валерий Лаптев писал(а): Я правильно понимаю, что ... возможно написать родовой модуль, например, стека с элементом - абстрактной записью. Это и будет параметр - тип. Правильно вы понимаете.Валерий Лаптев писал(а): Плохо, конечно, это в документации описано, но вроде получается, что и шаблоны не очень нужны. Шаблоны нужны в том случае, если вы захотите непременно хранить в стеке базовый тип (INTEGER, REAL) или напрямую использовать готовую запись, не являющуюся расширением того абстрактного типа. Без шаблонов для этого понадобится создание простого объекта-обёртки:Код: TYPE MyRealItem = RECORD (AbstactStack.Item) value: REAL END; Плюс, если стек основан на шаблоне, то он гарантированно будет содержать только элементы указанного типа, а если основан на абстрактном типе, то в стек можно пометить любого наследника. Следовательно, при получении элемента из стека потребуется приведение типа с проверкой, и на этапе компиляции нет проверки того, что вы только нужные элементы туда помещаете (такую проверку можно реализовать в рантайм).
|
Автор: | Валерий Лаптев [ Вторник, 14 Апрель, 2009 08:20 ] |
Заголовок сообщения: | Re: Как обращаться с документами .odc |
Александр Ильин писал(а): Шаблоны нужны в том случае, если вы захотите непременно хранить в стеке базовый тип (INTEGER, REAL) или напрямую использовать готовую запись, не являющуюся расширением того абстрактного типа. Без шаблонов для этого понадобится создание простого объекта-обёртки: Код: TYPE MyRealItem = RECORD (AbstactStack.Item) value: REAL END; Плюс, если стек основан на шаблоне, то он гарантированно будет содержать только элементы указанного типа, а если основан на абстрактном типе, то в стек можно пометить любого наследника. Следовательно, при получении элемента из стека потребуется приведение типа с проверкой, и на этапе компиляции нет проверки того, что вы только нужные элементы туда помещаете (такую проверку можно реализовать в рантайм).Да, понятно. Объщий базовый класс и принцип подстановки. Шаблоны работают на этапе компиляции и реализуют макроподстановку с проверкой синтаксиса (синтаксические макросы по терминологии Кемпбелл-Келли). |
Страница 1 из 1 | Часовой пояс: UTC + 3 часа |
Powered by phpBB® Forum Software © phpBB Group https://www.phpbb.com/ |