Module: Confetti::Template::JavaChecks
- Included in:
- AndroidManifest, WebosAppinfo
- Defined in:
- lib/confetti/templates/java_checks.rb
Instance Method Summary collapse
- #convert_to_java_identifier(str) ⇒ Object
- #convert_to_java_package_id(str) ⇒ Object
- #is_java_identifier(str) ⇒ Object
- #is_java_package_id(str) ⇒ Object
Instance Method Details
#convert_to_java_identifier(str) ⇒ Object
8 9 10 11 12 13 |
# File 'lib/confetti/templates/java_checks.rb', line 8 def convert_to_java_identifier(str) str. sub(/^\d/,"_"). gsub(/\s/,""). gsub(/[^a-zA-Z0-9_]/,"_") end |
#convert_to_java_package_id(str) ⇒ Object
22 23 24 25 26 27 28 29 30 31 32 33 |
# File 'lib/confetti/templates/java_checks.rb', line 22 def convert_to_java_package_id(str) return str if is_java_package_id(str) bits = str.split('.', -1) fixed_bits = bits.reject {|cmp| cmp.empty? }.map do |cmp| convert_to_java_identifier(cmp) end fixed_bits.unshift('com') if fixed_bits.length == 1 fixed_bits.join('.') end |
#is_java_identifier(str) ⇒ Object
4 5 6 |
# File 'lib/confetti/templates/java_checks.rb', line 4 def is_java_identifier(str) str.match(/^[a-zA-Z_][a-zA-Z0-9_]*$/) end |
#is_java_package_id(str) ⇒ Object
15 16 17 18 19 20 |
# File 'lib/confetti/templates/java_checks.rb', line 15 def is_java_package_id(str) components = str.split('.', -1) # second param to #split ensures can't be dot-terminated components.length > 1 and components.all? { |s| is_java_identifier(s) } end |