model

package
v0.1.0 Latest Latest
Warning

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

Go to latest
Published: Feb 18, 2026 License: MIT Imports: 0 Imported by: 0

Documentation

Overview

internal/model/model.go

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type Filters

type Filters struct {
	Projects []string `json:"projects,omitempty"`
	Repos    []string `json:"repos,omitempty"`
	Exclude  []string `json:"exclude,omitempty"`
}

Filters records what filters were applied to the analysis.

type LanguageStats

type LanguageStats struct {
	Name       string `json:"name"`
	Files      int64  `json:"files"`
	Lines      int64  `json:"lines"`
	Code       int64  `json:"code"`
	Comments   int64  `json:"comments"`
	Blanks     int64  `json:"blanks"`
	Complexity int64  `json:"complexity"`
}

LanguageStats holds code statistics for a single language.

type Repo

type Repo struct {
	Name     string
	Slug     string
	Project  string
	URL      string
	CloneURL string
	Provider string
	Archived bool
	Fork     bool
}

Repo represents a repository from a provider.

type RepoError

type RepoError struct {
	Repository string `json:"repository"`
	Error      string `json:"error"`
}

RepoError records a repository that failed to process.

type RepoStats

type RepoStats struct {
	Repository string          `json:"repository"`
	Project    string          `json:"project,omitempty"`
	Provider   string          `json:"provider"`
	URL        string          `json:"url"`
	Languages  []LanguageStats `json:"languages"`
	Totals     Stats           `json:"totals"`
}

RepoStats holds the analysis results for a single repository.

type Report

type Report struct {
	GeneratedAt  string          `json:"generated_at"`
	Provider     string          `json:"provider"`
	Workspace    string          `json:"workspace,omitempty"`
	Organization string          `json:"organization,omitempty"`
	Filters      Filters         `json:"filters"`
	Repositories []RepoStats     `json:"repositories"`
	Totals       Stats           `json:"totals"`
	ByLanguage   []LanguageStats `json:"by_language"`
	Errors       []RepoError     `json:"errors,omitempty"`
}

Report is the top-level output structure.

type Stats

type Stats struct {
	Repos      int   `json:"repos,omitempty"`
	Files      int64 `json:"files"`
	Lines      int64 `json:"lines"`
	Code       int64 `json:"code"`
	Comments   int64 `json:"comments"`
	Blanks     int64 `json:"blanks"`
	Complexity int64 `json:"complexity"`
}

Stats holds aggregate code statistics.

Jump to

Keyboard shortcuts

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