// Выполнение одного слова void LFMRunWord(AnsiString Word) { if (Word!="") { try{ if (!IntConvert(Word)) { Words *Wrd=DictBegin->Find(Word); if (Wrd==NULL) throw (AnsiString("Неизвестно слово: "+Word)).c_str(); else if ((StateLFM==Immediat) || (Wrd->Immediate)) { Stret->push(NULL); (Run[Wrd->Execute])(Wrd->Link); Stret->pop(); } else { EWord *x=new EWord; x->Data=Wrd;CatDat(x); } } else { if (StateLFM==Compilat) { bool typ=false; typ=ILit(); if (!typ) throw "Нельзя компилировать неизвестные компилятору данные"; } } } catch (char *S) { MessageDlg(AnsiString(S),mtError,TMsgDlgButtons() << mbOK,0); } } }
void Connection::WriteInt(int val) { if(doConversion) { unsigned char buffer[8]; int nbytes = IntConvert(val, buffer, IntFormat()); Append(buffer, nbytes); } else Append((unsigned char *)&val, SIZEOF_INT); }