add read support for user:term_expansion and user:goal_expansion

This commit is contained in:
Mark Thom
2019-01-05 19:22:38 -07:00
parent 36fdc8e822
commit 042779cff9
7 changed files with 70 additions and 23 deletions

View File

@@ -371,21 +371,27 @@ pub enum BuiltInClauseType {
#[derive(Clone, Copy)]
pub enum CompileTimeHook {
GoalExpansion,
TermExpansion
TermExpansion,
UserGoalExpansion,
UserTermExpansion
}
impl CompileTimeHook {
pub fn name(self) -> ClauseName {
match self {
CompileTimeHook::GoalExpansion => clause_name!("goal_expansion"),
CompileTimeHook::TermExpansion => clause_name!("term_expansion")
CompileTimeHook::UserGoalExpansion
| CompileTimeHook::GoalExpansion => clause_name!("goal_expansion"),
CompileTimeHook::UserTermExpansion
| CompileTimeHook::TermExpansion => clause_name!("term_expansion")
}
}
pub fn arity(self) -> usize {
match self {
CompileTimeHook::GoalExpansion => 2,
CompileTimeHook::TermExpansion => 2
CompileTimeHook::UserGoalExpansion
| CompileTimeHook::GoalExpansion => 2,
CompileTimeHook::UserTermExpansion
| CompileTimeHook::TermExpansion => 2
}
}
}