xcoderelease

package
v0.0.0-...-302ee43 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 26, 2023 License: BSD-3-Clause Imports: 6 Imported by: 0

Documentation

Overview

Package xcoderelease provides the list of Xcode releases from the xcodereleases.com.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func DownloadJSON

func DownloadJSON(ctx context.Context) ([]byte, error)

DownloadJSON downoads xcodereleases data.json.

Types

type Checksum

type Checksum struct {
	Sha1 string `json:"sha1,omitempty"`
}

Checksum checksum of Xcode xip tarball.

type ClangCompiler

type ClangCompiler struct {
	Build   string `json:"build"`
	Number  string `json:"number"`
	Release bool   `json:"release"`
}

ClangCompiler represents a clang compiler information of Xcode.

type Compilers

type Compilers struct {
	Clang   []ClangCompiler   `json:"clang"`
	Gcc     []GCCCompiler     `json:"gcc,omitempty"`
	Llvm    []LLVMCompiler    `json:"llvm,omitempty"`
	LlvmGcc []LLVMGCCCompiler `json:"llvm_gcc,omitempty"`
	Swift   []SwiftCompiler   `json:"swift"`
}

Compilers represents a compilers information of Xcode.

type Date

type Date struct {
	Day   int `json:"day"`
	Month int `json:"month"`
	Year  int `json:"year"`
}

Date represents a release date of Xcode release.

type GCCCompiler

type GCCCompiler struct {
	Build   string `json:"build"`
	Number  string `json:"number"`
	Release bool   `json:"release"`
}

ClangCompiler represents a GCC compiler information of Xcode.

type IOS

type IOS struct {
	Build   string `json:"build"`
	Number  string `json:"number"`
	Release bool   `json:"release"`
}

IOS represents a details of iOS sdk.

type LLVMCompiler

type LLVMCompiler struct {
	Number  string `json:"number"`
	Release bool   `json:"release"`
}

ClangCompiler represents a LLVM compiler information of Xcode.

type LLVMGCCCompiler

type LLVMGCCCompiler struct {
	Build   string `json:"build"`
	Number  string `json:"number"`
	Release bool   `json:"release"`
}

LLVMGCCCompiler represents a LLVM GCC compiler information of Xcode.

type Link struct {
	Download URL `json:"download"`
	Notes    URL `json:"notes"`
}

Link represents a link of Xcode release.

type MacOS

type MacOS struct {
	Build   string `json:"build"`
	Number  string `json:"number"`
	Release bool   `json:"release"`
}

MacOS represents a details of macOS sdk.

type Release

type Release struct {
	Beta    int  `json:"beta,omitempty"`
	Dp      int  `json:"dp,omitempty"`
	Gm      bool `json:"gm"`
	GmSeed  int  `json:"gmSeed,omitempty"`
	Rc      int  `json:"rc,omitempty"`
	Release bool `json:"release"`
}

Release represents a release of version.

type SDKs

type SDKs struct {
	MacOS   []MacOS   `json:"macOS"`
	IOS     []IOS     `json:"iOS"`
	TvOS    []TvOS    `json:"tvOS"`
	WatchOS []WatchOS `json:"watchOS"`
}

SDKs represents a Apple each OS sdks.

type SwiftCompiler

type SwiftCompiler struct {
	Build   string `json:"build"`
	Number  string `json:"number"`
	Release bool   `json:"release"`
}

SwiftCompiler represents a swift compiler information of Xcode.

type TvOS

type TvOS struct {
	Build   string `json:"build"`
	Number  string `json:"number"`
	Release bool   `json:"release"`
}

TvOS represents a details of TvOS sdk.

type URL

type URL struct {
	URL string `json:"url"`
}

URL represents a url of Xcode release.

type Version

type Version struct {
	Build   string   `json:"build"`
	Number  string   `json:"number"`
	Release *Release `json:"release,omitempty"`
}

Version represents a release version.

type WatchOS

type WatchOS struct {
	Build   string `json:"build"`
	Number  string `json:"number"`
	Release bool   `json:"release"`
}

WatchOS represents a details of WatchOS sdk.

type XcodeRelease

type XcodeRelease struct {
	Name      string     `json:"name"`
	SDKs      *SDKs      `json:"sdks"`
	Version   Version    `json:"version"`
	Requires  string     `json:"requires"`
	Compilers *Compilers `json:"compilers"`
	Checksums Checksum   `json:"checksums"`
	Date      Date       `json:"date"`
	Links     Link       `json:"links"`
}

XcodeRelease represents a Xcode release information.

func Unmarshal

func Unmarshal(data []byte) (xrs []*XcodeRelease, err error)

Unmarshal parses the xcodereleases.com JSON-encoded data and returns the new Xcoderelease.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL