todo.txt

path: C:\exlibris\sfrexxliterate\trunk\
00001 /** todo
00002 
00003 <h3>Latest</h3>
00004 
00005   Consider release 4  changes.  Adding  an  abstract  state to the icons
00006   doubles the  current  number  from  16  to  32.  Javascript  to run an
00007   overlay?
00008 
00009 <br/><br/>
00010 
00011   ::REquires search set up at document level and full tree reported for
00012   each file
00013 
00014 <br/><br/>
00015 
00016   callableexpand needs to be called from PROCs and ROUTs
00017 <br/>
00018   Done
00019 <br/><br/>
00020 
00021   labels could be converted to procedures at the document level when
00022   a call to them is detected. Or at the rexxprogram level, since such
00023   references are necessarily local? rexxprogram doesn't parse clauses
00024   at the moment, lacking global knowledge of the name space.
00025 
00026 <br/><br/>
00027 
00028   Attributes and methods need an exposed-by cross refererence.
00029 
00030 <br/><br/>
00031 
00032   badly documented parameter reporting needs to be taken out of
00033   callableexpand and completed before HTML output starts
00034 
00035 <br/><br/>
00036   requires space to be determined at the document level with comprehensive
00037   search. Emitter to report complete requires space for each file.
00038 
00039 
00040 <br/><br/>
00041   class cross referencing in parameters
00042 <br/>
00043   done
00044 <br/>
00045 
00046   and block comments
00047   needs to be taken out of htmlrexxclass. rdfeatures should
00048   have a block comment and comment parameters parsed and prepared
00049   before html output starts
00050 <br/>
00051   each line in the comment/parms will need to be a list of
00052   chunks, some of which have references attached
00053   before html output starts
00054 <br/>
00055   cf tokenized approach to references. Needs an rdcomment
00056 
00057 <br/><br/>
00058   Source cross referencing
00059 <br/>
00060   done - makes emitter much leaner
00061 <br/>
00062 
00063   and tagging *could* be pushed  back  into  the parser, but really only
00064   the emitter knows what to  tag,  given  whatever output format is use,
00065   so leave this as a job for  the emitter. Emitter can get away with one
00066   pass of the token list to colour key words and symbols
00067 
00068 <br/><br/>
00069   Decompose documents.clsinto adocument  +  textdocument + rexx document
00070   + files/folders +  rexxdocument  classifications  (rd*). That leads to
00071   two large files (rexxdocument  and  classifications)  and  three tiny
00072   files.
00073 
00074 <br/><br/>
00075 
00076   Document needs further  abstraction:  srcurl  docurl docurlpre need to
00077   be built by  the  emitter.  A  rexx  program  needs  a source URL, and
00078   document URL for HTML output.
00079   HTML emitter to attach  methods  to  documents  to access the required
00080   identifiers.  The  document  elements   (rdclause)  have  an  abstract
00081   'isReferenced' attribute set in  the  xref,  the  emitter uses this to
00082   decide whether or not to assign url(s) to the document elements
00083   <br/>
00084   Done in rexxliterate.cls
00085   <br/>
00086 
00087 <br/>
00088   These should be set in the  document  by an early pass of emitter, and
00089   rdfeature needs a getanchor() method  that refers back to its document
00090   to whomp up that anchorname.
00091   <br/>
00092   Done in rexxliterate.cls
00093   <br/>
00094 
00095 <br/><br/>
00096 
00097   Split into 3 phases:  ::init  builds  the  file list, ::parse does the
00098   parsing and ::emit does the  emission.  The user can traverse the file
00099   tree setting  processing  (such  as  dynamic  indexing,  from  and to)
00100   before the parse gets done, permitting fine grained control.
00101   <br/>
00102 
00103   cf. fsobject.cls::blob docs, which aren't much use.
00104 
00105   <br/>
00106 
00107   Method public interface on rexxdocument  to support this? It's already
00108   huge.     A     configuration      object     would     be     better.
00109   file~document~getconfiguration~setdynto(.true)
00110 
00111   <br/>
00112   Done in rexxliterate.cls
00113   <br/>
00114 
00115 
00116 <br/><br/>
00117 
00118   rdclass assembly of inherited features needs to be taken
00119   out of htmlrexxclass and completed before html output
00120   starts, as lists of rdmethod
00121 
00122 <br/><br/>
00123 
00124   htmlrexxclass htmlrexxsource htmlrexxprogram htmltext to
00125   be merged to htmloutput in one file (class methods) or
00126   become part of their respective documents
00127 
00128 
00129 <br/><br/>
00130 
00131   references to class methods from class methods are not
00132   detected dynamically. Dynamic detection needs a test set of
00133   classes to explore what happens,
00134 <br/><br/>
00135 
00136   A method reference followed by a parameter list cannot be
00137   an attribute reference (so attributes can be excluded from
00138   dynamic cross reference). There must be more rules like
00139   this, need to bring everything to bear so we're less likely
00140   to hit false positives. Ordering the search correctly in ::REQUIRES
00141   space will make the list more useful.
00142 <br/>
00143 
00144   The confusing case is  multiple  attributes  or  methods with the same
00145   name, sent messages but not in  this  class. How to exclude names from
00146   the global list of methods and attributes?
00147 
00148 <br/>
00149   In reality, it doesn't seem to be  so bad a problem, but it's annoying
00150   for some names. More  class  and  object classification when searching
00151   would be good. "This is a CLASS  message to receiver self", "This is a
00152   an OBJECT message to receiver self", etc.
00153 <br/>
00154 
00155 
00156 <br/><br/>
00157 
00158 */
00159 

Get RexxLiterate at SourceForge.net. Fast, secure and Free Open Source software downloads
Generated on 31 Aug 2010 05:20:36 for RexxLiterate by rexxliterate  0.0.1