14fa68e36SMasatake YAMATO /* 24fa68e36SMasatake YAMATO * 34fa68e36SMasatake YAMATO * Copyright (c) 2016, Red Hat, Inc. 44fa68e36SMasatake YAMATO * Copyright (c) 2016, Masatake YAMATO 54fa68e36SMasatake YAMATO * 64fa68e36SMasatake YAMATO * Author: Masatake YAMATO <yamato@redhat.com> 74fa68e36SMasatake YAMATO * 84fa68e36SMasatake YAMATO * This source code is released for free distribution under the terms of the 94fa68e36SMasatake YAMATO * GNU General Public License version 2 or (at your option) any later version. 104fa68e36SMasatake YAMATO * 114fa68e36SMasatake YAMATO */ 124fa68e36SMasatake YAMATO #ifndef CTAGS_MAIN_PROMISE_H 134fa68e36SMasatake YAMATO #define CTAGS_MAIN_PROMISE_H 144fa68e36SMasatake YAMATO 154fa68e36SMasatake YAMATO #include "general.h" 164fa68e36SMasatake YAMATO #include "mio.h" 174fa68e36SMasatake YAMATO #include "parse.h" 18db20bea4SMasatake YAMATO #include "numarray.h" 194fa68e36SMasatake YAMATO 20*89a71f3bSMasatake YAMATO /* parser can be NULL; give a name with promiseUpdateLanguage() 21*89a71f3bSMasatake YAMATO * when the name can be determined. */ 224fa68e36SMasatake YAMATO int makePromise (const char *parser, 23ef722b09SMasatake YAMATO unsigned long startLine, long startCharOffset, 24ef722b09SMasatake YAMATO unsigned long endLine, long endCharOffset, 254fa68e36SMasatake YAMATO unsigned long sourceLineOffset); 264fa68e36SMasatake YAMATO 27db20bea4SMasatake YAMATO /* Fill the line with white spaces. 28db20bea4SMasatake YAMATO The callee takes the ownership of lines. */ 29db20bea4SMasatake YAMATO void promiseAttachLineFiller (int promise, ulongArray *lines); 30db20bea4SMasatake YAMATO 31*89a71f3bSMasatake YAMATO void promiseUpdateLanguage (int promise, langType lang); 32*89a71f3bSMasatake YAMATO 334fa68e36SMasatake YAMATO #endif /* CTAGS_MAIN_PROMISE_H */ 34