SCM

SCM Repository

[inlinedocs] Log of /pkg/inlinedocs/man/extract.docs.setClass.Rd
[inlinedocs] / pkg / inlinedocs / man / extract.docs.setClass.Rd  
ViewVC logotype

Log of /pkg/inlinedocs/man/extract.docs.setClass.Rd

Parent Directory Parent Directory


Links to HEAD: (view) (download) (as text) (annotate)
Sticky Revision:

Revision 396 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Feb 18 13:07:32 2014 UTC (5 years, 7 months ago) by markus
File length: 1712 byte(s)
Diff to previous 392
This is the next intermediate commit.
Its main purpose is to make the package pass the cran checks so that further collaboration is not hindered.
Many of the functions I introduced and documented sparsely are not too probable to survive in their current 
form. 
The reason is the following:
Regarding design this version is in the middle of the path from the aspect oriented version I started with to the hierarchical version I have in mind and could maintain much easier.
E.g. I got rid of package.skeleton and inlinedocs now writes (most of ) the rd files.
This is not true for lists and similar stuff yet.
My final goal would be to get also rid of modify.Rd.file and move its functionality to the functions that now replace 
package.skeleton. 
If that is achieved we would be left with only two steps ( or "aspects").
1.) gather the information from the source into an environment
2.) pass the whole environment to the various Rd file writers that write the completed files instead of parsing the templates

The last step
3.) (filling the *.Rd files with  content)
    
would not be necessary any longer.

I also hope to simplify the first step considerably.
1.1)
When I started the most abstract thing we had to deal with was the list of objects.
This however does not contain generics, methods or classes.
To extract those you need the whole (populated) environment.
So step 1) will in future just populate an environment and leave the details to specialized functions. 
E.g. the (present) object list would then only be created by the function that writes Rd files for functions.
The function that document Methods dont need it.
At the moment the interfaces are in the process of change so that objects, the  environment , Methodlists, lists of Generics  are passed around for everyone to pick what he needs. This intermediate mess is not there to stay.

1.2) 
A second thing that caused a lot of work, was the parsing of the code files to produce the doc links.
I introduced a good deal of duplication here, that is however also not there to stay but a step towards reducing this kind of thing altogether but in tiny steps (seperately for classes methods and so on)
I would very much like to avoid parsing a setMethod (or setClass) statement altogether.
Presently this is necessary to find out the signature of the mehtod in question only to store the doc link relevant info  with the right key to rejoin it later with the other docs for that method.
The effort to do so is enormous. E.g. I have to reassemble the argument list of a setMethod( )call to be sure what is what in the following text. The sad thing is that the R parser does this (effortlessly) anyway when the environment is populated.
Therefore I propose to research the  srcref features in R, that would help us to find the src chunk of a method by asking the 
method object in the environment where it came from and find the preceding comments this way.

This is what I am driving towards.
So the apparent inconsistency is a reflection of ongoing design change.

To faciliate this migration I have also included some more unit tests (27 runit tests now) and some small helper scripts to run them continiously and in parallel whenever the tiniest bit of code in inlinedocs/R is touched. 
You find them in

...testfiles/mm. 

The tests duplicate a lot of code (thereby  asking  for a setup mehtod.) 
To use them as extended documentation I however prioritised readability and therefor made every test independent to understand.

D    pkg/inlinedocs/inst/scratch/inlinedocsTest
D    pkg/inlinedocs/inst/scratch/tw_testIndent.R
D    pkg/inlinedocs/inst/etc/default-function.R
D    pkg/inlinedocs/inst/etc/users.org
D    pkg/inlinedocs/inst/etc/anne-parse.R
D    pkg/inlinedocs/inst/etc/make.R
D    pkg/inlinedocs/inst/etc/tags
D    pkg/inlinedocs/inst/etc/inner.function
D    pkg/inlinedocs/inst/etc/parseRd.R
D    pkg/inlinedocs/inst/etc/anne.R
D    pkg/inlinedocs/inst/etc/minimalErrorPkg
D    pkg/inlinedocs/inst/etc/author.from.author.R
AM   pkg/inlinedocs/inst/testfiles/csall.sh
M    pkg/inlinedocs/inst/testfiles/mm/runit.NamespaceExample.R
A    pkg/inlinedocs/inst/testfiles/mm/srcref.example.R
D    pkg/inlinedocs/inst/testfiles/mm/package.skeleton.R
AM   pkg/inlinedocs/inst/testfiles/mm/cisall.sh
M    pkg/inlinedocs/inst/testfiles/mm/runit.Infrastructure.R
D    pkg/inlinedocs/inst/testfiles/mm/runit.OperatorDoc.R
AM   pkg/inlinedocs/inst/testfiles/mm/continousRunner.sh
M    pkg/inlinedocs/inst/testfiles/mm/runit.AddExampleCodeFromExternalTest.R
A    pkg/inlinedocs/inst/testfiles/mm/help.R
M    pkg/inlinedocs/inst/testfiles/mm/Itest.R
A    pkg/inlinedocs/inst/testfiles/mm/findGenericsAndMethodsWithSrcrefs.R
A    pkg/inlinedocs/inst/testfiles/mm/runit.ClassDoc.R
A    pkg/inlinedocs/inst/testfiles/mm/runit.MethodExample.R
M    pkg/inlinedocs/inst/testfiles/mm/isolatedTestRunner.R
A    pkg/inlinedocs/inst/testfiles/mm/runit.FunctionExample.R
M    pkg/inlinedocs/inst/testfiles/mm/isall.R
AM   pkg/inlinedocs/inst/testfiles/mm/cITest.sh
M    pkg/inlinedocs/inst/testfiles/mm/runit.MethodDoc.R
A    pkg/inlinedocs/inst/testfiles/mm/runit.RepairUsage.R
A    pkg/inlinedocs/inst/testfiles/lastrun
M    pkg/inlinedocs/R/package.skeleton.dx.R
M    pkg/inlinedocs/R/test.R
M    pkg/inlinedocs/R/parsers.R
M    pkg/inlinedocs/R/utils.R
M    pkg/inlinedocs/R/testhelpers.R
M    pkg/inlinedocs/DESCRIPTION
A    pkg/inlinedocs/man/writeMethodRdFiles.Rd
A    pkg/inlinedocs/man/MethodsWithSrcRefForGen.Rd
M    pkg/inlinedocs/man/removeAliasesfrom.Rd.file.Rd
A    pkg/inlinedocs/man/methSrc.Rd
A    pkg/inlinedocs/man/mm.examples.from.testfile.Rd
M    pkg/inlinedocs/man/modify.Rd.file.Rd
A    pkg/inlinedocs/man/sigString.Rd
A    pkg/inlinedocs/man/writeFunctionRdFiles.Rd
A    pkg/inlinedocs/man/removeComma.Rd
A    pkg/inlinedocs/man/rewriteSetMethodArgs.Rd
M    pkg/inlinedocs/man/print.allfun.Rd
A    pkg/inlinedocs/man/extra.class.docs.Rd
A    pkg/inlinedocs/man/pp.Rd
M    pkg/inlinedocs/man/package.skeleton.dx.Rd
A    pkg/inlinedocs/man/definition.from.source.Rd
A    pkg/inlinedocs/man/writePackageRdFile.Rd
A    pkg/inlinedocs/man/extract.docs.Rd
M    pkg/inlinedocs/man/apply.parsers.Rd
A    pkg/inlinedocs/man/z[-methods.Rd
M    pkg/inlinedocs/man/combine.character.Rd
A    pkg/inlinedocs/man/hiddenClasses.Rd
M    pkg/inlinedocs/man/combine.Rd
A    pkg/inlinedocs/man/writeMethodTableRdFiles.Rd
M    pkg/inlinedocs/man/findGeneric.Rd
M    pkg/inlinedocs/man/inlinedocs-package.Rd
A    pkg/inlinedocs/man/getMethodName.Rd
M    pkg/inlinedocs/man/extract.docs.setClass.Rd
A    pkg/inlinedocs/man/exportedFunctions.Rd
M    pkg/inlinedocs/man/extra.code.docs.Rd
M    pkg/inlinedocs/man/make.package.and.check.Rd
A    pkg/inlinedocs/man/allClasses.Rd
M    pkg/inlinedocs/man/save.test.result.Rd
A    pkg/inlinedocs/man/writeClassRdFiles.Rd
A    pkg/inlinedocs/man/exported.Rd
M    pkg/inlinedocs/man/get_S3_primitive_generics.Rd
M    pkg/inlinedocs/man/test.file.Rd
M    pkg/inlinedocs/man/extract.file.parse.Rd
A    pkg/inlinedocs/man/z[_method__listOfMethods_logical.Rd
A    pkg/inlinedocs/man/methodDocName.Rd
A    pkg/inlinedocs/man/exportedClasses.Rd
M    pkg/inlinedocs/man/extract.docs.file.Rd
A    pkg/inlinedocs/man/GenHasAnyMethodWithSrc.Rd
M    pkg/inlinedocs/man/getKnownS3generics.Rd
M    pkg/inlinedocs/man/is_primitive_in_base.Rd
A    pkg/inlinedocs/man/MethodHasSrc.Rd
M    pkg/inlinedocs/man/fixPackageFileNames.Rd
A    pkg/inlinedocs/man/trimmedNonEmptyLines.Rd
A    pkg/inlinedocs/man/getMethodSrc.Rd
A    pkg/inlinedocs/man/methodTable.Rd
A    pkg/inlinedocs/man/MethodSignatureHasOnlyExportedClasses.Rd
M    pkg/inlinedocs/man/replace.one.Rd
A    pkg/inlinedocs/man/CompareTrimmedNonEmptyLines.Rd
M    pkg/inlinedocs/man/get_internal_S3_generics.Rd
M    pkg/inlinedocs/man/forfun.Rd
A    pkg/inlinedocs/man/mmPromptMethods.Rd
M    pkg/inlinedocs/man/getSource.Rd
A    pkg/inlinedocs/man/documentableMeths.Rd
A    pkg/inlinedocs/man/pe.Rd
A    pkg/inlinedocs/man/GenHasAnyExposedMethod.Rd
M    pkg/inlinedocs/man/leadingS3generic.Rd
A    pkg/inlinedocs/man/exportedGenerics.Rd
M    pkg/inlinedocs/man/decomment.Rd
A    pkg/inlinedocs/man/createObjects.Rd
A    pkg/inlinedocs/man/GenHasSrc.Rd
A    pkg/inlinedocs/man/exportedDocumentableMeths.Rd
M    pkg/inlinedocs/man/prefixed.lines.Rd
M    pkg/inlinedocs/man/forall.Rd
A    pkg/inlinedocs/man/title.from.firstline.Rd
M    pkg/inlinedocs/man/kill.prefix.whitespace.Rd
M    pkg/inlinedocs/man/combine.NULL.Rd
M    pkg/inlinedocs/man/combine.list.Rd
A    pkg/inlinedocs/man/extra.method.docs.Rd
A    pkg/inlinedocs/man/inherit.docs.Rd
M    pkg/inlinedocs/man/extract.xxx.chunks.Rd
M    pkg/inlinedocs/man/do.not.generate.Rd
A    pkg/inlinedocs/man/extract.docs.setMethod.Rd
A    pkg/inlinedocs/man/methSig.Rd
A    pkg/inlinedocs/man/manMan
A    pkg/inlinedocs/man/manMan/descfile.names.Rd
A    pkg/inlinedocs/man/manMan/default.parsers.Rd
A    pkg/inlinedocs/man/manMan/lonely.Rd
A    pkg/inlinedocs/man/manMan/nondesc.parsers.Rd
A    pkg/inlinedocs/man/manMan/non.descfile.names.Rd
A    pkg/inlinedocs/man/manMan/forall.parsers.Rd
A    pkg/inlinedocs/man/manMan/forfun.parsers.Rd
A    pkg/inlinedocs/man/manMan/prefix.Rd
M    pkg/inlinedocs/NAMESPACE
M    pkg/inlinedocs/NEWS

Revision 392 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Sep 3 07:46:16 2013 UTC (6 years ago) by tdhock
File length: 1714 byte(s)
Diff to previous 390
delete Maintainer, Author, support Authors@R

Revision 390 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Sep 3 05:35:06 2013 UTC (6 years ago) by tdhock
File length: 1608 byte(s)
Diff to previous 356
contributions from R Core Team

Revision 356 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Apr 9 15:39:09 2012 UTC (7 years, 5 months ago) by tdhock
File length: 1622 byte(s)
Diff to previous 353
debugging CRAN crossref err

Revision 353 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Apr 9 12:44:43 2012 UTC (7 years, 5 months ago) by tdhock
File length: 1629 byte(s)
Diff to previous 312
doc bugfix for some \code blocks

Revision 312 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Jan 13 09:22:02 2012 UTC (7 years, 8 months ago) by tdhock
File length: 1599 byte(s)
Diff to previous 308
usage line breaks

Revision 308 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Oct 21 12:08:39 2011 UTC (7 years, 11 months ago) by tdhock
File length: 1602 byte(s)
Diff to previous 305
modify getSource, delete inlinedocExample to pass 2.14 checks

Revision 305 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Aug 16 11:48:38 2011 UTC (8 years, 1 month ago) by kmpont
File length: 1603 byte(s)
Diff to previous 291
Added default title for setClass when no # title on setClass line

Revision 291 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Tue Jun 7 08:59:30 2011 UTC (8 years, 3 months ago) by tdhock
File length: 1497 byte(s)
Diff to previous 213
linebreak

Revision 213 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Wed Mar 9 16:49:46 2011 UTC (8 years, 6 months ago) by kmpont
File length: 1496 byte(s)
Diff to previous 125
Options fix just introduced now correctly restores original settings

Revision 125 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Sep 16 09:34:38 2010 UTC (9 years ago) by tdhock
File length: 1457 byte(s)
Diff to previous 122
extended package.skeleton.dx example that also checks the silly package and verifies that there are no warnings

Revision 122 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Sat Aug 28 21:36:48 2010 UTC (9 years ago) by tomaschwutz
File length: 1496 byte(s)
Diff to previous 109
implemented Claudia's suggestion about the assignment function of example code to attribute ex:
added function inlinedocExample<- in file package.skeleton.dx.R with specifying the example already using this mechanism
added testfile attrExamples.R

in addition added suppressWarnings() around the call to package.skeleton, because it always gave a warning of non-exisiting package with my Windows version of R 10.1.

Revision 109 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Jun 7 08:42:15 2010 UTC (9 years, 3 months ago) by tdhock
File length: 1457 byte(s)
Diff to previous 91
extract.docs.file new functionality parses files independently

Revision 91 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon May 3 14:17:02 2010 UTC (9 years, 4 months ago) by tdhock
File length: 1460 byte(s)
Diff to previous 90
doc update after added new parser list feature

Revision 90 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon May 3 14:03:10 2010 UTC (9 years, 4 months ago) by tdhock
File length: 1308 byte(s)
Diff to previous 84
unix line endings

Revision 84 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Thu Apr 22 10:11:18 2010 UTC (9 years, 5 months ago) by kmpont
File length: 1346 byte(s)
Diff to previous 75
Further fixes for S3 methods declared with setMethodS3

1) automatically generates \method{}{} markup which should be correct if
and only if the generic name is everything up to but not including the
first period in the function name. Thus this will not work properly if a
generic function has a name like "my.generic" so that the specific function
is "my.generic.my_type".

2) fix for behaviour of package.skeleton, which, as used within this
package, for a function "[[.Distribution" generates a file with name
"z[[.Distribution.Rd"

