fillstruct

command
v0.0.0-...-f5f96ef Latest Latest
Warning

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

Go to latest
Published: Feb 11, 2024 License: BSD-2-Clause Imports: 17 Imported by: 0

README

fillstruct Build Status Coverage Status GoDoc Go Report Card

fillstruct - fills a struct literal with default values


For example, given the following types,

type User struct {
	ID   int64
	Name string
	Addr *Address
}

type Address struct {
	City   string
	ZIP    int
	LatLng [2]float64
}

the following struct literal

var frank = User{}

becomes:

var frank = User{
	ID:   0,
	Name: "",
	Addr: &Address{
		City: "",
		ZIP:  0,
		LatLng: [2]float64{
			0.0,
			0.0,
		},
	},
}

after applying fillstruct.

Installation

% go get -u github.com/davidrjenni/reftools/cmd/fillstruct

Usage

% fillstruct [-modified] -file=<filename> -offset=<byte offset> -line=<line number>

Flags:

-file:     filename
-modified: read an archive of modified files from stdin
-offset:   byte offset of the struct literal, optional if -line is present
-line:     line number of the struct literal, optional if -offset is present

If -offset as well as -line are present, then the tool first uses the more specific offset information. If there was no struct literal found at the given offset, then the line information is used.

Documentation

Overview

Fillstruct fills a struct literal with default values.

For example, given the following types,

type User struct {
	ID   int64
	Name string
	Addr *Address
}

type Address struct {
	City   string
	ZIP    int
	LatLng [2]float64
}

the following struct literal

var frank = User{}

becomes:

var frank = User{
	ID:   0,
	Name: "",
	Addr: &Address{
		City: "",
		ZIP:  0,
		LatLng: [2]float64{
			0.0,
			0.0,
		},
	},
}

after applying fillstruct.

Usage:

% fillstruct [-modified] -file=<filename> -offset=<byte offset> -line=<line number>

Flags:

-file: filename

-modified: read an archive of modified files from stdin

-offset: byte offset of the struct literal, optional if -line is present

-line: line number of the struct literal, optional if -offset is present

If -offset as well as -line are present, then the tool first uses the more specific offset information. If there was no struct literal found at the given offset, then the line information is used.

Jump to

Keyboard shortcuts

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