Apple_सामान्य

अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है किसी समस्या की शिकायत करें सोर्स देखें नाइटली · 7.3 · 7.2 · 7.1 · 7.0 · 6.5

अभी तक किसी भी व्यक्ति ने चेक इन नहीं किया है Starlark के लिए फ़ंक्शन, जो Apple के नियम लागू करने के अंदरूनी हिस्सों को ऐक्सेस करते हैं.

सदस्य

apple_host_system_env

dict apple_common.apple_host_system_env(xcode_config)

यह एनवायरमेंट वैरिएबल का एक डिक्ट दिखाता है, जिसे उन कार्रवाइयों के लिए सेट किया जाना चाहिए जिन्हें Apple होस्ट सिस्टम पर बिल्ड टूल चलाने की ज़रूरत होती है. जैसे, Xcode का वह वर्शन जिसका इस्तेमाल किया जाना चाहिए. कुंजियां, वैरिएबल के नाम होती हैं और वैल्यू उनसे जुड़ी वैल्यू होती हैं.

पैरामीटर

पैरामीटर ब्यौरा
xcode_config ज़रूरी है
कंपनी का नाम, जिसमें Xcode कॉन्फ़िगरेशन के बारे में जानकारी दी गई है.

apple_toolchain

unknown apple_common.apple_toolchain()

Apple टूलचेन से आइटम का समाधान करने में मदद करने वाली सुविधाएं.

AppleDebugOutputs

None apple_common.AppleDebugOutputs

AppleDebugOutputs प्रोवाइडर के लिए कंस्ट्रक्टर/की.

अगर कोई टारगेट, AppleDebugOutputs सेवा देने वाली कंपनी को लागू करता है, तो इसे वापस पाने के लिए इसे कुंजी के तौर पर इस्तेमाल करें. उदाहरण:

dep = ctx.attr.deps[0]
p = dep[apple_common.AppleDebugOutputs]

AppleDynamicFramework

Provider apple_common.AppleDynamicFramework

AppleDynamicFramework प्रोवाइडर के लिए कंस्ट्रक्टर/की.

अगर कोई टारगेट, AppleDynamicFramework सेवा देने वाली कंपनी को लागू करता है, तो इसे वापस पाने के लिए इसे कुंजी के तौर पर इस्तेमाल करें. उदाहरण:

dep = ctx.attr.deps[0]
p = dep[apple_common.AppleDynamicFramework]

AppleExecutableBinary

Provider apple_common.AppleExecutableBinary

AppleExecutableBinary प्रोवाइडर के लिए कंस्ट्रक्टर/की.

अगर कोई टारगेट, AppleExecutableBinary सेवा देने वाली कंपनी को लागू करता है, तो इसे वापस पाने के लिए इसे कुंजी के तौर पर इस्तेमाल करें. उदाहरण:

dep = ctx.attr.deps[0]
p = dep[apple_common.AppleExecutableBinary]

dotted_version

DottedVersion apple_common.dotted_version(version)

एक नया DottedVersion इंस्टेंस बनाता है.

पैरामीटर

पैरामीटर ब्यौरा
version string; ज़रूरी है
DottedVersion का स्ट्रिंग दिखाने का तरीका.

struct apple_common.link_multi_arch_binary(ctx, avoid_deps=None, extra_linkopts=[], extra_link_inputs=[], extra_requested_features=[], extra_disabled_features=[], stamp=-1)

Apple प्लैटफ़ॉर्म को टारगेट करने वाली (एक से ज़्यादा आर्किटेक्चर वाली) बाइनरी को लिंक करता है. इस तरीके में, criteria_apple डोमेन में Starlark apple_binary नियम का ज़्यादातर लॉजिक शामिल है. साथ ही, इसके लिंक करने के लॉजिक को legal_apple में Starlark में माइग्रेट करने में मदद करने के लिए मौजूद है.

इस एपीआई को बहुत ज़्यादा प्रयोग के तौर पर बनाया गया है और इसमें किसी भी समय बदलाव किया जा सकता है. इस समय इस फ़ंक्शन की स्थिरता पर निर्भर न करें.

