Commit Graph

59 Commits

Author SHA1 Message Date
Axel Naumann
5ed01c266c Add interface to cancel input continuation.
git-svn-id: http://root.cern.ch/svn/root/trunk@47803 27541ba8-7e3a-0410-8455-c3a389f83636
2012-12-04 08:05:33 +00:00
Axel Naumann
643a9c3284 Spelling.
git-svn-id: http://root.cern.ch/svn/root/trunk@47802 27541ba8-7e3a-0410-8455-c3a389f83636
2012-12-04 08:05:11 +00:00
Vassil Vassilev
86243e4b95 Add support for exclamation point.
git-svn-id: http://root.cern.ch/svn/root/trunk@47792 27541ba8-7e3a-0410-8455-c3a389f83636
2012-12-03 16:42:06 +00:00
Vassil Vassilev
e5a6058db4 Add support for backslash
git-svn-id: http://root.cern.ch/svn/root/trunk@47791 27541ba8-7e3a-0410-8455-c3a389f83636
2012-12-03 16:37:47 +00:00
Vassil Vassilev
33e420bb73 Typo in comment.
git-svn-id: http://root.cern.ch/svn/root/trunk@47788 27541ba8-7e3a-0410-8455-c3a389f83636
2012-12-03 14:28:21 +00:00
Vassil Vassilev
8e84e50e2a Lex properly identifiers (Allow numbers to occur in idents.)
git-svn-id: http://root.cern.ch/svn/root/trunk@47783 27541ba8-7e3a-0410-8455-c3a389f83636
2012-12-03 08:34:39 +00:00
Vassil Vassilev
5ea5ea8351 Readd support for .g
git-svn-id: http://root.cern.ch/svn/root/trunk@47781 27541ba8-7e3a-0410-8455-c3a389f83636
2012-12-02 20:14:02 +00:00
Vassil Vassilev
fd499a33b3 Ugly typo.
git-svn-id: http://root.cern.ch/svn/root/trunk@47780 27541ba8-7e3a-0410-8455-c3a389f83636
2012-12-02 19:31:08 +00:00
Vassil Vassilev
953819f92d Remove redundant comment.
git-svn-id: http://root.cern.ch/svn/root/trunk@47777 27541ba8-7e3a-0410-8455-c3a389f83636
2012-12-02 19:05:24 +00:00
Vassil Vassilev
a530a63d15 Readd custom meta command support.
git-svn-id: http://root.cern.ch/svn/root/trunk@47776 27541ba8-7e3a-0410-8455-c3a389f83636
2012-12-02 19:01:02 +00:00
Vassil Vassilev
d89c749b1f .x is alias of .X
git-svn-id: http://root.cern.ch/svn/root/trunk@47764 27541ba8-7e3a-0410-8455-c3a389f83636
2012-12-01 16:48:33 +00:00
Vassil Vassilev
d2c7012d6e Documentation.
git-svn-id: http://root.cern.ch/svn/root/trunk@47763 27541ba8-7e3a-0410-8455-c3a389f83636
2012-12-01 14:30:31 +00:00
Vassil Vassilev
e6b1a83e6a Use small caps for method names.
git-svn-id: http://root.cern.ch/svn/root/trunk@47762 27541ba8-7e3a-0410-8455-c3a389f83636
2012-12-01 14:07:57 +00:00
Vassil Vassilev
a189526360 Cling/LLVM style Include order.
git-svn-id: http://root.cern.ch/svn/root/trunk@47761 27541ba8-7e3a-0410-8455-c3a389f83636
2012-12-01 14:04:29 +00:00
Vassil Vassilev
d5d88ab9df Timur.
git-svn-id: http://root.cern.ch/svn/root/trunk@47760 27541ba8-7e3a-0410-8455-c3a389f83636
2012-12-01 14:00:22 +00:00
Vassil Vassilev
7daf8ac1b6 Cling compatible style improvements.
git-svn-id: http://root.cern.ch/svn/root/trunk@47759 27541ba8-7e3a-0410-8455-c3a389f83636
2012-12-01 13:56:53 +00:00
Vassil Vassilev
bdf60ac8c4 Readd support for .class and .Class
git-svn-id: http://root.cern.ch/svn/root/trunk@47758 27541ba8-7e3a-0410-8455-c3a389f83636
2012-12-01 13:46:50 +00:00
Vassil Vassilev
485e1ecd69 Bring back the recent change. Reverse merging is not one of my strenghts. :)
git-svn-id: http://root.cern.ch/svn/root/trunk@47753 27541ba8-7e3a-0410-8455-c3a389f83636
2012-12-01 00:54:25 +00:00
Vassil Vassilev
60b330abb2 Revert r47746 (which means fully unrevert the r47739). We can run roottest and all seems good. Unbreaks the trunk.
git-svn-id: http://root.cern.ch/svn/root/trunk@47752 27541ba8-7e3a-0410-8455-c3a389f83636
2012-12-01 00:45:43 +00:00
Vassil Vassilev
dbe2c6d8dc Add support for .X. Ignore comments in LexAnyStringToken for now.
git-svn-id: http://root.cern.ch/svn/root/trunk@47751 27541ba8-7e3a-0410-8455-c3a389f83636
2012-12-01 00:40:04 +00:00
Philippe Canal
e719c8efdb Partially revert r47739 so that we have a functional meta processor
git-svn-id: http://root.cern.ch/svn/root/trunk@47746 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-30 23:09:26 +00:00
Vassil Vassilev
72539ff673 Implement lexer/parser/sema for the meta language, which we have to implement soon.
* It makes the life easier to add new grammar rules and keywords.
* Silences a lot of the test failures we had.
* Fixes the imbalanced ' or " properly.


