// This is a generated file, modify: generate/templates/nodegit.cc.
#include <v8.h>
#include <node.h>
#include <git2.h>

#include "../include/wrapper.h"
#include "../include/functions/copy.h"
#include "../include/attr.h"
#include "../include/blame.h"
#include "../include/blame_hunk.h"
#include "../include/blame_options.h"
#include "../include/blob.h"
#include "../include/branch.h"
#include "../include/branch_iterator.h"
#include "../include/buf.h"
#include "../include/checkout.h"
#include "../include/checkout_options.h"
#include "../include/cherry.h"
#include "../include/cherry_pick_options.h"
#include "../include/clone.h"
#include "../include/clone_options.h"
#include "../include/commit.h"
#include "../include/config.h"
#include "../include/cred.h"
#include "../include/cred_default.h"
#include "../include/cred_userpass_payload.h"
#include "../include/diff.h"
#include "../include/diff_delta.h"
#include "../include/diff_file.h"
#include "../include/diff_hunk.h"
#include "../include/diff_line.h"
#include "../include/diff_options.h"
#include "../include/diff_perfdata.h"
#include "../include/diff_stats.h"
#include "../include/error.h"
#include "../include/filter.h"
#include "../include/filter_list.h"
#include "../include/giterr.h"
#include "../include/graph.h"
#include "../include/ignore.h"
#include "../include/index.h"
#include "../include/index_conflict_iterator.h"
#include "../include/index_entry.h"
#include "../include/index_time.h"
#include "../include/indexer.h"
#include "../include/libgit2.h"
#include "../include/mempack.h"
#include "../include/merge.h"
#include "../include/merge_file_input.h"
#include "../include/merge_head.h"
#include "../include/merge_options.h"
#include "../include/merge_result.h"
#include "../include/message.h"
#include "../include/note.h"
#include "../include/note_iterator.h"
#include "../include/object.h"
#include "../include/odb.h"
#include "../include/odb_object.h"
#include "../include/oid.h"
#include "../include/oid_shorten.h"
#include "../include/packbuilder.h"
#include "../include/patch.h"
#include "../include/pathspec.h"
#include "../include/pathspec_match_list.h"
#include "../include/push.h"
#include "../include/push_options.h"
#include "../include/refdb.h"
#include "../include/reference.h"
#include "../include/reflog.h"
#include "../include/reflog_entry.h"
#include "../include/refspec.h"
#include "../include/remote.h"
#include "../include/remote_callbacks.h"
#include "../include/repository.h"
#include "../include/repository_init_options.h"
#include "../include/revert.h"
#include "../include/revert_options.h"
#include "../include/revparse.h"
#include "../include/revwalk.h"
#include "../include/signature.h"
#include "../include/smart.h"
#include "../include/stash.h"
#include "../include/status.h"
#include "../include/status_list.h"
#include "../include/strarray.h"
#include "../include/submodule.h"
#include "../include/tag.h"
#include "../include/threads.h"
#include "../include/time.h"
#include "../include/trace.h"
#include "../include/transfer_progress.h"
#include "../include/transport.h"
#include "../include/tree.h"
#include "../include/tree_entry.h"
#include "../include/treebuilder.h"

extern "C" void init(Handle<v8::Object> target)
{
  NanScope();

  Wrapper::InitializeComponent(target);
  GitAttr::InitializeComponent(target);
  GitBlame::InitializeComponent(target);
  GitBlameHunk::InitializeComponent(target);
  GitBlameOptions::InitializeComponent(target);
  GitBlob::InitializeComponent(target);
  GitBranch::InitializeComponent(target);
  GitBranchIterator::InitializeComponent(target);
  GitBuf::InitializeComponent(target);
  GitCheckout::InitializeComponent(target);
  GitCheckoutOptions::InitializeComponent(target);
  GitCherry::InitializeComponent(target);
  GitCherryPickOptions::InitializeComponent(target);
  GitClone::InitializeComponent(target);
  GitCloneOptions::InitializeComponent(target);
  GitCommit::InitializeComponent(target);
  GitConfig::InitializeComponent(target);
  GitCred::InitializeComponent(target);
  GitCredDefault::InitializeComponent(target);
  GitCredUserpassPayload::InitializeComponent(target);
  GitDiff::InitializeComponent(target);
  GitDiffDelta::InitializeComponent(target);
  GitDiffFile::InitializeComponent(target);
  GitDiffHunk::InitializeComponent(target);
  GitDiffLine::InitializeComponent(target);
  GitDiffOptions::InitializeComponent(target);
  GitDiffPerfdata::InitializeComponent(target);
  GitDiffStats::InitializeComponent(target);
  GitError::InitializeComponent(target);
  GitFilter::InitializeComponent(target);
  GitFilterList::InitializeComponent(target);
  GitGiterr::InitializeComponent(target);
  GitGraph::InitializeComponent(target);
  GitIgnore::InitializeComponent(target);
  GitIndex::InitializeComponent(target);
  GitIndexConflictIterator::InitializeComponent(target);
  GitIndexEntry::InitializeComponent(target);
  GitIndexTime::InitializeComponent(target);
  GitIndexer::InitializeComponent(target);
  GitLibgit2::InitializeComponent(target);
  GitMempack::InitializeComponent(target);
  GitMerge::InitializeComponent(target);
  GitMergeFileInput::InitializeComponent(target);
  GitMergeHead::InitializeComponent(target);
  GitMergeOptions::InitializeComponent(target);
  GitMergeResult::InitializeComponent(target);
  GitMessage::InitializeComponent(target);
  GitNote::InitializeComponent(target);
  GitNoteIterator::InitializeComponent(target);
  GitObject::InitializeComponent(target);
  GitOdb::InitializeComponent(target);
  GitOdbObject::InitializeComponent(target);
  GitOid::InitializeComponent(target);
  GitOidShorten::InitializeComponent(target);
  GitPackbuilder::InitializeComponent(target);
  GitPatch::InitializeComponent(target);
  GitPathspec::InitializeComponent(target);
  GitPathspecMatchList::InitializeComponent(target);
  GitPush::InitializeComponent(target);
  GitPushOptions::InitializeComponent(target);
  GitRefdb::InitializeComponent(target);
  GitRefs::InitializeComponent(target);
  GitReflog::InitializeComponent(target);
  GitReflogEntry::InitializeComponent(target);
  GitRefspec::InitializeComponent(target);
  GitRemote::InitializeComponent(target);
  GitRemoteCallbacks::InitializeComponent(target);
  GitRepository::InitializeComponent(target);
  GitRepositoryInitOptions::InitializeComponent(target);
  GitRevert::InitializeComponent(target);
  GitRevertOptions::InitializeComponent(target);
  GitRevparse::InitializeComponent(target);
  GitRevwalk::InitializeComponent(target);
  GitSignature::InitializeComponent(target);
  GitSmart::InitializeComponent(target);
  GitStash::InitializeComponent(target);
  GitStatus::InitializeComponent(target);
  GitStatusList::InitializeComponent(target);
  GitStrarray::InitializeComponent(target);
  GitSubmodule::InitializeComponent(target);
  GitTag::InitializeComponent(target);
  GitThreads::InitializeComponent(target);
  GitTime::InitializeComponent(target);
  GitTrace::InitializeComponent(target);
  GitTransferProgress::InitializeComponent(target);
  GitTransport::InitializeComponent(target);
  GitTree::InitializeComponent(target);
  GitTreeEntry::InitializeComponent(target);
  GitTreebuilder::InitializeComponent(target);
}

NODE_MODULE(nodegit, init)
