lib/pione/transformer/document-transformer.rb in pione-0.1.1 vs lib/pione/transformer/document-transformer.rb in pione-0.1.2
- old
+ new
@@ -1,38 +1,33 @@
module Pione
module Transformer
+ # DocumentTransformer is a transformer for syntax tree of document.
class DocumentTransformer < Parslet::Transform
include LiteralTransformer
include FeatureExprTransformer
include ExprTransformer
include FlowElementTransformer
include BlockTransformer
include RuleDefinitionTransformer
+ # @param package_name [String]
+ # package name of the document
def initialize(package_name="main")
super()
@current_package_name = package_name
Thread.current[:current_package_name] = @current_package_name
end
- def apply(*args)
- res = super
- return res
- end
-
def check_model_type(data, type)
data.pione_model_type == type
end
- #
- # statement
- #
-
+ # Transform +:param_block+ as Naming::ParamBlock.
rule(:param_block => sequence(:assignment_list)) {
Naming.ParamBlock(assignment_list)
}
- # package
+ # Transform +:package+ as Naming::Package.
rule(:package => subtree(:tree)) {
@current_package = Naming.Package(tree[:package_name].to_s)
}
end
end