import ctypes
import os
from python_ffi import Yamlate
if os.uname()[0] == 'Darwin':
lib = ctypes.cdll.LoadLibrary('../target/release/libyamlate.dylib')
else:
lib = ctypes.cdll.LoadLibrary('../target/release/libyamlate.so')
yamlate = Yamlate(lib)
with yamlate.new_environment() as environment:
environment.set_integer('another_beetle_nearby', 1)
environment.set_string('current_season', 'spring')
with open('../examples/bug.yaml', 'r') as yaml_file:
data = yaml_file.read()
with yamlate.new_yaml_from_str(data) as root_yaml:
with root_yaml.hash_get('cricket') as cricket_yaml:
with cricket_yaml.hash_get('wing_color') as wing_yaml:
with wing_yaml.evaluate(environment) as cricket_wing_result:
print cricket_wing_result.get_string()
with root_yaml.hash_get('beetle') as beetle_yaml:
with beetle_yaml.hash_get('wing_color') as wing_yaml:
with wing_yaml.evaluate(environment) as beetle_wing_result:
print beetle_wing_result.get_string()
print environment.get_integer('another_beetle_nearby')