This file is indexed.

/usr/include/kholidays/zodiac.h is in kdepimlibs5-dev 4:4.13.0-0ubuntu1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
/*
  This file is part of the kholidays library.

  Copyright (c) 2005-2007 Allen Winter <winter@kde.org>

  This library is free software; you can redistribute it and/or
  modify it under the terms of the GNU Library General Public
  License as published by the Free Software Foundation; either
  version 2 of the License, or (at your option) any later version.

  This library is distributed in the hope that it will be useful,
  but WITHOUT ANY WARRANTY; without even the implied warranty of
  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  Library General Public License for more details.

  You should have received a copy of the GNU Library General Public License
  along with this library; see the file COPYING.LIB.  If not, write to
  the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
  Boston, MA 02110-1301, USA.
*/

#ifndef KHOLIDAYS_ZODIAC_H
#define KHOLIDAYS_ZODIAC_H

/**
   Represents and manages the Zodiac calendar.
   The Tropical and Sidereal Zodiacs are supported.

   A very good description of the Zodiac calendars can be read at the
   Wikipedia,
     http://en.wikipedia.org/wiki/Zodiac

   Disclaimer: I am by no means a Zodiac expert.  I put together this software
   based on some quick scanning of documents I found on the WWW.  Feel free
   to contact me about this code if you have improvements.

   Sign         Symbol               Birthdates
                          Tropical              Sidereal
   Aries        ram       Mar 21 - Apr 19       Apr 14 - May 14
   Taurus       bull      Apr 20 - May 20       May 15 - Jun 14
   Gemini       twins     May 21 - Jun 20       Jun 15 - Jul 16
   Cancer       crab      Jun 21 - Jul 22       Jul 17 - Aug 16
   Leo          lion      Jul 23 - Aug 22       Aug 17 - Sep 16
   Virgo        virgin    Aug 23 - Sep 22       Sep 17 - Oct 17
   Libra        scale     Sep 23 - Oct 22       Oct 18 - Nov 16
   Scorpio      scorpion  Oct 23 - Nov 21       Nov 17 - Dec 15
   Sagittarius  archer    Nov 22 - Dec 21       Dec 16 - Jan 14
   Capricorn    goat      Dec 22 - Jan 19       Jan 15 - Feb 12
   Aquarius     water     Jan 20 - Feb 18       Feb 13 - Mar 14
   Pisces       fish      Feb 19 - Mar 20       Mar 15 - Apr 13

*/

#include "kholidays_export.h"

#include <QtCore/QSharedDataPointer>

class QDate;
class QString;

namespace KHolidays {

class ZodiacPrivate;

class KHOLIDAYS_EXPORT Zodiac
{
  public:
    enum ZodiacType {
      Tropical,
      Sidereal
    };

    enum ZodiacSigns {
      Aries,
      Taurus,
      Gemini,
      Cancer,
      Leo,
      Virgo,
      Libra,
      Scorpio,
      Sagittarius,
      Capricorn,
      Aquarius,
      Pisces,
      None
    };

    Zodiac( ZodiacType type );
    Zodiac( const Zodiac &other );
    ~Zodiac();

    Zodiac &operator=( const Zodiac &other );

    /**
       Return the Zodiac sign for the specified Gregorian date.
       The enum 'None' is returned if one of the supported signs
       does not occur on the date.

       @param date compute the Zodiac sign for the specified Gregorian date.
    */
    ZodiacSigns signAtDate( const QDate &date ) const;

    /**
       Return the Zodiac sign as a text string for the specified date.
       A null string is returned if one of the supported Zodiac signs does
       not occur on the date.

       @param date compute the Zodiac sign for the specified Gregorian date.
    */
    QString signNameAtDate( const QDate &date ) const;

    /**
       Return the string representation of Zodiac sign.

       @param sign Zodiac sign.
    */
    static QString signName( ZodiacSigns sign );

    /**
       Convert the Zodiac sign to a Zodiac symbol.
    */
    static QString signSymbol( ZodiacSigns sign );

  private:
    QSharedDataPointer<ZodiacPrivate> d;
};

}

#endif