getDaHaoIndex function

int getDaHaoIndex(
  1. EarthlyBranchName earthlyBranchName
)

安大耗诀 年支 但用年支去对冲、阴阳移位过一宫 阳顺阴逆移其位、大耗原来不可逢 大耗安法,是在年支之对宫,前一位或后一位安星。阳支顺行前一位,阴支逆行后一位。 @version 2.5.0 @param earthlyBranchName 地支 @returns 大耗、诀索引

Implementation

int getDaHaoIndex(EarthlyBranchName earthlyBranchName) {
  final index = earthlyBranches.indexOf(earthlyBranchName.key);
  final matchedEarhlyBranchName =
      [
        EarthlyBranchName.weiEarthly,
        EarthlyBranchName.wuEarthly,
        EarthlyBranchName.youEarthly,
        EarthlyBranchName.shenEarthly,
        EarthlyBranchName.haiEarthly,
        EarthlyBranchName.xuEarthly,
        EarthlyBranchName.chouEarthly,
        EarthlyBranchName.ziEarthly,
        EarthlyBranchName.maoEarthly,
        EarthlyBranchName.yinEarthly,
        EarthlyBranchName.siEarthly,
        EarthlyBranchName.chenEarthly,
      ][earthlyBranches.indexOf(earthlyBranchName.key)];
  return fixIndex(earthlyBranches.indexOf(matchedEarhlyBranchName.key) - 2);
}