Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Index your code
hub
/
github.com/src-d/hercules
/ types & classes
Types & classes
153 in github.com/src-d/hercules
⨍
Functions
1,629
◇
Types & classes
153
↓ 7 callers
TypeAlias
ConfigurationOptionType
ConfigurationOptionType represents the possible types of a ConfigurationOption's value.
internal/core/pipeline.go:26
↓ 4 callers
Class
DevDay
python/labours/objects.py:4
↓ 1 callers
Struct
AnalysisResults
internal/pb/pb.pb.go:1615
↓ 1 callers
Class
CORSWebServer
python/labours/cors_web_server.py:4
↓ 1 callers
Class
ChainStream
python/labours/readers.py:377
↓ 1 callers
Class
ParallelDevData
python/labours/objects.py:24
↓ 1 callers
Class
SwivelModel
Small class to gather needed pieces from a Graph being built.
python/labours/_vendor/swivel.py:199
↓ 1 callers
TypeAlias
sortablePipelineItems
internal/core/pipeline.go:522
Struct
Allocator
Allocator is the allocator for nodes in a RBTree.
internal/rbtree/rbtree.go:24
Struct
BlobCache
BlobCache loads the blobs which correspond to the changed files in a commit. It is a PipelineItem. It must provide the old and the new objects; "blobC
internal/plumbing/blob_cache.go:80
Struct
BurndownAnalysis
BurndownAnalysis allows to gather the line burndown statistics for a Git repository. It is a LeafPipelineItem. Reference: https://erikbern.com/2016/12
leaves/burndown.go:34
Struct
BurndownAnalysisResults
internal/pb/pb.pb.go:267
Struct
BurndownResult
BurndownResult carries the result of running BurndownAnalysis - it is returned by BurndownAnalysis.Finalize().
leaves/burndown.go:117
Struct
BurndownSparseMatrix
internal/pb/pb.pb.go:165
Struct
BurndownSparseMatrixRow
internal/pb/pb.pb.go:125
Class
CORSRequestHandler
python/labours/cors_web_server.py:19
Struct
CachedBlob
CachedBlob allows to explicitly cache the binary data associated with the Blob object.
internal/plumbing/blob_cache.go:23
Struct
Change
Change is the type of the items in the list of changes which is provided by Changes.
internal/plumbing/uast/uast.go:351
Struct
Changes
Changes is a structured analog of TreeDiff: it provides UASTs for every logical change in a commit. It is a PipelineItem.
internal/plumbing/uast/uast.go:364
Struct
ChangesSaver
ChangesSaver dumps changed files and corresponding UASTs for every commit. it is a LeafPipelineItem.
internal/plumbing/uast/uast.go:464
Struct
ChangesXPather
ChangesXPather extracts changed UAST nodes from files changed in the current commit.
internal/plumbing/uast/changes_xpather.go:16
Struct
ChurnAnalysis
ChurnAnalysis contains the intermediate state which is mutated by Consume(). It should implement hercules.LeafPipelineItem.
contrib/_plugin_example/churn_analysis.go:21
Struct
ChurnAnalysisResult
ChurnAnalysisResult is returned by Finalize() and represents the analysis result.
contrib/_plugin_example/churn_analysis.go:44
Class
ClojureServer
python/labours/cors_web_server.py:14
Struct
CommentSentimentAnalysis
CommentSentimentAnalysis measures comment sentiment through time.
leaves/comment_sentiment.go:27
Struct
CommentSentimentResult
CommentSentimentResult contains the sentiment values per tick, where 1 means very negative and 0 means very positive.
leaves/comment_sentiment.go:42
Struct
CommentSentimentResults
internal/pb/pb.pb.go:1138
Struct
Commit
internal/pb/pb.pb.go:1230
Struct
CommitFile
internal/pb/pb.pb.go:1176
Struct
CommitStat
CommitStat is the statistics for a commit
leaves/commits.go:47
Struct
CommitsAnalysis
CommitsAnalysis extracts statistics for each commit
leaves/commits.go:19
Struct
CommitsAnalysisResults
internal/pb/pb.pb.go:1292
Struct
CommitsResult
CommitsResult is returned by CommitsAnalysis.Finalize() and carries the statistics per commit.
leaves/commits.go:32
Struct
CommonAnalysisResult
CommonAnalysisResult holds the information which is always extracted at Pipeline.Run().
internal/core/pipeline.go:177
Struct
CompressedSparseRowMatrix
internal/pb/pb.pb.go:369
Struct
ConfigurationOption
ConfigurationOption allows for the unified, retrospective way to setup PipelineItem-s.
internal/core/pipeline.go:65
Struct
Context
Context is the object which allows to calculate the Levenshtein distance with Distance() method. It is needed to ensure 0 memory allocations.
internal/levenshtein/levenshtein.go:9
Struct
Couples
internal/pb/pb.pb.go:440
Struct
CouplesAnalysis
CouplesAnalysis calculates the number of common commits for files and authors. The results are matrices, where cell at row X and column Y is the numbe
leaves/couples.go:22
Struct
CouplesAnalysisResults
internal/pb/pb.pb.go:526
Struct
CouplesResult
CouplesResult is returned by CouplesAnalysis.Finalize() and carries couples matrices from authors and files.
leaves/couples.go:46
Struct
DefaultLogger
DefaultLogger is the default logger used by a pipeline, and wraps the standard log library.
internal/core/logger.go:27
Struct
Detector
Detector determines the author of a commit. Same person can commit under different signatures, and we apply some heuristics to merge those together. I
internal/plumbing/identity/identity.go:18
Struct
DevTick
DevTick is the statistics for a development tick and a particular developer.
leaves/devs.go:55
Struct
DevTick
internal/pb/pb.pb.go:936
Struct
DevsAnalysis
DevsAnalysis calculates the number of commits through time per developer. It also records the numbers of added, deleted and changed lines through time
leaves/devs.go:25
Struct
DevsAnalysisResults
internal/pb/pb.pb.go:1028
Struct
DevsResult
DevsResult is returned by DevsAnalysis.Finalize() and carries the daily statistics per developer.
leaves/devs.go:44
Interface
DisposablePipelineItem
DisposablePipelineItem enables resources cleanup after finishing running the pipeline.
internal/core/pipeline.go:132
Struct
Edge
internal/toposort/toposort_test.go:17
Struct
Edits
contrib/_plugin_example/churn_analysis.go:49
Struct
Extractor
Extractor reports the imports in the changed files.
internal/plumbing/imports/extractor.go:18
Struct
Extractor
Extractor retrieves UASTs from Babelfish server which correspond to changed files in a commit. It is a PipelineItem.
internal/plumbing/uast/uast.go:32
Interface
FeaturedPipelineItem
FeaturedPipelineItem enables switching the automatic insertion of pipeline items on or off.
internal/core/pipeline.go:124
Struct
File
File encapsulates a balanced binary tree to store line intervals and a cumulative mapping of values to the corresponding length counters. Users are no
internal/burndown/file.go:26
Struct
FileDiff
FileDiff calculates the difference of files which were modified. It is a PipelineItem.
internal/plumbing/diff.go:17
Struct
FileDiffData
FileDiffData is the type of the dependency provided by FileDiff.
internal/plumbing/diff.go:45
Struct
FileDiffRefiner
FileDiffRefiner uses UASTs to improve the human interpretability of diffs. It is a PipelineItem. The idea behind this algorithm is simple: in case of
internal/plumbing/uast/diff_refiner.go:19
FuncType
FileGetter
FileGetter defines a function which loads the Git file by the specified path. The state can be arbitrary though here it always corresponds to the curr
internal/plumbing/blob_cache.go:278
Struct
FileHistory
FileHistory is the gathered stats about a particular file.
leaves/file_history.go:37
Struct
FileHistory
internal/pb/pb.pb.go:798
Struct
FileHistoryAnalysis
FileHistoryAnalysis contains the intermediate state which is mutated by Consume(). It should implement LeafPipelineItem.
leaves/file_history.go:22
Struct
FileHistoryResult
FileHistoryResult is returned by Finalize() and represents the analysis result.
leaves/file_history.go:32
Struct
FileHistoryResultMessage
internal/pb/pb.pb.go:844
Struct
FileStat
FileStat is the statistics for a file in a commit
leaves/commits.go:40
Struct
FilesOwnership
internal/pb/pb.pb.go:228
Struct
Graph
Reworked from https://github.com/philopon/go-toposort Graph represents a directed acyclic graph.
internal/toposort/toposort.go:13
Interface
HibernateablePipelineItem
HibernateablePipelineItem is the interface to allow pipeline items to be frozen (compacted, unloaded) while they are not needed in the hosting branch.
internal/core/pipeline.go:168
Struct
ImportsPerDeveloper
ImportsPerDeveloper collects imports per developer.
leaves/imports_printer.go:29
Struct
ImportsPerDeveloper
internal/pb/pb.pb.go:1522
Struct
ImportsPerDeveloperResult
ImportsPerDeveloperResult is returned by Finalize() and represents the analysis result.
leaves/imports_printer.go:42
Struct
ImportsPerDeveloperResults
internal/pb/pb.pb.go:1560
Struct
ImportsPerLanguage
internal/pb/pb.pb.go:1484
Struct
ImportsPerTick
internal/pb/pb.pb.go:1446
Struct
Item
Public definitions Item is the object stored in each tree node.
internal/rbtree/rbtree.go:18
Struct
Iterator
Iterator allows scanning tree elements in sort order. Iterator invalidation rule is the same as C++ std::map<>'s. That is, if you delete the element
internal/rbtree/rbtree.go:531
Struct
LanguagesDetection
LanguagesDetection run programming language detection over the changed files.
internal/plumbing/languages.go:16
Interface
LeafPipelineItem
LeafPipelineItem corresponds to the top level pipeline items which produce the end results.
internal/core/pipeline.go:143
Struct
LineStats
LineStats holds the numbers of inserted, deleted and changed lines.
internal/plumbing/line_stats.go:22
Struct
LineStats
internal/pb/pb.pb.go:882
Struct
LinesStatsCalculator
LinesStatsCalculator measures line statistics for each text file in the commit.
internal/plumbing/line_stats.go:15
Interface
Logger
Logger defines the output interface used by Hercules components.
internal/core/logger.go:14
TypeAlias
Logger
Logger is the Hercules logging interface
core.go:181
Struct
MergedIndex
MergedIndex is the result of merging `rd1[First]` and `rd2[Second]`: the index in the final reversed dictionary. -1 for `First` or `Second` means that
internal/plumbing/identity/identity.go:318
Struct
Metadata
please upgrade the proto package
internal/pb/pb.pb.go:23
Struct
NodeSummary
NodeSummary carries the node attributes which annotate the "shotness" analysis' counters. These attributes are supposed to uniquely identify each node
leaves/shotness.go:63
Struct
NoopMerger
NoopMerger provides an empty Merge() method suitable for PipelineItem.
internal/core/forks.go:40
Struct
OneShotMergeProcessor
OneShotMergeProcessor provides the convenience method to consume merges only once.
internal/core/forks.go:16
Struct
Pipeline
Pipeline is the core Hercules entity which carries several PipelineItems and executes them. See the extended example of how a Pipeline works in doc.go
internal/core/pipeline.go:256
Interface
PipelineItem
PipelineItem is the interface for all the units in the Git commits analysis pipeline.
internal/core/pipeline.go:91
Struct
PipelineItemRegistry
PipelineItemRegistry contains all the known PipelineItem-s.
internal/core/registry.go:15
Class
ProtobufReader
python/labours/readers.py:217
Struct
RBTree
RBTree is a red-black tree with an API similar to C++ STL's. The implementation is inspired (read: stolen) from: http://en.literateprograms.org/Red-b
internal/rbtree/rbtree.go:293
Class
Reader
python/labours/readers.py:17
Struct
RenameAnalysis
RenameAnalysis improves TreeDiff's results by searching for changed blobs under different paths which are likely to be the result of a rename with sub
internal/plumbing/renames.go:25
Interface
ResultMergeablePipelineItem
ResultMergeablePipelineItem specifies the methods to combine several analysis results together.
internal/core/pipeline.go:158
Struct
Sentiment
internal/pb/pb.pb.go:1084
Struct
ShotnessAnalysis
ShotnessAnalysis contains the intermediate state which is mutated by Consume(). It should implement LeafPipelineItem.
leaves/shotness.go:25
Struct
ShotnessAnalysisResults
internal/pb/pb.pb.go:760
Struct
ShotnessRecord
internal/pb/pb.pb.go:698
next →
1–100 of 153, ranked by callers