Files

Class Index [+]

Quicksearch

XSD::CodeGen::GenSupport

Public Class Methods

capitalize(target) click to toggle source
     # File lib/xsd/codegen/gensupport.rb, line 156
156:   def capitalize(target)
157:     target.sub(/^([a-z])/) { $1.upcase }
158:   end
constant?(word) click to toggle source
     # File lib/xsd/codegen/gensupport.rb, line 221
221:   def constant?(word)
222:     CONSTANTS.key?(word)
223:   end
keyword?(word) click to toggle source
     # File lib/xsd/codegen/gensupport.rb, line 216
216:   def keyword?(word)
217:     KEYWORDS.key?(word)
218:   end
safeconstname(name) click to toggle source
     # File lib/xsd/codegen/gensupport.rb, line 166
166:   def safeconstname(name)
167:     safename = name.scan(/[a-zA-Z0-9_]+/).collect { |ele|
168:       GenSupport.capitalize(ele)
169:     }.join
170:     if /\A[A-Z]/ !~ safename or keyword?(safename) or constant?(safename)
171:       "C_#{safename}"
172:     else
173:       safename
174:     end
175:   end
safeconstname?(name) click to toggle source
     # File lib/xsd/codegen/gensupport.rb, line 178
178:   def safeconstname?(name)
179:     /\A[A-Z][a-zA-Z0-9_]*\z/ =~ name and !keyword?(name)
180:   end
safemethodname(name) click to toggle source
     # File lib/xsd/codegen/gensupport.rb, line 183
183:   def safemethodname(name)
184:     postfix = name[/[=?!]$/]
185:     safename = name.scan(/[a-zA-Z0-9_]+/).join('_')
186:     safename = uncapitalize(safename)
187:     safename += postfix if postfix
188:     if /\A[a-z]/ !~ safename or keyword?(safename)
189:       "m_#{safename}"
190:     else
191:       safename
192:     end
193:   end
safemethodname?(name) click to toggle source
     # File lib/xsd/codegen/gensupport.rb, line 196
196:   def safemethodname?(name)
197:     /\A[a-zA-Z_][a-zA-Z0-9_]*[=!?]?\z/ =~ name and !keyword?(name)
198:   end
safevarname(name) click to toggle source
     # File lib/xsd/codegen/gensupport.rb, line 201
201:   def safevarname(name)
202:     safename = uncapitalize(name.scan(/[a-zA-Z0-9_]+/).join('_'))
203:     if /\A[a-z]/ !~ safename or keyword?(safename)
204:       "v_#{safename}"
205:     else
206:       safename
207:     end
208:   end
safevarname?(name) click to toggle source
     # File lib/xsd/codegen/gensupport.rb, line 211
211:   def safevarname?(name)
212:     /\A[a-z_][a-zA-Z0-9_]*\z/ =~ name and !keyword?(name)
213:   end
uncapitalize(target) click to toggle source
     # File lib/xsd/codegen/gensupport.rb, line 161
161:   def uncapitalize(target)
162:     target.sub(/^([A-Z])/) { $1.downcase }
163:   end

Public Instance Methods

format(str, indent = nil) click to toggle source
     # File lib/xsd/codegen/gensupport.rb, line 226
226:   def format(str, indent = nil)
227:     str = trim_eol(str)
228:     str = trim_indent(str)
229:     if indent
230:       str.gsub(/^/, " " * indent)
231:     else
232:       str
233:     end
234:   end

Private Instance Methods

capitalize(target) click to toggle source
     # File lib/xsd/codegen/gensupport.rb, line 156
156:   def capitalize(target)
157:     target.sub(/^([a-z])/) { $1.upcase }
158:   end
constant?(word) click to toggle source
     # File lib/xsd/codegen/gensupport.rb, line 221
221:   def constant?(word)
222:     CONSTANTS.key?(word)
223:   end
dump_emptyline() click to toggle source
     # File lib/xsd/codegen/gensupport.rb, line 266
