class Pione::PNML::DeclarationExtractor
DeclarationExtractor
extracts declarations from net.
Public Class Methods
new(env, net, option={})
click to toggle source
# File lib/pione/pnml/declaration-extractor.rb, line 5 def initialize(env, net, option={}) @env = env @net = net @declarations = ExtractedDeclarations.new(@env) end
Public Instance Methods
extract()
click to toggle source
# File lib/pione/pnml/declaration-extractor.rb, line 11 def extract extract_params extract_variable_bindings extract_features return @declarations end
Private Instance Methods
extract_features()
click to toggle source
Extract net features.
# File lib/pione/pnml/declaration-extractor.rb, line 42 def extract_features @net.transitions.each_with_object([]) do |transition, sentences| if Perspective.feature_transition?(@env, transition) @declarations.add_feature(transition.name) end end end
extract_params()
click to toggle source
Extract net parameters.
# File lib/pione/pnml/declaration-extractor.rb, line 22 def extract_params @net.transitions.each_with_object([]) do |transition, sentences| if Perspective.param_transition?(@env, transition) # evaluate the sentence for updating language environment Perspective.eval_param_sentence(@env, transition) @declarations.add_param(transition.name) end end end
extract_variable_bindings()
click to toggle source
Extract net variable bindings.
# File lib/pione/pnml/declaration-extractor.rb, line 33 def extract_variable_bindings @net.transitions.each do |transition| if Perspective.variable_binding_transition?(@env, transition) @declarations.add_variable_binding(transition.name) end end end