Mercurial > pub > Impl
comparison Lib/IMPL/Code/BasePropertyImplementor.pm @ 385:0d63f5273307
sync
| author | sergey |
|---|---|
| date | Tue, 11 Feb 2014 01:05:55 +0400 |
| parents | ced5937ff21a |
| children |
comparison
equal
deleted
inserted
replaced
| 383:2f16f13b000c | 385:0d63f5273307 |
|---|---|
| 38 ); | 38 ); |
| 39 | 39 |
| 40 sub NormalizeSpecification { | 40 sub NormalizeSpecification { |
| 41 my ($this,$spec) = @_; | 41 my ($this,$spec) = @_; |
| 42 | 42 |
| 43 return ref $spec | 43 return $spec if ref($spec); |
| 44 ? $spec | 44 |
| 45 : { | 45 if (looks_like_number($spec)) { |
| 46 return { | |
| 46 get => $spec & PROP_GET, | 47 get => $spec & PROP_GET, |
| 47 set => $spec & PROP_SET, | 48 set => $spec & PROP_SET, |
| 48 isList => $spec & PROP_LIST, | 49 isList => $spec & PROP_LIST, |
| 49 ownerSet => (($spec & PROP_OWNERSET) == PROP_OWNERSET), | 50 ownerSet => (($spec & PROP_OWNERSET) == PROP_OWNERSET), |
| 50 direct => $spec & PROP_DIRECT | 51 direct => $spec & PROP_DIRECT |
| 51 }; | 52 }; |
| 53 } else { | |
| 54 return {}; | |
| 55 } | |
| 52 } | 56 } |
| 53 | 57 |
| 54 sub CreateFactoryId { | 58 sub CreateFactoryId { |
| 55 my ($self, $spec) = @_; | 59 my ($self, $spec) = @_; |
| 56 | 60 |
