Цитата:
Сообщение от
belugin
Думаю, нет, так как string иммутабельный в X++ и .NET FW. Возможно, можно снизить количество копирований при помощи StringBuilder/TextBuffer
я наверное неточно выразился.
я имею в виду строку 195-197 здесь:
https://github.com/mazzy-ax/SysStrin...ss_SysText.xpp
Цитата:
Сообщение от
belugin
С одной стороны, если прокешировать скомпилированный RegEx, скорее всего, он будет работать быстрее чем find. С другой стороны, сам со себе вызов .NET из X++ не скомпилированного в IL тормозил на 4, кажется. Надо бенчмаркать, наверное.
во-во.
я делал и так, и эдак. решил оставить find.
но вдруг чего пропустил или не учел.
Цитата:
Сообщение от
belugin
Статические методы более очевидны (явно что является аргументом, что результатом), но в X++ синтаксис вызова многословен. Но я бы за статические проголосовал.
угу.
Цитата:
Сообщение от
belugin
В IL вот это должно свалиться
X++:
TextBuffer ret = new TextBuffer();
...
// InvalidCastException так как public static SysText construct(str s = '')
ret = SysText::construct(text.subStr(startPos, endPos - startPos + 1));
...
SysText - наследник. Не должно.
Но согласен - не красиво. Исправлю.
И записал себе в чеклист - запускать тесты и на сервере со включенным CIL