Commit graph

27 commits

Author SHA1 Message Date
Leonardo de Moura
d747fcb17c refactor(library/tactic/simp_lemmas): new caching mechanism 2016-10-06 20:20:01 -07:00
Leonardo de Moura
5f8f7bcccb feat(frontends/lean/elaborator): add proxy_attribute for elaborator strategies
This commit also adds a template for creating proxy_attribute's.
2016-09-13 13:02:37 -07:00
Leonardo de Moura
51407d09f9 refactor(library/attribute_manager): minimize the number of attr_data allocations 2016-09-13 10:00:52 -07:00
Leonardo de Moura
a38264439f fix(library/attribute_manager): get_instances returns deleted instances 2016-09-01 14:48:03 -07:00
Sebastian Ullrich
441a219a66 feat(library/attribute_manager): make attributes with side-effect free callbacks removable 2016-08-23 21:52:52 -07:00
Leonardo de Moura
5dca96a2a2 feat(library/attribute_manager): add get_attribute_fingerprint C++ API 2016-08-23 15:41:40 -07:00
Sebastian Ullrich
abd040589f feat(frontends/lean/decl_attributes, library/attribute_manager): implement attribute removal 2016-08-23 14:09:35 -07:00
Sebastian Ullrich
6e2f7c107c refactor(library/attribute_manager): rename on_set and move up into attribute base class 2016-08-23 14:09:35 -07:00
Leonardo de Moura
e4fd627ae2 feat(library/attribute_manager): fingerprints
The fingerprint changes whenever a new attribute is added.
2016-08-23 08:20:37 -07:00
Leonardo de Moura
9979bf7cea chore(library): formatting 2016-08-23 07:56:01 -07:00
Sebastian Ullrich
60fa25b665 refactor(library/attribute_manager): remove weakly-typed API
Also reduces number of attribute name literals
2016-08-19 15:02:34 -07:00
Sebastian Ullrich
ca8be3857c feat(library/user_attribute): add user-defined attributes and make attribute_manager environment-aware 2016-08-18 12:56:44 -07:00
Sebastian Ullrich
cb6a6b642e refactor(library/attribute_manager): remove attribute tokens and use name for attribute names 2016-08-16 13:49:03 -07:00
Sebastian Ullrich
88034a513c refactor(library/attribute_manager): typed_attribute: move parsing into attr_data 2016-08-16 13:49:02 -07:00
Sebastian Ullrich
34e00cd5a2 refactor(library/attribute_manger): simplify: make every attribute prioritizable 2016-08-16 13:49:02 -07:00
Sebastian Ullrich
b27ba6288d feat(frontends/lean/print_cmd): implement 'print attributes' 2016-08-12 15:36:12 -07:00
Leonardo de Moura
38524475c9 chore(library/attribute_manager): fix warning 2016-08-05 17:22:01 -07:00
Sebastian Ullrich
15595c0061 refactor(library/attribute_manager): delegate parameter parsing and printing to attribute class 2016-08-05 17:16:04 -07:00
Sebastian Ullrich
5247b426a8 fix(library/reducible): use class hierarchy to fix reducibility attributes 2016-07-29 23:44:22 -04:00
Sebastian Ullrich
31f599e088 refactor(library/attribute_manager): introduce hierarchy of attribute classes 2016-07-29 23:44:22 -04:00
Sebastian Ullrich
c4edad0372 feat(frontends/lean, library): remove attribute and metaclass scoping
All data is now part of either a global, permanent scope or a local,
temporary one
2016-07-29 23:44:21 -04:00
Sebastian Ullrich
463e4a2cf3 refactor(library/reducible): replace ext with attribute_manager 2016-07-29 18:51:23 -04:00
Sebastian Ullrich
0ebc9eada2 chore(tactic/simplifier/simp_lemmas): replace string literals 2016-07-29 18:51:23 -04:00
Sebastian Ullrich
661fafc940 refactor(frontends/lean): replace different attribute classes with single scoped_ext 2016-07-29 18:51:23 -04:00
Leonardo de Moura
128b557d37 refactor(frontends/lean): use attribute_manager to simplify decl_attributes 2015-12-17 22:28:53 -08:00
Leonardo de Moura
d81b2d0f29 feat(library/attribute_manager, frontends/lean/builtin_cmds): use attribute manager information when pretty print definitions 2015-12-17 21:16:31 -08:00
Leonardo de Moura
45dbf76df9 refactor(library): add attribute manager 2015-12-17 20:58:15 -08:00