git-svn-id: http://root.cern.ch/svn/root/trunk@47739 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-30 17:26:26 +00:00
Timur Pocheptsov
c49a19a255 Though I can not always follow 80-chars-in-a-line rule, I still can avoid too wide lines
(except the cases I want the code to be in one physical line).

Say hello to my Samsung VGA 14 inches and my glasses -7 :)


git-svn-id: http://root.cern.ch/svn/root/trunk@47718 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-29 20:40:53 +00:00
Timur Pocheptsov
c03019ab27 Remove undef hack and change inclusion quard.
git-svn-id: http://root.cern.ch/svn/root/trunk@47717 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-29 20:12:47 +00:00
Timur Pocheptsov
ba38abf955 Follow the code convention with * and & declarators.
git-svn-id: http://root.cern.ch/svn/root/trunk@47716 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-29 20:09:41 +00:00
Timur Pocheptsov
a187d773b9 Remove llvm:: qualified name where possible, relying on the name lookup.
git-svn-id: http://root.cern.ch/svn/root/trunk@47715 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-29 19:48:39 +00:00
Timur Pocheptsov
dc65a8f2c4 Remove explicit name qualification and replace it with "nice" using directive at the beginning of implementation file.
git-svn-id: http://root.cern.ch/svn/root/trunk@47714 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-29 19:42:43 +00:00
Timur Pocheptsov
46a3404e6f 2 spaces instead of 3 in indents.
git-svn-id: http://root.cern.ch/svn/root/trunk@47713 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-29 19:35:33 +00:00
Timur Pocheptsov
7af5326d79 Do not attempt to calculate the size for a partial template specialization class.
git-svn-id: http://root.cern.ch/svn/root/trunk@47687 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-28 19:50:50 +00:00
Timur Pocheptsov
208c024a5d 1. Remove <iostream>.
2. '_' can also be a part of identifier.


git-svn-id: http://root.cern.ch/svn/root/trunk@47686 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-28 19:37:36 +00:00
Timur Pocheptsov
d61e44e47d Clang dies in EmptySubobjectMap::ComputeEmptySubobjectSizes(), one of bases for some weird class is not of
RecordType.


git-svn-id: http://root.cern.ch/svn/root/trunk@47685 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-28 19:15:10 +00:00
Timur Pocheptsov
10b8039f2f Replace hand-made BaseName with llvm::sys::path::filename.
git-svn-id: http://root.cern.ch/svn/root/trunk@47679 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-28 17:13:31 +00:00
Timur Pocheptsov
4e1cc75fda Remove TCintDisplayClass from the core/meta, fix MetaProcessor.cpp (wrong include path)
git-svn-id: http://root.cern.ch/svn/root/trunk@47677 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-28 16:50:13 +00:00
Timur Pocheptsov
f474053b85 1. Remove all ROOT specific code from the TCintDisplayXXX and move this "display" into the MetaProcessor.
2. Mods in CommandLexer to support .! .g .class in a MetaProcessor.


