14e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver/* 24e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver * Copyright 2014, Google Inc. 34e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver * All rights reserved. 44e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver * 54e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver * Redistribution and use in source and binary forms, with or without 64e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver * modification, are permitted provided that the following conditions are 74e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver * met: 84e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver * 94e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver * * Redistributions of source code must retain the above copyright 104e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver * notice, this list of conditions and the following disclaimer. 114e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver * * Redistributions in binary form must reproduce the above 124e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver * copyright notice, this list of conditions and the following disclaimer 134e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver * in the documentation and/or other materials provided with the 144e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver * distribution. 154e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver * * Neither the name of Google Inc. nor the names of its 164e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver * contributors may be used to endorse or promote products derived from 174e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver * this software without specific prior written permission. 184e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver * 194e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS 204e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT 214e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR 224e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT 234e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, 244e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT 254e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, 264e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY 274e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 284e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 294e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 304e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver */ 314e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver 324e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruverpackage org.jf.smalidea.psi.impl; 334e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver 343048a6c897ba18bf8d7770e64ed3fc4299dbcedeBen Gruverimport com.intellij.psi.PsiType; 353048a6c897ba18bf8d7770e64ed3fc4299dbcedeBen Gruverimport org.jetbrains.annotations.NotNull; 364e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruverimport org.jf.smalidea.psi.SmaliCompositeElementFactory; 374e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruverimport org.jf.smalidea.psi.SmaliElementTypes; 384e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver 393048a6c897ba18bf8d7770e64ed3fc4299dbcedeBen Gruverpublic class SmaliVoidTypeElement extends SmaliTypeElement { 404e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver public static final SmaliCompositeElementFactory FACTORY = new SmaliCompositeElementFactory() { 414e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver @Override public SmaliCompositeElement createElement() { 424e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver return new SmaliVoidTypeElement(); 434e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver } 444e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver }; 454e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver 464e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver public SmaliVoidTypeElement() { 474e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver super(SmaliElementTypes.VOID_TYPE); 484e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver } 493048a6c897ba18bf8d7770e64ed3fc4299dbcedeBen Gruver 503048a6c897ba18bf8d7770e64ed3fc4299dbcedeBen Gruver @NotNull @Override public PsiType getType() { 513048a6c897ba18bf8d7770e64ed3fc4299dbcedeBen Gruver return PsiType.VOID; 523048a6c897ba18bf8d7770e64ed3fc4299dbcedeBen Gruver } 534e834f8323640768ca37f7f4598942a0ad1a04ccBen Gruver} 54