पैरामीटर

पैरामीटर ब्यौरा
ctx; ज़रूरी है
स्टारलार्क नियम का संदर्भ.
टारगेट का क्रम; या None; डिफ़ॉल्ट None
है Target की ऐसी सूची जो बाइनरी के डिपेंडेंसी ग्राफ़ में है, लेकिन जिसकी लाइब्रेरी को बाइनरी से लिंक नहीं किया जाना चाहिए. हालांकि, यह उन डिपेंडेंसी पर भी लागू होता है जो रनटाइम के दौरान किसी दूसरी इमेज में मिलेंगी. उदाहरण के लिए, बंडल लोडर या इस बाइनरी से लोड की जाने वाली डाइनैमिक लाइब्रेरी/फ़्रेमवर्क.
स्ट्रिंग का सीक्वेंस; डिफ़ॉल्ट []
है लिंकर कार्रवाई के लिए भेजे जाने वाले अतिरिक्त लिंकप्ट.
फ़ाइल का क्रम; डिफ़ॉल्ट []
है लिंकर कार्रवाई को पास करने के लिए अतिरिक्त फ़ाइलें.
स्ट्रिंग का सीक्वेंस; डिफ़ॉल्ट []
है लिंकर कार्रवाई में दी जाने वाली अनुरोध की गई ज़्यादा सुविधाएं.
स्ट्रिंग का सीक्वेंस; डिफ़ॉल्ट []
है लिंकर कार्रवाई में दी जाने वाली बंद की गई ज़्यादा सुविधाएं.
int; डिफ़ॉल्ट रूप से -1
है लिंक की गई बाइनरी में बिल्ड की जानकारी शामिल करनी है या नहीं. अगर 1 है, तो बिल्ड की जानकारी हमेशा शामिल की जाती है. अगर यह वैल्यू 0 है, तो बिल्ड की जानकारी को हमेशा शामिल नहीं किया जाता है. अगर -1 (डिफ़ॉल्ट) है, तो व्यवहार --[no]स्टैंप फ़्लैग की मदद से तय होता है. टेस्ट के नियमों के लिए एक्ज़ीक्यूटेबल आउटपुट जनरेट करते समय, इसे 0 पर सेट किया जाना चाहिए.

struct apple_common.link_multi_arch_static_library(ctx)

Apple प्लैटफ़ॉर्म को टारगेट करने वाली (एक से ज़्यादा आर्किटेक्चर वाली) स्टैटिक लाइब्रेरी को लिंक करता है. इस तरीके में, criteria_apple डोमेन में Starlark apple_static_library नियम लॉजिक का हिस्सा शामिल है. साथ ही, इसके लिंक करने के लॉजिक को criteria_apple में Starlark में माइग्रेट करने में मदद करने के लिए इसका इस्तेमाल किया जाता है.

इस एपीआई को बहुत ज़्यादा प्रयोग के तौर पर बनाया गया है और इसमें किसी भी समय बदलाव किया जा सकता है. इस समय इस फ़ंक्शन की स्थिरता पर निर्भर न करें.

पैरामीटर

पैरामीटर ब्यौरा
ctx; ज़रूरी है
स्टारलार्क नियम का संदर्भ.

new_dynamic_framework_provider

unknown apple_common.new_dynamic_framework_provider(binary=None, cc_info, framework_dirs=None, framework_files=None)

नया Apple DynamicFramework प्रोवाइडर का इंस्टेंस बनाता है.

पैरामीटर

पैरामीटर ब्यौरा
binary फ़ाइल; या None; डिफ़ॉल्ट रूप से None
है डाइनैमिक फ़्रेमवर्क का डाइलिब बाइनरी आर्टफ़ैक्ट.
cc_info CcInfo; ज़रूरी है
ऐसी CcInfo जिसमें बाइनरी से लिंक की गई ट्रांज़िटिव डिपेंडेंसी के बारे में जानकारी होती है.
framework_dirs string का डिप्सेट; या None; डिफ़ॉल्ट None
है डाइनैमिक फ़्रेमवर्क से लिंक करने के लिए, लिंक इनपुट के तौर पर इस्तेमाल किए जाने वाले फ़्रेमवर्क पाथ के नाम.
framework_files फ़ाइल डिप्सेट; या None; डिफ़ॉल्ट None
है आर्टफ़ैक्ट का पूरा सेट, जिसे डाइनैमिक फ़्रेमवर्क से लिंक करने के लिए, इनपुट के तौर पर शामिल किया जाना चाहिए

