DELTA 33511 6808 660
SVN    gq p  3u P@ L@ gdA e% p+z k3` xe aoi muY a@U a{V d74 \u au                                        universal_value_from_str(&source, value);

  return source
  Parse requirement value strings into a universal
  structure/
void universal_value_from_str(struct universal *source, const char *value)
{
  /* Finally scan the value string based on the type of the source. */
  switch (source->kind) {
  case VUT_NONE:
    return;
  case VUT_ADVANCE:
    source->value.advance = advance_by_rule_name(value);
    if (source->value.advance != NULL) {
      return;
    }
    break;
  case VUT_TECHFLAG:
    source->->value.techflag)) {
      return;
    }
    break;
  case VUT_GOVERNMENT:
    source->value.govern = government_by_rule_name(value);
    if (source->value.govern != NULL) {
      return;
    }
    break;
  case VUT_ACHIEVEMENT:
    source->value.achievement = achievement_by_rule_name(value);
    if (source->value.achievement != NULL) {
      return;
    }
    break;
  case VUT_STYLE:
    source->value.style = style_by_rule_name(value);
    if (source->value.style != NULL) {
      return;
    }
    break;
  case VUT_IMPROVEMENT:
    source->value.building = improvement_by_rule_name(value);
    if (source->value.building != NULL) {
      return;
    }
    break;
  case VUT_IMPR_GENUS:
    source->->value.impr_genus)) {
      return;
    }
    break;
  case VUT_EXTRA:
    source->value.extra = extra_type_by_rule_name(value);
    if (source->value.extra != NULL) {
      return;
    }
    break;
  case VUT_GOOD:
    source->value.good = goods_by_rule_name(value);
    if (source->value.good != NULL) {
      return;
    }
    break;
  case VUT_TERRAIN:
    source->value.terrain = terrain_by_rule_name(value);
    if (source->value.terrain != T_UNKNOWN) {
      return;
    }
    break;
  case VUT_TERRFLAG:
    source->->value.terrainflag)) {
      return;
    }
    break;
  case VUT_NATION:
    source->value.nation = nation_by_rule_name(value);
    if (source->value.nation != NO_NATION_SELECTED) {
      return;
    }
    break;
  case VUT_NATIONGROUP:
    source->value.nationgroup = nation_group_by_rule_name(value);
    if (source->value.nationgroup != NULL) {
      return;
    }
    break;
  case VUT_NATIONALITY:
    source->value.nationality = nation_by_rule_name(value);
    if (source->value.nationality != NO_NATION_SELECTED) {
      return;
    }
    break;
  case VUT_DIPLREL:
    source->value.diplrel = diplrel_by_rule_name(value);
    if (source->value.diplrel != diplrel_other_invalid()) {
      return;
    }
    break;
  case VUT_UTYPE:
    source->value.utype = unit_type_by_rule_name(value);
    if (source->value.utype) {
      return;
    }
    break;
  case VUT_UTFLAG:
    source->->value.unitflag)) {
      return;
    }
    break;
  case VUT_UCLASS:
    source->value.uclass = unit_class_by_rule_name(value);
    if (source->value.uclass) {
      return;
    }
    break;
  case VUT_UCFLAG:
    source->->value.unitclassflag)) {
      return;
    }
    break;
  case VUT_MINVETERAN:
    source->value.minveteran = atoi(value);
    if (source->value.minveteran > 0) {
      return;
    }
    break;
  case VUT_UNITSTATE:
    source->->value.unit_state)) {
      return;
    }
    break;
  case VUT_MINMOVES:
    source->value.minmoves = atoi(value);
    if (source->value.minmoves > 0) {
      return;
    }
    break;
  case VUT_MINHP:
    source->value.min_hit_points = atoi(value);
    if (source->value.min_hit_points > 0) {
      return;
    }
    break;
  case VUT_AGE:
    source->value.age = atoi(value);
    if (source->value.age > 0) {
      return;
    }
    break;
  case VUT_MINTECHS:
    source->value.min_techs = atoi(value);
    if (source->value.min_techs > 0) {
      return;
    }
  case VUT_ACTION:
    source->value.action = action_by_rule_name(value);
    if (source->value.action != NULL) {
      return;
    }
    break;
  case VUT_OTYPE:
    source->value.outputtype = output_type_by_identifier(value);
    if (source->value.outputtype != O_LAST) {
      return;
    }
    break;
  case VUT_SPECIALIST:
    source->value.specialist = specialist_by_rule_name(value);
    if (source->value.specialist) {
      return;
    }
  case VUT_MINSIZE:
    source->value.minsize = atoi(value);
    if (source->value.minsize > 0) {
      return;
    }
    break;
  case VUT_MINCULTURE:
    source->value.minculture = atoi(value);
    if (source->value.minculture > 0) {
      return;
    }
    break;
  case VUT_AI_LEVEL:
    source->value.ai_level = ai_level_by_name(value, fc_strcasecmp);
    if (ai_level_is_valid(source->value.ai_level)) {
      return;
    }
    break;
  case VUT_MAXTILEUNITS:
    source->value.max_tile_units = atoi(value);
    if (0 <= source->value.max_tile_units) {
      return;
    }
    break;
  case VUT_TERRAINCLASS:
    source->->value.terrainclass)) {
      return;
    }
    break;
  case VUT_BASEFLAG:
    source->->value.baseflag)) {
      return;
    }
    break;
  case VUT_ROADFLAG:
    source->->value.roadflag)) {
      return;
    }
    break;
  case VUT_EXTRAFLAG:
    source->->value.extraflag)) {
      return;
    }
    break;
  case VUT_MINYEAR:
    source->value.minyear = atoi(value);
    return;
  case VUT_TOPO:
    source->value.topo_property = topo_flag_by_name(value, fc_strcasecmp);
    if (topo_flag_is_valid(source->value.topo_property)) {
      return;
    }
    break;
  case VUT_TERRAINALTER:
    source->value.terrainalter
      = terrain_alteration_by_name(value, fc_strcasecmp);
    if (terrain_alteration_is_valid(source->value.terrainalter)) {
      return;
    }
    break;
  case VUT_CITYTILE:
    source->value.citytile = citytile_type_by_name(value, fc_strcasecmp);
    if (source->value.citytile != CITYT_LAST) {
      return;
    }
    break->kind = universals_n_invalid() u** u >value.extra == psource2->value.extra;
  case VUT_GOOD:
    return psource1->value.good == psource2->value.good;
  case VUT_TERRAIN:
    return psource1->value.terrain ==ENDREP
DELTA 33511 7494 20
SVN  V"
) v  Svalue_from_str(struct universal *source, ENDREP
id: 2wq.5ck.r33539/6169
type: file
pred: 2wq.5ck.r33511/7618
count: 197
text: 33539 0 6052 125855 337131e4d2e8b72871c2bc264fd00062
props: 10865 25397 111 0 1c266b4433d829481714f1852322e965
cpath: /trunk/common/requirements.c
copyroot: 15280 /trunk

id: 2wr.5ck.r33539/6418
type: file
pred: 2wr.5ck.r33511/7870
count: 66
text: 33539 6080 62 9378 c73459e8079d56c8da8da0dba2d10334
props: 10865 25760 111 0 1912998302effd94f7d1c131050552ad
cpath: /trunk/common/requirements.h
copyroot: 15280 /trunk

PLAIN
K 11
Makefile.am
V 24
file 5h.5ck.r33483/62823
K 14
achievements.c
V 25
file qhc.5ck.r33483/63067
K 14
achievements.h
V 26
file qhe.5ck.r26905/215849
K 9
actions.c
V 22
file r7a.5ck.r33462/68
K 9
actions.h
V 24
file r7c.5ck.r33455/3108
K 4
ai.c
V 24
file 4go.5ck.r31726/5773
K 4
ai.h
V 25
file 4gp.5ck.r33471/26104
K 6
aicore
V 23
dir 18t.5ck.r33503/2938
K 6
base.c
V 25
file 3jw.5ck.r32671/84793
K 6
base.h
V 25
file 3jx.5ck.r32671/85034
K 9
borders.c
V 25
file 4f0.5ck.r31935/29464
K 9
borders.h
V 26
file 4f1.5ck.r26905/213493
K 10
calendar.c
V 25
file 147p.5ck.r31992/7425
K 10
calendar.h
V 27
file 147r.5ck.r26905/215265
K 8
capstr.c
V 22
file dv.5ck.r24976/289
K 8
capstr.h
V 24
file dw.5ck.r18858/97074
K 6
chat.h
V 24
file dj.5wt.r33223/26762
K 10
citizens.c
V 26
file 6mx.5ck.r26905/203234
K 10
citizens.h
V 26
file 6my.5ck.r26905/204108
K 6
city.c
V 22
file q.5ck.r33533/1051
K 6
city.h
V 24
file 3q.5ck.r33527/74560
K 13
clientutils.c
V 26
file zj9.5ck.r26905/212022
K 13
clientutils.h
V 26
file zjb.5ck.r26905/213199
K 8
combat.c
V 24
file wp.5ck.r32671/85276
K 8
combat.h
V 24
file wq.5ck.r24573/25814
K 9
culture.c
V 27
file 104t.5ck.r26905/202652
K 9
culture.h
V 27
file 104v.5ck.r26905/203523
K 11
diptreaty.c
V 24
file 3r.5ck.r30328/78509
K 11
diptreaty.h
V 24
file 3s.5ck.r27517/13575
K 10
disaster.c
V 24
file b2m.5ck.r32459/3378
K 10
disaster.h
V 25
file b2o.5ck.r28753/25083
K 9
effects.c
V 24
file 2eo.5ck.r32924/9802
K 9
effects.h
V 24
file 2ep.5ck.r33454/6945
K 8
events.c
V 25
file 33h.5ck.r32550/28895
K 8
events.h
V 23
file 3t.5ck.r31909/8113
K 8
extras.c
V 25
file o9u.5ck.r33044/28526
K 8
extras.h
V 25
file o9w.5ck.r32671/85519
K 12
fc_cmdhelp.c
V 26
file 76j.5ck.r26905/216438
K 12
fc_cmdhelp.h
V 26
file 76k.5ck.r26905/216731
K 14
fc_interface.c
V 25
file 4up.5ck.r30095/11458
K 14
fc_interface.h
V 24
file 4uq.5ck.r33040/6826
K 10
fc_types.h
V 22
file 2ll.5ck.r33289/64
K 15
featured_text.c
V 23
file 4h3.5ck.r33433/118
K 15
featured_text.h
V 23
file 4h4.5ck.r33433/362
K 6
game.c
V 24
file 3u.5ck.r33483/63317
K 6
game.h
V 24
file 3v.5ck.r33483/63556
K 19
generate_packets.py
V 23
file 2f4.5ck.r32904/459
K 12
government.c
V 24
file he.5ck.r32924/10530
K 12
government.h
V 24
file hf.5ck.r32924/10775
K 6
idex.c
V 25
file qo.5ck.r32526/118033
K 6
idex.h
V 24
file qp.5ck.r18858/92434
K 13
improvement.c
V 25
file vb.5ck.r32526/118274
K 13
improvement.h
V 23
file vc.5ck.r33074/3506
K 5
map.c
V 23
file r.5ck.r33483/63799
K 5
map.h
V 24
file 41.5ck.r33483/64040
K 11
map_types.h
V 26
file 216z.5ck.r33020/14504
K 8
mapimg.c
V 25
file 6n9.5ck.r33483/64280
K 8
mapimg.h
V 26
file 6na.5ck.r26905/215559
K 15
metaknowledge.c
V 24
file siq.5ck.r32920/7211
K 15
metaknowledge.h
V 24
file sis.5ck.r32258/4135
K 10
movement.c
V 26
file 2xv.5ck.r33097/213452
K 10
movement.h
V 23
file 2xw.5ck.r32838/690
K 13
multipliers.c
V 25
file 197b.5ck.r32459/4353
K 13
multipliers.h
V 26
file 197d.5ck.r29117/26290
K 18
name_translation.h
V 24
file 4k1.5ck.r32459/4601
K 8
nation.c
V 24
file il.5ck.r33386/79163
K 8
nation.h
V 24
file im.5ck.r32925/36846
K 10
networking
V 25
dir 2gws.5ck.r33478/13480
K 8
player.c
V 23
file 45.5ck.r33036/5070
K 8
player.h
V 22
file 46.5ck.r32500/612
K 14
requirements.c
V 24
file 2wq.5ck.r33539/6169
K 14
requirements.h
V 24
file 2wr.5ck.r33539/6418
K 10
research.c
V 24
file 4ro.5ck.r32922/7196
K 10
research.h
V 24
file 4rp.5ck.r27750/1056
K 10
rgbcolor.c
V 25
file 6i6.5ck.r31090/42043
K 10
rgbcolor.h
V 25
file 6i7.5ck.r31090/42290
K 6
road.c
V 24
file 6pq.5ck.r32132/1500
K 6
road.h
V 25
file 6pr.5ck.r32069/28162
K 10
scriptcore
V 24
dir 75a.5ck.r33483/66243
K 11
spaceship.c
V 23
file 98.5ck.r26349/9773
K 11
spaceship.h
V 24
file 99.5ck.r26349/10015
K 12
specialist.c
V 24
file 33f.5ck.r32459/5331
K 12
specialist.h
V 25
file 33g.5ck.r29570/10667
K 7
style.c
V 24
file zzb.5ck.r32459/5575
K 7
style.h
V 26
file zzd.5ck.r26905/204988
K 6
team.c
V 24
file 33i.5ck.r33326/1430
K 6
team.h
V 23
file 33j.5ck.r26183/314
K 6
tech.c
V 22
file t.5ck.r33324/9294
K 6
tech.h
V 22
file u.5ck.r33324/9532
K 9
terrain.c
V 25
file 2fp.5ck.r33483/66485
K 9
terrain.h
V 24
file qs.5ck.r33144/11331
K 6
tile.c
V 25
file 2ys.5ck.r33483/66733
K 6
tile.h
V 25
file 2yt.5ck.r33044/29500
K 13
traderoutes.c
V 25
file bf8.5ck.r33015/10377
K 13
traderoutes.h
V 24
file bfa.5ck.r33074/3985
K 8
traits.h
V 25
file 7k3.5ck.r30330/11323
K 6
unit.c
V 23
file v.5ck.r32757/61869
K 6
unit.h
V 24
file 48.5ck.r33249/65723
K 10
unitlist.c
V 25
file 39m.5ck.r31889/62464
K 10
unitlist.h
V 26
file 39n.5ck.r27611/110113
K 10
unittype.c
V 22
file v9.5ck.r32616/691
K 10
unittype.h
V 24
file va.5ck.r33401/50837
K 9
version.c
V 23
file oe.5ck.r31866/3027
K 9
version.h
V 23
file e7.5ck.r31866/3263
K 9
victory.c
V 26
file qex.5ck.r26905/217020
K 9
victory.h
V 26
file qez.5ck.r26905/217896
K 8
vision.c
V 26
file 4dm.5ck.r32526/118763
K 8
vision.h
V 24
file 4dn.5ck.r24742/9986
K 12
workertask.c
V 26
file llw.5ck.r26905/206753
K 12
workertask.h
V 25
file lly.5ck.r28926/17170
K 10
worklist.c
V 24
file o8.5ck.r32721/82052
K 10
worklist.h
V 24
file o9.5ck.r32721/82295
K 14
world_object.h
V 26
file 2ngs.5ck.r33483/66975
END
ENDREP
id: p.5ck.r33539/11822
type: dir
pred: p.5ck.r33533/6446
count: 4794
text: 33539 6665 5144 0 bd25d284f2ceb362a33e39a5e0041e75
props: 23743 0 112 0 b2bc91bf125d83375389d51f25ff2c2f
cpath: /trunk/common
copyroot: 15280 /trunk

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.r31297/7697235
K 7
INSTALL
V 21
file 6.5ck.r33470/217
K 11
Makefile.am
V 22
file 59.5ck.r33448/261
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.5ck.r33528/3079
K 10
autogen.sh
V 23
file 12o.5ck.r33470/442
K 9
bootstrap
V 23
dir 2p5.5ck.r33447/3735
K 6
client
V 22
dir d.5ck.r33529/82577
K 6
common
V 22
dir p.5ck.r33539/11822
K 12
configure.ac
V 23
file 149.5ck.r33470/670
K 4
data
V 21
dir w.5ck.r33512/4185
K 12
dependencies
V 23
dir 2yu.5ck.r33404/2662
K 3
doc
V 22
dir k7.5ck.r33524/2025
K 10
fc_version
V 24
file 2lo.5en.r33473/4202
K 11
gen_headers
V 24
dir 1hsw.5ck.r32371/1764
K 3
lua
V 24
dir 2c5e.5ck.r31919/4841
K 2
m4
V 23
dir 12p.5ck.r33427/3760
K 7
scripts
V 23
dir 2yo.5ck.r31852/3843
K 6
server
V 21
dir z.5ck.r33536/5879
K 5
tests
V 22
dir 2g9.5ck.r32361/591
K 5
tools
V 24
dir 4pj.5js.r33511/16775
K 12
translations
V 22
dir t0a.5ck.r33507/654
K 7
utility
V 23
dir 1c.5ck.r33478/27536
K 7
windows
V 23
dir 2eu.5x1.r33507/4477
END
ENDREP
id: 3.5ck.r33539/13214
type: dir
pred: 3.5ck.r33536/7272
count: 21744
text: 33539 12047 1154 0 6a68fe98113d08757828913e1422f3b1
props: 28036 14655 292 0 9e1d5de0253c723466868990c52c129f
cpath: /trunk
copyroot: 15280 /trunk

PLAIN
K 8
branches
V 19
dir 1.0.r33538/7352
K 4
tags
V 19
dir 2.0.r33382/6667
K 5
trunk
V 22
dir 3.5ck.r33539/13214
K 7
website
V 21
dir 3ge.0.r33387/2571
END
ENDREP
id: 0.0.r33539/13604
type: dir
pred: 0.0.r33538/7670
count: 33539
text: 33539 13438 153 0 1bfe4e66b4d9f490e340e0ec8e7d2b35
cpath: /
copyroot: 0 /

2wq.5ck.t33538-1 modify true false /trunk/common/requirements.c

2wr.5ck.t33538-1 modify true false /trunk/common/requirements.h


13604 13751
