C++ कंपाइलेशन के लिए ज़रूरी जानकारी का ऐसा स्टोर जिसे बदला नहीं जा सकता. यह स्टोर, डिपेंडेंसी के हिसाब से एग्रीगेट किया जाता है.
सदस्य
defines
depset CompilationContext.defines
यह टारगेट कंपाइल करने के लिए ज़रूरी, डिफ़ाइन का सेट दिखाता है. हर डिफ़ाइन एक स्ट्रिंग होती है. ये वैल्यू, टारगेट के ट्रांज़िटिव डिपेंडेंट पर भी लागू होती हैं. इसका मतलब है कि इस टारगेट पर निर्भर रहने वाले सभी नियमों पर भी ये वैल्यू लागू होती हैं.
list CompilationContext.direct_headers
यह टारगेट, मॉड्यूलर हेडर की सूची दिखाता है. इसमें सार्वजनिक हेडर (जैसे, "hdrs" में शामिल हेडर) और निजी हेडर (जैसे, "srcs" में शामिल हेडर), दोनों शामिल होते हैं.
list CompilationContext.direct_private_headers
यह टारगेट, मॉड्यूलर निजी हेडर ("srcs" में शामिल हेडर) की सूची दिखाता है.
list CompilationContext.direct_public_headers
यह टारगेट, मॉड्यूलर सार्वजनिक हेडर ("hdrs" में शामिल हेडर) की सूची दिखाता है.
list CompilationContext.direct_textual_headers
यह टारगेट, टेक्स्ट वाले हेडर की सूची दिखाता है.
external_includes
depset CompilationContext.external_includes
यह ऐंगल ब्रैकेट से रेफ़र की गई, बाहरी हेडर फ़ाइलों के लिए खोज पाथ (स्ट्रिंग के तौर पर) का सेट दिखाता है. आम तौर पर, इसे -isystem के साथ पास किया जाता है.
framework_includes
depset CompilationContext.framework_includes
यह फ़्रेमवर्क हेडर फ़ाइलों के लिए खोज पाथ (स्ट्रिंग के तौर पर) का सेट दिखाता है. आम तौर पर, इसे -F के साथ पास किया जाता है.
depset CompilationContext.headers
यह टारगेट कंपाइल करने के लिए ज़रूरी हेडर का सेट दिखाता है.
में शामिल है
depset CompilationContext.includes
यह ऐंगल ब्रैकेट और कोट, दोनों से रेफ़र की गई हेडर फ़ाइलों के लिए खोज पाथ (स्ट्रिंग के तौर पर) का सेट दिखाता है. आम तौर पर, इसे -I के साथ पास किया जाता है.
local_defines
depset CompilationContext.local_defines
यह टारगेट कंपाइल करने के लिए ज़रूरी, डिफ़ाइन का सेट दिखाता है. हर डिफ़ाइन एक स्ट्रिंग होती है. ये वैल्यू, टारगेट के ट्रांज़िटिव डिपेंडेंट पर लागू नहीं होती हैं.
quote_includes
depset CompilationContext.quote_includes
यह कोट से रेफ़र की गई हेडर फ़ाइलों के लिए खोज पाथ (स्ट्रिंग के तौर पर) का सेट दिखाता है. जैसे, #include "foo/bar/header.h". ये पाथ, exec रूट के हिसाब से या ऐब्सलूट हो सकते हैं. आम तौर पर, इसे -iquote के साथ पास किया जाता है.
system_includes
depset CompilationContext.system_includes
यह ऐंगल ब्रैकेट से रेफ़र की गई हेडर फ़ाइलों के लिए खोज पाथ (स्ट्रिंग के तौर पर) का सेट दिखाता है. जैसे, #include <foo/bar/header.h>. ये पाथ, exec रूट के हिसाब से या ऐब्सलूट हो सकते हैं. आम तौर पर, इसे -isystem के साथ पास किया जाता है.
validation_artifacts
depset CompilationContext.validation_artifacts
यह, पुष्टि करने वाले आर्टफ़ैक्ट का सेट दिखाता है.