3) prints S3method calls suitable for inclusion in a NAMESPACE file

The mechanism depends on the parse of the source file picking up and
setting the "created" field to "setMethodS3". Something similar might work
for other ways of creating S3 generics, but I am not currently clear how to
pick those up reliably.

Revision 75 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Mon Apr 12 09:30:28 2010 UTC (9 years, 5 months ago) by tdhock
File length: 1308 byte(s)
Diff to previous 70
docs update, passes r cmd check, upload to cran

Revision 70 - (view) (download) (as text) (annotate) - [select for diffs]
Modified Fri Jan 15 09:42:36 2010 UTC (9 years, 8 months ago) by kmpont
File length: 1433 byte(s)
Diff to previous 62
Completed experimental implementation for S3 classes using R.oo.

1) Search for comments preceding definition now uses parse on file
   insteadof grep via new method extract.file.parse. This works for more
   ways of defining values and does not require blank lines after
   definitions.

2) When an S3 generic is defined using setMethodS3:
a) the generic is documented with a copy of the inline documentation for the
   specific.
b) (Very experimental!) further definitions of the same generic inherit
   documentation from the first version defined in the same source file.
   The idea is to avoid repeating documentation when defining the generic
   repeatedly for an inheritance hierarchy.
   Thus if an argument is not documented, the documentation from the first
   version of the generic will be used. At present this applies to _all_
   documentation entries, but that may be reduced in the future.

3) Further minor tweaks:
a) fixes to work around package.skeleton issue: if a default argument
   contains a "%" character, then it should be escaped in the skeleton
   \usage, but is not, causing things to break nastily.
b) If documentation for an object contains an explicit title but no
   description, then the title is copied into the description in order
   to avoid warnings from the package checking process which requires
   description to be present. The idea here is to simplify generating
   documentation for small methods by reducing it to the bare minimum.

Revision 62 - (view) (download) (as text) (annotate) - [select for diffs]
Added Tue Dec 8 15:00:47 2009 UTC (9 years, 9 months ago) by tdhock
File length: 1393 byte(s)
update email address, add new extract pages

This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.

  Diffs between and
  Type of Diff should be a

Sort log by:

root@r-forge.r-project.org
ViewVC Help
Powered by ViewVC 1.0.0  
Thanks to:
Vienna University of Economics and Business Powered By FusionForge