1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
use std::sync::Arc;
use cairo_lang_compiler::db::RootDatabase;
use cairo_lang_plugins::get_default_plugins;
use crate::plugin::StarkNetPlugin;
pub fn get_starknet_database() -> RootDatabase {
let precedence = vec!["Pedersen", "RangeCheck", "Bitwise", "EcOp", "GasBuiltin", "System"];
let mut plugins = get_default_plugins();
plugins.push(Arc::new(StarkNetPlugin {}));
let mut builder = RootDatabase::builder();
builder.with_dev_corelib().unwrap().with_implicit_precedence(precedence).with_plugins(plugins);
builder.build()
}