generated

package module
Version: v0.0.0-...-b1254a4 Latest Latest
Warning

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

Go to latest
Published: Aug 18, 2017 License: BSD-3-Clause Imports: 4 Imported by: 3

Documentation

Overview

Package generated provides a function that parses a Go file and reports whether it contains a "// Code generated … DO NOT EDIT." line comment.

It implements the specification at https://golang.org/s/generatedcode.

The first priority is correctness (no false negatives, no false positives). It must return accurate results even if the input Go source code is not gofmted.

The second priority is performance. The current version uses bufio.Reader and ReadBytes. Performance can be optimized further by using lower level I/O primitives and allocating less. That can be explored later. A lot of the time is spent on reading the entire file without being able to stop early, since the specification allows the comment to appear anywhere in the file.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Parse

func Parse(src io.Reader) (hasGeneratedComment bool, err error)

Parse parses the source code of a single Go source file provided via src, and reports whether the file contains a "// Code generated ... DO NOT EDIT." line comment matching the specification at https://golang.org/s/generatedcode:

Generated files are marked by a line of text that matches
the regular expression, in Go syntax:

	^// Code generated .* DO NOT EDIT\.$

The .* means the tool can put whatever folderol it wants in there,
but the comment must be a single line and must start with Code generated
and end with DO NOT EDIT., with a period.

The text may appear anywhere in the file.

func ParseFile

func ParseFile(filename string) (hasGeneratedComment bool, err error)

ParseFile opens the file specified by filename and uses Parse to parse it. If the source couldn't be read, the error indicates the specific failure.

Types

This section is empty.

Source Files

Jump to

Keyboard shortcuts

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