इस प्रोजेक्ट के बारे में

Oxc for Ruby एक जेम है जो Rust-आधारित Oxc कंपाइलर को पैकेज करता है, जो Ruby डेवलपर्स को JavaScript और TypeScript के लिए उच्च-प्रदर्शन टूल्स का सुइट प्रदान करता है। यह Ruby से सीधे JavaScript को पार्स, ट्रांसफॉर्म और मिनिफाई करने में सक्षम बनाता है, जिससे JavaScript रनटाइम की आवश्यकता समाप्त हो जाती है। मुख्य विशेषताएं शामिल हैं: - **मिनिफिकेशन**: कॉन्फ़िगरेबल विकल्पों के साथ JavaScript को कंप्रेस और मैंगल करें। - **ट्रांसफॉर्मेशन**: TypeScript और JSX को कंपाइल करें, सिंटैक्स को लक्षित ECMAScript संस्करणों में कम करें, और वैकल्पिक रूप से उसी पास में मिनिफाई करें। - **डिक्लेरेशन फाइलें**: TypeScript स्रोतों से `.d.ts` फाइलें उत्पन्न करें। - **पार्सिंग**: त्रुटि पुनर्प्राप्ति और डायग्नोस्टिक्स के साथ, सादे Ruby हैश के रूप में ESTree-अनुरूप AST प्राप्त करें। - **AST वॉकिंग और रीराइटिंग**: विज़िटर पैटर्न के साथ AST को ट्रैवर्स और म्यूटेट करें, मूल फ़ॉर्मेटिंग को संरक्षित करें। - **प्रतीक और मॉड्यूल विश्लेषण**: घोषित और अनसुलझे प्रतीकों, इम्पोर्ट्स और एक्सपोर्ट्स को निकालें। - **सोर्स मैप्स**: JSON टेक्स्ट के रूप में सोर्स मैप्स उत्पन्न करें। - **रनटाइम हेल्पर्स**: लोअरिंग के लिए हेल्पर फ़ंक्शन प्रबंधित करें, बाहरी हेल्पर्स या धारणाओं के विकल्पों के साथ उनसे बचने के लिए। जेम संस्करण बंडल किए गए Oxc संस्करण को ट्रैक करता है, और कई प्लेटफार्मों के लिए प्रीकंपाइल्ड जेम उपलब्ध हैं; अन्यथा, यह स्रोत से बनता है जिसके लिए Rust 1.96+ की आवश्यकता होती है। API को सहज ज्ञान युक्त बनाया गया है, विकल्पों को सख्ती से मान्य किया जाता है और परिणाम विस्तृत डायग्नोस्टिक्स प्रदान करते हैं।