Карта сайта Kansoftware
НОВОСТИУСЛУГИРЕШЕНИЯКОНТАКТЫ
Разработка программного обеспечения

Do List

Boost , ,

Boost Filesystem Do List
24 June 2010

Beta 1 comments

  • Зак Лейн:

The descriptions for portable_name() and portable_directory_name()
appear to be at odds.
portable_name() : ... && (name is "." or "..", and the first character
not a period or hyphen)
portable_directory_name(): ... && (name is "." or ".."  or contains no periods)
Should portable_name() be "... && (name is "." or "..", or contains no
periods) && (first character not a hyphen)"?  Maybe I'm missing
something?
  • Скотт МакМюррей — «Список желаний»:

- uncomplete(p, base)
My pet request.  It may be useful to simplify other functions as well,
since there's no current way to go from an absolute path to a relative
one, meaning that most functions need to handle relative ones even
when that might not be natural.  With this functionality,
preconditions requiring absolute paths would be less onerous.
   Precondition: p.is_absolute() && base.is_absolute()
   Effects: Extracts a path, rp, from p relative to base such that
canonical(p) == complete(rp, base).  Any ".." path elements in rp form
a prefix.
   Returns: The extracted path.
   Postconditions: For the returned path, rp, rp.is_relative() ==
(p.root_name() == b.root_name()).
[Notes: This function simplifies paths by omitting context.  It is
particularly useful for serializing paths such that it can be usefully
moved between hosts where the context may be different, such as inside
source control trees.  It can also be helpful for display to users,
such as in shells where paths are often shown relative to $HOME.
In the presence of symlinks, the result of this function may differ
between implementations, as some may expand symlinks that others may
not.  The simplest implementation uses canonical to expand both p and
base, then removes the common prefix and prepends the requisite ".."
elements.  Smarter implementations will avoid expanding symlinks
unnecessarily.  No implementation is expected to discover new symlinks
to return paths with fewer elements.]

Docs

  • Реорганизовать файлы - удалить примеры, которые больше не применяются.
  • Следует ли изменить минимальный размер шрифта на используемый относительный размер шрифта? Видишь?http://www.w3schools.com/CSS/pr_font_font-size.asp
  • Документное поведение пути::replace_extension меняет аргумент WRT w/o a dot.
  • Ведущий документ //: больше не рассматривается специально. Но действительно ли это правильно?
  • Изменилось поведение root_path(). Перемены нужно распространять на багажник?
  • Восстановите таблицу разложения пути.

Code

All

  • Переместите семантику.
  • При необходимости используйте BOOST_DELETED, BOOST_DEFAULTED.
  • Другие особенности C++0x.

Class path

  • Windows, POSIX, преобразования для char16_t, char32_t для компиляторов C++0x.
  • Добавьте тестовые случаи Windows Alternate Data Stream. Видишь? http://en.wikipedia.org/wiki/NTFS Особенности.
  • Добавить тестовый случай: реляционные операторы на траекториях, отличающихся только трассирующим сепаратором. Обоснование?
  • Предоставить функции проверки имени для большего количества типов символов? Затмить? Возьмем спорный путь?
  • Добавить кодовую страницу 936/950/и т.д.
  • Следует ли поддерживать UDT?
  • Если путь итерации к сепаратору приводит к:
    - фактический сепаратор используется
    - предпочтительный сепаратор
    - общий сепаратор< - облегчает написание портативного кода
    - точка

Operations

  • Будет ли полное(), системное_полное() яснее, если оно будет переименовано в абсолютное(), абсолютное_система() (или абсолютное_нативное())?
  • Просмотрите весь код operations.cpp для условий гонки, аналогичных #2925. Исправление или документ.
  • Включить все BOOST_FILESYSTEM_NO_DEPRECATED Код.
  • Переименовывать и удалять имена — проблема. Если пользователи говорят "используя расширение пространства имен::filesystem"
    и некоторые заголовки включают stdio, существует слишком много шансов на ошибку.
  • Create_directories Обработка ошибок требует работы.
  • Сложите convenience.hpp в operations.hpp
  • Два аргумента recursive_directory_iterator ctor не распознают броски. Не лучше ли сложить в один-два аргумента ctor с дефолтом?
  • Добавить push_directory class из tools/release/required_files.cpp

Miscellaneous

  • Регулярныеклассы нуждаются в хеш-функциях.

Авторское право Beman Dawes, 2010

Распространяется в соответствии с Лицензией на программное обеспечение Boost, версия 1.0. См.www.boost.org/LICENSE_1_0.txt

Статья Do List раздела может быть полезна для разработчиков на c++ и boost.




Материалы статей собраны из открытых источников, владелец сайта не претендует на авторство. Там где авторство установить не удалось, материал подаётся без имени автора. В случае если Вы считаете, что Ваши права нарушены, пожалуйста, свяжитесь с владельцем сайта.



:: Главная :: ::


реклама


©KANSoftWare (разработка программного обеспечения, создание программ, создание интерактивных сайтов), 2007
Top.Mail.Ru

Время компиляции файла: 2024-08-30 11:47:00
2025-05-19 23:26:10/0.0083279609680176/1