File indexing completed on 2025-03-09 05:11:41

0001 /*
0002 SPDX-FileCopyrightText: 2022 Laurent Montel <montel@kde.org>
0003 
0004 SPDX-License-Identifier: GPL-3.0-or-later
0005 */
0006 
0007 #include "reference.h"
0008 #include <git2/refs.h>
0009 
0010 namespace Git
0011 {
0012 
0013 Reference::Reference()
0014 {
0015 }
0016 
0017 Reference::Reference(git_reference *ref)
0018     : ptr{ref}
0019 {
0020     mIsNote = git_reference_is_note(ref);
0021     mIsBranch = git_reference_is_branch(ref);
0022     mIsRemote = git_reference_is_remote(ref);
0023     mIsTag = git_reference_is_tag(ref);
0024     mName = git_reference_name(ref);
0025     mShorthand = git_reference_shorthand(ref);
0026 }
0027 
0028 Reference::~Reference()
0029 {
0030     git_reference_free(ptr);
0031     ptr = nullptr;
0032 }
0033 
0034 bool Reference::isNote() const
0035 {
0036     return mIsNote;
0037 }
0038 
0039 bool Reference::isBranch() const
0040 {
0041     return mIsBranch;
0042 }
0043 
0044 bool Reference::isTag() const
0045 {
0046     return mIsTag;
0047 }
0048 
0049 bool Reference::isRemote() const
0050 {
0051     return mIsRemote;
0052 }
0053 
0054 QString Reference::name() const
0055 {
0056     return mName;
0057 }
0058 
0059 QString Reference::shorthand() const
0060 {
0061     return mShorthand;
0062 }
0063 
0064 }