|
536 | 536 | unflatten(t) = t |
537 | 537 |
|
538 | 538 | function TermInterface.maketerm(::Type{<:BasicSymbolic}, head, args, type, metadata) |
539 | | - basicsymbolic(first(args), args[2:end], type, metadata) |
| 539 | + basicsymbolic(head, args, type, metadata) |
540 | 540 | end |
541 | 541 |
|
542 | 542 |
|
@@ -640,24 +640,23 @@ end |
640 | 640 |
|
641 | 641 | """ |
642 | 642 | function similarterm(x, op, args, symtype=nothing; metadata=nothing) |
643 | | - TermInterface.maketerm(typeof(x), callhead(x), [op, args...], symtype, metadata) |
| 643 | + Base.depwarn("""`similarterm` is deprecated, use `maketerm` instead. |
| 644 | + `similarterm(x, op, args, symtype; metadata)` is now |
| 645 | + `maketerm(typeof(x), op, args, symtype, metadata)`""", :similarterm) |
| 646 | + TermInterface.maketerm(typeof(x), op, args, symtype, metadata) |
644 | 647 | end |
645 | 648 |
|
646 | 649 | # Old fallback |
647 | 650 | function similarterm(T::Type, op, args, symtype=nothing; metadata=nothing) |
| 651 | + |
| 652 | + Base.depwarn("`similarterm` is deprecated, use `maketerm` instead." * |
| 653 | + "See https://github.com/JuliaSymbolics/TermInterface.jl for details.", :similarterm) |
648 | 654 | op(args...) |
649 | 655 | end |
650 | 656 |
|
651 | 657 | export similarterm |
652 | 658 |
|
653 | 659 |
|
654 | | -""" |
655 | | - callhead(x) |
656 | | -Used in this deprecation cycle of `similarterm` to find the `head` argument to |
657 | | -`maketerm`. Do not implement this, or use `similarterm` if you're using this package. |
658 | | -""" |
659 | | -callhead(x) = typeof(x) |
660 | | - |
661 | 660 | ### |
662 | 661 | ### Pretty printing |
663 | 662 | ### |
|
0 commit comments