mirror of
https://github.com/ProvableHQ/leo.git
synced 2024-12-25 03:04:13 +03:00
some clean up
This commit is contained in:
parent
a54488b45f
commit
dc5d75da85
@ -216,6 +216,7 @@ impl<'a, F: PrimeField, G: GroupType<F>> Compiler<'a, F, G> {
|
|||||||
// Use the parser to construct the abstract syntax tree (ast).
|
// Use the parser to construct the abstract syntax tree (ast).
|
||||||
|
|
||||||
let mut ast = parse_ast(self.main_file_path.to_str().unwrap_or_default(), program_string)?;
|
let mut ast = parse_ast(self.main_file_path.to_str().unwrap_or_default(), program_string)?;
|
||||||
|
|
||||||
// Preform compiler optimization via canonicalizing AST if its enabled.
|
// Preform compiler optimization via canonicalizing AST if its enabled.
|
||||||
if self.options.canonicalization_enabled {
|
if self.options.canonicalization_enabled {
|
||||||
ast.canonicalize()?;
|
ast.canonicalize()?;
|
||||||
|
@ -22,18 +22,6 @@ pub struct CompilerOptions {
|
|||||||
pub canonicalization_enabled: bool,
|
pub canonicalization_enabled: bool,
|
||||||
pub constant_folding_enabled: bool,
|
pub constant_folding_enabled: bool,
|
||||||
pub dead_code_elimination_enabled: bool,
|
pub dead_code_elimination_enabled: bool,
|
||||||
pub type_inference_enabled: bool,
|
|
||||||
}
|
|
||||||
|
|
||||||
impl CompilerOptions {
|
|
||||||
pub fn new_all_false() -> Self {
|
|
||||||
Self {
|
|
||||||
canonicalization_enabled: false,
|
|
||||||
constant_folding_enabled: false,
|
|
||||||
dead_code_elimination_enabled: false,
|
|
||||||
type_inference_enabled: false,
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
impl Default for CompilerOptions {
|
impl Default for CompilerOptions {
|
||||||
@ -45,7 +33,6 @@ impl Default for CompilerOptions {
|
|||||||
canonicalization_enabled: true,
|
canonicalization_enabled: true,
|
||||||
constant_folding_enabled: true,
|
constant_folding_enabled: true,
|
||||||
dead_code_elimination_enabled: true,
|
dead_code_elimination_enabled: true,
|
||||||
type_inference_enabled: true,
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -152,10 +152,6 @@ impl<R: ReconstructingReducer, O: CombinerOptions> CombineAstAsgDirector<R, O> {
|
|||||||
asg: &AsgExpression,
|
asg: &AsgExpression,
|
||||||
) -> Result<AstExpression, ReducerError> {
|
) -> Result<AstExpression, ReducerError> {
|
||||||
let new = match (ast, asg) {
|
let new = match (ast, asg) {
|
||||||
// TODO what to do for the following:
|
|
||||||
// Ast::Identifier, Asg::ValueRef
|
|
||||||
|
|
||||||
// AsgExpression::Identifier(identifier) => AsgExpression::Identifier(self.reduce_identifier(&identifier)?),
|
|
||||||
(AstExpression::Value(value), AsgExpression::Constant(const_)) => {
|
(AstExpression::Value(value), AsgExpression::Constant(const_)) => {
|
||||||
AstExpression::Value(self.reduce_value(&value, &const_)?)
|
AstExpression::Value(self.reduce_value(&value, &const_)?)
|
||||||
}
|
}
|
||||||
@ -313,11 +309,9 @@ impl<R: ReconstructingReducer, O: CombinerOptions> CombineAstAsgDirector<R, O> {
|
|||||||
ast: &CircuitMemberAccessExpression,
|
ast: &CircuitMemberAccessExpression,
|
||||||
_asg: &AsgCircuitAccessExpression,
|
_asg: &AsgCircuitAccessExpression,
|
||||||
) -> Result<CircuitMemberAccessExpression, ReducerError> {
|
) -> Result<CircuitMemberAccessExpression, ReducerError> {
|
||||||
// TODO FIGURE IT OUT
|
|
||||||
// let circuit = self.reduce_expression(&circuit_member_access.circuit)?;
|
// let circuit = self.reduce_expression(&circuit_member_access.circuit)?;
|
||||||
// let name = self.reduce_identifier(&circuit_member_access.name)?;
|
// let name = self.reduce_identifier(&circuit_member_access.name)?;
|
||||||
// let target = input.target.get().map(|e| self.reduce_expression(e));
|
// let target = input.target.get().map(|e| self.reduce_expression(e));
|
||||||
// does it matter?
|
|
||||||
|
|
||||||
self.ast_reducer
|
self.ast_reducer
|
||||||
.reduce_circuit_member_access(ast, *ast.circuit.clone(), ast.name.clone())
|
.reduce_circuit_member_access(ast, *ast.circuit.clone(), ast.name.clone())
|
||||||
@ -328,11 +322,9 @@ impl<R: ReconstructingReducer, O: CombinerOptions> CombineAstAsgDirector<R, O> {
|
|||||||
ast: &CircuitStaticFunctionAccessExpression,
|
ast: &CircuitStaticFunctionAccessExpression,
|
||||||
_asg: &AsgCircuitAccessExpression,
|
_asg: &AsgCircuitAccessExpression,
|
||||||
) -> Result<CircuitStaticFunctionAccessExpression, ReducerError> {
|
) -> Result<CircuitStaticFunctionAccessExpression, ReducerError> {
|
||||||
// TODO FIGURE IT OUT
|
|
||||||
// let circuit = self.reduce_expression(&circuit_member_access.circuit)?;
|
// let circuit = self.reduce_expression(&circuit_member_access.circuit)?;
|
||||||
// let name = self.reduce_identifier(&circuit_member_access.name)?;
|
// let name = self.reduce_identifier(&circuit_member_access.name)?;
|
||||||
// let target = input.target.get().map(|e| self.reduce_expression(e));
|
// let target = input.target.get().map(|e| self.reduce_expression(e));
|
||||||
// does it matter?
|
|
||||||
|
|
||||||
self.ast_reducer
|
self.ast_reducer
|
||||||
.reduce_circuit_static_fn_access(ast, *ast.circuit.clone(), ast.name.clone())
|
.reduce_circuit_static_fn_access(ast, *ast.circuit.clone(), ast.name.clone())
|
||||||
|
Loading…
Reference in New Issue
Block a user