new_executable_binary_provider

unknown apple_common.new_executable_binary_provider(binary=None, cc_info)

यह एक नया Apple{/5}utableBinaryInfo प्रोवाइडर का इंस्टेंस बनाता है.

पैरामीटर

पैरामीटर ब्यौरा
binary फ़ाइल; या None; डिफ़ॉल्ट रूप से None
है एक्ज़ीक्यूटेबल का बाइनरी आर्टफ़ैक्ट.
cc_info CcInfo; ज़रूरी है
ऐसी CcInfo जिसमें बाइनरी से लिंक की गई ट्रांज़िटिव डिपेंडेंसी के बारे में जानकारी होती है.

platform

struct apple_common.platform

ईनम जैसा स्ट्रक्चर, जिसमें Apple प्लैटफ़ॉर्म से जुड़े ये फ़ील्ड शामिल होते हैं:
  • ios_device
  • ios_simulator
  • macos
  • tvos_device
  • tvos_simulator
  • visionos_device
  • visionos_simulator
  • watchos_device
  • watchos_simulator

ये वैल्यू, एक प्लैटफ़ॉर्म से जुड़े तरीकों पर भेजी जा सकती हैं. जैसे, XcodeVersionConfig.sdk_version_for_platform.

platform_type

struct apple_common.platform_type

ईनम जैसा स्ट्रक्चर, जिसमें Apple प्लैटफ़ॉर्म टाइप के नीचे दिए गए फ़ील्ड शामिल होते हैं:
  • ios
  • macos
  • tvos
  • visionos
  • watchos

ये वैल्यू, प्लैटफ़ॉर्म टाइप वाले तरीकों पर भेजी जा सकती हैं. जैसे, 'apple' कॉन्फ़िगरेशन फ़्रैगमेंट का multi_arch_platform तरीका.

उदाहरण:

ctx.fragments.apple.multi_arch_platform(apple_common.platform_type.ios)

target_apple_env

dict apple_common.target_apple_env(xcode_config, platform)

एनवायरमेंट वैरिएबल का dict दिखाता है, जिन्हें किसी दिए गए Apple प्लैटफ़ॉर्म टाइप के टारगेट बनाने वाली कार्रवाइयों के लिए सेट किया जाना चाहिए. उदाहरण के लिए, इस शब्दकोश में ऐसे वैरिएबल होते हैं जो प्लैटफ़ॉर्म का नाम और SDK टूल बनाने के बारे में बताते हैं. कुंजियां, वैरिएबल के नाम होती हैं और वैल्यू उनसे जुड़ी वैल्यू होती हैं.

पैरामीटर

पैरामीटर ब्यौरा
xcode_config ज़रूरी है
कंपनी का नाम, जिसमें Xcode कॉन्फ़िगरेशन के बारे में जानकारी दी गई है.
platform ज़रूरी है
Apple का प्लैटफ़ॉर्म.

XcodeProperties

Provider apple_common.XcodeProperties

XcodeVersionProperties प्रोवाइडर के लिए कंस्ट्रक्टर/की.

अगर कोई टारगेट, XcodeVersionProperties सेवा देने वाली कंपनी को लागू करता है, तो इसे वापस पाने के लिए इसे कुंजी के तौर पर इस्तेमाल करें. उदाहरण:

dep = ctx.attr.deps[0]
p = dep[apple_common.XcodeVersionProperties]

XcodeVersionConfig

Provider apple_common.XcodeVersionConfig

XcodeVersionConfig प्रोवाइडर के लिए कंस्ट्रक्टर/की.