blob: ce1feb66284a4bb020deb7481cc7d63696bd1a21 [file] [log] [blame] [raw]
Patrick Quist78c13cc2020-09-17 18:49:12 +02001// Copyright (c) 2020, Compiler Explorer Authors
2// All rights reserved.
3//
4// Redistribution and use in source and binary forms, with or without
5// modification, are permitted provided that the following conditions are met:
6//
7// * Redistributions of source code must retain the above copyright notice,
8// this list of conditions and the following disclaimer.
9// * Redistributions in binary form must reproduce the above copyright
10// notice, this list of conditions and the following disclaimer in the
11// documentation and/or other materials provided with the distribution.
12//
13// THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
14// AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
15// IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
16// ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
17// LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
18// CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
19// SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
20// INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
21// CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
22// ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
23// POSSIBILITY OF SUCH DAMAGE.
Patrick Quist78c13cc2020-09-17 18:49:12 +020024
Austin Morton044dcfb2020-09-26 16:59:26 -040025import { BaseTool } from './base-tool';
26
27export class StringsTool extends BaseTool {
Austin Mortonbac07fe2020-09-25 11:21:30 -040028 static get key() { return 'strings-tool'; }
29
Patrick Quist78c13cc2020-09-17 18:49:12 +020030 runTool(compilationInfo, inputFilename, args) {
31 if(!compilationInfo.filters.binary)
32 {
33 return this.createErrorResponse('Strings requires a binary output');
34 }
35 return super.runTool(compilationInfo, compilationInfo.executableFilename, args);
36 }
37}