Changeset 49
- Timestamp:
- May 12, 2008, 10:53:25 PM (15 years ago)
- Location:
- ruby/trunk
- Files:
-
- 3 added
- 2 edited
- 6 moved
Legend:
- Unmodified
- Added
- Removed
-
ruby/trunk/bin/adl_validator.rb
r42 r49 1 1 #!/usr/bin/env ruby 2 #$:.unshift File.join(File.dirname(__FILE__)) 3 require " lib/shell.rb"2 require 'rubygems' 3 require "adl_parser" 4 4 require 'readline' 5 5 require 'optparse' 6 #require 'open-uri'7 6 require 'net/http' 8 7 -
ruby/trunk/lib/adl_parser/Rakefile
r48 r49 10 10 $DEBUG = false 11 11 12 RACC_SRC = FileList[" *.y"]13 RACC_PARSER = FileList[' parser.rb']12 RACC_SRC = FileList["lib/parser.y"] 13 RACC_PARSER = FileList['lib/parser.rb'] 14 14 15 15 task :default => [:racc] … … 40 40 41 41 Rake::TestTask.new('test:shell') do |t| 42 t.libs = [" ."]42 t.libs = ["lib"] 43 43 t.pattern = ['tests/shell_test.rb'] 44 44 t.warning = true … … 70 70 Rake::RDocTask.new('rdoc') do |t| 71 71 t.rdoc_dir = 'rdoc' 72 t.rdoc_files.include('README', 'lib/*.rb' , 'bin/*.rb')72 t.rdoc_files.include('README', 'lib/*.rb') 73 73 t.main = 'README' 74 74 t.title = "ADL parser API documentation" … … 78 78 s.name = 'adl_parser' 79 79 s.author = 'Akimichi Tatsukawa' 80 s.version = '0.0. 2'80 s.version = '0.0.3' 81 81 s.summary = 'ADL parser' 82 82 s.email = 'akimichi_tatsukawa@nifty.com' 83 83 s.test_files = FileList['tests/*_test.rb', '*.adl'] 84 candidates = Dir.glob("{ bin,docs,lib,tests,ext}/**/*")84 candidates = Dir.glob("{docs,lib,tests}/**/*") + FileList['README', 'Rakefile'] 85 85 s.files = candidates.delete_if do |item| 86 86 item.include?(".svn") || item.include?("rdoc") 87 87 end 88 s.files = FileList['README', 'COPYING', 'Rakefile'] 89 s.require_path = "lib" 88 # s.require_path = "lib" 90 89 s.has_rdoc = true 91 90 s.extra_rdoc_files = ["README"] -
ruby/trunk/lib/adl_parser/lib/parser.rb
r47 r49 2 2 # DO NOT MODIFY!!!! 3 3 # This file is automatically generated by racc 1.4.5 4 # from racc grammer file " parser.y".4 # from racc grammer file "lib/parser.y". 5 5 # 6 6 7 7 require 'racc/parser' 8 8 9 9 10 … … 11 12 $:.unshift File.join(File.dirname(__FILE__)) 12 13 require 'logger' 13 require 'util.rb'14 require 'scanner.rb'14 #require 'lib/util.rb' 15 #require 'lib/scanner.rb' 15 16 require 'rubygems' 16 require ' ../models/am.rb'17 $DEBUG = true17 require 'am.rb' 18 $DEBUG = false 18 19 19 20 … … 26 27 class Parser < Racc::Parser 27 28 28 module_eval <<'..end lib/parser.y modeval..id f8b8df4140', 'lib/parser.y', 117529 module_eval <<'..end lib/parser.y modeval..idc8fd0a7fcc', 'lib/parser.y', 1182 29 30 30 31 def assert_at(file,line, message = "") … … 34 35 end 35 36 36 @@log = Logger.new('log/parser.log','daily') 37 if $DEBUG 38 @@log = Logger.new('log/parser.log','daily') 39 @@log.level = Logger::INFO 40 else 41 @@log = Logger.new(STDOUT) 42 @@log.level = Logger::WARN 43 end 44 37 45 @@dadl_scanner = OpenEHR::ADL::Scanner::DADL::RootScanner.new 38 46 @@cadl_scanner = OpenEHR::ADL::Scanner::CADL::RootScanner.new … … 819 827 820 828 821 ..end lib/parser.y modeval..id f8b8df4140829 ..end lib/parser.y modeval..idc8fd0a7fcc 822 830 823 831 ##### racc 1.4.5 generates ### … … 1127 1135 5, 209, :_reduce_none, 1128 1136 5, 209, :_reduce_none, 1129 1, 211, :_reduce_ none,1130 1, 211, :_reduce_ none,1137 1, 211, :_reduce_303, 1138 1, 211, :_reduce_304, 1131 1139 0, 117, :_reduce_none, 1132 1140 5, 117, :_reduce_306, … … 3362 3370 # reduce 302 omitted 3363 3371 3364 # reduce 303 omitted 3365 3366 # reduce 304 omitted 3372 module_eval <<'.,.,', 'lib/parser.y', 1000 3373 def _reduce_303( val, _values, result ) 3374 result = val[0] 3375 result 3376 end 3377 .,., 3378 3379 module_eval <<'.,.,', 'lib/parser.y', 1004 3380 def _reduce_304( val, _values, result ) 3381 result = val[0] 3382 result 3383 end 3384 .,., 3367 3385 3368 3386 # reduce 305 omitted 3369 3387 3370 module_eval <<'.,.,', 'lib/parser.y', 10 053388 module_eval <<'.,.,', 'lib/parser.y', 1011 3371 3389 def _reduce_306( val, _values, result ) 3372 3390 result = val[3] … … 3467 3485 # reduce 352 omitted 3468 3486 3469 module_eval <<'.,.,', 'lib/parser.y', 10 753487 module_eval <<'.,.,', 'lib/parser.y', 1081 3470 3488 def _reduce_353( val, _values, result ) 3471 3489 result = OpenEHR::AM::Archetype::Constraint_Model::Primitive::C_BOOLEAN.new(:true_valid => true) … … 3474 3492 .,., 3475 3493 3476 module_eval <<'.,.,', 'lib/parser.y', 10 793494 module_eval <<'.,.,', 'lib/parser.y', 1085 3477 3495 def _reduce_354( val, _values, result ) 3478 3496 result = OpenEHR::AM::Archetype::Constraint_Model::Primitive::C_BOOLEAN.new(:true_valid => false) … … 3481 3499 .,., 3482 3500 3483 module_eval <<'.,.,', 'lib/parser.y', 108 33501 module_eval <<'.,.,', 'lib/parser.y', 1089 3484 3502 def _reduce_355( val, _values, result ) 3485 3503 result = OpenEHR::AM::Archetype::Constraint_Model::Primitive::C_BOOLEAN.new(:true_valid => true,:false_valid => false) … … 3488 3506 .,., 3489 3507 3490 module_eval <<'.,.,', 'lib/parser.y', 10 873508 module_eval <<'.,.,', 'lib/parser.y', 1093 3491 3509 def _reduce_356( val, _values, result ) 3492 3510 result = OpenEHR::AM::Archetype::Constraint_Model::Primitive::C_BOOLEAN.new(:true_valid => false,:false_valid => true) … … 3495 3513 .,., 3496 3514 3497 module_eval <<'.,.,', 'lib/parser.y', 109 23515 module_eval <<'.,.,', 'lib/parser.y', 1098 3498 3516 def _reduce_357( val, _values, result ) 3499 3517 result = val[0] … … 3502 3520 .,., 3503 3521 3504 module_eval <<'.,.,', 'lib/parser.y', 1 0963522 module_eval <<'.,.,', 'lib/parser.y', 1102 3505 3523 def _reduce_358( val, _values, result ) 3506 3524 raise 'Not implemented yet' … … 3509 3527 .,., 3510 3528 3511 module_eval <<'.,.,', 'lib/parser.y', 110 03529 module_eval <<'.,.,', 'lib/parser.y', 1106 3512 3530 def _reduce_359( val, _values, result ) 3513 3531 raise 'Not implemented yet' … … 3526 3544 # reduce 364 omitted 3527 3545 3528 module_eval <<'.,.,', 'lib/parser.y', 111 33546 module_eval <<'.,.,', 'lib/parser.y', 1119 3529 3547 def _reduce_365( val, _values, result ) 3530 3548 @in_interval = false … … 3534 3552 .,., 3535 3553 3536 module_eval <<'.,.,', 'lib/parser.y', 11 193554 module_eval <<'.,.,', 'lib/parser.y', 1125 3537 3555 def _reduce_366( val, _values, result ) 3538 3556 result = val[0] … … 3541 3559 .,., 3542 3560 3543 module_eval <<'.,.,', 'lib/parser.y', 112 33561 module_eval <<'.,.,', 'lib/parser.y', 1129 3544 3562 def _reduce_367( val, _values, result ) 3545 3563 result = val[0] … … 3556 3574 # reduce 371 omitted 3557 3575 3558 module_eval <<'.,.,', 'lib/parser.y', 11 383576 module_eval <<'.,.,', 'lib/parser.y', 1144 3559 3577 def _reduce_372( val, _values, result ) 3560 3578 result = val[0] … … 3563 3581 .,., 3564 3582 3565 module_eval <<'.,.,', 'lib/parser.y', 114 33583 module_eval <<'.,.,', 'lib/parser.y', 1149 3566 3584 def _reduce_373( val, _values, result ) 3567 3585 result = val[0] … … 3570 3588 .,., 3571 3589 3572 module_eval <<'.,.,', 'lib/parser.y', 11 483590 module_eval <<'.,.,', 'lib/parser.y', 1154 3573 3591 def _reduce_374( val, _values, result ) 3574 3592 @@log.info("#{__FILE__}:#{__LINE__}, V_ATTRIBUTE_IDENTIFIER = #{word} at #{@filename}") … … 3578 3596 .,., 3579 3597 3580 module_eval <<'.,.,', 'lib/parser.y', 11 583598 module_eval <<'.,.,', 'lib/parser.y', 1164 3581 3599 def _reduce_375( val, _values, result ) 3582 3600 result = val[0] -
ruby/trunk/lib/adl_parser/lib/parser.y
r47 r49 1168 1168 ---- header 1169 1169 1170 1170 1171 $:.unshift File.join(File.dirname(__FILE__)) 1171 1172 require 'logger' 1172 require 'lib/util.rb'1173 require 'lib/scanner.rb'1173 #require 'lib/util.rb' 1174 #require 'lib/scanner.rb' 1174 1175 require 'rubygems' 1175 1176 require 'am.rb' 1176 $DEBUG = true1177 $DEBUG = false 1177 1178 1178 1179 … … 1186 1187 end 1187 1188 1188 @@log = Logger.new('log/parser.log','daily') 1189 if $DEBUG 1190 @@log = Logger.new('log/parser.log','daily') 1191 @@log.level = Logger::INFO 1192 else 1193 @@log = Logger.new(STDOUT) 1194 @@log.level = Logger::WARN 1195 end 1196 1189 1197 @@dadl_scanner = OpenEHR::ADL::Scanner::DADL::RootScanner.new 1190 1198 @@cadl_scanner = OpenEHR::ADL::Scanner::CADL::RootScanner.new -
ruby/trunk/lib/adl_parser/lib/scanner.rb
r47 r49 1 require 'logger'2 1 require 'rubygems' 3 2 gem 'yaparc' … … 9 8 module Scanner 10 9 module Common 11 LOG = Logger.new('log/scanner.log','daily')12 13 10 class V_QUALIFIED_TERM_CODE_REF 14 11 include Yaparc::Parsable … … 16 13 @parser = lambda do |input| 17 14 Yaparc::Apply.new(Yaparc::Regex.new(/\A\[[a-zA-Z0-9()\._-]+::[a-zA-Z0-9\._-]+\]/)) do |match| 18 LOG.info("V_QUALIFIED_TERM_CODE_REF: #{match}")15 OpenEHR::LOG.debug("V_QUALIFIED_TERM_CODE_REF: #{match}") 19 16 [:V_QUALIFIED_TERM_CODE_REF, match] 20 17 end … … 28 25 @parser = lambda do |input| 29 26 Yaparc::Apply.new(Yaparc::Regex.new(/\A\[[a-zA-Z0-9][a-zA-Z0-9._\-]*\]/)) do |match| 30 LOG.info("V_TERM_CODE_REF: #{match}")27 OpenEHR::LOG.debug("V_TERM_CODE_REF: #{match}") 31 28 [:V_LOCAL_TERM_CODE_REF, match] 32 29 end … … 40 37 @parser = lambda do |input| 41 38 Yaparc::Apply.new(Yaparc::Regex.new(/\A\[[a-zA-Z0-9._\- ]+::[a-zA-Z0-9._\- ]+\]/)) do |match| 42 LOG.info("ERR_V_QUALIFIED_TERM_CODE_REF: #{match}")39 OpenEHR::LOG.debug("ERR_V_QUALIFIED_TERM_CODE_REF: #{match}") 43 40 [:ERR_V_QUALIFIED_TERM_CODE_REF, match] 44 41 end … … 52 49 @parser = lambda do |input| 53 50 Yaparc::Apply.new(Yaparc::Regex.new(/\A[A-Z][a-zA-Z0-9_]*/)) do |match| 54 LOG.info("V_TYPE_IDENTIFIER: #{match}")51 OpenEHR::LOG.debug("V_TYPE_IDENTIFIER: #{match}") 55 52 [:V_TYPE_IDENTIFIER, match] 56 53 end … … 64 61 @parser = lambda do |input| 65 62 Yaparc::Apply.new(Yaparc::Regex.new(/\A[A-Z][a-zA-Z0-9_]*<[a-zA-Z0-9,_<>]+>/)) do |match| 66 LOG.info("V_GENERIC_TYPE_IDENTIFIER: #{match}")63 OpenEHR::LOG.debug("V_GENERIC_TYPE_IDENTIFIER: #{match}") 67 64 [:V_GENERIC_TYPE_IDENTIFIER, match] 68 65 end … … 77 74 @parser = lambda do |input| 78 75 Yaparc::Apply.new(Yaparc::Regex.new(/\Aa[ct][0-9.]+/)) do |match| 79 LOG.info("V_LOCAL_CODE: #{match}")76 OpenEHR::LOG.debug("V_LOCAL_CODE: #{match}") 80 77 [:V_LOCAL_CODE, match] 81 78 end … … 89 86 @parser = lambda do |input| 90 87 Yaparc::Apply.new(Yaparc::Regex.new(/\A"([^"]*)"/m)) do |match| 91 LOG.info("V_STRING: #{match}")88 OpenEHR::LOG.debug("V_STRING: #{match}") 92 89 [:V_STRING, match] 93 90 end … … 101 98 @parser = lambda do |input| 102 99 Yaparc::Apply.new(Yaparc::Regex.new(/\A[0-9]+\.[0-9]+|[0-9]+\.[0-9]+[eE][+-]?[0-9]+/)) do |match| 103 LOG.info("V_REAL: #{match}")100 OpenEHR::LOG.debug("V_REAL: #{match}") 104 101 [:V_REAL, match] 105 102 end … … 116 113 Yaparc::Alt.new(Yaparc::Regex.new(/\AP([0-9]+|[yY])?([0-9]+|[mM])?([0-9]+|[wW])?([0-9]+|[dD])?T([0-9]+|[hH])?([0-9]+|[mM])?([0-9]+|[sS])?/), 117 114 Yaparc::Regex.new(/\AP([0-9]+|[yY])?([0-9]+|[mM])?([0-9]+|[wW])?([0-9]+|[dD])?/))) do |match| 118 LOG.info("V_ISO8601_DURATION: #{match}")115 OpenEHR::LOG.debug("V_ISO8601_DURATION: #{match}") 119 116 [:V_ISO8601_DURATION, match] 120 117 end … … 164 161 end 165 162 Yaparc::Alt.new(Yaparc::Apply.new(Yaparc::Alt.new(*reserved_parsers)) do |match| 166 OpenEHR:: ADL::Scanner::Common::LOG.info("Reserved: #{match}")163 OpenEHR::LOG.debug("Reserved: #{match}") 167 164 [OpenEHR::ADL::Scanner::DADL::RESERVED[match], OpenEHR::ADL::Scanner::DADL::RESERVED[match]] 168 165 end, 169 166 Yaparc::Apply.new(Yaparc::Regex.new(/\A[a-z][a-zA-Z0-9_]*/)) do |match| 170 OpenEHR:: ADL::Scanner::Common::LOG.info("V_ATTRIBUTE_IDENTIFIER: #{match}")167 OpenEHR::LOG.debug("V_ATTRIBUTE_IDENTIFIER: #{match}") 171 168 [:V_ATTRIBUTE_IDENTIFIER, match] 172 169 end) … … 216 213 @parser = lambda do |input| 217 214 Yaparc::Apply.new(Yaparc::Regex.new(/\A[yY][yY][yY][yY]-[mM?X][mM?X]-[dD?X][dD?X][T\t][hH?X][hH?X]:[mM?X][mM?X]:[sS?X][sS?X]/)) do |match| 218 OpenEHR:: ADL::Scanner::Common::LOG.info("V_ISO8601_DATE_TIME_CONSTRAINT_PATTERN: #{match}")215 OpenEHR::LOG.debug("V_ISO8601_DATE_TIME_CONSTRAINT_PATTERN: #{match}") 219 216 [:V_ISO8601_DATE_TIME_CONSTRAINT_PATTERN, match] 220 217 end … … 229 226 @parser = lambda do |input| 230 227 Yaparc::Apply.new(Yaparc::Regex.new(/\A[yY][yY][yY][yY]-[mM?X][mM?X]-[dD?X][dD?X]/)) do |match| 231 OpenEHR:: ADL::Scanner::Common::LOG.info("V_ISO8601_DATE_CONSTRAINT_PATTERN: #{match}")228 OpenEHR::LOG.debug("V_ISO8601_DATE_CONSTRAINT_PATTERN: #{match}") 232 229 [:V_ISO8601_DATE_CONSTRAINT_PATTERN, match] 233 230 end … … 242 239 @parser = lambda do |input| 243 240 Yaparc::Apply.new(Yaparc::Regex.new(/\A[hH][hH]:[mM?X][mM?X]:[sS?X][sS?X]/)) do |match| 244 OpenEHR:: ADL::Scanner::Common::LOG.info("V_ISO8601_TIME_CONSTRAINT_PATTERN: #{match}")241 OpenEHR::LOG.debug("V_ISO8601_TIME_CONSTRAINT_PATTERN: #{match}") 245 242 [:V_ISO8601_TIME_CONSTRAINT_PATTERN, match] 246 243 end … … 256 253 Yaparc::Apply.new(Yaparc::Alt.new(Yaparc::Regex.new(/\AP[yY]?[mM]?[wW]?[dD]?T[hH]?[mM]?[sS]?/), 257 254 Yaparc::Regex.new(/\AP[yY]?[mM]?[wW]?[dD]?/))) do |match| 258 OpenEHR:: ADL::Scanner::Common::LOG.info("V_ISO8601_DURATION_CONSTRAINT_PATTERN: #{match}")255 OpenEHR::LOG.debug("V_ISO8601_DURATION_CONSTRAINT_PATTERN: #{match}") 259 256 [:V_ISO8601_DURATION_CONSTRAINT_PATTERN, match] 260 257 end … … 269 266 @parser = lambda do |input| 270 267 Yaparc::Apply.new(Yaparc::Regex.new(/\A[A-Z][a-zA-Z0-9_]*[ \n]*\</)) do |match| 271 OpenEHR:: ADL::Scanner::Common::LOG.info("V_C_DOMAIN_TYPE: #{match}")268 OpenEHR::LOG.debug("V_C_DOMAIN_TYPE: #{match}") 272 269 [:START_V_C_DOMAIN_TYPE_BLOCK, match] 273 270 end … … 313 310 end 314 311 Yaparc::Alt.new(Yaparc::Apply.new(Yaparc::Alt.new(*reserved_parsers)) do |match| 315 OpenEHR:: ADL::Scanner::Common::LOG.info("Reserved: #{match}")312 OpenEHR::LOG.debug("Reserved: #{match}") 316 313 [OpenEHR::ADL::Scanner::CADL::RESERVED[match], OpenEHR::ADL::Scanner::CADL::RESERVED[match]] 317 314 end, 318 315 Yaparc::Apply.new(Yaparc::Regex.new(/\A[a-z][a-zA-Z0-9_]*/)) do |match| 319 OpenEHR:: ADL::Scanner::Common::LOG.info("V_ATTRIBUTE_IDENTIFIER: #{match}")316 OpenEHR::LOG.debug("V_ATTRIBUTE_IDENTIFIER: #{match}") 320 317 [:V_ATTRIBUTE_IDENTIFIER, match] 321 318 end)
Note:
See TracChangeset
for help on using the changeset viewer.