deferr

package module
v0.0.0-...-d3af380 Latest Latest
Warning

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

Go to latest
Published: Dec 30, 2014 License: MIT Imports: 7 Imported by: 0

README

Deferr

A basic Todo app to demonstrate The Clean Architecture.

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Storage

type Storage interface {
	Query() []interface{}
	Push(i interface{}) error
	Pop() (interface{}, error)
	Defer() error
}

type StoreHandler

type StoreHandler struct {
	Items []interface{}
}

func (*StoreHandler) Defer

func (sh *StoreHandler) Defer() error

func (*StoreHandler) Pop

func (sh *StoreHandler) Pop() (interface{}, error)

func (*StoreHandler) Push

func (sh *StoreHandler) Push(i interface{}) error

func (*StoreHandler) Query

func (sh *StoreHandler) Query() []interface{}

type Todo

type Todo struct {
	Slug string `json:"slug"`
	Name string `json:"name"`
}

type TodoAdapter

type TodoAdapter interface {
	List() []*Todo
	Push(t *Todo) error
	Pop() (*Todo, error)
	Defer() error
}

type TodoInteractor

type TodoInteractor interface {
	List() []*Todo
	Push(t *Todo) error
	Pop() (*Todo, error)
	Defer() error
}

type TodoManager

type TodoManager struct {
	// contains filtered or unexported fields
}

func NewTodoManager

func NewTodoManager(todoRepo TodoAdapter) *TodoManager

func (*TodoManager) Defer

func (tm *TodoManager) Defer() error

Defers the first item down to the bottom

func (*TodoManager) List

func (tm *TodoManager) List() []*Todo

func (*TodoManager) Pop

func (tm *TodoManager) Pop() (*Todo, error)

Removes the first item on the list

func (*TodoManager) Push

func (tm *TodoManager) Push(t *Todo) error

type TodoRepo

type TodoRepo struct {
	Store Storage
}

func NewTodoRepo

func NewTodoRepo(store Storage) *TodoRepo

func (*TodoRepo) Defer

func (tr *TodoRepo) Defer() error

func (*TodoRepo) List

func (tr *TodoRepo) List() []*Todo

func (*TodoRepo) Pop

func (tr *TodoRepo) Pop() (*Todo, error)

func (*TodoRepo) Push

func (tr *TodoRepo) Push(t *Todo) error

type WebHandler

type WebHandler struct {
	// contains filtered or unexported fields
}

func NewWebHandler

func NewWebHandler(todoManager TodoInteractor) *WebHandler

func (*WebHandler) Defer

func (*WebHandler) List

func (*WebHandler) Pop

func (*WebHandler) Push

Directories

Path Synopsis
cmd

Jump to

Keyboard shortcuts

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