git-svn-id: http://root.cern.ch/svn/root/trunk@47674 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-28 16:38:02 +00:00
Vassil Vassilev
27bfa0f1cc Silence another warning.
git-svn-id: http://root.cern.ch/svn/root/trunk@47655 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-27 16:23:22 +00:00
Vassil Vassilev
b497a0b37a Silence a warning.
git-svn-id: http://root.cern.ch/svn/root/trunk@47654 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-27 15:56:52 +00:00
Vassil Vassilev
b66d4750fd Handle properly ticks and quotes.
I know that the lexers are getting too many and soon I will merge both implementations
into one full-blown.
Reduces the test failures a lot.


git-svn-id: http://root.cern.ch/svn/root/trunk@47652 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-27 15:41:08 +00:00
Vassil Vassilev
1015181bd2 Insert an actual new line, which means new line for the lexer too...
git-svn-id: http://root.cern.ch/svn/root/trunk@47630 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-26 14:09:43 +00:00
Vassil Vassilev
cc112e3dc7 Remove unused include.
git-svn-id: http://root.cern.ch/svn/root/trunk@47618 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-24 22:31:41 +00:00
Vassil Vassilev
6ff2764fc1 Teach the input validator to handle imbalance of ' or ".
Add constness to the reference.
Improve style.


git-svn-id: http://root.cern.ch/svn/root/trunk@47587 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-22 17:58:59 +00:00
Axel Naumann
010b391174 Warning comparison (un)signed.
git-svn-id: http://root.cern.ch/svn/root/trunk@47526 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-21 10:51:41 +00:00
Axel Naumann
a68395dc86 Also set the name of the currently executing file for readInputFromFile.
Refuse to readInputFromFile if the file is binary, as determined by llvm::sys::IdentifyFileType or wild guessing based on the fraction of non-printables in the first 1k (max) bytes.
Prevents root -l libRooFit.so
Now that we identify the file we could even link the library in - but that's for later.


git-svn-id: http://root.cern.ch/svn/root/trunk@47500 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-20 20:21:29 +00:00
Axel Naumann
546c2b1e61 When parsing .x/.L filename() //comment
* empty argument is not an error.
* pass comment to interpreter whether .x was successful or not; it might be an expected-diagnostic
Thus implement comment lexer.


git-svn-id: http://root.cern.ch/svn/root/trunk@47473 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-20 13:15:25 +00:00
Axel Naumann
83f7b6c23d Say who is complaining.
git-svn-id: http://root.cern.ch/svn/root/trunk@47470 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-20 10:10:57 +00:00
Axel Naumann
26f3d7cf75 Do cling's best at returning the currently executing file.
#included files will not be picked up as cling cannot tell where the currently running function was defined.
But it does know which file was passed to MetaProcessor::executeFunction() (e.g. via .x).
So at least store that.
This fixes the occurrences of GetCurrentMacroName() in tutorials/


git-svn-id: http://root.cern.ch/svn/root/trunk@47421 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-19 00:00:53 +00:00
Axel Naumann
a5ab389c14 These meta commands request a dump of the current file*s*: use plural.
git-svn-id: http://root.cern.ch/svn/root/trunk@47334 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-15 19:59:26 +00:00
Axel Naumann
226b360b15 Rename LoadLibResult constants to start with 'k'.
Enable kLoadLibExists case in TCintWithCling.

Collect statistics about loaded files.
Give access to that through .file; rename SourceManager dump to fileEx.

Documentation.

(Sorry, should have been three patches.)


git-svn-id: http://root.cern.ch/svn/root/trunk@47330 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-15 18:23:11 +00:00
Axel Naumann
46eb845f6d * pass whole file content to process(); enables #ifdef
* ignore ';' after terminal '}'


git-svn-id: http://root.cern.ch/svn/root/trunk@47136 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-09 10:54:07 +00:00
Philippe Canal
bc63cc3bdd Correctly test for the result of loadFile
git-svn-id: http://root.cern.ch/svn/root/trunk@47084 27541ba8-7e3a-0410-8455-c3a389f83636
2012-11-06 22:42:02 +00:00
Axel Naumann
ee3b83e48a Implement unnamed macros:
* MetaProcessor::readInputFromFile passes the content to the Interpreter as if typed at the prompt
* they do not get passed to CINT in TCintWithCling


git-svn-id: http://root.cern.ch/svn/root/trunk@46898 27541ba8-7e3a-0410-8455-c3a389f83636
2012-10-30 13:40:25 +00:00