السجل THPDFContentSyntaxNode
يمثل عقدة مضغوطة واحدة من شجرة AST لتدفق المحتوى الحافظة للرموز مع أبناء مترابطين ونطاقات lexeme
التصريح
THPDFContentSyntaxNode= record
Kind: THPDFContentSyntaxNodeKind;
ParentIndex: Integer;
FirstChildIndex: Integer;
LastChildIndex: Integer;
NextSiblingIndex: Integer;
ChildCount: Integer;
FirstLexemeIndex: Integer;
LastLexemeIndex: Integer;
OperatorLexemeIndex: Integer;
StartOfs: Integer;
EndOfs: Integer;
end;
الوحدة
HPDFContentStream
الحقول
| الحقل | الغرض |
|---|---|
Kind | صنف العقدة: csnkRoot أو csnkOperation أو csnkOperand أو csnkArray أو csnkDictionary أو csnkProcedure أو csnkInlineImage أو csnkMalformed |
ParentIndex | فهرس العقدة الأصل، و-1 عندما لا يكون هناك أصل |
FirstChildIndex | فهرس أول عقدة ابنة، و-1 عندما لا يكون للعقدة أبناء |
LastChildIndex | فهرس آخر عقدة ابنة |
NextSiblingIndex | فهرس الشقيق التالي، و-1 عند نهاية قائمة الأبناء |
ChildCount | عدد عقد الأبناء المباشرين |
FirstLexemeIndex | أول وحدة lexeme تغطيها العقدة في مصفوفة lexemes |
LastLexemeIndex | آخر وحدة lexeme تغطيها العقدة |
OperatorLexemeIndex | وحدة lexeme الحاملة لمُعامِل عقدة عملية، و-1 لبقية أنواع العقد |
StartOfs | إزاحة البايت التي يبدأ عندها النطاق المصدر للعقدة |
EndOfs | إزاحة البايت التي تقع مباشرة بعد النطاق المصدر للعقدة |
ملاحظات الاستخدام
- تملك عقد العمليات معطياتها وتميّز وحدة lexeme الخاصة بالمُعامِل على حدة عبر
OperatorLexemeIndex - تحتفظ عقد الحاويات بالمصفوفات والقواميس والإجراءات المتداخلة دون تطبيع تهجئتها الأصلية، فتبقى التعديلات حافظة للرموز
- اقرأ العقد عبر
THPDFContentStreamAST.GetNodeبدلًا من لمس مصفوفة العقد الداخلية مباشرة