1 /*
2 * Copyright (c) 2017, Oracle and/or its affiliates. All rights reserved.
3 */
4 /*
5 * Licensed to the Apache Software Foundation (ASF) under one or more
6 * contributor license agreements. See the NOTICE file distributed with
7 * this work for additional information regarding copyright ownership.
8 * The ASF licenses this file to You under the Apache License, Version 2.0
9 * (the "License"); you may not use this file except in compliance with
10 * the License. You may obtain a copy of the License at
11 *
12 * http://www.apache.org/licenses/LICENSE-2.0
13 *
14 * Unless required by applicable law or agreed to in writing, software
15 * distributed under the License is distributed on an "AS IS" BASIS,
16 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
17 * See the License for the specific language governing permissions and
18 * limitations under the License.
19 */
20
21 package com.sun.org.apache.bcel.internal.generic;
22
23 import com.sun.org.apache.bcel.internal.ExceptionConst;
24
25 /**
26 * LREM - Remainder of long
27 * <PRE>Stack: ..., value1, value2 -> result</PRE>
28 *
29 * @version $Id: LREM.java 1747278 2016-06-07 17:28:43Z britter $
30 * @LastModified: Oct 2017
31 */
32 public class LREM extends ArithmeticInstruction implements ExceptionThrower {
33
34 public LREM() {
35 super(com.sun.org.apache.bcel.internal.Const.LREM);
36 }
37
38
39 @Override
40 public Class<?>[] getExceptions() {
41 return new Class<?>[] {
42 ExceptionConst.ARITHMETIC_EXCEPTION
43 };
44 }
45
46
47 /**
48 * Call corresponding visitor method(s). The order is:
49 * Call visitor methods of implemented interfaces first, then
50 * call methods according to the class hierarchy in descending order,
51 * i.e., the most specific visitXXX() call comes last.
52 *
53 * @param v Visitor object
54 */
55 @Override
56 public void accept( final Visitor v ) {
57 v.visitExceptionThrower(this);
58 v.visitTypedInstruction(this);
59 v.visitStackProducer(this);
60 v.visitStackConsumer(this);
61 v.visitArithmeticInstruction(this);
62 v.visitLREM(this);
63 }
64 }
--- EOF ---