run cargo fmt
This commit is contained in:
@@ -590,7 +590,10 @@ enum SystemClauseType {
|
||||
UnattributedVar,
|
||||
#[strum_discriminants(strum(props(Arity = "4", Name = "$get_db_refs")))]
|
||||
GetDBRefs,
|
||||
#[strum_discriminants(strum(props(Arity = "2", Name = "$keysort_with_constant_var_ordering")))]
|
||||
#[strum_discriminants(strum(props(
|
||||
Arity = "2",
|
||||
Name = "$keysort_with_constant_var_ordering"
|
||||
)))]
|
||||
KeySortWithConstantVarOrdering,
|
||||
REPL(REPLCodePtr),
|
||||
}
|
||||
@@ -801,7 +804,7 @@ enum InstructionTemplate {
|
||||
}
|
||||
|
||||
fn derive_input(ty: &Type) -> Option<DeriveInput> {
|
||||
let clause_type: Type = parse_quote!{ ClauseType };
|
||||
let clause_type: Type = parse_quote! { ClauseType };
|
||||
let built_in_clause_type: Type = parse_quote! { BuiltInClauseType };
|
||||
let inlined_clause_type: Type = parse_quote! { InlinedClauseType };
|
||||
let system_clause_type: Type = parse_quote! { SystemClauseType };
|
||||
@@ -847,7 +850,8 @@ fn add_discriminant_data<DiscriminantT>(
|
||||
prefix: &'static str,
|
||||
variant_data: &mut Vec<(&'static str, Arity, Variant)>,
|
||||
) -> (&'static str, Arity)
|
||||
where DiscriminantT: FromStr + strum::EnumProperty + std::fmt::Debug
|
||||
where
|
||||
DiscriminantT: FromStr + strum::EnumProperty + std::fmt::Debug,
|
||||
{
|
||||
let name = prop_from_ident::<DiscriminantT>(&variant.ident, "Name");
|
||||
let arity = Arity::from(prop_from_ident::<DiscriminantT>(&variant.ident, "Arity"));
|
||||
@@ -1699,7 +1703,7 @@ fn generate_instruction_preface() -> TokenStream {
|
||||
&Instruction::CallMakeDirectoryPath |
|
||||
&Instruction::CallDeleteFile |
|
||||
&Instruction::CallRenameFile |
|
||||
&Instruction::CallFileCopy |
|
||||
&Instruction::CallFileCopy |
|
||||
&Instruction::CallWorkingDirectory |
|
||||
&Instruction::CallDeleteDirectory |
|
||||
&Instruction::CallPathCanonical |
|
||||
@@ -1793,9 +1797,9 @@ fn generate_instruction_preface() -> TokenStream {
|
||||
&Instruction::CallHttpListen |
|
||||
&Instruction::CallHttpAccept |
|
||||
&Instruction::CallHttpAnswer |
|
||||
&Instruction::CallLoadForeignLib |
|
||||
&Instruction::CallForeignCall |
|
||||
&Instruction::CallDefineForeignStruct |
|
||||
&Instruction::CallLoadForeignLib |
|
||||
&Instruction::CallForeignCall |
|
||||
&Instruction::CallDefineForeignStruct |
|
||||
&Instruction::CallPredicateDefined |
|
||||
&Instruction::CallStripModule |
|
||||
&Instruction::CallCurrentTime |
|
||||
@@ -1927,7 +1931,7 @@ fn generate_instruction_preface() -> TokenStream {
|
||||
&Instruction::ExecuteMakeDirectoryPath |
|
||||
&Instruction::ExecuteDeleteFile |
|
||||
&Instruction::ExecuteRenameFile |
|
||||
&Instruction::ExecuteFileCopy |
|
||||
&Instruction::ExecuteFileCopy |
|
||||
&Instruction::ExecuteWorkingDirectory |
|
||||
&Instruction::ExecuteDeleteDirectory |
|
||||
&Instruction::ExecutePathCanonical |
|
||||
@@ -2021,9 +2025,9 @@ fn generate_instruction_preface() -> TokenStream {
|
||||
&Instruction::ExecuteHttpListen |
|
||||
&Instruction::ExecuteHttpAccept |
|
||||
&Instruction::ExecuteHttpAnswer |
|
||||
&Instruction::ExecuteLoadForeignLib |
|
||||
&Instruction::ExecuteForeignCall |
|
||||
&Instruction::ExecuteDefineForeignStruct |
|
||||
&Instruction::ExecuteLoadForeignLib |
|
||||
&Instruction::ExecuteForeignCall |
|
||||
&Instruction::ExecuteDefineForeignStruct |
|
||||
&Instruction::ExecutePredicateDefined |
|
||||
&Instruction::ExecuteStripModule |
|
||||
&Instruction::ExecuteCurrentTime |
|
||||
@@ -2300,7 +2304,8 @@ pub fn generate_instructions_rs() -> TokenStream {
|
||||
|
||||
instr_data.generate_instruction_enum_loop(input);
|
||||
|
||||
let instr_variants: Vec<_> = instr_data.instr_variants
|
||||
let instr_variants: Vec<_> = instr_data
|
||||
.instr_variants
|
||||
.iter()
|
||||
.cloned()
|
||||
.map(|(_, _, _, variant)| variant)
|
||||
@@ -2339,7 +2344,8 @@ pub fn generate_instructions_rs() -> TokenStream {
|
||||
for (name, arity, variant) in instr_data.compare_number_variants {
|
||||
let ident = variant.ident.clone();
|
||||
|
||||
let variant_fields: Vec<_> = variant.fields
|
||||
let variant_fields: Vec<_> = variant
|
||||
.fields
|
||||
.into_iter()
|
||||
.map(|field| {
|
||||
let ty = field.ty;
|
||||
@@ -2378,29 +2384,23 @@ pub fn generate_instructions_rs() -> TokenStream {
|
||||
let ident = variant.ident;
|
||||
let instr_ident = format_ident!("Call{}", ident);
|
||||
|
||||
let placeholder_ids: Vec<_> = (0 .. variant_fields.len())
|
||||
let placeholder_ids: Vec<_> = (0..variant_fields.len())
|
||||
.map(|n| format_ident!("f_{}", n))
|
||||
.collect();
|
||||
|
||||
clause_type_to_instr_arms.push(
|
||||
quote! {
|
||||
ClauseType::Inlined(
|
||||
InlinedClauseType::CompareNumber(CompareNumber::#ident(#(#placeholder_ids),*))
|
||||
) => Instruction::#instr_ident(#(*#placeholder_ids),*)
|
||||
}
|
||||
);
|
||||
clause_type_to_instr_arms.push(quote! {
|
||||
ClauseType::Inlined(
|
||||
InlinedClauseType::CompareNumber(CompareNumber::#ident(#(#placeholder_ids),*))
|
||||
) => Instruction::#instr_ident(#(*#placeholder_ids),*)
|
||||
});
|
||||
|
||||
is_inbuilt_arms.push(
|
||||
quote! {
|
||||
(atom!(#name), #arity) => true
|
||||
}
|
||||
);
|
||||
is_inbuilt_arms.push(quote! {
|
||||
(atom!(#name), #arity) => true
|
||||
});
|
||||
|
||||
is_inlined_arms.push(
|
||||
quote! {
|
||||
(atom!(#name), #arity) => true
|
||||
}
|
||||
);
|
||||
is_inlined_arms.push(quote! {
|
||||
(atom!(#name), #arity) => true
|
||||
});
|
||||
}
|
||||
|
||||
for (name, arity, variant) in instr_data.compare_term_variants {
|
||||
@@ -2412,36 +2412,31 @@ pub fn generate_instructions_rs() -> TokenStream {
|
||||
)
|
||||
});
|
||||
|
||||
clause_type_name_arms.push(
|
||||
quote! {
|
||||
ClauseType::BuiltIn(
|
||||
BuiltInClauseType::CompareTerm(CompareTerm::#ident)
|
||||
) => atom!(#name)
|
||||
}
|
||||
);
|
||||
clause_type_name_arms.push(quote! {
|
||||
ClauseType::BuiltIn(
|
||||
BuiltInClauseType::CompareTerm(CompareTerm::#ident)
|
||||
) => atom!(#name)
|
||||
});
|
||||
|
||||
let ident = variant.ident;
|
||||
let instr_ident = format_ident!("Call{}", ident);
|
||||
|
||||
clause_type_to_instr_arms.push(
|
||||
quote! {
|
||||
ClauseType::BuiltIn(
|
||||
BuiltInClauseType::CompareTerm(CompareTerm::#ident)
|
||||
) => Instruction::#instr_ident
|
||||
}
|
||||
);
|
||||
clause_type_to_instr_arms.push(quote! {
|
||||
ClauseType::BuiltIn(
|
||||
BuiltInClauseType::CompareTerm(CompareTerm::#ident)
|
||||
) => Instruction::#instr_ident
|
||||
});
|
||||
|
||||
is_inbuilt_arms.push(
|
||||
quote! {
|
||||
(atom!(#name), #arity) => true
|
||||
}
|
||||
);
|
||||
is_inbuilt_arms.push(quote! {
|
||||
(atom!(#name), #arity) => true
|
||||
});
|
||||
}
|
||||
|
||||
for (name, arity, variant) in instr_data.builtin_type_variants {
|
||||
let ident = variant.ident.clone();
|
||||
|
||||
let variant_fields: Vec<_> = variant.fields
|
||||
let variant_fields: Vec<_> = variant
|
||||
.fields
|
||||
.into_iter()
|
||||
.map(|field| {
|
||||
let ty = field.ty;
|
||||
@@ -2480,7 +2475,7 @@ pub fn generate_instructions_rs() -> TokenStream {
|
||||
let ident = variant.ident;
|
||||
let instr_ident = format_ident!("Call{}", ident);
|
||||
|
||||
let placeholder_ids: Vec<_> = (0 .. variant_fields.len())
|
||||
let placeholder_ids: Vec<_> = (0..variant_fields.len())
|
||||
.map(|n| format_ident!("f_{}", n))
|
||||
.collect();
|
||||
|
||||
@@ -2498,17 +2493,16 @@ pub fn generate_instructions_rs() -> TokenStream {
|
||||
}
|
||||
});
|
||||
|
||||
is_inbuilt_arms.push(
|
||||
quote! {
|
||||
(atom!(#name), #arity) => true
|
||||
}
|
||||
);
|
||||
is_inbuilt_arms.push(quote! {
|
||||
(atom!(#name), #arity) => true
|
||||
});
|
||||
}
|
||||
|
||||
for (name, arity, variant) in instr_data.inlined_type_variants {
|
||||
let ident = variant.ident.clone();
|
||||
|
||||
let variant_fields: Vec<_> = variant.fields
|
||||
let variant_fields: Vec<_> = variant
|
||||
.fields
|
||||
.into_iter()
|
||||
.map(|field| {
|
||||
if field.ty.type_id() == TypeId::of::<usize>() {
|
||||
@@ -2551,35 +2545,30 @@ pub fn generate_instructions_rs() -> TokenStream {
|
||||
let ident = variant.ident;
|
||||
let instr_ident = format_ident!("Call{}", ident);
|
||||
|
||||
let placeholder_ids: Vec<_> = (0 .. variant_fields.len())
|
||||
let placeholder_ids: Vec<_> = (0..variant_fields.len())
|
||||
.map(|n| format_ident!("f_{}", n))
|
||||
.collect();
|
||||
|
||||
clause_type_to_instr_arms.push(
|
||||
quote! {
|
||||
ClauseType::Inlined(
|
||||
InlinedClauseType::#ident(#(#placeholder_ids),*)
|
||||
) => Instruction::#instr_ident(*#(#placeholder_ids),*)
|
||||
}
|
||||
);
|
||||
clause_type_to_instr_arms.push(quote! {
|
||||
ClauseType::Inlined(
|
||||
InlinedClauseType::#ident(#(#placeholder_ids),*)
|
||||
) => Instruction::#instr_ident(*#(#placeholder_ids),*)
|
||||
});
|
||||
|
||||
is_inbuilt_arms.push(
|
||||
quote! {
|
||||
(atom!(#name), #arity) => true
|
||||
}
|
||||
);
|
||||
is_inbuilt_arms.push(quote! {
|
||||
(atom!(#name), #arity) => true
|
||||
});
|
||||
|
||||
is_inlined_arms.push(
|
||||
quote! {
|
||||
(atom!(#name), #arity) => true
|
||||
}
|
||||
);
|
||||
is_inlined_arms.push(quote! {
|
||||
(atom!(#name), #arity) => true
|
||||
});
|
||||
}
|
||||
|
||||
for (name, arity, variant) in instr_data.system_clause_type_variants {
|
||||
let ident = variant.ident.clone();
|
||||
|
||||
let variant_fields: Vec<_> = variant.fields
|
||||
let variant_fields: Vec<_> = variant
|
||||
.fields
|
||||
.into_iter()
|
||||
.map(|field| {
|
||||
if field.ty == parse_quote! { usize } {
|
||||
@@ -2647,7 +2636,7 @@ pub fn generate_instructions_rs() -> TokenStream {
|
||||
ident.clone()
|
||||
};
|
||||
|
||||
let placeholder_ids: Vec<_> = (0 .. variant_fields.len())
|
||||
let placeholder_ids: Vec<_> = (0..variant_fields.len())
|
||||
.map(|n| format_ident!("f_{}", n))
|
||||
.collect();
|
||||
|
||||
@@ -2665,23 +2654,22 @@ pub fn generate_instructions_rs() -> TokenStream {
|
||||
}
|
||||
});
|
||||
|
||||
is_inbuilt_arms.push(
|
||||
if let Arity::Ident("arity") = &arity {
|
||||
quote! {
|
||||
(atom!(#name), _arity) => true
|
||||
}
|
||||
} else {
|
||||
quote! {
|
||||
(atom!(#name), #arity) => true
|
||||
}
|
||||
is_inbuilt_arms.push(if let Arity::Ident("arity") = &arity {
|
||||
quote! {
|
||||
(atom!(#name), _arity) => true
|
||||
}
|
||||
);
|
||||
} else {
|
||||
quote! {
|
||||
(atom!(#name), #arity) => true
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
for (name, arity, variant) in instr_data.repl_code_ptr_variants {
|
||||
let ident = variant.ident.clone();
|
||||
|
||||
let variant_fields: Vec<_> = variant.fields
|
||||
let variant_fields: Vec<_> = variant
|
||||
.fields
|
||||
.into_iter()
|
||||
.map(|field| {
|
||||
if field.ty.type_id() == TypeId::of::<usize>() {
|
||||
@@ -2724,7 +2712,7 @@ pub fn generate_instructions_rs() -> TokenStream {
|
||||
let ident = variant.ident;
|
||||
let instr_ident = format_ident!("Call{}", ident);
|
||||
|
||||
let placeholder_ids: Vec<_> = (0 .. variant_fields.len())
|
||||
let placeholder_ids: Vec<_> = (0..variant_fields.len())
|
||||
.map(|n| format_ident!("f_{}", n))
|
||||
.collect();
|
||||
|
||||
@@ -2742,11 +2730,9 @@ pub fn generate_instructions_rs() -> TokenStream {
|
||||
}
|
||||
});
|
||||
|
||||
is_inbuilt_arms.push(
|
||||
quote! {
|
||||
(atom!(#name), #arity) => true
|
||||
}
|
||||
);
|
||||
is_inbuilt_arms.push(quote! {
|
||||
(atom!(#name), #arity) => true
|
||||
});
|
||||
}
|
||||
|
||||
for (name, arity, variant) in instr_data.clause_type_variants {
|
||||
@@ -2768,7 +2754,8 @@ pub fn generate_instructions_rs() -> TokenStream {
|
||||
continue;
|
||||
}
|
||||
|
||||
let variant_fields: Vec<_> = variant.fields
|
||||
let variant_fields: Vec<_> = variant
|
||||
.fields
|
||||
.into_iter()
|
||||
.map(|field| {
|
||||
if field.ty == parse_quote! { usize } {
|
||||
@@ -2802,7 +2789,7 @@ pub fn generate_instructions_rs() -> TokenStream {
|
||||
|
||||
let ident = variant.ident;
|
||||
|
||||
let placeholder_ids: Vec<_> = (0 .. variant_fields.len())
|
||||
let placeholder_ids: Vec<_> = (0..variant_fields.len())
|
||||
.map(|n| format_ident!("f_{}", n))
|
||||
.collect();
|
||||
|
||||
@@ -2817,14 +2804,13 @@ pub fn generate_instructions_rs() -> TokenStream {
|
||||
}
|
||||
});
|
||||
|
||||
is_inbuilt_arms.push(
|
||||
quote! {
|
||||
(atom!(#name), _arity) => true
|
||||
}
|
||||
);
|
||||
is_inbuilt_arms.push(quote! {
|
||||
(atom!(#name), _arity) => true
|
||||
});
|
||||
}
|
||||
|
||||
let to_execute_arms: Vec<_> = instr_data.instr_variants
|
||||
let to_execute_arms: Vec<_> = instr_data
|
||||
.instr_variants
|
||||
.iter()
|
||||
.cloned()
|
||||
.filter_map(|(_, _, _, variant)| {
|
||||
@@ -2837,12 +2823,11 @@ pub fn generate_instructions_rs() -> TokenStream {
|
||||
0
|
||||
};
|
||||
|
||||
let placeholder_ids: Vec<_> = (0 .. enum_arity)
|
||||
.map(|n| format_ident!("f_{}", n))
|
||||
.collect();
|
||||
let placeholder_ids: Vec<_> =
|
||||
(0..enum_arity).map(|n| format_ident!("f_{}", n)).collect();
|
||||
|
||||
if variant_string.starts_with("Call") {
|
||||
let execute_ident = format_ident!("Execute{}", variant_string["Call".len() ..]);
|
||||
let execute_ident = format_ident!("Execute{}", variant_string["Call".len()..]);
|
||||
|
||||
Some(if enum_arity == 0 {
|
||||
quote! {
|
||||
@@ -2857,7 +2842,7 @@ pub fn generate_instructions_rs() -> TokenStream {
|
||||
})
|
||||
} else if variant_string.starts_with("DefaultCall") {
|
||||
let execute_ident =
|
||||
format_ident!("DefaultExecute{}", variant_string["DefaultCall".len() ..]);
|
||||
format_ident!("DefaultExecute{}", variant_string["DefaultCall".len()..]);
|
||||
|
||||
Some(if enum_arity == 0 {
|
||||
quote! {
|
||||
@@ -2876,7 +2861,8 @@ pub fn generate_instructions_rs() -> TokenStream {
|
||||
})
|
||||
.collect();
|
||||
|
||||
let is_execute_arms: Vec<_> = instr_data.instr_variants
|
||||
let is_execute_arms: Vec<_> = instr_data
|
||||
.instr_variants
|
||||
.iter()
|
||||
.cloned()
|
||||
.filter_map(|(_, _, _, variant)| {
|
||||
@@ -2919,7 +2905,8 @@ pub fn generate_instructions_rs() -> TokenStream {
|
||||
})
|
||||
.collect();
|
||||
|
||||
let to_default_arms: Vec<_> = instr_data.instr_variants
|
||||
let to_default_arms: Vec<_> = instr_data
|
||||
.instr_variants
|
||||
.iter()
|
||||
.cloned()
|
||||
.filter_map(|(_, _, countable_inference, variant)| {
|
||||
@@ -2936,9 +2923,8 @@ pub fn generate_instructions_rs() -> TokenStream {
|
||||
0
|
||||
};
|
||||
|
||||
let placeholder_ids: Vec<_> = (0 .. enum_arity)
|
||||
.map(|n| format_ident!("f_{}", n))
|
||||
.collect();
|
||||
let placeholder_ids: Vec<_> =
|
||||
(0..enum_arity).map(|n| format_ident!("f_{}", n)).collect();
|
||||
|
||||
Some(if enum_arity == 0 {
|
||||
quote! {
|
||||
@@ -2957,7 +2943,8 @@ pub fn generate_instructions_rs() -> TokenStream {
|
||||
})
|
||||
.collect();
|
||||
|
||||
let control_flow_arms: Vec<_> = instr_data.instr_variants
|
||||
let control_flow_arms: Vec<_> = instr_data
|
||||
.instr_variants
|
||||
.iter()
|
||||
.cloned()
|
||||
.filter_map(|(_, _, _, variant)| {
|
||||
@@ -2985,7 +2972,8 @@ pub fn generate_instructions_rs() -> TokenStream {
|
||||
})
|
||||
.collect();
|
||||
|
||||
let instr_macro_arms: Vec<_> = instr_data.instr_variants
|
||||
let instr_macro_arms: Vec<_> = instr_data
|
||||
.instr_variants
|
||||
.iter()
|
||||
.rev() // produce default, execute & default & execute cases first.
|
||||
.cloned()
|
||||
@@ -2994,7 +2982,7 @@ pub fn generate_instructions_rs() -> TokenStream {
|
||||
let variant_string = variant.ident.to_string();
|
||||
let arity = match arity {
|
||||
Arity::Static(arity) => arity,
|
||||
_ => 1
|
||||
_ => 1,
|
||||
};
|
||||
|
||||
Some(if variant_string.starts_with("Execute") {
|
||||
@@ -3071,9 +3059,10 @@ pub fn generate_instructions_rs() -> TokenStream {
|
||||
})
|
||||
.collect();
|
||||
|
||||
let name_and_arity_arms: Vec<_> = instr_data.instr_variants
|
||||
let name_and_arity_arms: Vec<_> = instr_data
|
||||
.instr_variants
|
||||
.into_iter()
|
||||
.map(|(name,arity,_,variant)| {
|
||||
.map(|(name, arity, _, variant)| {
|
||||
let ident = &variant.ident;
|
||||
|
||||
let enum_arity = if let Fields::Unnamed(fields) = &variant.fields {
|
||||
@@ -3303,8 +3292,10 @@ pub fn generate_instructions_rs() -> TokenStream {
|
||||
fn is_callable(id: &Ident) -> bool {
|
||||
let id = id.to_string();
|
||||
|
||||
id.starts_with("Call") || id.starts_with("Execute") || id.starts_with("DefaultCall") ||
|
||||
id.starts_with("DefaultExecute")
|
||||
id.starts_with("Call")
|
||||
|| id.starts_with("Execute")
|
||||
|| id.starts_with("DefaultCall")
|
||||
|| id.starts_with("DefaultExecute")
|
||||
}
|
||||
|
||||
fn is_non_default_callable(id: &Ident) -> bool {
|
||||
@@ -3325,7 +3316,8 @@ fn create_instr_variant(id: Ident, mut variant: Variant) -> Variant {
|
||||
}
|
||||
|
||||
fn prop_from_ident<DiscriminantT>(id: &Ident, key: &'static str) -> &'static str
|
||||
where DiscriminantT: FromStr + strum::EnumProperty + std::fmt::Debug
|
||||
where
|
||||
DiscriminantT: FromStr + strum::EnumProperty + std::fmt::Debug,
|
||||
{
|
||||
let disc = match DiscriminantT::from_str(id.to_string().as_str()) {
|
||||
Ok(disc) => disc,
|
||||
@@ -3345,7 +3337,7 @@ fn prop_from_ident<DiscriminantT>(id: &Ident, key: &'static str) -> &'static str
|
||||
#[derive(Clone, Copy)]
|
||||
enum Arity {
|
||||
Static(usize),
|
||||
Ident(&'static str)
|
||||
Ident(&'static str),
|
||||
}
|
||||
|
||||
impl From<&'static str> for Arity {
|
||||
@@ -3437,9 +3429,13 @@ impl InstructionData {
|
||||
|
||||
(name, arity, CountableInference::NotCounted)
|
||||
} else if id == "InstructionTemplate" {
|
||||
( prop_from_ident::<InstructionTemplateDiscriminants>(&variant.ident, "Name"),
|
||||
Arity::from(prop_from_ident::<InstructionTemplateDiscriminants>(&variant.ident, "Arity")),
|
||||
CountableInference::NotCounted
|
||||
(
|
||||
prop_from_ident::<InstructionTemplateDiscriminants>(&variant.ident, "Name"),
|
||||
Arity::from(prop_from_ident::<InstructionTemplateDiscriminants>(
|
||||
&variant.ident,
|
||||
"Arity",
|
||||
)),
|
||||
CountableInference::NotCounted,
|
||||
)
|
||||
} else if id == "ClauseType" {
|
||||
let (name, arity) = add_discriminant_data::<ClauseTypeDiscriminants>(
|
||||
@@ -3456,19 +3452,16 @@ impl InstructionData {
|
||||
let v_string = variant.ident.to_string();
|
||||
|
||||
let v_ident = if v_string.starts_with("Call") {
|
||||
format_ident!("{}", v_string["Call".len() ..])
|
||||
format_ident!("{}", v_string["Call".len()..])
|
||||
} else {
|
||||
variant.ident.clone()
|
||||
};
|
||||
|
||||
let generated_variant = create_instr_variant(
|
||||
format_ident!("{}{}", prefix, v_ident),
|
||||
variant.clone(),
|
||||
);
|
||||
let generated_variant =
|
||||
create_instr_variant(format_ident!("{}{}", prefix, v_ident), variant.clone());
|
||||
|
||||
self.instr_variants.push(
|
||||
(name, arity, countable_inference, generated_variant)
|
||||
);
|
||||
self.instr_variants
|
||||
.push((name, arity, countable_inference, generated_variant));
|
||||
}
|
||||
|
||||
fn generate_instruction_enum_loop(&mut self, input: syn::DeriveInput) {
|
||||
@@ -3490,10 +3483,10 @@ impl InstructionData {
|
||||
self.label_variant(&input.ident, "Call", variant.clone());
|
||||
self.label_variant(&input.ident, "Execute", variant.clone());
|
||||
|
||||
if input.ident == "BuiltInClauseType" ||
|
||||
input.ident == "CompareNumber" ||
|
||||
input.ident == "CompareTerm" ||
|
||||
input.ident == "ClauseType"
|
||||
if input.ident == "BuiltInClauseType"
|
||||
|| input.ident == "CompareNumber"
|
||||
|| input.ident == "CompareTerm"
|
||||
|| input.ident == "ClauseType"
|
||||
{
|
||||
self.label_variant(&input.ident, "DefaultCall", variant.clone());
|
||||
self.label_variant(&input.ident, "DefaultExecute", variant);
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
use proc_macro2::TokenStream;
|
||||
use syn::*;
|
||||
use syn::parse::*;
|
||||
use syn::visit::*;
|
||||
use syn::*;
|
||||
|
||||
use indexmap::IndexSet;
|
||||
|
||||
@@ -11,7 +11,9 @@ struct StaticStrVisitor {
|
||||
|
||||
impl StaticStrVisitor {
|
||||
fn new() -> Self {
|
||||
Self { static_strs: IndexSet::new() }
|
||||
Self {
|
||||
static_strs: IndexSet::new(),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user