chore(library/init/data/rbtree,library/init/data/rbmap): remove auto_param dependency
The problem is that `auto_param` is defined in the old `init/meta/name` module, and we don't want to have `init/meta` dependencies in the `init/lean` modules.
This commit is contained in:
parent
ead68376b7
commit
4fa43f18dd
4 changed files with 13 additions and 20 deletions
|
|
@ -11,12 +11,10 @@ universes u v w
|
|||
def rbmap_lt {α : Type u} {β : Type v} (lt : α → α → Prop) (a b : α × β) : Prop :=
|
||||
lt a.1 b.1
|
||||
|
||||
set_option auto_param.check_exists false
|
||||
|
||||
def rbmap (α : Type u) (β : Type v) (lt : α → α → Prop . rbtree.default_lt) : Type (max u v) :=
|
||||
def rbmap (α : Type u) (β : Type v) (lt : α → α → Prop) : Type (max u v) :=
|
||||
rbtree (α × β) (rbmap_lt lt)
|
||||
|
||||
def mk_rbmap (α : Type u) (β : Type v) (lt : α → α → Prop . rbtree.default_lt) : rbmap α β lt :=
|
||||
def mk_rbmap (α : Type u) (β : Type v) (lt : α → α → Prop) : rbmap α β lt :=
|
||||
mk_rbtree (α × β) (rbmap_lt lt)
|
||||
|
||||
namespace rbmap
|
||||
|
|
@ -85,10 +83,10 @@ to_value (m.find_entry k)
|
|||
def contains (m : rbmap α β lt) (k : α) : bool :=
|
||||
(find_entry m k).is_some
|
||||
|
||||
def from_list (l : list (α × β)) (lt : α → α → Prop . rbtree.default_lt) [decidable_rel lt] : rbmap α β lt :=
|
||||
def from_list (l : list (α × β)) (lt : α → α → Prop) [decidable_rel lt] : rbmap α β lt :=
|
||||
l.foldl (λ m p, insert m p.1 p.2) (mk_rbmap α β lt)
|
||||
|
||||
end rbmap
|
||||
|
||||
def rbmap_of {α : Type u} {β : Type v} (l : list (α × β)) (lt : α → α → Prop . rbtree.default_lt) [decidable_rel lt] : rbmap α β lt :=
|
||||
def rbmap_of {α : Type u} {β : Type v} (l : list (α × β)) (lt : α → α → Prop) [decidable_rel lt] : rbmap α β lt :=
|
||||
rbmap.from_list l lt
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ Released under Apache 2.0 license as described in the file LICENSE.
|
|||
Authors: Leonardo de Moura
|
||||
-/
|
||||
prelude
|
||||
import init.data.ordering
|
||||
import init.data.ordering.basic init.coe init.data.option.basic
|
||||
|
||||
universes u v
|
||||
|
||||
|
|
@ -162,12 +162,10 @@ end rbnode
|
|||
|
||||
open rbnode
|
||||
|
||||
set_option auto_param.check_exists false
|
||||
|
||||
def rbtree (α : Type u) (lt : α → α → Prop . rbtree.default_lt) : Type u :=
|
||||
def rbtree (α : Type u) (lt : α → α → Prop) : Type u :=
|
||||
{t : rbnode α // t.well_formed lt }
|
||||
|
||||
def mk_rbtree (α : Type u) (lt : α → α → Prop . rbtree.default_lt) : rbtree α lt :=
|
||||
def mk_rbtree (α : Type u) (lt : α → α → Prop) : rbtree α lt :=
|
||||
⟨leaf, well_formed.leaf_wff lt⟩
|
||||
|
||||
namespace rbtree
|
||||
|
|
@ -218,7 +216,7 @@ def find : rbtree α lt → α → option α
|
|||
def contains (t : rbtree α lt) (a : α) : bool :=
|
||||
(t.find a).is_some
|
||||
|
||||
def from_list (l : list α) (lt : α → α → Prop . rbtree.default_lt) [decidable_rel lt] : rbtree α lt :=
|
||||
def from_list (l : list α) (lt : α → α → Prop) [decidable_rel lt] : rbtree α lt :=
|
||||
l.foldl insert (mk_rbtree α lt)
|
||||
|
||||
def all : rbtree α lt → (α → bool) → bool
|
||||
|
|
@ -235,5 +233,5 @@ subset t₁ t₂ && subset t₂ t₁
|
|||
|
||||
end rbtree
|
||||
|
||||
def rbtree_of {α : Type u} (l : list α) (lt : α → α → Prop . rbtree.default_lt) [decidable_rel lt] : rbtree α lt :=
|
||||
def rbtree_of {α : Type u} (l : list α) (lt : α → α → Prop) [decidable_rel lt] : rbtree α lt :=
|
||||
rbtree.from_list l lt
|
||||
|
|
|
|||
|
|
@ -5,6 +5,3 @@ Authors: Leonardo de Moura
|
|||
-/
|
||||
prelude
|
||||
import init.data.rbtree.basic
|
||||
|
||||
meta def rbtree.default_lt : tactic unit :=
|
||||
`[apply has_lt.lt]
|
||||
|
|
|
|||
|
|
@ -43,14 +43,14 @@ structure resolved :=
|
|||
meta instance resolved.has_to_format : has_to_format resolved := ⟨λ r, to_fmt (r.decl, r.prefix)⟩
|
||||
|
||||
structure resolve_cfg :=
|
||||
(global_scope : rbmap name syntax)
|
||||
(global_scope : rbmap name syntax (<))
|
||||
|
||||
@[reducible] def resolve_map := rbmap syntax_id resolved
|
||||
@[reducible] def resolve_map := rbmap syntax_id resolved (<)
|
||||
|
||||
structure resolve_state :=
|
||||
(resolve_map : resolve_map)
|
||||
|
||||
def scope := rbmap (name × option macro_scope_id) syntax_id
|
||||
def scope := rbmap (name × option macro_scope_id) syntax_id (<)
|
||||
|
||||
@[reducible] def resolve_m := parse_m resolve_cfg resolve_state
|
||||
|
||||
|
|
@ -65,7 +65,7 @@ structure macro :=
|
|||
-- (elaborate : list syntax → expr → tactic expr)
|
||||
|
||||
structure parse_state :=
|
||||
(macros : rbmap name macro)
|
||||
(macros : rbmap name macro (<))
|
||||
(resolve_cfg : resolve_cfg)
|
||||
|
||||
-- identifiers in macro expansions are annotated with incremental tags
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue