On-line: гостей 0. Всего: 0 [подробнее..]
АвторСообщение
постоянный участник




Пост N: 246
Зарегистрирован: 06.02.07
ссылка на сообщение  Отправлено: 01.11.11 13:08. Заголовок: Утилита "список процедур/функций" в проекте (условно FuncList)


Тут продолжаем разговор про Утилиту "список процедур/функций" в проекте (условно FuncList - поскольку начал "обрабатывать по месту напильником" ее). Начало разговора - тут .

Спасибо: 0 
ПрофильЦитата Ответить
Ответов - 6 [только новые]


постоянный участник




Пост N: 1909
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 02.11.11 14:06. Заголовок: Что собираем ? Т.е. ..


Что собираем ? Т.е. что возмем в качестве заготовки проекта ?

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 248
Зарегистрирован: 06.02.07
ссылка на сообщение  Отправлено: 03.11.11 06:47. Заголовок: Я почти "доподпи..


Я почти "доподпилил напильником" FuncList из HMG Ext. (в т.ч. добавил экспорт получаемого в "Использование функций" в HTML). Как-то она мне (пока, для пробы) показалась "более ничего". :) Выложу куда-то "на поглядеть" завтра-послезавтра.

Посмотри - вдруг тебе что-то больше поглянется в качестве основы?

Из имевшихся предложений (см. выше по обсуждению) было:
1) FuncList (HMG Ext. \MiniGUI\UTILS)
2) Project_Analyzer (оттуда же)
3) Click! (Phil Barnett, 1999) (она у меня под XP в упор не желает работать, видимо, в чем-то неправ; и там еще С-шные модули, а не только "чистый Clipper").

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1912
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 04.11.11 21:19. Заголовок: gustow пишет: FuncL..


gustow пишет:

 цитата:
1) FuncList


Неплохая утилитка. Построила весь список функций из программ из заданного каталога.
Пробовал установить редактор xHarbour\bin\xEditW.exe - не запускается с программой, надо здесь тоже подпиливать.
PsPad тоже не вызывается нормально (по номеру строчки или имени функции), хотя в доке написано что может.
Но наверно это может быть связано из-за изменений вызовов редакторов (утилита же датирована 2006 годом) и особо это неважно.
И еще, уж больно медленно все делает...

gustow пишет:

 цитата:
2) Project_Analyzer


Пришлось для нее делать описание проекта - файл проект.hpj
Неправильно как то. И мои 9,5 Мб текстов проекта так и не построил... Вешается програ и все тут...

gustow пишет:

 цитата:
3) Click!


Нет у меня ее, не пробовал.

Но для документирования проектов думаю - не то !
Нужно делать по моему все по другому.
1) Задать каталог проекта, главный модуль проекта и список внешних функций для проекта.
2) Получить список используемых PRG и список используемых функций
3) Получить список НЕ-используемых PRG и список НЕ-используемых функций
4) Комментарии по функциям нужно как то задавать в PRG-файлах, в описании функций.
И получать эти описания в списке используемых/не используемых функций, причем с описанием параметров вызовов функций...
Т.е. то что описано в скобках функции - типа MyFunctionXX(par1, par2, ....)
Хотя эти описания могут быть и в следующей строке PARAMETERS <params,...>
5) Получить дерево вызовов функций

Пока только это на первый вариант.
Кто хочет добавить, приглашаю....


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 249
Зарегистрирован: 06.02.07
ссылка на сообщение  Отправлено: 06.11.11 19:22. Заголовок: Загрузил самый первы..


Загрузил самый первый "прикид" (модификация FuncList).
Добавил:
- экспорт всех (или только НЕвызываемых) функций/процедур в HTML (пока, для простоты; имена HTML-файлов "зашиты" в программе - тоже, конечно, "на пока") - в CalcTables.prg;
- более тщательный разбор строк (пропуск коротких - "//". "*" - и длинных "/* */" комментариев и т.п.) - там же;
- что-то еще (уж не упомню - видимо, мелочь) в Stack.prg.

ToDo: почему-то (не понял пока) НЕ отлавливается ситуация, когда в ДВУХ .prg есть Static-функции с ОДИНАКОВЫМИ именами (ну есть такая дурка в старых проектах, с которыми пришлось иметь дело и которые делал не я; причем функции были немного разные по тексту: видимо, "экономили" время путем копипастенья - а я тут стреляйся...)

Файл: http://zalil.ru/32004544 (самоудалится через 10 дней)

Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 1915
Зарегистрирован: 12.09.06
ссылка на сообщение  Отправлено: 08.11.11 00:05. Заголовок: gustow пишет: Загру..


gustow пишет:

 цитата:
Загрузил самый первый "прикид" (модификация FuncList).



Проверил. 1,5 часа мои 9,5 Мб текстов проекта "Строят...."
Наверно нужно что-то делать для ускорения...

Навскидку: может делать не экспорт функций/процедур в HTML а просто сначала создать DBF-файлы функций/процедур ,
а уж потом в HTML, в DOC и т.д. делать ?


Спасибо: 0 
ПрофильЦитата Ответить
постоянный участник




Пост N: 250
Зарегистрирован: 06.02.07
ссылка на сообщение  Отправлено: 08.11.11 07:20. Заголовок: Andrey пишет: 1,5 ч..


Andrey пишет:

 цитата:
1,5 часа мои 9,5 Мб текстов проекта "Строят...."

Однако... :\ Мои 1,5 Мб - минут 15. На предмет "ускорения" - посмотри в CallsTable.prg функцию FillList(), в ней проходится по списку всех .PRG, анализирует построчно, ища вызовы функций (я как раз ее в основном и дорабатывал - чтобы скипала пустые строки, комментарии, не искала в других файлах Static'и и пр.).

Еще не все "замедлялки" реализованы... :) Еще же неплохо бы ловить вызовы функций из DbEdit'ов, AChoice'ов, Get'ов и пр. - а это тоже не пуп царапать :)

Andrey пишет:

 цитата:
просто сначала создать DBF-файлы функций/процедур ,

Так оно сперва (опять же - см. результат, отдаваемый FillList()) и создает массив (из которого грид в окне по окончании "построения" заполняется) - а уж потом с этим массивом хоть что можно делать. Просто экспорт в HTML мне тут сходу было проще всего написать. Конечно, для последующего написания комментов лучше в RTF, DOC (да хоть в XLS) загонять... Но пока хоть так - на посмотреть/напечатать.

Спасибо: 0 
ПрофильЦитата Ответить
Ответ:
1 2 3 4 5 6 7 8 9
большой шрифт малый шрифт надстрочный подстрочный заголовок большой заголовок видео с youtube.com картинка из интернета картинка с компьютера ссылка файл с компьютера русская клавиатура транслитератор  цитата  кавычки моноширинный шрифт моноширинный шрифт горизонтальная линия отступ точка LI бегущая строка оффтопик свернутый текст

показывать это сообщение только модераторам
не делать ссылки активными
Имя, пароль:      зарегистрироваться    
Тему читают:
- участник сейчас на форуме
- участник вне форума
Все даты в формате GMT  3 час. Хитов сегодня: 396
Права: смайлы да, картинки да, шрифты да, голосования нет
аватары да, автозамена ссылок вкл, премодерация откл, правка нет