266:   def dump_emptyline
267:     "\n"
268:   end
keyword?(word) click to toggle source
     # File lib/xsd/codegen/gensupport.rb, line 216
216:   def keyword?(word)
217:     KEYWORDS.key?(word)
218:   end
safeconstname(name) click to toggle source
     # File lib/xsd/codegen/gensupport.rb, line 166
166:   def safeconstname(name)
167:     safename = name.scan(/[a-zA-Z0-9_]+/).collect { |ele|
168:       GenSupport.capitalize(ele)
169:     }.join
170:     if /\A[A-Z]/ !~ safename or keyword?(safename) or constant?(safename)
171:       "C_#{safename}"
172:     else
173:       safename
174:     end
175:   end
safeconstname?(name) click to toggle source
     # File lib/xsd/codegen/gensupport.rb, line 178
178:   def safeconstname?(name)
179:     /\A[A-Z][a-zA-Z0-9_]*\z/ =~ name and !keyword?(name)
180:   end
safemethodname(name) click to toggle source
     # File lib/xsd/codegen/gensupport.rb, line 183
183:   def safemethodname(name)
184:     postfix = name[/[=?!]$/]
185:     safename = name.scan(/[a-zA-Z0-9_]+/).join('_')
186:     safename = uncapitalize(safename)
187:     safename += postfix if postfix
188:     if /\A[a-z]/ !~ safename or keyword?(safename)
189:       "m_#{safename}"
190:     else
191:       safename
192:     end
193:   end
safemethodname?(name) click to toggle source
     # File lib/xsd/codegen/gensupport.rb, line 196
196:   def safemethodname?(name)
197:     /\A[a-zA-Z_][a-zA-Z0-9_]*[=!?]?\z/ =~ name and !keyword?(name)
198:   end
safevarname(name) click to toggle source
     # File lib/xsd/codegen/gensupport.rb, line 201
201:   def safevarname(name)
202:     safename = uncapitalize(name.scan(/[a-zA-Z0-9_]+/).join('_'))
203:     if /\A[a-z]/ !~ safename or keyword?(safename)
204:       "v_#{safename}"
205:     else
206:       safename
207:     end
208:   end
safevarname?(name) click to toggle source
     # File lib/xsd/codegen/gensupport.rb, line 211
211:   def safevarname?(name)
212:     /\A[a-z_][a-zA-Z0-9_]*\z/ =~ name and !keyword?(name)
213:   end
trim_eol(str) click to toggle source
     # File lib/xsd/codegen/gensupport.rb, line 238
238:   def trim_eol(str)
239:     str.collect { |line|
240:       line.sub(/\r?\n\z/, "") + "\n"
241:     }.join
242:   end
trim_indent(str) click to toggle source
     # File lib/xsd/codegen/gensupport.rb, line 244
244:   def trim_indent(str)
245:     indent = nil
246:     str = str.collect { |line| untab(line) }.join
247:     str.each do |line|
248:       head = line.index(/\S/)
249:       if !head.nil? and (indent.nil? or head < indent)
250:         indent = head
251:       end
252:     end
253:     return str unless indent
254:     str.collect { |line|
255:       line.sub(/^ {0,#{indent}}/, "")
256:     }.join
257:   end
uncapitalize(target) click to toggle source
     # File lib/xsd/codegen/gensupport.rb, line 161
161:   def uncapitalize(target)
162:     target.sub(/^([A-Z])/) { $1.downcase }
163:   end
untab(line, ts = 8) click to toggle source
     # File lib/xsd/codegen/gensupport.rb, line 259
259:   def untab(line, ts = 8)
260:     while pos = line.index(/\t/)
261:       line = line.sub(/\t/, " " * (ts - (pos % ts)))
262:     end
263:     line
264:   end

Disabled; run with --debug to generate this.

[Validate]

Generated with the Darkfish Rdoc Generator 1.1.6.