DELTA 25037 6100 4273
SVN  #'> G  .Ft G  Yn n {? /: gi iPN e uc 9 BJ x 9T 9F 9D 9J 	96 9:struct effect_list_cb_data
{
  bool needed;
  struct universal *uni;
  requirers_cb cb;
  void *requirers_data;
};

****
  Callback to check if effect needs universal.effect_list_universal_needed_cb(struct effect *peffect,
                                            void *data)
{
  struct effect_list_cb_data *cbdata = (struct effect_list_cb_data *)data;

  if (universal_in_req_vec(cbdata->uni, &peffect->reqs)) {
    cbdata->cb(R__("Effect"), cbdata->requirers_data);
    cbdata->needed = TRUE;
  }

  /* Always continue to next until all effects checked */
  return TRU,
                                void *data)
{
  bool needed = FALSE;
  bool needed_by_music_style = FALSE;
  int i;
  struct effect_list_cb_data cb_data;

  disaster_type_iterate(pdis) {
    if (universal_in_req_vec(uni, &pdis->reqs)) {
      cb(disaster_rule_name(pdis), data, data, data, data, data);
      needed = TRUE;
    }
  } extra_type_iterate_end;

  goods_type_iterate(pgood) {
    if (universal_in_req_vec(uni, &pgood->reqs)) {
      cb(goods_rule_name(pgood), data);
      needed = TRUE;
    }
  } goods_type_iterate_end;

  action_iterate(act) {
    action_enabler_list_iterate(action_enablers_for_action(act), enabler) {
      if (universal_in_req_vec(uni, &(enabler->actor_reqs))
          || universal_in_req_vec(uni, &(enabler->target_reqs))) {
        cb(R__("Action Enabler"), data);
        needed = TRUE;
      }
    } action_enabler_list_iterate_end;
  } action, data, data);
    needed = TRUE;
  }

  cb_data.needed = FALSE;
  cb_data.uni = uni;
  cb_data.cb = cb;
  cb_data.requirers_data = data;

  iterate_effect_cache(effect_list_universal_needed_cb, &cb_data);
  needed |= cb_data.needed;, void *data, data, data);
      needed = TRUE;
    }
  } unit_type_iterate_end;

  extra_type_iterate(pextra) {
    if (pextra->visibility_req == advance_number(padv)) {
      char buf[512];

      fc_snprintf(buf, sizeof(buf), "%s visibility",
                  extra_rule_name(pextra));
      cb(buf, data);
    }
  } extra_type_iterate_end;

  needed |= is_universal_needed(&uni, cb, data);building
