Mercurial > public > mercurial-scm > hg-stable
comparison mercurial/revset.py @ 20754:f15ff553b762
revset: changed minrev and maxrev implementations to use ordered sets
Performance Benchmarking:
0) max(tip:0)
1) min(0:tip)
2) min(0::)
b96cb15ec9e0 (2.9.1 release)
0) ! wall 0.005699 comb 0.000000 user 0.000000 sys 0.000000 (best of 450)
1) ! wall 0.005414 comb 0.010000 user 0.010000 sys 0.000000 (best of 493)
2) ! wall 0.025951 comb 0.030000 user 0.030000 sys 0.000000 (best of 107)
05267e6e94dd (public tip at submission time)
0) ! wall 0.015177 comb 0.020000 user 0.020000 sys 0.000000 (best of 175)
1) ! wall 0.014779 comb 0.010000 user 0.010000 sys 0.000000 (best of 189)
2) ! wall 12.345179 comb 12.350000 user 12.350000 sys 0.000000 (best of 3)
Current patches:
0) ! wall 0.001911 comb 0.000000 user 0.000000 sys 0.000000 (best of 1357)
1) ! wall 0.001943 comb 0.010000 user 0.010000 sys 0.000000 (best of 1406)
2) ! wall 0.000405 comb 0.000000 user 0.000000 sys 0.000000 (best of 6761)
author | Lucas Moscovicz <lmoscovicz@fb.com> |
---|---|
date | Tue, 18 Feb 2014 11:35:03 -0800 |
parents | 13c38b1aeebe |
children | ffc2295c6b80 |
comparison
equal
deleted
inserted
replaced
20753:13c38b1aeebe | 20754:f15ff553b762 |
---|---|
1033 """``max(set)`` | 1033 """``max(set)`` |
1034 Changeset with highest revision number in set. | 1034 Changeset with highest revision number in set. |
1035 """ | 1035 """ |
1036 os = getset(repo, spanset(repo), x) | 1036 os = getset(repo, spanset(repo), x) |
1037 if os: | 1037 if os: |
1038 m = max(os) | 1038 m = os.max() |
1039 if m in subset: | 1039 if m in subset: |
1040 return baseset([m]) | 1040 return baseset([m]) |
1041 return baseset([]) | 1041 return baseset([]) |
1042 | 1042 |
1043 def merge(repo, subset, x): | 1043 def merge(repo, subset, x): |
1070 """``min(set)`` | 1070 """``min(set)`` |
1071 Changeset with lowest revision number in set. | 1071 Changeset with lowest revision number in set. |
1072 """ | 1072 """ |
1073 os = getset(repo, spanset(repo), x) | 1073 os = getset(repo, spanset(repo), x) |
1074 if os: | 1074 if os: |
1075 m = min(os) | 1075 m = os.min() |
1076 if m in subset: | 1076 if m in subset: |
1077 return baseset([m]) | 1077 return baseset([m]) |
1078 return baseset([]) | 1078 return baseset([]) |
1079 | 1079 |
1080 def _missingancestors(repo, subset, x): | 1080 def _missingancestors(repo, subset, x): |