ProgrammingLanguage.st
changeset 19673 81d517a55579
parent 19671 f0818df8d33a
child 19691 5e613f6255d9
child 19786 56759dfa76aa
equal deleted inserted replaced
19672:4977d6cce6a9 19673:81d517a55579
   264     ^self subclassResponsibility
   264     ^self subclassResponsibility
   265 
   265 
   266     "Created: / 16-08-2009 / 10:42:40 / Jan Vrany <vranyj1@fel.cvut.cz>"
   266     "Created: / 16-08-2009 / 10:42:40 / Jan Vrany <vranyj1@fel.cvut.cz>"
   267 ! !
   267 ! !
   268 
   268 
   269 
       
   270 !ProgrammingLanguage methodsFor:'accessing-classes'!
   269 !ProgrammingLanguage methodsFor:'accessing-classes'!
   271 
   270 
   272 codeGeneratorClass
   271 codeGeneratorClass
   273     "Answer a class suitable for generating code (such as getters, setters, etc.)
   272     "Answer a class suitable for generating code (such as getters, setters, etc.)
   274      It is ok to return nil, which means that no code can be generated automagically"
   273      It is ok to return nil, which means that no code can be generated automagically"
   294     "Created: / 05-08-2014 / 16:00:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
   293     "Created: / 05-08-2014 / 16:00:37 / Jan Vrany <jan.vrany@fit.cvut.cz>"
   295 !
   294 !
   296 
   295 
   297 compilerWithBreakpointSupportClass
   296 compilerWithBreakpointSupportClass
   298     "Answer a class suitable for compiling a source code with breakpoints
   297     "Answer a class suitable for compiling a source code with breakpoints
   299      in 'my' language. If there is non, return nil."
   298      in 'my' language. If there is none, return nil."
   300 
   299 
   301     ^ nil
   300     ^ nil
   302 
   301 
   303     "Created: / 22-07-2013 / 15:45:00 / cg"
   302     "Created: / 22-07-2013 / 15:45:00 / cg"
   304 !
   303 !
   478 ! !
   477 ! !
   479 
   478 
   480 !ProgrammingLanguage methodsFor:'testing'!
   479 !ProgrammingLanguage methodsFor:'testing'!
   481 
   480 
   482 isGroovy
   481 isGroovy
   483     "true iff this is a Groovy language"
   482     "true iff this is the Groovy language"
   484 
   483 
   485     ^ false
   484     ^ false
   486 
   485 
   487     "Created: / 13-04-2012 / 17:47:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
   486     "Created: / 13-04-2012 / 17:47:20 / Jan Vrany <jan.vrany@fit.cvut.cz>"
   488 !
   487 !
   550 !ProgrammingLanguage methodsFor:'utilities - source code'!
   549 !ProgrammingLanguage methodsFor:'utilities - source code'!
   551 
   550 
   552 methodTemplate
   551 methodTemplate
   553     "return a method definition template string (or nil)"
   552     "return a method definition template string (or nil)"
   554 
   553 
   555     |writerClass|
       
   556 
       
   557     "/ cg: I think this should be the codeGeneratorClass - not the writer
   554     "/ cg: I think this should be the codeGeneratorClass - not the writer
   558     (writerClass := self sourceFileWriterClass) isNil ifTrue:[^ nil].
   555 "/    |writerClass|
   559     ^ writerClass methodTemplate
   556 "/
       
   557 "/    (writerClass := self sourceFileWriterClass) isNil ifTrue:[^ nil].
       
   558 "/    ^ writerClass methodTemplate
       
   559 
       
   560     |generatorClass|
       
   561 
       
   562     (generatorClass := self codeGeneratorClass) isNil ifTrue:[^ nil].
       
   563     ^ generatorClass methodTemplate
   560 
   564 
   561     "Modified: / 21-08-2012 / 19:44:41 / cg"
   565     "Modified: / 21-08-2012 / 19:44:41 / cg"
   562 !
   566 !
   563 
   567 
   564 methodTemplateForDocumentation
   568 methodTemplateForDocumentation
   565     "return a method definition template string (or nil)"
   569     "return a method definition template string (or nil)"
   566 
   570 
   567     |writerClass|
   571     |generatorClass|
   568 
   572 
   569     "/ cg: I think this should be the codeGeneratorClass - not the writer
   573     (generatorClass := self codeGeneratorClass) isNil ifTrue:[^ nil].
   570     (writerClass := self sourceFileWriterClass) isNil ifTrue:[^ nil].
   574     ^ generatorClass methodTemplateForDocumentation
   571     ^ writerClass methodTemplateForDocumentation
   575 !
       
   576 
       
   577 methodTemplateForVersionMethodCVS
       
   578     |generatorClass|
       
   579 
       
   580     (generatorClass := self codeGeneratorClass) isNil ifTrue:[^ nil].
       
   581     ^ generatorClass methodTemplateForVersionMethodCVS
   572 !
   582 !
   573 
   583 
   574 parenthesisSpecificationForEditor
   584 parenthesisSpecificationForEditor
   575     ^ TextView defaultParenthesisSpecification
   585     ^ TextView defaultParenthesisSpecification
   576 
   586 
   577     "Created: / 01-06-2012 / 22:52:25 / cg"
   587     "Created: / 01-06-2012 / 22:52:25 / cg"
   578 !
   588 !
   579 
   589 
   580 versionMethodTemplateForCVS
   590 versionMethodTemplateForCVS
       
   591     <resource: #obsolete>
   581     "raise an error: must be redefined in concrete subclass(es)"
   592     "raise an error: must be redefined in concrete subclass(es)"
   582 
   593 
   583     |writerClass|
   594     |writerClass|
   584 
   595 
       
   596     self obsoleteMethodWarning:'use methodTemplateForVersionMethodCVS'.
   585     (writerClass := self sourceFileWriterClass) isNil ifTrue:[^ nil].
   597     (writerClass := self sourceFileWriterClass) isNil ifTrue:[^ nil].
   586     ^ writerClass versionMethodTemplateForCVS
   598     ^ writerClass versionMethodTemplateForCVS
   587 
   599 
   588     "Modified: / 21-08-2012 / 19:44:51 / cg"
   600     "Modified: / 21-08-2012 / 19:44:51 / cg"
   589 !
   601 !