亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? crossref.cpp

?? kscope
?? CPP
字號(hào):
/*************************************************************************** *   Copyright (C) 2007-2009 by Elad Lahav *   elad_lahav@users.sourceforge.net * *   This program is free software; you can redistribute it and/or modify *   it under the terms of the GNU General Public License as published by *   the Free Software Foundation; either version 2 of the License, or *   (at your option) any later version. * *   This program is distributed in the hope that it will be useful, *   but WITHOUT ANY WARRANTY; without even the implied warranty of *   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the *   GNU General Public License for more details. * *   You should have received a copy of the GNU General Public License *   along with this program; if not, write to the *   Free Software Foundation, Inc., *   59 Temple Place - Suite 330, Boston, MA  02111-1307, USA. ***************************************************************************/#include <QDir>#include <QFileInfo>#include "crossref.h"#include "exception.h"#include "ctags.h"namespace KScope{namespace Cscope{/** * Class constructor. * @param  parent  Parent object */Crossref::Crossref(QObject* parent) : Core::Engine(parent), status_(Unknown){}/** * Class destructor. */Crossref::~Crossref(){}/** * Opens a cscope cross-reference database. * The method expects to find a 'cscope.out' file under the given path. * The path is stored and used for all database operations. * The initialisation string should be colon-delimited, where the first section * is the project path (includes the cscope.out and cscope.files files), * followed by command-line arguments to Cscope (only the ones that apply to * building the database). * @param  initString  The initialisation string * @throw  Exception */void Crossref::open(const QString& initString, Core::Callback<>* cb){	// Parse the initialisation string.	QStringList args = initString.split(":", QString::SkipEmptyParts);	QString path = args.takeFirst();	qDebug() << __func__ << initString << path;	// Make sure the path exists.	QDir dir(path);	if (!dir.exists())		throw new Core::Exception("Database directory does not exist");	// Check if the cross-reference file exists.	// If not, the databsae needs to be built. Otherwise, it is ready for	// querying, but needs to be rebuilt.	// We also ensure that if it exists it is readable.	QFileInfo fi(dir, "cscope.out");	if (!fi.exists())		status_ = Build;	else if (!fi.isReadable())		throw new Core::Exception("Cannot read the 'cscope.out' file");	else		status_ = Ready;	// Store arguments for running Cscope.	path_ = path;	args_ = args;	if (cb)		cb->call();}/** * Builds a list of fields for each query type. * The list specifies the fields that carry useful information for the given * type of query. * @param  type  Query type * @return A list of Location structure fields */QList<Core::Location::Fields>Crossref::queryFields(Core::Query::Type type) const{	QList<Core::Location::Fields> fieldList;	switch (type) {	case Core::Query::FindFile:		fieldList << Core::Location::File;		break;	case Core::Query::Text:	case Core::Query::IncludingFiles:		fieldList << Core::Location::File		          << Core::Location::Line		          << Core::Location::Text;		break;	case Core::Query::Definition:		fieldList << Core::Location::TagName		          << Core::Location::File		          << Core::Location::Line		          << Core::Location::Text;		break;	case Core::Query::References:	case Core::Query::CalledFunctions:	case Core::Query::CallingFunctions:		fieldList << Core::Location::Scope		          << Core::Location::File		          << Core::Location::Line		          << Core::Location::Text;		break;	case Core::Query::LocalTags:		fieldList << Core::Location::TagName		          << Core::Location::Scope		          << Core::Location::Line		          << Core::Location::TagType;		break;	default:		;	}	return fieldList;}/** * Starts a Cscope query. * Creates a new Cscope process to handle the query. * @param  conn  Connection object to attach to the new process * @param  query Query information * @throw  Exception */void Crossref::query(Core::Engine::Connection* conn,                     const Core::Query& query) const{	Cscope::QueryType type;	// Translate the requested type into a Cscope query number.	switch (query.type_) {	case Core::Query::Text:		if (query.flags_ & Core::Query::RegExp)			type = Cscope::EGrepPattern;		else			type = Cscope::Text;		break;	case Core::Query::References:		type = Cscope::References;		break;	case Core::Query::Definition:		type = Cscope::Definition;		break;	case Core::Query::CalledFunctions:		type = Cscope::CalledFunctions;		break;	case Core::Query::CallingFunctions:		type = Cscope::CallingFunctions;		break;	case Core::Query::FindFile:		type = Cscope::FindFile;		break;	case Core::Query::IncludingFiles:		type = Cscope::IncludingFiles;		break;	case Core::Query::LocalTags:		{			Ctags* ctags = new Ctags();			ctags->setDeleteOnExit();			ctags->query(conn, query.pattern_);			return;		}	default:		// Query type is not supported.		// TODO: What happens if an exception is thrown from within a slot?		throw new Core::Exception(QString("Unsupported query type '%1")		                          .arg(query.type_));	}	// Create a new Cscope process object, and start the query.	Cscope* cscope = new Cscope();	cscope->setDeleteOnExit();	cscope->query(conn, path_, type, query.pattern_);}/** * Starts a Cscope build process. * @param  conn  Connection object to attach to the new process */void Crossref::build(Core::Engine::Connection* conn) const{	// Create the Cscope process object.	Cscope* cscope = new Cscope();	cscope->setDeleteOnExit();	// Need to update the status upon successful termination.	connect(cscope, SIGNAL(finished(int, QProcess::ExitStatus)), this,	        SLOT(buildProcessFinished(int, QProcess::ExitStatus)));	// Start the build process.	cscope->build(conn, path_, args_);}void Crossref::buildProcessFinished(int code, QProcess::ExitStatus status){	if ((code == 0) && (status == QProcess::NormalExit))		status_ = Ready;}} // namespace Cscope} // namespace KScope

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
丁香天五香天堂综合| 色女孩综合影院| 亚洲宅男天堂在线观看无病毒| 制服丝袜中文字幕亚洲| 岛国一区二区三区| 日韩高清电影一区| 亚洲日本在线a| 国产日韩欧美精品电影三级在线| 欧美色网站导航| heyzo一本久久综合| 激情综合网激情| 亚洲成人综合视频| 成人免费在线播放视频| 久久久久99精品一区| 6080国产精品一区二区| 91久久精品网| av午夜精品一区二区三区| 国产在线精品一区二区三区不卡| 日日夜夜精品免费视频| 亚洲日本va在线观看| 国产精品丝袜一区| 欧美精品一区二区三区蜜桃| 8x8x8国产精品| 欧美另类一区二区三区| 色狠狠综合天天综合综合| www.av精品| 国产91露脸合集magnet| 精品亚洲porn| 伦理电影国产精品| 美女免费视频一区二区| 水蜜桃久久夜色精品一区的特点| 亚洲一区二区三区不卡国产欧美| 亚洲欧美成人一区二区三区| 中文字幕第一页久久| 国产亚洲欧美激情| 久久综合九色综合97婷婷| 日韩欧美精品三级| 日韩视频在线一区二区| 精品日韩成人av| 精品久久久久久久久久久院品网 | 欧美日韩精品一区二区天天拍小说 | 97久久精品人人做人人爽| 国产91精品露脸国语对白| 黄色日韩三级电影| 国产精品1区2区3区| 国产尤物一区二区| 国产精品一区二区免费不卡| 国产成人久久精品77777最新版本| 国产一区二区三区视频在线播放| 久草中文综合在线| 福利视频网站一区二区三区| 国产麻豆成人精品| 北条麻妃一区二区三区| 91丝袜高跟美女视频| 91国在线观看| 欧美高清www午色夜在线视频| 欧美久久久久免费| 久久综合色鬼综合色| 久久久美女艺术照精彩视频福利播放| 久久久久久**毛片大全| 国产精品超碰97尤物18| 亚洲一区二区三区国产| 美女高潮久久久| 粉嫩aⅴ一区二区三区四区五区 | 成人av动漫在线| 欧洲一区二区三区在线| 91.成人天堂一区| 欧美激情一区二区| 亚洲高清一区二区三区| 美女脱光内衣内裤视频久久影院| 国产裸体歌舞团一区二区| 丰满岳乱妇一区二区三区| 在线欧美小视频| 欧美一级高清大全免费观看| 2020日本不卡一区二区视频| 亚洲色图.com| 久久精品国产99久久6| 国产成人亚洲精品狼色在线| 色国产综合视频| 欧美岛国在线观看| 亚洲欧美综合网| 久久99精品国产.久久久久| 99久久亚洲一区二区三区青草| 欧美日韩午夜在线| 亚洲国产经典视频| 成人av在线影院| 69堂成人精品免费视频| 国产精品久久毛片| 蜜臀久久99精品久久久久宅男| 国产a精品视频| 91精品久久久久久蜜臀| 国产精品女上位| 麻豆国产精品视频| 欧美亚洲高清一区二区三区不卡| 久久色在线观看| 日日摸夜夜添夜夜添亚洲女人| av日韩在线网站| 久久综合色综合88| 日韩高清一区在线| 日本韩国视频一区二区| 久久综合丝袜日本网| 亚洲成人免费在线| 成人av免费观看| 久久久亚洲精华液精华液精华液| 亚洲一区成人在线| 99精品国产99久久久久久白柏| 欧美成人一区二区| 亚洲成a人v欧美综合天堂下载 | 91精品国产综合久久久久久久久久| 久久精品人人做| 久久国产日韩欧美精品| 欧美日韩亚州综合| 一区二区免费在线播放| 成人午夜激情片| 精品成人在线观看| 欧美四级电影网| 亚洲欧美日韩精品久久久久| 成人午夜大片免费观看| 26uuu色噜噜精品一区| 婷婷久久综合九色综合绿巨人| 99久久精品国产网站| 国产偷国产偷精品高清尤物| 国产原创一区二区三区| 日韩美女一区二区三区| 青青草97国产精品免费观看无弹窗版| 在线免费视频一区二区| 亚洲免费在线播放| 91视视频在线观看入口直接观看www | 国产麻豆成人传媒免费观看| 欧美xxx久久| 蜜桃精品视频在线| 欧美一区二区三区电影| 日韩av在线免费观看不卡| 欧美日韩精品一区二区三区蜜桃 | 欧美精品久久99久久在免费线| 一区二区三区 在线观看视频| 色哟哟一区二区三区| 亚洲美女偷拍久久| 在线中文字幕一区| 亚洲成a人v欧美综合天堂| 欧美日韩免费电影| 三级成人在线视频| 日韩一区二区三区高清免费看看| 日韩av一二三| 精品国产免费久久 | 欧美日韩高清一区二区不卡| 亚洲妇女屁股眼交7| 欧美日韩mp4| 日本大胆欧美人术艺术动态| 欧美一区二区免费| 国模少妇一区二区三区| 久久久久久久性| 99久久精品国产毛片| 亚洲一区自拍偷拍| 欧美一区二区三级| 国产精品一区二区你懂的| 中文字幕中文字幕在线一区| 色94色欧美sute亚洲线路一ni | 成人午夜在线免费| 亚洲男同性视频| 欧美精品久久99| 国产精品亚洲综合一区在线观看| 国产精品欧美久久久久无广告 | 国产欧美精品一区二区色综合朱莉| 国产a区久久久| 一区二区三区四区亚洲| 欧美一区二视频| 国产传媒日韩欧美成人| 亚洲男人的天堂av| 日韩欧美一二三四区| 成人一区二区三区| 亚洲不卡在线观看| 久久一夜天堂av一区二区三区 | 久久久久免费观看| 91麻豆视频网站| 精品一区二区免费视频| 日韩美女啊v在线免费观看| 6080午夜不卡| 99久久精品99国产精品| 天堂影院一区二区| 欧美国产一区视频在线观看| 欧美色倩网站大全免费| 国产精品自拍在线| 偷拍一区二区三区四区| 欧美国产日本韩| 欧美一级高清大全免费观看| 91丝袜美腿高跟国产极品老师 | eeuss鲁片一区二区三区在线观看| 日本高清视频一区二区| 久久99精品久久久久久久久久久久| 亚洲欧美综合另类在线卡通| 日韩午夜激情av| 91国内精品野花午夜精品| 国产精品888| 男人的j进女人的j一区| 亚洲黄色录像片| 久久精品水蜜桃av综合天堂| 69p69国产精品| 欧美午夜精品久久久| 成人毛片老司机大片|