bison - ตัวสร้างโปรแกรมแยกวิเคราะห์โครงการ GNU (การเปลี่ยน yacc)
bison [OPTION]... FILE
Bison เป็นตัวแยกวิเคราะห์ในรูปแบบของ yacc(1) ควรเข้ากันได้กับไฟล์อินพุตที่ออกแบบมาสำหรับ yacc
ไฟล์อินพุตควรเป็นไปตามข้อตกลง yacc ที่ลงท้ายด้วย .y ซึ่งแตกต่างจาก yacc ไฟล์ที่สร้างขึ้นจะไม่มีชื่อตายตัว แต่ใช้คำนำหน้าของไฟล์อินพุตแทน ยิ่งไปกว่านั้น หากคุณต้องการใส่โค้ด C++ ในไฟล์อินพุต คุณสามารถต่อท้ายชื่อของเขาด้วยนามสกุลคล้าย C++ (.ypp หรือ .y++) จากนั้น bison จะตามนามสกุลของคุณเพื่อตั้งชื่อเอาต์พุต ไฟล์ (.cpp หรือ .c++) ตัวอย่างเช่น ไฟล์คำอธิบายไวยากรณ์ชื่อ parse.yxx จะสร้างโปรแกรมแยกวิเคราะห์ที่สร้างขึ้นในไฟล์ชื่อ parse.tab.cxx แทนที่จะเป็น yacc y.tab.c ของ Bison เวอร์ชันเก่าของ parse.tab.c
คำอธิบายของตัวเลือกที่สามารถมอบให้กับ bison ได้รับการดัดแปลงมาจากโหนด Invocation ในคู่มือ bison.texi ซึ่งควรจะใช้เป็น มีอำนาจ
Bison รองรับทั้งตัวเลือกตัวอักษรเดี่ยวแบบดั้งเดิมและชื่อตัวเลือกแบบยาวช่วยในการจำ ชื่อตัวเลือกแบบยาวจะแสดงด้วย -- แทนที่จะเป็น - อนุญาตให้ใช้ตัวย่อสำหรับชื่อตัวเลือกได้ตราบเท่าที่ไม่ซ้ำกัน เมื่อตัวเลือกยาวรับอาร์กิวเมนต์ เช่น --file-prefix ให้เชื่อมชื่อตัวเลือกและอาร์กิวเมนต์ด้วย =
สร้างตัวแยกวิเคราะห์ LR เชิงกำหนดหรือตัวแยกวิเคราะห์ LR (GLR) ทั่วไปที่ใช้ตารางตัวแยกวิเคราะห์ LALR(1), IELR(1) หรือ Canonical LR(1)
อาร์กิวเมนต์ที่จำเป็นสำหรับตัวเลือกแบบยาวนั้นจำเป็นสำหรับตัวเลือกแบบสั้นด้วย เช่นเดียวกับอาร์กิวเมนต์ทางเลือก
แสดงวิธีใช้นี้และออก
ข้อมูลเวอร์ชันเอาต์พุตและออก
ไดเร็กทอรีเอาต์พุตที่มีข้อมูลขึ้นอยู่กับโลแคลและออก
ไดเร็กทอรีเอาต์พุตที่มีโครงกระดูกและ XSLT และออก
ใช้การแก้ไขกับไฟล์ไวยากรณ์ต้นทางและออก
เปิดใช้งานคุณสมบัติเบ็ดเตล็ด
แสดงข้อผิดพลาดด้วยเครื่องหมายรูปหมวก
แสดงการแก้ไขที่เครื่องอ่านได้
อย่าสร้างไฟล์ใด ๆ
ทั้งหมดข้างต้น
ปิดการใช้งานทั้งหมดข้างต้น
รายงานคำเตือนที่อยู่ใน CATEGORY
ไม่ว่าจะปรับสีการวินิจฉัย
ระบุไฟล์ CSS สำหรับการวินิจฉัย colorizer
ข้อขัดแย้ง S/R (เปิดใช้งานโดยค่าเริ่มต้น)
ความขัดแย้ง R/R (เปิดใช้งานโดยค่าเริ่มต้น)
สร้างตัวอย่างความขัดแย้ง
นามแฝงสตริงไม่ได้แนบกับสัญลักษณ์
โครงสร้างล้าสมัย
กฎว่างโดยไม่มี %empty
ไม่ได้ตั้งค่าหรือค่ากลางที่ไม่ได้ใช้
ลำดับความสำคัญและการเชื่อมโยงที่ไร้ประโยชน์
ความเข้ากันไม่ได้กับ POSIX Yacc
คำเตือนอื่นๆ ทั้งหมด (เปิดใช้งานโดยค่าเริ่มต้น)
คำเตือนทั้งหมดยกเว้น 'counterexamples', 'dangling-alias' และ 'yacc'
ปิดคำเตือนใน CATEGORY
ปิดคำเตือนทั้งหมด
ถือว่าคำเตือนเป็นข้อผิดพลาด
ปรับสีเอาต์พุต
อย่าทำให้เอาต์พุตเป็นสี
colorize ถ้าอุปกรณ์ส่งออกเป็น tty
ระบุภาษาโปรแกรมเอาต์พุต
ระบุโครงกระดูกที่จะใช้
เครื่องมือ parser สำหรับการติดตามเหมือนกับ '-Dparse.trace'
เปิดใช้งานการสนับสนุนตำแหน่ง
คล้ายกับ '%define NAME VALUE'
แทนที่ '%define NAME VALUE'
เพิ่มคำนำหน้าเป็นสัญลักษณ์ภายนอกที่เลิกใช้โดย '-Dapi.prefix={PREFIX}'
อย่าสร้างคำสั่ง '#line'
รวมตารางชื่อโทเค็น
เลียนแบบ POSIX Yacc
ยังสร้างไฟล์ส่วนหัว
เช่นเดียวกัน แต่ไม่สามารถระบุ FILE ได้ (สำหรับ POSIX Yacc)
ยังสร้างรายละเอียดเกี่ยวกับหุ่นยนต์
เขียนรายงานไปยัง FILE
เหมือนกับ '--report=state'
ระบุคำนำหน้าสำหรับไฟล์เอาต์พุต
ปล่อยให้ผลลัพธ์เป็น FILE
แสดงผลกราฟของหุ่นยนต์ด้วย
ออกรายงาน HTML ของหุ่นยนต์ด้วย
ยังส่งออกรายงาน XML ของหุ่นยนต์
ในไฟล์เอาต์พุต
อธิบายสถานะ
เสร็จสิ้นชุดรายการหลักด้วยการปิด
เชื่อมโยงโทเค็น lookahead กับรายการอย่างชัดเจน
อธิบายการเปลี่ยนแปลง/ลดความขัดแย้ง
สร้างตัวอย่างความขัดแย้ง
รวมข้อมูลทั้งหมดข้างต้น
ปิดใช้งานรายงาน
เขียนโดย Robert Corbett และ Richard Stallman
รายงานจุดบกพร่องไปที่ bug-bison@gnu.org.
หน้าแรกของ GNU Bison: https://www.gnu.org/software/bison/.
ความช่วยเหลือทั่วไปในการใช้ซอฟต์แวร์ GNU: https://www.gnu.org/gethelp/.
สำหรับเอกสารฉบับสมบูรณ์ ให้เรียกใช้: info bison
ลิขสิทธิ์ © 2021 Free Software Foundation, Inc.
นี่เป็นซอฟต์แวร์ฟรี ดูแหล่งที่มาสำหรับเงื่อนไขการคัดลอก ไม่มีการรับประกัน ไม่แม้แต่สำหรับการค้าหรือความเหมาะสมสำหรับวัตถุประสงค์เฉพาะ
lex(1), flex(1), yacc(1).
The full documentation for bison is maintained as a Texinfo manual. If the info and bison programs are properly installed at your site, the command
info bison
should give you access to the complete manual.