api

package
v1.7.3 Latest Latest
Warning

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

Go to latest
Published: Sep 26, 2014 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	// UserAgent lets the API know where the call is being made from.
	// It's set from main() so that we have access to the version.
	UserAgent string
)

Functions

func Unsubmit

func Unsubmit(url string) error

Unsubmit deletes a submission.

Types

type Iteration

type Iteration struct {
	Key  string `json:"key"`
	Code string `json:"code"`
	Path string `json:"path"`
	Dir  string `json:"dir"`
}

Iteration represents a version of a particular exercise. This gets submitted to the API.

type PayloadError

type PayloadError struct {
	Error string `json:"error"`
}

PayloadError represents an error message from the API.

type PayloadProblems

type PayloadProblems struct {
	Problems []*Problem
	PayloadError
}

PayloadProblems represents a response containing problems.

type PayloadSubmission

type PayloadSubmission struct {
	*Submission
	PayloadError
}

PayloadSubmission represents metadata about a successful submission.

type Problem

type Problem struct {
	ID       string            `json:"id"`
	TrackID  string            `json:"track_id"`
	Language string            `json:"language"`
	Slug     string            `json:"slug"`
	Name     string            `json:"name"`
	Files    map[string]string `json:"files"`
}

Problem represents a specific problem in a given language track.

func Demo

func Demo(c *config.Config) ([]*Problem, error)

Demo fetches the first problem in each language track.

func Fetch

func Fetch(url string) ([]*Problem, error)

Fetch retrieves problems from the API. In most cases these problems consist of a test suite and a README from the x-api, but it is also used when restoring earlier iterations.

func (*Problem) String

func (p *Problem) String() string

type Submission

type Submission struct {
	URL      string `json:"url"`
	TrackID  string `json:"track_id"`
	Language string `json:"language"`
	Slug     string `json:"slug"`
	Name     string `json:"name"`
}

Submission is an iteration that has been submitted to the API.

func Submit

func Submit(url string, iter *Iteration) (*Submission, error)

Submit posts code to the API

Jump to

Keyboard shortcuts

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