Я сделал очень простой язык сценариев - я хочу иметь возможность читать вывод. - PullRequest
0 голосов
/ 28 июля 2011

Я сделал очень простой язык сценариев, и на моем языке есть команда с именем print - или, другими словами - print _k должна как-то показывать _k пользователю.
Я использовал MessageBox.Show до сих пор, но я также хочу включить отладчик для моего языка и по другим причинам, я хочу использовать Stream или что-то подобное.

В основном, в главной форме я хочу иметь TextBox или что-то, что каким-то образом связано с Stream, и когда (в сценарии, в другом потоке) вызывается print something, это вызывает событие моя форма, которая будет писать something на моем TextBox.

Раньше я решал эту проблему, отправляя объект TextBox в качестве параметра, но я хочу сделать его более динамичным (чтобы я мог читать данные больше, чем TexBox).

К сожалению, Stream не имеет событий, которые я могу использовать.
Может быть, есть другой динамичный путь?

Ответы [ 2 ]

1 голос
/ 28 июля 2011
0 голосов
/ 28 июля 2011

Поздравляем с созданием скриптового языка;Я сделал это однажды, и это было одним из самых забавных и продуктивных вещей, над которыми я работал.Ваши инстинкты предоставить отладчик и использовать потоки, а не строки или файлы, хороши.

Трудно предложить, как подходить к конкретной проблеме, потому что вы не предоставляете код, поэтому мы должны догадаться.Я обработал эту ситуацию, передав Stream s во всех API, и обработал текстовые поля, преобразовав текст текстового поля в MemoryStream и используя StreamReader в обработчике сценариев.

В качестве отступления, В Code Project была проведена выдающаяся серия по созданию языка сценариев под названием ConScript , в комплекте с IDE, включая отладчик.У меня много идей из этой серии.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...