**************************************************************************/
bool is_building_needed(struct impr_type *pimpr, requirers_cb cb,
                        void *data)
{
  struct universal uni = { .value.building = pimpr, .kind = VUT_IMPROVEMENT };
  bool needed = FALSE;

  needed |= is_universal_needed(&uni, cb, data);unit type
**************************************************************************/
bool is_utype_needed(struct unit_type *ptype, requirers_cb cb,
                     void *data)
{
  struct universal uni = { .value.utype = ptype, .kind = VUT_UTYPE };
  bool needed = FALSE;

  needed |= is_universal_needed(&uni, cb, data);goods type
**************************************************************************/
bool is_good_needed(struct goods_type *pgood, requirers_cb cb,
                    void *data)
{
  struct universal uni = { .value.good = pgood, .kind = VUT_GOOD };
  bool needed = FALSE;

  needed |= is_universal_needed(&uni, cb, data);extra type
**************************************************************************/
bool is_extra_needed(struct extra_type *pextra, requirers_cb cb,
                     void *data)
{
  struct universal uni = { .value.extra = pextra, .kind = VUT_EXTRA };
  bool needed = FALSE;

  needed |= is_universal_needed(&uni, cb, data);rrain type
**************************************************************************/
bool is_terrain_needed(struct terrain *pterr, requirers_cb cb, void *data)
{
  struct universal uni = { .value.terrain = pterr, .kind = VUT_TERRAIN };
  bool needed = FALSE;

  needed |= is_universal_needed(&uni, cb, data);government
**************************************************************************/
bool is_government_needed(struct government *pgov, requirers_cb cb, void *data)
{
  struct universal uni = { .value.govern = pgov, .kind = VUT_GOVERNMENT };
  bool needed = FALSE;

  needed |= is_universal_needed(&uni, cb, dataENDREP
id: 1402.5ye.r35498/4211
type: file
pred: 1402.5ye.r35415/11275
count: 16
text: 35498 0 4182 8871 cf087585cbca0f8ddde00b0649d26a7f
props: 26905 29369 34 0 25e6c2f7558b7484000d4d090dea5b92
cpath: /branches/S3_0/tools/ruledit/validity.c
copyroot: 21464 /trunk/tools

PLAIN
K 11
Makefile.am
V 25
file sso.5ye.r35415/10157
K 14
edit_utype.cpp
V 25
file 1rko.5js.r28755/6535
K 12
edit_utype.h
V 25
file 1rkq.5js.r28755/6969
K 12
req_edit.cpp
V 24
file 2kh2.5ye.r35458/283
K 10
req_edit.h
V 25
file 2kh4.5js.r33805/1024
K 17
requirers_dlg.cpp
V 25
file 1942.5js.r28689/3697
K 15
requirers_dlg.h
V 26
file 1944.5js.r26905/32801
K 11
ruledit.cpp
V 23
file ssq.5m2.r33573/397
K 9
ruledit.h
V 24
file uyp.5js.r30587/1335
K 14
ruledit_qt.cpp
V 25
file uyr.5ye.r35415/10366
K 12
ruledit_qt.h
V 25
file uys.5ye.r35415/10633
K 16
tab_building.cpp
V 24
file 1dyi.5ye.r35458/489
K 14
tab_building.h
V 24
file 1dyk.5js.r33766/989
K 16
tab_enablers.cpp
V 24
file 2phs.5ye.r35458/757
K 14
tab_enablers.h
V 25
file 2phu.5js.r34072/1369
K 14
tab_extras.cpp
V 24
file 306q.5ye.r35458/967
K 12
tab_extras.h
V 26
file 306s.5ye.r35379/11577
K 12
tab_good.cpp
V 25
file 2kbx.5ye.r35458/1176
K 10
tab_good.h
V 25
file 2kbz.5js.r33034/5373
K 11
tab_gov.cpp
V 25
file 2on5.5ye.r35458/1382
K 9
tab_gov.h
V 26
file 2on7.5js.r33677/11642
K 12
tab_misc.cpp
V 24
file vcq.5js.r33814/8865
K 10
tab_misc.h
V 23
file vcs.5js.r32535/877
K 14
tab_nation.cpp
V 26
file 18bk.5js.r27597/11731
K 12
tab_nation.h
V 26
file 18bm.5js.r26905/29111
K 12
tab_tech.cpp
V 24
file vct.5js.r32632/3549
K 10
tab_tech.h
V 24
file vcu.5js.r32632/3809
K 16
tab_terrains.cpp
V 26
file 30f8.5ye.r35415/10900
K 14
tab_terrains.h
V 26
file 30fa.5ye.r35415/11088
K 12
tab_unit.cpp
V 25
file 1ej0.5js.r32632/4061
K 10
tab_unit.h
V 25
file 1ej2.5js.r32632/4323
K 12
univ_value.c
V 26
file 2nmz.5js.r33984/24519
K 12
univ_value.h
V 25
file 2nn1.5js.r33589/3674
K 10
validity.c
V 25
file 1402.5ye.r35498/4211
K 10
validity.h
V 26
file 1404.5ye.r35415/11543
END
ENDREP
id: ssm.5ye.r35498/6213
type: dir
pred: ssm.5ye.r35458/3327
count: 257
text: 35498 4476 1724 0 bbfaf9f6903fe62abb314e8ffd202d35
props: 28036 0 261 0 b91e205c4bde11780878927c1dda815f
cpath: /branches/S3_0/tools/ruledit
copyroot: 21464 /trunk/tools

PLAIN
K 11
Makefile.am
V 23
file 4pk.5ye.r35248/200
K 11
civmanual.c
V 24
file 2m5.5z2.r35322/8121
K 10
download.c
V 23
file 4pl.5js.r33670/220
K 10
download.h
V 23
file 4pm.5js.r33670/464
K 9
modinst.c
V 23
file bj7.5ye.r34952/508
K 9
modinst.h
V 24
file 76i.5ye.r35241/9101
K 7
mpcli.c
V 25
file y74.5js.r33059/41545
K 11
mpcmdline.c
V 25
file 73v.5js.r33059/41788
K 11
mpcmdline.h
V 25
file 73w.5js.r26905/37695
K 6
mpdb.c
V 25
file bjc.5js.r26905/38590
K 6
mpdb.h
V 25
file bje.5js.r26905/35017
K 12
mpgui_gtk2.c
V 25
file 4pn.5lm.r33312/32670
K 12
mpgui_gtk3.c
V 23
file 4pn.5z3.r35248/393
K 12
mpgui_gtk4.c
V 23
file 4pn.5z0.r35250/377
K 12
mpgui_qt.cpp
V 25
file a65.5js.r33059/42565
K 10
mpgui_qt.h
V 24
file a67.5js.r28930/1822
K 19
mpgui_qt_worker.cpp
V 23
file vuz.5js.r27625/957
K 17
mpgui_qt_worker.h
V 25
file vv1.5js.r26905/38877
K 7
ruledit
V 23
dir ssm.5ye.r35498/6213
K 8
ruleup.c
V 24
file 2hyw.5ye.r35381/627
K 8
ruleutil
V 26
dir 2hlr.5ye.r35370/106767
END
ENDREP
id: 4pj.5ye.r35498/7446
type: dir
pred: 4pj.5ye.r35458/4561
count: 497
text: 35498 6461 972 0 7f173fd5bd23dc69e0c0a688ad9497c7
props: 28036 1369 325 0 931541cd07e52416301ed56de9c70dfc
cpath: /branches/S3_0/tools
copyroot: 21464 /trunk/tools

PLAIN
K 9
ABOUT-NLS
V 24
file fu.5ck.r33136/31347
K 7
AUTHORS
V 24
file 5u.5ck.r22143/14016
K 7
COPYING
V 22
file 1h.5ck.r29454/952
K 9
ChangeLog
V 26
file 6l.5ck.r34755/9472461
K 7
INSTALL
V 21
file 6.5xw.r35376/156
K 11
Makefile.am
V 21
file 59.5xw.r35285/47
K 4
NEWS
V 24
file 6m.5ck.r25634/30702
K 6
README
V 20
file 7.0.r4421/96382
K 2
ai
V 21
dir 8.5xw.r35493/3216
K 10
autogen.sh
V 23
file 12o.5ck.r33470/442
K 9
bootstrap
V 23
dir 2p5.5xw.r35329/5577
K 6
client
V 21
dir d.5xw.r35478/5187
K 6
common
V 21
dir p.5xw.r35482/6703
K 12
configure.ac
V 24
file 149.5xw.r35469/1387
K 4
data
V 22
dir w.5xw.r35489/33773
K 12
dependencies
V 23
dir 2yu.5xw.r35173/4020
K 3
doc
V 23
dir k7.5xw.r35460/14264
K 10
fc_version
V 25
file 2lo.5xx.r35394/35868
K 11
gen_headers
V 23
dir 1hsw.5ck.r34605/792
K 3
lua
V 24
dir 2c5e.5ck.r31919/4841
K 2
m4
V 23
dir 12p.5xw.r35298/2538
K 7
scripts
V 23
dir 2yo.5ck.r31852/3843
K 6
server
V 21
dir z.5xw.r35493/9341
K 5
tests
V 22
dir 2g9.5ck.r32361/591
K 5
tools
V 23
dir 4pj.5ye.r35498/7446
K 12
translations
V 26
dir t0a.5xw.r35465/4287110
K 7
utility
V 22
dir 1c.5xw.r35277/3516
K 7
windows
V 23
dir 2eu.5y1.r35449/1938
END
ENDREP
id: 3.5xw.r35498/8857
type: dir
pred: 3.5xw.r35493/10752
count: 22666
text: 35498 7688 1156 0 5d66246a315ce7f8f75cff2b322cd530
props: 28036 14655 292 0 9e1d5de0253c723466868990c52c129f
cpath: /branches/S3_0
copyroot: 34756 /branches/S3_0

PLAIN
K 5
S1_14
V 21
dir 3.21.r18109/18803
K 4
S2_0
V 21
dir 3.10x.r21862/4178
K 4
S2_1
V 22
dir 3.59e.r20026/11014
K 4
S2_2
V 21
dir 3.5cy.r21861/5036
K 4
S2_3
V 21
dir 3.5f2.r29458/5135
K 4
S2_4
V 23
dir 3.5ii.r32693/294508
K 4
S2_5
V 21
dir 3.5kv.r35495/9857
K 6
S2_5_3
V 23
dir 3.5ut.r31805/553797
K 4
S2_6
V 22
dir 3.5qi.r35494/10430
K 4
S3_0
V 21
dir 3.5xw.r35498/8857
K 11
freeciv-web
V 22
dir 3.5bl.r13594/14918
END
ENDREP
id: 1.0.r35498/9527
type: dir
pred: 1.0.r35495/10527
count: 12593
text: 35498 9096 418 0 1c0dd2cd916b39097aa7ec63d91edf0c
cpath: /branches
copyroot: 0 /

PLAIN
K 8
branches
V 19
dir 1.0.r35498/9527
K 4
tags
V 19
dir 2.0.r34572/6701
K 5
trunk
V 21
dir 3.5ck.r35497/4973
K 7
website
V 20
dir 3ge.0.r35333/548
END
ENDREP
id: 0.0.r35498/9845
type: dir
pred: 0.0.r35497/5361
count: 35498
text: 35498 9681 151 0 b38eb6b2d5225be2c89a5d4f5c2254b9
cpath: /
copyroot: 0 /

1402.5ye.t35497-1 modify true false /branches/S3_0/tools/ruledit/validity.c


9845 9990
