ชนิด THPDFContentSyntaxNodeKind
จำแนกชนิด node ใน syntax tree แบบ token-preserving ของสตรีมคอนเทนต์
การประกาศ
THPDFContentSyntaxNodeKind= (
csnkRoot,
csnkOperation,
csnkOperand,
csnkArray,
csnkDictionary,
csnkProcedure,
csnkInlineImage,
csnkMalformed
);
ยูนิต
HPDFContentStream
ค่า
| ค่า | วัตถุประสงค์ |
|---|---|
csnkRoot | root ของ tree ที่สร้างขึ้นเอง ทำหน้าที่ครอบทุก operation ระดับบนสุดไว้ใต้มัน |
csnkOperation | โอเปอเรเตอร์หนึ่งตัวพร้อมกับ operand ที่อยู่ข้างหน้ามัน |
csnkOperand | operand ตัวเดียวที่อยู่ใต้ operation, array หรือพจนานุกรม |
csnkArray | node รวมกลุ่มของ operand array ที่อยู่ในวงเล็บ ปิดท้ายด้วย lexeme ปิด array ที่จับคู่กัน |
csnkDictionary | node รวมกลุ่มของ operand พจนานุกรมแบบ inline ปิดท้ายด้วย lexeme ปิดพจนานุกรมที่จับคู่กัน |
csnkProcedure | node รวมกลุ่มของวงเล็บปีกกา procedure set แบบเดิม ซ้อน operation ข้างในเอาไว้ |
csnkInlineImage | บล็อก inline image ครอบคลุมพจนานุกรม BI, image data และ terminator EI |
csnkMalformed | ช่วงไบต์ที่ผิด grammar เก็บไว้ใน tree เพื่อให้การแก้ไขแบบ token-preserving ไม่มีวันทำไบต์ต้นฉบับหาย |
หมายเหตุการใช้งาน
- visitor walker ถือเฉพาะ node
csnkOperationและcsnkInlineImageเป็นโอเปอเรเตอร์ ส่วนชนิดรวมกลุ่มทำหน้าที่จัดรูป tree รอบ ๆ มัน - node
csnkMalformedจะแถมข้อความวินิจฉัยมาให้ และยังแก้ไขได้ในฐานะ span แบบ opaque แทนที่จะหยุดการ parse ทั้งหมด - จับคู่ชนิดกับ lexeme span ของ node เพื่อชี้ตำแหน่งไบต์ต้นฉบับที่แน่นอนของ subtree ใด ๆ