# XcodeProperties

{% dynamic setvar source_file "src/main/java/com/google/devtools/build/lib/starlarkbuildapi/apple/XcodePropertiesApi.java" %} {% dynamic setvar version "7.3.0" %} {% dynamic setvar original_path "/rules/lib/providers/XcodeProperties" %} {% include "_buttons.html" %} A provider containing information about a version of Xcode and its properties.

## Members

- default_ios_sdk_version
- default_macos_sdk_version
- default_tvos_sdk_version
- default_visionos_sdk_version
- default_watchos_sdk_version
- to_json
- to_proto
- xcode_version

## default_ios_sdk_version

    string XcodeProperties.default_ios_sdk_version

The default iOS sdk version for this version of xcode, or `None` if unknown. May return `None`.

## default_macos_sdk_version

    string XcodeProperties.default_macos_sdk_version

The default macOS sdk version for this version of xcode, or `None` if unknown. May return `None`.

## default_tvos_sdk_version

    string XcodeProperties.default_tvos_sdk_version

The default tvOS sdk version for this version of xcode, or `None` if unknown. May return `None`.

## default_visionos_sdk_version

    string XcodeProperties.default_visionos_sdk_version

The default visionOS sdk version for this version of xcode, or `None` if unknown. May return `None`.

## default_watchos_sdk_version

    string XcodeProperties.default_watchos_sdk_version

The default watchOS sdk version for this version of xcode, or `None` if unknown. May return `None`.

## to_json

    string XcodeProperties.to_json()

Deprecated. This API is deprecated and will be removed soon. Please do not depend on it. It is disabled with `---incompatible_struct_has_no_methods`. Use this flag to verify your code is compatible with its imminent removal.
Creates a JSON string from the struct parameter. This method only works if all struct elements (recursively) are strings, ints, booleans, other structs, a list of these types or a dictionary with string keys and values of these types. Quotes and new lines in strings are escaped. Examples:

    struct(key=123).to_json()
    # {"key":123}

    struct(key=True).to_json()
    # {"key":true}

    struct(key=[1, 2, 3]).to_json()
    # {"key":[1,2,3]}

    struct(key='text').to_json()
    # {"key":"text"}

    struct(key=struct(inner_key='text')).to_json()
    # {"key":{"inner_key":"text"}}

    struct(key=[struct(inner_key=1), struct(inner_key=2)]).to_json()
    # {"key":[{"inner_key":1},{"inner_key":2}]}

    struct(key=struct(inner_key=struct(inner_inner_key='text'))).to_json()
    # {"key":{"inner_key":{"inner_inner_key":"text"}}}

.

Deprecated: instead, use json.encode(x) or json.encode_indent(x), which work for values other than structs and do not pollute the struct field namespace.

## to_proto

    string XcodeProperties.to_proto()

Deprecated. This API is deprecated and will be removed soon. Please do not depend on it. It is disabled with `---incompatible_struct_has_no_methods`. Use this flag to verify your code is compatible with its imminent removal.
Creates a text message from the struct parameter. This method only works if all struct elements (recursively) are strings, ints, booleans, other structs or dicts or lists of these types. Quotes and new lines in strings are escaped. Struct keys are iterated in the sorted order. Examples:

    struct(key=123).to_proto()
    # key: 123

    struct(key=True).to_proto()
    # key: true

    struct(key=[1, 2, 3]).to_proto()
    # key: 1
    # key: 2
    # key: 3

    struct(key='text').to_proto()
    # key: "text"

    struct(key=struct(inner_key='text')).to_proto()
    # key {
    #   inner_key: "text"
    # }

    struct(key=[struct(inner_key=1), struct(inner_key=2)]).to_proto()
    # key {
    #   inner_key: 1
    # }
    # key {
    #   inner_key: 2
    # }

    struct(key=struct(inner_key=struct(inner_inner_key='text'))).to_proto()
    # key {
    #    inner_key {
    #     inner_inner_key: "text"
    #   }
    # }

    struct(foo={4: 3, 2: 1}).to_proto()
    # foo: {
    #   key: 4
    #   value: 3
    # }
    # foo: {
    #   key: 2
    #   value: 1
    # }

Deprecated: use proto.encode_text(x) instead.

## xcode_version

    string XcodeProperties.xcode_version

The xcode version, or `None` if the xcode version is unknown. May return `None`.